搜尋此網誌

2014年10月1日 星期三

[AP] Partial Accounted的問題

近日發生有張invoice發生Create Final Accounting後,畫面上的Accounted出現Partial字樣,依照GDF的patch做資料修正完成,但再次Create Final Accounting,原先的Error不再發生,但Accounted依然出現Partial,檢查Distribution內的process_flag皆為Y,經顧問協助了解該欄位的查核機制。

該欄位顯示由AP_INVOICES_UTILITY_PKG.get_posting_status取得,此次case是因為ap_invoice_distributions_all 的 accrual_posted_flag依然為N,所以會顯示成Partial,將該欄位異動為Y,則Accounted顯示為Yes。
若有遇到相同問題且GDF內也沒patch提供的話,可以朝此方向查詢看看。

2013年11月26日 星期二

[Discoverer] 關於Discoverer的小分享

今日顧問分享了個小觀念,說明不常用Discovere的原因。

因為Discovere不受Concurrent Manager管轄,也就是,Concurrent Manager-Standard Manager假如設定15個,那麼就只有15個Requests一起Running,Discoverer要跑幾個都可以,萬一再遇到SQL沒寫好的,就可能拖垮EBS。
後來都用xml-excel去取代Discoverer,參數上要設LOV也比較好用。

2013年6月4日 星期二

[SQL] 誤DROP TABLE的救回法

不小心Drop Table的救回法,請執行以下SQL,

flashback table tablename to before drop;

不過,該語法只適用10g以後的版本,Drop Table前還是好好看清再做。

[SQL] GLOBAL TEMPORARY TABLE

CREATE GLOBAL TEMPORARY TABLE tempname
(
  ..........
  ..........
)
ON COMMIT DELETE ROWS; --或者是 ON COMMIT PRESERVE ROWS;

兩個選項說明:
ON COMMIT DELETE ROWS:
   To specify that the lifetime of the inserted rows is for the duration of the transaction only
   通常會用commit語法來結束transaction,所以當transaction結束後,該資料即會消失。
ON COMMIT PRESERVE ROWS:
   To specify that the lifetime of the inserted rows is for the duration of the session

   即資料在session結束後才刪除。

2013年4月22日 星期一

[Form] 使用Form Bulider 客製程式的前置作業及編譯指令

使用Form客製程式的前置作業及編譯指令

[前置作業]
1. 於本機建立資料夾ORACLE_LIB
2. 下載Oracle ERPLibrary, 路徑: $AU_TOP/resource 下所有檔案置於本機資料夾 ORACLE_LIB
3. 下載Menu, 路徑: $AU_TOP/resource/US
       FNDMENU.mmx
       FNDMENU.mmb
   置於本機資料夾 ORACLE_LIB
4. 下載TEMPLATE Form, 路徑: $AU_TOP/forms/US
       TEMPLATE.fmb
       APP*.fmb
       APS*.fmb
       FND*.fmb
   置於本機資料夾 ORACLE_LIB
5. 編輯環境變數Patch, ORACLE_LIB位於D槽下, 即內容加上 D:\ORACLE_LIB\
6. 執行regedit, 搜尋Forms_Patch, 若ORACLE_LIB位於D槽下, 即內容加上 D:\ORACLE_LIB\

[程式放置處]
$AU_TOP/forms/US

[編譯程式]
(1)連入主機後先下以下指令: cd $AU_TOP/forms/US
(2)執行編譯:
   $ORACLE_HOME/bin/frmcmp_batch module=$AU_TOP/forms/US/XXXINVF007.fmb userid=APPS/APPS output_file=$HOPAX_TOP/forms/US/XXXINVF007.fmx module_type=form batch=NO compile_all=special
   (紅色部份為程式名, 依情況做修改即可)

2013年3月19日 星期二

[SQL] 用PIVOT讓資料呈現類似Excel的樞鈕分析

Oracle 11g的功能, PIVOT讓資料呈現類似Excel的樞鈕分析

SELECT TO_CHAR(INVOICE_DATE, 'YYYY/MM') YYMM, INVOICE_CURRENCY_CODE, SUM(INVOICE_AMOUNT) INVOICE_AMOUNT
  FROM AP_INVOICES_ALL
 WHERE TO_CHAR(INVOICE_DATE, 'yyyymm') BETWEEN '201201' AND '201203'
   AND SET_OF_BOOKS_ID = ***
 GROUP BY TO_CHAR(INVOICE_DATE, 'YYYY/MM'), INVOICE_CURRENCY_CODE
 ORDER BY TO_CHAR(INVOICE_DATE, 'YYYY/MM'), INVOICE_CURRENCY_CODE;



[利用PIVOT]
SELECT *
  FROM (
        SELECT TO_CHAR(INVOICE_DATE, 'yyyy/mm') YYMM, INVOICE_CURRENCY_CODE, SUM(INVOICE_AMOUNT) INVOICE_AMOUNT
          FROM AP_INVOICES_ALL
         WHERE TO_CHAR(INVOICE_DATE, 'yyyymm') BETWEEN '201201' AND '201203'
           AND SET_OF_BOOKS_ID = ***
         GROUP BY TO_CHAR(INVOICE_DATE, 'yyyy/mm'), INVOICE_CURRENCY_CODE
       )
PIVOT(SUM(INVOICE_AMOUNT) FOR YYMM IN ('2012/01', '2012/02', '2012/03'))
ORDER BY INVOICE_CURRENCY_CODE;




2013年1月23日 星期三

[AP]AWT(Withholding Tax) 於付款時計算稅額錯誤

Withholding Tax設定
Apply Withholding Tax : At Payment Time

支付一張invoice 金額為 IDR 120,000,000,於付款時產生會計算10% Withholding Tax, 此筆Withholding Tax應為 IDR 12,000,000,但卻跑出IDR 999,999的資料來。

再檢示設定才發現Period Limit設定太小了,算出的Withholding Tax大於上限,系統則以上限做為該筆的Withholding Tax,修改後計算出的Withholding Tax才正確。