oracle 問題解決文件
TRANSCRIPT
AP的錯誤訊息 - APP-SQLAP-97038..........................................................................2
多ORG 成本卻要一致性的做法..................................................................................4
Discoverer Plus 開發之報表在Discoverer Desktop 中開啟發生問題 - sum distinct.6
設定Discoverer Business Area 權限.............................................................................7
設定 ECC-PO-未來一週預計交貨報表 - 收件人......................................................13
date range 使用 TRUNC() 會影響 PERFORMANCE...............................................14
1
AP 的錯誤訊息 - APP-SQLAP-970381. Invoice total 與 distribution total 應一致
2. 修改金額後,再勾選 Validate、Validate Related Invoices
3. 狀態就變成 Validate
2
多 ORG 成本卻要一致性的做法
系統提供兩種方式:
1 使用 share Cost
1.1 透過 Organization Parameters 的 cost organization 的設定
1.2 進入 Item Cost 畫面時,會顯示以下訊息,無法修改成本,必須在 Cost
Organization 裡,才能修改 Item Cost
設定要與那一個廠別同成本
4
1.3 限制:
1.3.1 跨幣別使用會有問題,系統無法考慮幣別轉換
1.3.2 BOM & Routing 並不一致,工單結案時會有差異發生
2 Common BOM & Routing in Master Organization
2.1 將 BOM & Routing Create in Master Organization
2.2 將 BOM & Routing Common to Other Organization,前提為 Resource &
Overhead 在每一個 Organization 設定必須一致,Resource & Overhead Rate
也必須相同
2.3 在 Master Organization 維護採購件成本,透過 Cost Rollup & Copy Item
Costs Across Organizations 將採購件成本 & 製造件成本複製到 Other
Organization 中,若有跨幣別需求時,可以選擇匯率
2.4 在各廠別分別執行 STD Cost Updated,更新標準成本。
2.5 限制:
2.5.1 作法較為繁瑣
2.5.2 無法限制成本被異動的機會
5
Discoverer Plus 開發之報表在 Discoverer Desktop 中開啟發生問題 - sum distinct
Plus 中有比 Desktop 多了一些 Calculation 如 sum distinct 如果在 plus 使用 desktop 中沒有的 Calculation 的話 到 Desktop 中,就會無法顯示此 sum distinct
由於 user 需要的條件如下:Column % Goal = Column Goal / Column BBQTD 季目標值 / 季實際出貨值特殊判斷:1.當季目標值為 0(無目標值), 並且實際出貨值不等於 0 時,達成率為 100%
2.當季實際出貨值為 0(無出貨金額),並且當季目標值不論是否為 0 時,達成率為 0%
如果使用 case 語法定義此 Calculation 的結果的話再使用 discover 裡的 sum 會變成加總儲存格的總計
所以一定要使用單純的相除法 discover 裡的 sum 才會相除才會正確sum(Column Goal)/ sum(Column BBQTD)
discoverer 無法接受 0/0 or 0/1 or 1/0 的運算式故我使用 0.00000001/0.00001 的方式 產出也是等於 0% 可以達到此效果
正確 錯誤
tech bbqtd goal %goal tech bbqtd goal %goal
a 4 6 67% a 4 6 67%
b 5 0 100% b 5 0 100%
c 0 8 0% c 0 8 0%
d 3 8 38% d 3 8 38%
e 0 0 0% e 0 0 0%
sum 12 22 55% sum 12 22 204%
DECODE(Bbqtd SUM,0,0.00000001,Bbqtd SUM)/DECODE(Bbqtd SUM,0,0.00001,(DECODE(Goal SUM,0,Bbqtd SUM,Goal SUM) ))
6
設定 Discoverer Business Area 權限設定有二部分◎ Security : 設定 Business Area 使用權限◎ Privileges: 設定 Administrator & Desktop and Plus 的各項異動查詢權限1.當製作好 Business Area 時,需加入至 user 或 responsibility ,這樣 user RUN 報表時,才有權限去使用此 Business Area
點入選擇
7
左邊為你目前所有的 business area 右邊為你要 share 出的 business area
***如果下方 Allow Administrator 打勾時,代表你允許此 USER 可以去使用Administrator 中的所有 Privileges,因為 MIS 人員皆有新增刪除修改的Privileges,故此部分勿打勾,不然其他人可以異動你的 Business Area
例一:Allow Administrator 不勾時
Discoverer Administrator 選不到
1. 先選擇類型
2. 可輸入條件篩選
1
2
8
***建議大家新增 business area 時,皆開放給 SYSADMIN + Allow Administrator
這樣在測試區大家皆可以使用 SYSADMIN 去參考其他人的 business area
2.以下為 Sysadmin Grant 給大家的 Privileges,但因為 Set Privilege 沒有打勾, 所以在 OracleBI Discoverer Administrator 中,Privileges 會反白。
10
date range 使用 TRUNC() 會影響 PERFORMANCE
如果用 TRUNC 會影響到 PERFORMANCESELECT TO_DATE('SEP-09','MON-RR') ,ADD_MONTHS(TO_DATE('SEP-09','MON-RR'),1)-1/86400 FROM DUAL;把日期 的 Date to 用換算到 日期的 23:59:59
如此即可以直接用 "BEWTEEN / AND" , 而不用加 TRUNC
SELECT TO_DATE(V_PERIOD,'MON-RR'),ADD_MONTHS(TO_DATE(V_PERIOD,'MON-RR'),1)-1/86400 INTO V_DATE_FROM,V_DATE_TO FROM DUAL;
SELECT NVL(SUM(NVL(WTA.BASE_TRANSACTION_VALUE,WTA.TRANSACTION_VALUE)),0) INTO V_WIP_VAR FROM WIP_TRANSACTION_ACCOUNTS WTA, GL_CODE_COMBINATIONS GCC WHERE WTA.ORGANIZATION_ID = r1.ORGANIZATION_ID AND WTA.REFERENCE_ACCOUNT = GCC.CODE_COMBINATION_ID AND GCC.SEGMENT4 = '591020' AND WTA.TRANSACTION_DATE BETWEEN v_date_from AND v_date_to AND WTA.WIP_ENTITY_ID = r6.wip_entity_id;
可以以此變化參數
14