バージョン選択

フォーラム

メニュー

オンライン状況

28 人のユーザが現在オンラインです。 (20 人のユーザが フォーラム を参照しています。)
登録ユーザ: 1
ゲスト: 27
smt_kato もっと...

サイト内検索

バグ報告 > その他 > 受注後の金額計算方法

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
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
居住地:
投稿: 277
Re: 受注後の金額計算方法
この件、そろそろ標準で対策しておいた方が良い時期にきていますよね。

Seasoft様がチケットを切って方針を書いてくださっていますが、
受注データを税込で扱う様にするのは大きな変更になるので、
2.12系としては、受注に税率を持たせる方向で、
とりあえず対策を行なっておいた方が良いかと思いますが、いかがでしょうか?
http://svn.ec-cube.net/open_trac/ticket/1730

この方向で良ければ、コードは手元にありますので、コミットしようかと思っています。

ご意見、お待ちしています。


----------------
株式会社システムフレンド
羽生 賢太郎(Kentaro Habu)
改造専門店・EC-CUBE工房

nanasess
投稿日時: 2012/12/14 16:11
対応状況: −−−
登録日: 2006/9/9
居住地: 大阪
投稿: 2107
Re: 受注後の金額計算方法
DB に変更が入る感じでしょうか??

僕も、受注に税率を持たせるのが妥当だと思いますが、バージョンアップ方針の関係上、2.12系で変更するのは難しいと思っています。

# 0.9.x の時代から対策が必要だと思いつつ、いざ必要となった時に動けないというのも、もどかしいですね。。


----------------
大河内健太郎(Kentaro Ohkouchi)
EC-CUBE公式エバンジェリスト
スキルニル株式会社

EC-CUBE1系2系長期サポートホスティングサービス CUBE Lab
https://cubelab.info/

habu
投稿日時: 2012/12/14 16:22
対応状況: −−−
長老
登録日: 2006/9/15
居住地:
投稿: 277
Re: 受注後の金額計算方法
nanasessさん

早速の返信ありがとうございます!

引用:
DB に変更が入る感じでしょうか??

そうですね、dtb_orderとdtb_order_tempに、
tax_rateと、tax_ruleを追加しています。

引用:
僕も、受注に税率を持たせるのが妥当だと思いますが、バージョンアップ方針の関係上、2.12系で変更するのは難しいと思っています。

なるほど、了解です。
バージョンアップ方針について再度確認しようと思いますが、
この件は、いわば不具合修正の範疇に入ると思うので、
例えば、install.phpならぬ、update_212to213.phpのようなスクリプトを用意して、カラム追加を容易に行えるようにするという風にしたらどうかなと思ったりしています。

引用:
# 0.9.x の時代から対策が必要だと思いつつ、いざ必要となった時に動けないというのも、もどかしいですね。。

同感です。たびたび検討事項には上がりつつ、いつか誰かがやってくれるだろう…と思っているうちに期日が迫ってきた感じです。笑


----------------
株式会社システムフレンド
羽生 賢太郎(Kentaro Habu)
改造専門店・EC-CUBE工房

nanasess
投稿日時: 2012/12/14 16:49
対応状況: −−−
登録日: 2006/9/9
居住地: 大阪
投稿: 2107
Re: 受注後の金額計算方法
引用:

そうですね、dtb_orderとdtb_order_tempに、
tax_rateと、tax_ruleを追加しています。


実際は、受注明細ごと(dtb_order_detail) に税額計算をしていますので、上記に加えて dtb_order_detail にも tax_rate と tax_rule を追加すると、(DB上は)様々な税制ルールに柔軟に対応できそうですね。


----------------
大河内健太郎(Kentaro Ohkouchi)
EC-CUBE公式エバンジェリスト
スキルニル株式会社

EC-CUBE1系2系長期サポートホスティングサービス CUBE Lab
https://cubelab.info/

habu
投稿日時: 2012/12/14 17:24
対応状況: −−−
長老
登録日: 2006/9/15
居住地:
投稿: 277
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万円以上のものは△%」
とか、
「食料品はゼロ%、その他は〇%」
みたいな税制にも対応しやすいですね。


----------------
株式会社システムフレンド
羽生 賢太郎(Kentaro Habu)
改造専門店・EC-CUBE工房

nanasess
投稿日時: 2012/12/14 18:22
対応状況: −−−
登録日: 2006/9/9
居住地: 大阪
投稿: 2107
Re: 受注後の金額計算方法
引用:

(dtb_order_detailに持たせるなら、dtb_orderの方には不要ですね)


明細合計に対して課税する運用もあると思いますので、 dtb_order にもあった方がいいと思いますよ。


----------------
大河内健太郎(Kentaro Ohkouchi)
EC-CUBE公式エバンジェリスト
スキルニル株式会社

EC-CUBE1系2系長期サポートホスティングサービス CUBE Lab
https://cubelab.info/

habu
投稿日時: 2012/12/17 10:37
対応状況: −−−
長老
登録日: 2006/9/15
居住地:
投稿: 277
Re: 受注後の金額計算方法
nanasess様

返信ありがとうございます。

引用:
明細合計に対して課税する運用もあると思いますので、 dtb_order にもあった方がいいと思いますよ。


たしかに、こういう運用もありますね。

メジャーバージョンアップの際に、
管理画面から「明細合計に対して課税する」という設定ができるようにしておくと良いかもしれませんね。
そして、その機能追加の際には、dtb_orderにもカラムを足す必要がありますね。


#ただ、標準機能に「明細合計に対して課税する」コードを組み込まない場合、
その運用にするためには、各サイトにてコードの変更が必要で、
そのように、カスタマイズするのであれば、
標準では、dtb_order_detailのみにカラム追加しておいて、
カスタマイズの際にdtb_orderにカラムを足すというのが自然かなと思っています。


----------------
株式会社システムフレンド
羽生 賢太郎(Kentaro Habu)
改造専門店・EC-CUBE工房

nanasess
投稿日時: 2012/12/19 12:35
対応状況: −−−
登録日: 2006/9/9
居住地: 大阪
投稿: 2107
Re: 受注後の金額計算方法
引用:

#ただ、標準機能に「明細合計に対して課税する」コードを組み込まない場合、
その運用にするためには、各サイトにてコードの変更が必要で、
そのように、カスタマイズするのであれば、
標準では、dtb_order_detailのみにカラム追加しておいて、
カスタマイズの際にdtb_orderにカラムを足すというのが自然かなと思っています。


今後の国際化のことも考えると、カスタマイズ時にカラムを追加するより、最初から用意しておいて、その旨のコメントを書いておくくらいの方が良さげかなと思います。
プラグインなどで後から DB のカラムを追加しようとすると、一貫性もなくなりやすく、何かと大変なので。。。


----------------
大河内健太郎(Kentaro Ohkouchi)
EC-CUBE公式エバンジェリスト
スキルニル株式会社

EC-CUBE1系2系長期サポートホスティングサービス CUBE Lab
https://cubelab.info/

habu
投稿日時: 2012/12/21 14:53
対応状況: −−−
長老
登録日: 2006/9/15
居住地:
投稿: 277
Re: 受注後の金額計算方法
nanasess様

引用:
今後の国際化のことも考えると、カスタマイズ時にカラムを追加するより、最初から用意しておいて、その旨のコメントを書いておくくらいの方が良さげかなと思います。
プラグインなどで後から DB のカラムを追加しようとすると、一貫性もなくなりやすく、何かと大変なので。。。


返信ありがとうございます。
たしかに、そうですね。

また、過去の受注を編集して、商品を追加する場合にも、
dtb_orderの税率と課税規則を利用するようにした方が良さそうですので、
最初から、dtb_orderにも税率と課税規則を用意しておこうと思います。


----------------
株式会社システムフレンド
羽生 賢太郎(Kentaro Habu)
改造専門店・EC-CUBE工房

(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は66,731名です
総投稿数は98,429件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
468
2651
4
nanasess
2107
5
umebius
1757
6
yuh
1612
7
red
1424
8
h_tanaka
1049
9
fukap
907
10
tsuji
863
11
shutta
835
12
tao_s
792
13 ramrun 789
14 karin 657
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.