【JPIERE-0369】摘要科目による外税と内税の明細の混合対応

iDempiereでは、受注伝票、売上請求伝票、発注伝票、仕入請求伝票で、消費税が計算されています。その際に、伝票ヘッダにあるプライスリストにより、伝票単位で税込みか税抜きか消費税処理が決定されます。

しかし、場合によっては外税金額と内税金額の明細を混在した伝票を作りたくなる事もあるでしょう。

そこでJPiereでは、摘要科目(旧料金タイプ)を使用して、プライスリストで選択されている、伝票毎の税込みか税抜きかの処理に関わらず、どちらでも処理ができるようにしました。

つまり、JPiereでは、摘要科目を使用する事で、伝票明細に税込みと税抜きが混在する事を許容します。

iDempiere無料出張セミナーと相談会

カスタマイズ概要

iDempiereは、伝票毎に税抜処理か税込処理かどちらかを選択されます。 しかし、摘要科目(旧訳:料金タイプ)には、税込価格フラグがあり、明細行毎に税抜 or 税込の処理ができるようにも仕様的に検討されている痕跡が存在します。

摘要科目マスタ
摘要科目マスタ
  • 税込価格(IsTaxIncluded)…適用科目を使用した明細には税込価格で入力する事を意味するフラグだと思われます。
  • 同じ税金(IsSameTax)…税込価格フラグのON/OFFに関わらず、伝票の税込or 税抜処理に従うかどうかの判定フラグだと思われます。

この仕様は、iDempiereでは実装されていませんが(税込価格フラグはOFFの状態で読取専用になっており変更できない。また同じ税金フラグは使用している箇所が見当たらない)、JPiereではタックスプロバイダー(税金処理のプラグイン)のロジックに組み込む事で実装しました。

 

税抜き計算の伝票に、税込みの明細を登録する場合、その税金情報マスタは明細レベルの税額計算にする必要があります。伝票レベルで処理してしまうと、端数処理の関係で仕訳と数円ズレる可能性があります。
摘要科目に登録するマスタで、必ず税込で処理させたい場合は、同じ税金フラグをOFFにして、税込価格をONにします。

使用例

「得意先へ1000円(税別)の出張サービスを提供し、サービス料は税抜きで、出張に係る旅費交通費は実費980円の税込み価格で処理したい。」

売上請求伝票の例
売上請求伝票の例

プライスリストは税抜きなので、S0001_サービスAの品目については、税抜き処理されているのが確認できます。摘要科目の8431_旅費交通費(税込)については、税込処理するように設定されていますので、980円が税込み価格として処理されています。

転記
転記

もちろん、転記にも反映されています。

技術情報

修正したクラス(Recognition関係)

◆jpiere.base.plugin.org.adempiere.model.JPiereTaxProvider

◆jpiere.base.plugin.org.adempiere.model.MRecognitionLine

◆jpiere.base.plugin.org.adempiere.model.Doc_JPRecognition

修正したクラス(Estimation関係)

◆jpiere.base.plugin.org.adempiere.model.JPiereTaxProvider

◆jpiere.base.plugin.org.adempiere.model.MEstimationLine

修正したクラス(Order関係)

◆jpiere.base.plugin.org.adempiere.base.JPiereOrderLineModelValidator

◆jpiere.base.plugin.org.adempiere.model.JPiereTaxProvider

修正したクラス(Invoice関係)

◆jpiere.base.plugin.org.adempiere.base.JPiereInvoiceLineModelValidator

◆jpiere.base.plugin.org.adempiere.model.JPiereTaxProvider

◆jpiere.base.plugin.org.compiere.acct.Doc_InvoiceJP

関連するコンテンツ

説明資料

iDempiereトレーニング研修