[例] 選択肢の絞り込みを用いて、操作時点での消費税を定める
最終更新日: 2020年3月14日
R8 | R9
「消費税率」モデルを用意します。図1に示す初期データを登録しておきます。
受注モデルで利用した例です。販売額に対して、操作時点での消費税率(図2の例では8パーセント)が適用されています。
「税率開始日」を日付型とします。「消費税率」を8バイト浮動小数点型とします。
消費税の計算を行うモデルでは「日付」「金額」「消費税」「消費税額」に相当する項目を用意します。
この項目は消費税モデルの参照となります。リストボックスとしてください。
この値はデータベースに保存しない、とします。
計算時の消費税を記録として残しておく、という場合は、データベースに保存してください。
「他項目の値で選択肢を絞り込む」設定を行います。次のようにします。
さらに、この選択肢は「税率開始日」の降順であらかじめソートさせておき、かつ、(複数ある選択肢の)先頭1つだけを用いる、とします。
この設定により、現時点における消費税率が確定されます。この設定のイメージは次のとおりです。
さらに、この項目は入力時に隠しとします。さらに出力時にも隠しとします。これによって画面には表示されません。
開発時は、隠し指定を解除するとよいでしょう。現在の消費税率を画面上で確認できます。
消費税額を求める式を示します。
例
定義方法
消費税率モデル
消費税計算を行うモデル
項目
説明
型
日付
税率を求める時点の日付項目
日付型。対象日となる。
金額
税率を求める対象となる項目
整数型。参照連動を用いて、商品マスタにある値を転記する、といった使い方もできる。
消費税
算出日時点での消費税
消費税モデルを参照する。後述する設定により、対象日付の消費税に絞り込む。
消費税額
金額と消費税を掛け合わせて求める。
誤差がないような式とする。(後述)
隠し項目消費税
ワンポイント
注意
消費税額
IF (${HIDDENTAX} == 0.0,
0,
(int)ROUND(VALUE(MUL(${AMHANBAI},${HIDDENTAX})),0)
)