演習問題

【要望】

食品メーカーのA社では、売上システムで請求処理をしていて、現在は消費税額を顧客の基準に合わせて計算している。
 
顧客マスタには以下の様な区分があり、

(消費税)丸め単位(1:明細単位、2:納品書単位、3:請求書単位)
(消費税)丸め方法(1:切捨て、2:四捨五入、3:切上げ)

その区分によって処理を分けている。

経理システムに連動するにあたり、請求締処理の段階で連動データを作ることになりました。

しかし、経理システムでは明細単位に消費税を持たねばならず、その合計が請求書の消費税額と一致する必要があるため、納品書単位、請求書単位の顧客のデータについては明細単位に消費税の誤差を配賦したデータを作ってください。

【配賦方法】

明細単位で丸めた消費税の合計と、納品書・請求書単位で算出した消費税の差を、明細単位の合計金額の多いものから順に1円ずつ増減する。

経理システムに連動するデータは以下のとおりです。

納品書NO
請求書NO
売上日
得意先ID
商品ID
商品区分
単価
数量
消費税
……

【テーブル】

関連するテーブルは次のとおり

売上

売上ID
納品書NO
請求書NO
得意先ID
売上日
……

売上明細

明細ID
売上ID
行NO
商品ID
単価
数量
……

得意先

得意先ID
丸め単位(1:明細単位、2:納品書単位、3:請求書単位)
丸め方法(1:切捨て、2:四捨五入、3:切上げ)
……

商品

商品ID
商品区分
消費税率
……

※ OLAP関数を使います。PostgreSQL・MySQLなどではサブクエリーが相当必要です。
※ fn丸め(数値, 丸め方法)というストアドファンクションを使います。

 さて、処理をイメージできましたでしょうか?


答えはこちらのページです。→演習問題の答え

----------Close---------