手書伝票の機能は、元となる伝票(もと伝票)が存在し、元伝票の情報からでは、取引先に提出する各種証票類が作成できない場合に使用する事を想定しています。例えば、売上請求伝票の明細は、システム的にデータを処理するために必要な情報であり、その情報をもとに請求書を作成するのは難しい場合があります。システム的には明細を細かく入力していても、取引先に渡す証票上は、"〇〇〇一式"などと、まとめて表示させたい場合もあるでしょう。
手書伝票は自由に情報を加工する事ができる反面、誤って元伝票とは違った情報にしてしまう可能性もあります。手書伝票は自由に入力できるというのが機能要件ですので、元伝票の情報との整合性を確保する事は非常に難しいのですが、最低限のチェックとして金額が同じかどうかのチェックをする事は可能です。そこで、手書伝票と元伝票とで金額が同じかどうかチェックする機能を実装しました。
前提
手書伝票では、元伝票の情報が保持できるようになっています。
- 参照受注伝票(Ref_Order_ID)
- 入出荷伝票(M_InOut_ID)
- 請求伝票(C_Invoice_ID)
- まとめ請求書(JP_Bill_ID)
- 入金支払伝票(C_Payment_ID)
- 得意先返品受付伝票(M_RMA_ID)
上記のフィールドに入力された元伝票と、手書伝票の金額が同じ金額である事をチェックする事になりますが、入出荷伝票については金額情報を持たないので、今回のチェックの対象外とします。
使用方法とチェックロジック
受注伝票(発注伝票)との整合性のチェック
◆JP_ESTIMATION_ORDER_AMT_CHECK
上記のシステムコンフィグ設定が"Y"の時に、手書伝票の総額(GrandTotal)と、受注伝票(発注伝票)の総額(GrandTotal)が同額な事をチェックします。
売上請求伝票(仕入請求伝票)との整合性のチェック
◆JP_ESTIMATION_INVOICE_AMT_CHECK
上記のシステムコンフィグ設定が"Y"の時に、手書伝票の総額(GrandTotal)と、売上請求伝票(仕入請求伝票)の総額(GrandTotal)が同額な事をチェックします。
まとめ請求書との整合性のチェック
◆JP_ESTIMATION_BILL_AMT_CHECK
上記のシステムコンフィグ設定が"Y"の時に、手書伝票の総額(GrandTotal)と、まとめ請求書の請求金額(JPBillAmt)が同額な事をチェックします。
入金伝票(支払伝票)との整合性のチェック
◆JP_ESTIMATION_PAYMENT_AMT_CHECK
上記のシステムコンフィグ設定が"Y"の時に、手書伝票の総額(GrandTotal)と、入金伝票の入金金額(PayAmt)が同額な事をチェックします。
得意先返品受付伝票(仕入先返品依頼伝票)との整合性のチェック
◆JP_ESTIMATION_RMA_AMT_CHECK
上記のシステムコンフィグ設定が"Y"の時に、手書伝票の明細行合計(TotalLines)と、得意先返品受付伝票の金額(Amt)が同額な事をチェックします。
カスタマイズ情報
追加メッセージ
◆JP_EstimationAmountConsistencyError
Estimation Amount Consistency Error(見積伝票/手書伝票の金額の整合性エラー)
関連するクラス
◆jpiere.base.plugin.org.adempiere.model.MEstimation
※amountConsistencyCheck()メソッド