2011年12月24日 星期六

[Cost] Remove Resource & Overhead association from Frozen

原本 Resource1 應該與 Overhead1 對應,結果 User 做錯了,對應到 Overhead2,也做了 Cost Update,也就是說,Frozen Cost Type 中,存在著錯誤的 Resource & Overhead 對應關係。

依照過去經驗,User 修正了 Pending Cost Type 的資料,也就是把錯誤的 Resource1&Overhead2 關係刪除,改成正確的 Resource1&Overhead1。修正 Pending Cost Type 之後,便執行 Cost Update,以更正 Frozen Cost Type 的資料了。

怪事發生了,Frozen Cost Type 中,Overhead1 已經與 Resource1 建立起關聯,BUT ,原本預期應刪除的 Overhead2 與 Resource1 的關聯,在 Frozen 也還存在!!

原以為是 Oracle Bug,因為依照過往經驗,當 Cost Update 之後,Frozen 的資訊應該與 Pending 相同才對,結果查了 Metalink 後,Oracle 說,這是標準功能,不是 Bug。

Oracle 的說法是,Resource & Overhead Association 只會 Insert & Update,不會 Delete,因為 Oracle 很 "貼心" 的,擔心客戶是"忘了維護",而不是"真的不要",所以不做刪除。

要怎麼處理呢?  Oracle 的說法是,把 Overhead Rate 設成 0,對於成本就無影響了。問題是,Overhead Rate 是依靠 Department 設定的,而該 Department 的其他 Resource,確實會用到 Overhead1,一旦 Rate 設成 0,換其他 Resource 被影響。

我建議 User 把 Resource & Overhead 重新設定,每個 Resource 都對應一個獨立的 Overhead,沒有共用的情況下,維護的彈性比較高,不過,這很費工,User 不買單。

最後,只能拼了,把 cst_resource_overheads 中的 Record 直接刪除。目前為止,尚無任何問題,應該是安全的吧 .....

Oracle 有一個 Enhancement,讓客戶可以刪除 Frozen 中的 Resource & Overhead Association,不過這個 Enhancement 也有個幾年了。  從以前到現在,Oracle 的 Enhancement 好像不太會實現 ....

沒有留言: