【JPIERE-0544(v9)】振替仕訳伝票での消費税の自動計算

振替仕訳伝票で消費税を自動計算できるようにしました。

振替仕訳伝票
振替仕訳伝票

消費税を自動計算したい振替仕訳伝票明細は、「税金情報」マスタと「売上/仕入区分」を入力して下さい。借方もしくは貸方の金額は税込み金額で入力します。保存した時に、課税標準額と税額が自動計算されます。

仕訳
仕訳

振替仕訳伝票

振替仕訳伝票の消費税自動計算は、明細単位の消費税計算と伝票単位の消費税計算の両方に対応しています。

※サマリレベルの税金情報マスタは日本では使用する必要が無い事もあり、使用できないように制御しています。

振替仕訳伝票明細タブ

消費税を自動計算する場合、借方取引通貨金額もしくは貸方取引通貨金額のいずれかに税込み金額で入力します。そして自動計算に必要な税金情報マスタと売上/仕入区分を選択入力します。そうすると、保存時に課税標準額と税額が自動計算されます。

振替仕訳伝票を完成にすると起票される自動仕訳で、課税標準額が選択されている勘定科目の金額として、そしえ税額が仮受消費税もしくは仮払消費税の科目の金額として転記されます。

振替仕訳伝票明細タブ
振替仕訳伝票明細タブ

◆税金情報

消費税を自動計算する場合に、その税金情報マスタを選択入力します。

◆売上/仕入区分

税金情報マスタが入力されている場合、その処理の方針を下記より1つを選択します。空欄の場合、保存時に”消費税自動計算対象外”が設定されます。

  • 消費税自動計算対象外 … 消費税の自動計算は行いません。
  • 売上げに係る消費税 … 消費税を自動計算し、仮受消費税処理します。
  • 仕入れ等に係る消費税 … 消費税を自動計算し、仮払消費税処理します。

◆課税標準額

保存時に、税金情報マスタと売上/仕入区分の情報をもとに自動計算した課税標準額が設定されます。

◆税額

保存時に、税金情報マスタと売上/仕入区分の情報をもとに自動計算した税額が設定されます。

 

税額計算タブ [JP_GLJournalTaxテーブル]

税額計算タブは、振替仕訳伝票単位で、税金情報マスタと売上/仕入区分毎にデータが作成されます。このデータは振替仕訳伝票から証票類を作成する時に使用する事を想定しています。振替仕訳伝票に税額計算タブを追加する事で、振替仕訳伝票から出力する証票類もインボイス制度に対応する事ができます。

税額計算タブ
税額計算タブ

税額計算タブのデータは、伝票レベルで消費税の計算を行う場合、明細レベルでの消費税計算と、伝票レベルの消費税計算の差異を求めるのにも使用されています。

消費税の自動計算の仕訳ロジック

Step1: 消費税の自動計算を行う明細の選別

振替仕訳伝票明細のうち、消費税の自動計算が必要な明細と、必要としない明細を選別します。消費税の自動計算が必要ない明細は、通常の振替仕訳と同じように転記されます。

Step2: 明細の税金情報をもとに転記

消費税の自動計算を行う場合、振替仕訳伝票明細にある課税標準額と税額をもとに転記されます。

Step3: 伝票レベルの消費税計算調整

Step2の処理は、明細レベルの消費税計算ですので、明細に入力されている税金情報マスタが伝票レベルの場合で、明細レベルの消費税計算と伝票レベルの消費税計算に差異が出ている場合は、その調整を行う仕訳が転記されます。

  • 差異の調整は勘定科目毎に行われます。
  • 勘定科目毎に差異を調整し、それでも差異が残った場合は、調整対象となった勘定科目の中から課税標準額が一番大きな勘定科目に加算されて最終調整されます。

カスタマイズ情報

追加テーブル

◆JP_GLJournalTaxテーブル

追加カラム

◆GL_JournalLineテーブル

  • 税金情報 [C_Tax_ID]
  • 売上/仕入区分 [JP_SOPOType]
  • 課税標準額 [JP_TaxBaseAmt]
  • 税額 [JP_TaxAmt]

追加メッセージ

  • JP_GLJournalTax_Either-Debit-Credit … 消費税を自動計算する場合は、借方か貸方のどちらかに金額を入力して下さい。
  • JP_GLJournalTax_SOPOType … 振替仕訳伝票の売上/仕入区分と税金情報マスタの売上/仕入区分が異なります。
  • JP_GLJournalTax_SummaryLevelTax … 振替仕訳伝票ではサマリー階層の税金情報マスタは使用できません。

追加クラス

◆jpiere.base.plugin.org.adempiere.baseパッケージ

  • JPiereGLJournalLineModelValidator

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

  • I_JP_GLJournalTax
  • X_JP_GLJournalTax
  • MGLJournalTax

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

  • Doc_GLJournalJP

 

修正クラス

◆jpiere.base.plugin.factoryパッケージ

  • JPiereBasePluginDocFactory … Doc_GLJournalクラスを呼び出せるように修正

◆jpiere.base.plugin.org.adempiere.baseパッケージ

  • IJPiereTaxProvider … 振替仕訳伝票で消費税の自動計算ができるデフォルトのメソッドを追加
  • JPiereGLJournalModelValidator … 微修正

カスタマイズ履歴

2024年3月21日(V11) : 税額計算タブの不具合解消

税金情報を入力した保存した振替仕訳伝票明細を、税金情報を空欄にして保存しなおすと、税額計算タブのデータが更新されない不具合を解消しました。

  • jpiere.base.plugin.org.adempiere.model.MGLJournalTax

2024年3月12日(V11) : ボイドして0円の明細がNPEになる不具合解消

ボイドして未転記状態になった時に転記するとヌルポインターエクセプション(NPE)になっていたのをならないように修正しました。

  • jpiere.base.plugin.org.compiere.acct.Doc_GLJournalJP

2024年3月5日(V11) :消費税自動計算対象外のリバースの不具合解消

「売上/仕入区分」を"消費税自動計算対象外"にした場合、リバースした伝票に課税標準額と税額が引き継がれない不具合を修正しました。

  • jpiere.base.plugin.org.adempiere.base.JPiereGLJournalModelValidator

2023年6月29日(V10) 振替伝票明細の組織を変更した際に、ヌルポになる不具合を解消

振替仕訳伝票明細の組織フィールドを変更した時に、税額計算タブのレコードの組織が変更されないため転記時にNullPointerExceptionになるのを解消しました。

2023年5月20日(V10) 税金情報タブのレコードを組織もキー情報の1つとしてに作成するように改修

税金情報タブのレコードは、これまで、GL_Journal_IDJP_SOPOTypeC_Tax_IDをキー情報として作成していましたが、これにAD_Org_IDを追加して作成するようにしました。

振替仕訳伝票明細では組織が異なる明細を登録する運用も考えられますが、これまで税金情報タブでは組織をキー情報の1つとしていなかったため、仮払消費税もしくは仮受消費税の仕訳は1つの組織にしか計上できませんでした。

この改修で、仮払消費税と仮受消費税の仕訳も組織毎に計上できるようになります。

◆修正したソースと追加したクラス

  • IJPiereTaxProvider
  • MGLJournalTax
  • Doc_GLJournalJP
  • DocTaxJournal(追加クラス)

◆ユニークインデックスの修正

JP_GLJournalTax_Indexを一度ドロップして、AD_Org_IDを追加して再作成して下さい。

◆JP_GLJournalTaxのAD_Org_IDカラムのリンクカラムをONにする

AD_Org_IDをユニークキーに追加したので、リンクカラムをONにして下さい。そうしないと削除する時にエラーになる場合があります。

 

2022年7月19日

消費税を自動計算しない場合でも、課税標準額と税額を入力できるようにし、仕訳にも引き継げるようにしました。

関連するカスタマイズ

関連するカスタマイズ