価格、数量、割引、税、およびそれらの精度の間には一般的な関係があります。
Assume:
x is the price
y is the percentage
s is the rounded sub-total
2 Directions
A) incl. Tax => excl. Tax => incl. Tax
B) excl. => incl. => excl.
重要な問題は、最大値で計算している小計です。エラー。2桁の小数は5 * 10 ^ -3を意味します
A)x * 10 ^ 2 /(y + 10 ^ 2)// s *(y + 10 ^ 2)/ 10 ^ 2
B)x *(y + 10 ^ 2)/ 10 ^ 2 // s * 10 ^ 2 /(10 ^ 2 + y)
A)
Subtotal precision 2 fractional digits:
5*10^-3*(y+10^2)/10^2 => (y+10^2)/10^2<1 => no y
3 fractional digits:
5*10^-4*(y+10^2)/10^2 => (y+10^2)/10^2<10 => y<900
4 fractional digits:
5*10^-5*(y+10^2)/10^2 => (y+10^2)/10^2<10^2 => y<90900
(must be a very bad country)
......
B)
Subtotal precision 2 fractional digits:
(5*10^-3)*10^2/(10^2+y) => 10^2/(10^2+y)<1 => every y
割引または税金を使用して計算し、価格を再計算する場合、次の説明が興味深い場合があります。フロントエンドのケースはわからないので、インターン計算がある可能性があることに注意してください。A)合計=>税/割引=>合計B)税/割引=>合計=>税/割引
A)x * y / 10 ^ 2 // s * 10 ^ 2 / y
B)x * 10 ^ 2 / y // s * y / 10 ^ 2
A) Subtotal precision 2 fractional digits:
(5*10^-3)*10^2/y => 10^2/y < 1 => y>10^2
Subtotal precision 3 fractional digits:
(5*10^-4)*10^2/y => 10^2/y < 10 => y>10
Subtotal precision 4 fractional digits:
... 10^2/y < 10^2 => y>1
2桁の精度では、小数桁なしのレートが必要です。例:合計:15,15税率:0,3%=>税0,04545 =>丸められた0,0455税:0,0455 =>合計:15,17
B) Subtotal precision 2 fractional digits:
(5*10^-3)*y/10^2 => y/10^2 < 1 => y < 10^2
aが精度の場合、yはa + 2未満でなければなりません。
数量を処理する場合は注意してください。エラーは多重化されます。したがって、最大10 ^ 5の場合、精度は7にする必要があります。これは、オフセットで計算する場合にのみ心配です。
追加(9.10.2013 Magentoバージョン1.7.0.2)Brutto <=> Netto and Taxes // America <=> old Europe Setsは整数(Cents)であり、マッピング
f(x)= round(a * x)a> 1は全単射ではありません。私の言葉では:すべての価格を含む。価格を除く または時々2つの価格が含まれています。1つの価格を除く または、計算方法に応じて2つの異なる結果を得ることができます
ドイツの実例:
税込価格を入力しようとしました。税:19,95価格を除いて16,76(2桁)を取得します。税金(19%)。19%の税金を計算すると、(16,76 * 0.19)3,18が得られます。(注意:19.95 * 019 / 1.19〜3.19)
したがって、1セントの違いがあります。16,76 => 19.94 16.77 => 19.96
アメリカには19,95の価格はありません-ネットの土地。
したがって、可能な限り元の価格で計算してください。価格を含めるには、入力した価格と税金(壊れた数字)を使用します。
PayPalにはこの不正チェックがあります-今はわかりませんが、PayPalはmagentoが与える番号を追加するだけです。http://fabiankrueger.de/blog/magento-und-paypayl-rundungsfehler/を参照してください
。これが真実ではなく、PayPalが税金または合計を再計算する場合、この問題は解決できません。 。そこで解決します。私にとってはうまくいくようです。