バグ報告 > その他 > 受注後の金額計算方法 |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
zon |
投稿日時: 2008/7/2 11:42
対応状況: −−−
|
半人前 登録日: 2008/5/27 居住地: 投稿: 27 |
受注後の金額計算方法 ユーザ側のマイページの購入履歴のページや管理側の受注管理の受注履歴のページなどでの小計の計算方法で、
消費税率や課税規則が、SHOPマスタで登録されたものを使っています。 この場合、税率や課税規則を変更すると、購入した時に設定されている税率や課税規則と違うので、 変更前と後では、履歴の金額が変わってしまいます。 問題の部分は SC_Utils_Ex クラスの以下のメソッド使用するときに渡している第二、第三パラメータ /* 税金計算 */ function sfTax($price, $tax, $tax_rule) { /* 税金付与 */ function sfPreTax($price, $tax, $tax_rule) { 課税規則は、最初に設定してしまうと変更することはほとんどないと思うので それほど問題にはならないかもしれませんが、消費税率は運用後に変更になる可能性が高いので、 変更したときに値の整合性が取れなくて混乱すると思います。 受注履歴編集は合計が再計算されてしまうので、税率変更前の受注を迂闊に編集できなくなってしまいます。 dtb_order テーブルに注文時の税率を保持しておいて、 受注後の計算は、その税率を使用するというのはどうでしょうか? |
habu |
投稿日時: 2012/12/14 16:02
対応状況: −−−
|
長老 登録日: 2006/9/15 居住地: 投稿: 282 |
Re: 受注後の金額計算方法 この件、そろそろ標準で対策しておいた方が良い時期にきていますよね。
Seasoft様がチケットを切って方針を書いてくださっていますが、 受注データを税込で扱う様にするのは大きな変更になるので、 2.12系としては、受注に税率を持たせる方向で、 とりあえず対策を行なっておいた方が良いかと思いますが、いかがでしょうか? http://svn.ec-cube.net/open_trac/ticket/1730 この方向で良ければ、コードは手元にありますので、コミットしようかと思っています。 ご意見、お待ちしています。
|
nanasess |
投稿日時: 2012/12/14 16:11
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2311 |
Re: 受注後の金額計算方法 DB に変更が入る感じでしょうか??
僕も、受注に税率を持たせるのが妥当だと思いますが、バージョンアップ方針の関係上、2.12系で変更するのは難しいと思っています。 # 0.9.x の時代から対策が必要だと思いつつ、いざ必要となった時に動けないというのも、もどかしいですね。。 |
habu |
投稿日時: 2012/12/14 16:22
対応状況: −−−
|
長老 登録日: 2006/9/15 居住地: 投稿: 282 |
Re: 受注後の金額計算方法 nanasessさん
早速の返信ありがとうございます! 引用: DB に変更が入る感じでしょうか?? そうですね、dtb_orderとdtb_order_tempに、 tax_rateと、tax_ruleを追加しています。 引用: 僕も、受注に税率を持たせるのが妥当だと思いますが、バージョンアップ方針の関係上、2.12系で変更するのは難しいと思っています。 なるほど、了解です。 バージョンアップ方針について再度確認しようと思いますが、 この件は、いわば不具合修正の範疇に入ると思うので、 例えば、install.phpならぬ、update_212to213.phpのようなスクリプトを用意して、カラム追加を容易に行えるようにするという風にしたらどうかなと思ったりしています。 引用: # 0.9.x の時代から対策が必要だと思いつつ、いざ必要となった時に動けないというのも、もどかしいですね。。 同感です。たびたび検討事項には上がりつつ、いつか誰かがやってくれるだろう…と思っているうちに期日が迫ってきた感じです。笑
|
nanasess |
投稿日時: 2012/12/14 16:49
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2311 |
Re: 受注後の金額計算方法 引用:
実際は、受注明細ごと(dtb_order_detail) に税額計算をしていますので、上記に加えて dtb_order_detail にも tax_rate と tax_rule を追加すると、(DB上は)様々な税制ルールに柔軟に対応できそうですね。 |
habu |
投稿日時: 2012/12/14 17:24
対応状況: −−−
|
長老 登録日: 2006/9/15 居住地: 投稿: 282 |
Re: 受注後の金額計算方法 nanasess様
アドバイスありがとうございます! 引用: 実際は、受注明細ごと(dtb_order_detail) に税額計算をしていますので、上記に加えて dtb_order_detail にも tax_rate と tax_rule を追加すると、(DB上は)様々な税制ルールに柔軟に対応できそうですね。 たしかに、dtb_order_detail に、tax_rate と tax_rule を持たせた方が良さそうですね。 (dtb_order_detailに持たせるなら、dtb_orderの方には不要ですね) そうすれば、 「1万円未満のものは〇%、1万円以上のものは△%」 とか、 「食料品はゼロ%、その他は〇%」 みたいな税制にも対応しやすいですね。
|
nanasess |
投稿日時: 2012/12/14 18:22
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2311 |
Re: 受注後の金額計算方法 引用:
明細合計に対して課税する運用もあると思いますので、 dtb_order にもあった方がいいと思いますよ。 |
habu |
投稿日時: 2012/12/17 10:37
対応状況: −−−
|
長老 登録日: 2006/9/15 居住地: 投稿: 282 |
Re: 受注後の金額計算方法 nanasess様
返信ありがとうございます。 引用: 明細合計に対して課税する運用もあると思いますので、 dtb_order にもあった方がいいと思いますよ。 たしかに、こういう運用もありますね。 メジャーバージョンアップの際に、 管理画面から「明細合計に対して課税する」という設定ができるようにしておくと良いかもしれませんね。 そして、その機能追加の際には、dtb_orderにもカラムを足す必要がありますね。 #ただ、標準機能に「明細合計に対して課税する」コードを組み込まない場合、 その運用にするためには、各サイトにてコードの変更が必要で、 そのように、カスタマイズするのであれば、 標準では、dtb_order_detailのみにカラム追加しておいて、 カスタマイズの際にdtb_orderにカラムを足すというのが自然かなと思っています。
|
nanasess |
投稿日時: 2012/12/19 12:35
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2311 |
Re: 受注後の金額計算方法 引用:
今後の国際化のことも考えると、カスタマイズ時にカラムを追加するより、最初から用意しておいて、その旨のコメントを書いておくくらいの方が良さげかなと思います。 プラグインなどで後から DB のカラムを追加しようとすると、一貫性もなくなりやすく、何かと大変なので。。。 |
habu |
投稿日時: 2012/12/21 14:53
対応状況: −−−
|
長老 登録日: 2006/9/15 居住地: 投稿: 282 |
Re: 受注後の金額計算方法 nanasess様
引用: 今後の国際化のことも考えると、カスタマイズ時にカラムを追加するより、最初から用意しておいて、その旨のコメントを書いておくくらいの方が良さげかなと思います。 返信ありがとうございます。 たしかに、そうですね。 また、過去の受注を編集して、商品を追加する場合にも、 dtb_orderの税率と課税規則を利用するようにした方が良さそうですので、 最初から、dtb_orderにも税率と課税規則を用意しておこうと思います。
|
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |