輸送中の在庫を区分管理するために、実際には存在しない概念的な倉庫(以下、「論理倉庫」という)をマスタとして登録して運用する方法があります。例えば、移動元の倉庫でトラックに在庫を載せたら、論理倉庫への在庫移動伝票を作成し完成にします。この論理倉庫は”輸送中”のステータスを意味する倉庫で、その実態はトラックや船、飛行機など貨物を運ぶ輸送手段です。輸送中は実際にその輸送手段に在庫があるので、在庫を管理する枠組みという意味では輸送手段も倉庫として登録するのは合理性があります。そして目的地に在庫が到着したら、論理倉庫にある在庫を、目的地の倉庫に移動させる在庫移動伝票を作成し、完成にします。
この方法は、輸送中の在庫を区分管理する上では非常にわかりやすいというメリットがありますが、次の2つの課題があります。
◆1回の在庫移動に2枚の在庫移動伝票を起票しなければならない
◆1枚目の在庫移動伝票では、最終目的地となる倉庫がわからない
上記2つの課題を解決し、輸送中に複数の論理倉庫を経由した場合に、それらの経路を辿っていけるようにしました。
在庫移動伝票
在庫移動伝票タブ
◆出発地倉庫
ONにすると「組織倉庫(From)」と「物理倉庫(From)」フィールドの値が、「組織倉庫(出発地)」と「物理倉庫(出発地)」フィールドに入力されます。OFFにすると手入力で「組織倉庫(出発地)」と「物理倉庫(出発地)」フィールドを入力できます。
◆最終目的地となる倉庫
下記のいずれかを選択入力できます。
- 倉庫(To) … 「組織倉庫(To)」と「物理倉庫(To)」フィールドに入力した倉庫が「組織倉庫(最終目的地)」と「物理倉庫(最終目的地)」フィールドに入力されます。
- 倉庫(次の目的地) …「組織倉庫(次の目的地)」と「物理倉庫(次の目的地)」フィールドに入力した倉庫が「組織倉庫(最終目的地)」と「物理倉庫(最終目的地)」フィールドに入力されます。
- その他の倉庫 … 手入力で「組織倉庫(最終目的地)」と「物理倉庫(最終目的地)」フィールドを入力できます。
◆組織倉庫(次の目的地)/物理倉庫(次の目的地)
「組織倉庫(To)」と「物理倉庫(To)」フィールドの次の在庫移動先となる倉庫を入力します。
◆1つ前の在庫移動伝票
「組織倉庫(From)」と「物理倉庫(From)」に在庫移動した在庫移動伝票が入力されるフィールドです。
◆次の目的地への在庫移動伝票
「次の目的地への在庫移動伝票作成」プロセスを実行して作成された在庫移動伝票が入力されるフィールドです。
論理倉庫を活用した在庫移動の経路の記録
「論理倉庫」の概念を活用して、輸送中の在庫を区分管理する場合、移動経路毎に論理倉庫を作成することで、在庫移動の経路を記録することができます。
【カスタマイズポイント】経路情報のマスタ化
このカスタマイズでは在庫移動の経路情報まではマスタ化していませんが、経路情報をマスタ化して1枚の在庫移動伝票を完成にした時に、その経路情報マスタを参照して、すべての経路の在庫移動伝票を最初に作成してしまうようなカスタマイズも良いかなと思います。そうすることで、出発地から最終目的地までの配送状況が一目で把握できるようになるはずです(配送されているところまでの在庫移動伝票が完成になるので!!)。それに在庫を受け入れるシステム操作も、伝票を完成にするだけなので操作の手間も無いかなと思います。
カスタマイズ情報
M_Movementテーブルへのカラムの追加
◆JP_WarehouseNext_ID: 組織倉庫(次の目的地) / Org Warehouse(Next)
- 常時更新可能
◆JP_PhysicalWarehouseNext_ID: 物理倉庫(次の目的地) / Physical Warehouse(Next)
- 常時更新可能
◆JP_MovementDateNext: 次の目的地への到着予定日 / Movement Date(Next)
- 常時更新可能
◆IsDepartureWarehouseJP: 出発地倉庫 /Departure Warehouse
- 必須入力
- デフォルト:Y
◆JP_DestinationWarehouse: 最終目的地となる倉庫/Destination Warehouse
- 常時更新可能
- デフォルト:T
◆JP_Processing1
- 常時更新可能
- 必須入力
- デフォルト:N
- コピー許可:OFF
◆JP_WarehouseDep_ID: 組織倉庫(出発地) / Org Warehouse(Departure)
- 読取専用ロジック: @IsDepartureWarehouseJP@=Y
- コピー許可: OFF
◆JP_PhysicalWarehouseDep_ID: 物理倉庫(出発地) /Phys Warehouse(Departure)
- 読取専用ロジック: @IsDepartureWarehouseJP@=Y
◆JP_WarehouseDst_ID: 組織倉庫(最終目的地) / Org Warehouse(Destination)
- 読取専用ロジック: @JP_DestinationWarehouse@!O
- コピー許可: OFF
◆JP_PhysicalWarehouseDst_ID: 物理倉庫(最終目的地) / Physical Warehouse(Destination)
- 読取専用ロジック: @JP_DestinationWarehouse@!O
- コピー許可: OFF
◆JP_MovementDateDst: 最終目的地への到着予定日 / Movement Date(Destination)
- 読取専用ロジック: @JP_DestinationWarehouse@!O
- コピー許可: OFF
◆JP_MovementPre_ID : 1つ前の在庫移動伝票/ Inventory Move(Previous)
◆JP_MovementNext_ID : 次の在庫移動伝票/Inventory Move(Next)
◆JP_Subject: 件名
◆JP_CommunicationColumn: 通信欄
◆JP_Remarks: 備考欄
M_MovementLineテーブルへのカラムの追加
◆JP_CommunicationColumn: 通信欄
リストバリデーションの追加
◆JP_DestinationWarehouse
- N … 倉庫(次の目的地) / Warehouse(Next)
- O … その他の倉庫 / Other Warehouse
- T … 倉庫(To) / Warehouse(To)
モデルバリデーターの修正
- jpiere.base.plugin.org.adempiere.base.JPiereMovementModelValidator
フィールドグループの追加
- - Inventory Move Route Info(在庫移動経路情報)