Oracle OM 標準的 Quote 只能產生一張 Sales Order,這個機制對我們來說並不適合,所以我們轉而使用 Blanket Sales Agreement (BSA)。

BSA 可以重複不斷的產生 Sales Order,也可以綁價格表 (Price List),當然也可以設定使用時間區間。

但是,打訂單的時候我們發現,如果去修改 Request Date,系統應該是要重新抓取對應到的 Blanket Line,卻沒有抓到造成 SO Line 的 Blanket Line Number 欄位被清空,進而發出 Note Message;如果再修改一次 Request Date,這次就抓到了。就演變成改一次不可以,改第二次可以的錯誤循環。

一樣,我去 Oracle Log TAR,Oracle 似乎不認為這是 BUG (?),所以給我以下的修正方式:

Package Name:OE_Dependencies_Extn

ELSIF p_entity_code = OE_GLOBALS.G_ENTITY_LINE THEN 底下新增下列 Code:

-- to disable dependency G_REQUEST_DATE -> G_BLANKET_LINE_NUMBER,
x_extn_dep_tbl(l_index).source_attribute := OE_LINE_UTIL.G_REQUEST_DATE;
x_extn_dep_tbl(l_index).dependent_attribute := OE_LINE_UTIL.G_BLANKET_LINE_NUMBER;
x_extn_dep_tbl(l_index).enabled_flag := 'N';
l_index := l_index + 1;
oe_debug_pub.add('G_BLANKET_LINE_NUMBER', 1);

就解決了我的問題。
arrow
arrow
    全站熱搜

    Aloz 發表在 痞客邦 留言(0) 人氣()