
在iDempiere ERP中,除了可以利用欄位的超連結去訪視相關單據外.
還有一個很方便的工具, Zoom 放大鏡. 找到和本身單據相關的單據. 它的關係原則是其它單據的欄位含有本身單據的主鍵.
例如:
1)銷售訂單抛轉出貨單時, 會在産生的單據留下銷售訂單的主鍵. (C_Order_ID). 便可以符合放大鏡的搜尋條件.
2)在接單生産的企業, 銷售訂單抛轉製令單時, 製令單單頭上留下的對應ID為 C_OrderLine_ID. 不符合銷售訂單的Zoom放大鏡搜尋條件. (C_Order_ID)
有許多方法可以即時補上 C_Order_ID 資訊
SQL: 在 Table Valdator 加入 SQL 去 update C_Order_ID.
Java: 在 製令單 Model PO beforeSave 更新 C_Order_ID
@Override
protected boolean beforeSave(boolean newRecord) {
/**
* Update C_Order_ID
*/
MOrderLine ol = new MOrderLine(getCtx(), getC_OrderLine_ID(), get_TrxName());
setC_Order_ID(ol.getC_Order_ID());
return super.beforeSave(newRecord);
}English Version

In iDempiere ERP, besides using field hyperlinks to access related documents,
there is a very convenient tool called Zoom (magnifier). It finds documents related to the current one. The underlying principle is that other documents’ fields contain the primary key of the current document.
For example:
1) When a Sales Order is converted to a Shipment, the generated document retains the Sales Order’s primary key (C_Order_ID), which satisfies the Zoom magnifier’s search criteria.
2) In make-to-order manufacturing, when a Sales Order is converted to a Manufacturing Order, the Manufacturing Order header stores C_OrderLine_ID as the corresponding ID. This does not satisfy the Sales Order’s Zoom magnifier search criteria (C_Order_ID).
There are several methods to populate C_Order_ID in real time:
SQL: Add SQL in a Table Validator to update C_Order_ID.
Java: Update C_Order_ID in the Manufacturing Order Model PO beforeSave method.
@Override
protected boolean beforeSave(boolean newRecord) {
/**
* Update C_Order_ID
*/
MOrderLine ol = new MOrderLine(getCtx(), getC_OrderLine_ID(), get_TrxName());
setC_Order_ID(ol.getC_Order_ID());
return super.beforeSave(newRecord);
}日本語版

iDempiere ERPでは、フィールドのハイパーリンクを使って関連伝票にアクセスする以外に、
Zoom(拡大鏡)という非常に便利なツールがあります。これは現在の伝票に関連する伝票を検索します。その原理は、他の伝票のフィールドに現在の伝票の主キーが含まれていることです。
例:
1) 販売注文を出荷伝票に変換する際、生成された伝票に販売注文の主キー(C_Order_ID)が保持されるため、Zoom拡大鏡の検索条件を満たします。
2) 受注生産の企業では、販売注文を製造指図に変換する際、製造指図のヘッダーに保存される対応IDはC_OrderLine_IDです。これは販売注文のZoom拡大鏡の検索条件(C_Order_ID)を満たしません。
C_Order_ID情報をリアルタイムに補完する方法はいくつかあります。
SQL: Table ValidatorにSQLを追加してC_Order_IDを更新する。
Java: 製造指図のModel PO beforeSaveメソッドでC_Order_IDを更新する。
@Override
protected boolean beforeSave(boolean newRecord) {
/**
* C_Order_IDを更新
*/
MOrderLine ol = new MOrderLine(getCtx(), getC_OrderLine_ID(), get_TrxName());
setC_Order_ID(ol.getC_Order_ID());
return super.beforeSave(newRecord);
}