【JPIERE-0344】在庫取引管理台帳のタイムスタンプ作成

 オープンソースのERP iDempiereには、在庫を管理している台帳として、"現在庫数量管理台帳"と"在庫取引管理台帳"の2つの台帳があります。現在庫数量管理台帳を使用すると、現在保持している在庫の数量を素早く把握することができますが、現在在庫数量管理台帳では、過去のある一定時点での在庫数量を確認する事はできません。過去のある一定時点の在庫数量は、在庫の増減に係る取引をすべて記録している在庫取引管理台帳より把握する事ができますが、取引が増えるにしたがって、それは時間がかかる処理になります。

 通常、過去のある一定時点の在庫数量を知りたいという場合、その日付は期末などの特定の日付です。そこで、JPiereでは、期末日などある特定の日付の在庫数量をタイムスタンプ的に別テーブルに保存して、素早く参照できるようにカスタマイズしました。

在庫取引管理台帳のタイムスタンプ作成プロセス

 在庫取引管理台帳のタイムスタンプ作成プロセスでは、指定した日付(評価日付)の在庫数量を保管場所×品目マスタで集計し、JP_MTrans_TimeStampテーブルに記録します。

プロセス実行画面

プロセス実行画面
プロセス実行画面

◆評価日付

在庫取引管理台帳のタイプスタンプを作成する日付です。

◆データ削除のみ行う

作成した在庫取引管理台帳のタイムスタンプデータを削除する際に使用します。タイムスタンプのデータが多くなった場合に、過去の評価日付を指定して実行する事で、参照しなくなったデータを削除する事ができます。

 

在庫取引管理台帳(タイムスタンプ)ウィンドウ

 在庫取引管理台帳のタイムスタンプ作成プロセスで作成したデータを確認するためのウィンドウです。

在庫取引管理台帳(タイムスタンプ)ウィンドウ
在庫取引管理台帳(タイムスタンプ)ウィンドウ

カスタマイズ情報

追加テーブル

◆JP_MTrans_TimeStamp

追加クラス

◆jpiere.base.plugin.org.adempiere.process.CreateMTransTimeStamp

カスタマイズ履歴

2024年12月6日(v11) UUIDのセット

JP_MTrans_TimeStamp_UUカラムにUUIDをセットするように修正しました

2023年1月24日ver10 DELETE文の構文修正

過去のデータを削除するDELETE文の構文に誤りがあったので修正しました。

2020年7月27日:PostgreSQL - To_Date()関数の引数チェックの厳格化への対応

PostgreSQL10よりTo_Date()関数の引数のチェックが厳格化された事により、jpiere.base.plugin.org.adempiere.process.CreateMTransTimeStampクラスをメンテナンスしました。

参照:https://www.ashisuto.co.jp/db_blog/article/201712-postgresql10-upgrade.html

関連するコンテンツ