オープンソースのERP iDempiereの標準機能では、受注伝票登録時に、品目の原価はわかりませんが、予定原価フィールドを追加してわかるようにしました。この事により、受注伝票明細毎に、粗利を把握する事ができるようになります。
原価はあくまでも予定ですので、会計的に正確な利益ではありませんが、受注伝票の段階である程度の精度をもった利益がわかる事は、それなりにうれしいと思います。
あくまでも管理目的に原価を把握できるようにしていますので、予定原価のフィールドは自動設定後、手入力で修正する事もできるようにしています。必要に応じて手入力して下さい。
受注伝票明細と同じようにJPIERE-0183:見積伝票の明細にも予定原価を自動設定できるようにしています。
受注伝票への品目原価の設定
受注伝票明細タブ
受注伝票タブ
【補足説明】予定原価の通貨と粗利計算
予定原価フィールドの金額は、伝票の通貨に関わらず、常にベース会計スキーマの通貨で表示されます。ベース会計スキーマと同じ通貨の受注伝票であれば、単純に粗利を計算する事ができますが、異なる通貨の受注伝票の場合には、為替換算してから粗利を計算する必要があり、少々面倒です。
そのためJPiereでは受注伝票上では粗利までは表示せずに、粗利を表示したい場合は、JPIERE-0203:受注伝票粗利一覧レポートを使用する事を想定しています。
発注伝票への品目原価の設定
受注伝票明細に品目原価を設定するのと同じ仕組みを発注伝票明細にも適用しています。発注伝票明細上は、"現在の原価"として表示され変更できないようにしています。"発注価格"と"現在の原価"を比較して、適正価格で仕入が出来ているかどうか参考にするのに使用する事を意図しています。
受注伝票/発注伝票明細に品目原価をセットする設定
名称フィールドに"JPIERE_SET_COST_TO_ORDER-LINE"と入力し、検索キーに次のいずれかを設定して下さい。
- SO…受注伝票明細だけに品目原価を設定します。
- PO…発注伝票明細だけに品目原価を設定します。
- BT…受注/発注伝票の明細の両方に品目原価の設定をします。
- NO…受注/発注伝票の明細に品目原価の設定はしません。
カスタマイズ情報
修正クラス
受注伝票明細のモデルバリデータにロジックを追加しています。
- JPiereOrderLineModelValidator
見積伝票明細はモデルクラスのbeforeSave()メソッドにロジックを追加しています。
- MEstimationLine
追加エレメント
C_OrderテーブルとJP_Estimationテーブル
- JP_ScheduledCostTotalLines(予定原価明細行合計/現在の原価明細行合計)
C_OrderLineテーブルとJP_EstimationLineテーブル
- JP_ScheduledCost(予定原価/現在の原価)
- JP_ScheduledCostLineAmt(予定原価明細行計/現在の原価明細行計)
カスタマイズ履歴
2017年4月30日
これまで受注伝票明細の原価(PriceCost)に、品目マスタの原価を自動設定していたのを廃止して、新規に追加した"JP_ScheduledCost"のフィールドに原価を設定するようにしました。
2018年4月28日
受発注伝票の明細に品目原価をセットする際に、ヌルポのエラーが発生する不具合を修正しました。