2007年12月14日

OO4O 與 VB/VBA

前陣子,也是使用者提出的需求,他希望能夠用 Excel 把資料倒進 Oracle,雖然 Oracle 有 SQL Loader,但是對使用者來說,那不是一個簡單的東西,所以呢,他想要「直接」用 Excel。

雖然可以使用 ODBC 或者 ADO,但是顧問告訴我們一個小東西 : OO4O

2007年12月13日

防止 User 自行修改 Profile

有時候不知道使用者是太聰明還是怎樣的,就是會改到一些不該改的。為了避免慘劇發生,能擋能防的就全上吧!

2007年12月11日

FNDLOAD

如下為 11.5.10 版本以上可用的 FNDLOAD 語法,可將各種設定下載轉出為 .ldt 的檔案,然後搬移此檔案到新的環境,再透過上傳的指令就能完成設定。

在導入階段多個環境間 (Test/Pilot-Run/Prod) 進行設定時非常有幫助。

2007年12月9日

Price List: Build Attribute Mapping Rules

在設定正式環境時,突然發現雖然價格表 (Price List) 已經建立,使用者也選的到,可是系統卻還是跳出錯誤訊息出來然後帶不出價格。

原因就是有一隻程序沒有執行。

Responsibility:Oracle Pricing Manager

Path:Reports

Request Name:Build Attribute Mapping Rules
=====
補充:如果日後仍有新增的價格表的需求,建議將這隻程式直接排程定期去跑。

2007年12月8日

Issue: [Request Date] Change is clearing the [Blanket Line Number]

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,這次就抓到了。就演變成改一次不可以,改第二次可以的錯誤循環。

所以,一樣開了 SR 給 Oracle,不過 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);


*****

就解決了我的問題。