2014年2月26日 星期三

Oracle ERP R12. 中文環境下Export 亂碼之狀況排除

說明 :
Oracle ERP Server之字元集與Client的字元集不符,導至Export產出之excel於Client開啟時,中文部分會呈現亂碼

解法 :
設定 FND: NATIVE CLIENT ENCODING 個人的Profile 為Client的字元集

例 : Client的字元集為繁體中文 ZHT16BIG5 , 設定如下


2013年10月6日 星期日

Oracle ERP R12. WF_NOTIFICATION.SEND (通知訊息功能)

Sample Code :

  PROCEDURE SEND_WF_NOTIFICATION(I_TO IN VARCHAR2,
                                 I_SUBJECT IN VARCHAR2,
                                 I_TEXT    IN VARCHAR2)
  IS
    /*
    I_TO : Oracle EBS帳號
    I_SUBJECT : 要顯示在Worklist的主旨
    I_TEXT : 內容
    */
    V_NOTIFICATION_ID NUMBER;
    --
    PRAGMA AUTONOMOUS_TRANSACTION;
  BEGIN
    V_NOTIFICATION_ID := WF_NOTIFICATION.SEND(ROLE     => I_TO,
                                              MSG_TYPE => 'CS_MSGS',
                                              MSG_NAME => 'FYI_MESSAGE',
                                              PRIORITY => 1);
    WF_NOTIFICATION.SETATTRTEXT(NID    => V_NOTIFICATION_ID,
                                ANAME  => 'OBJECT_TYPE',
                                AVALUE => I_SUBJECT);
    WF_NOTIFICATION.SETATTRTEXT(NID    => V_NOTIFICATION_ID,
                                ANAME  => 'MESSAGE_TEXT',
                                AVALUE => I_TEXT); --MESSAGE BODY
    COMMIT;
  END;

2013年9月24日 星期二

Oracle ERP R12. create locator using API (INV_LOC_WMS_PUB.CREATE_LOCATOR) - 建立Locator的API

若有需要大量新增Locator 則其有二種方式 :

1. Data Load

2. 呼叫 INV_LOC_WMS_PUB.CREATE_LOCATOR 該API
用法 :
FND_GLOBAL.APPS_INITIALIZE(1114,
                                                           51007,
                                                           401);
FND_MSG_PUB.Initialize;

INV_LOC_WMS_PUB.CREATE_LOCATOR(X_RETURN_STATUS => :X_RETURN_STATUS,
                                 X_MSG_COUNT => :X_MSG_COUNT,
                                 X_MSG_DATA => :X_MSG_DATA,
                                 X_INVENTORY_LOCATION_ID => :X_INVENTORY_LOCATION_ID,
                                 X_LOCATOR_EXISTS => :X_LOCATOR_EXISTS,
                                 P_ORGANIZATION_ID => :P_ORGANIZATION_ID,
                                 P_ORGANIZATION_CODE => :P_ORGANIZATION_CODE,
                                 P_CONCATENATED_SEGMENTS => 儲位,
                                 P_DESCRIPTION => 儲位描述,
                                 P_INVENTORY_LOCATION_TYPE => 3,
                                 P_PICKING_ORDER => :P_PICKING_ORDER,
                                 P_LOCATION_MAXIMUM_UNITS => :P_LOCATION_MAXIMUM_UNITS,
                                 P_SUBINVENTORY_CODE => 倉別,
                                 P_LOCATION_WEIGHT_UOM_CODE => :P_LOCATION_WEIGHT_UOM_CODE,
                                 P_MAX_WEIGHT => :P_MAX_WEIGHT,
                                 P_VOLUME_UOM_CODE => :P_VOLUME_UOM_CODE,
                                 P_MAX_CUBIC_AREA => :P_MAX_CUBIC_AREA,
                                 P_X_COORDINATE => :P_X_COORDINATE,
                                 P_Y_COORDINATE => :P_Y_COORDINATE,
                                 P_Z_COORDINATE => :P_Z_COORDINATE,
                                 P_PHYSICAL_LOCATION_ID => :P_PHYSICAL_LOCATION_ID,
                                 P_PICK_UOM_CODE => :P_PICK_UOM_CODE,
                                 P_DIMENSION_UOM_CODE => :P_DIMENSION_UOM_CODE,
                                 P_LENGTH => :P_LENGTH,
                                 P_WIDTH => :P_WIDTH,
                                 P_HEIGHT => :P_HEIGHT,
                                 P_STATUS_ID =>1,
                                 P_DROPPING_ORDER => :P_DROPPING_ORDER,
                                 P_ATTRIBUTE_CATEGORY => :P_ATTRIBUTE_CATEGORY,
                                 P_ATTRIBUTE1 => :P_ATTRIBUTE1,
                                 P_ATTRIBUTE2 => :P_ATTRIBUTE2,
                                 P_ATTRIBUTE3 => :P_ATTRIBUTE3,
                                 P_ATTRIBUTE4 => :P_ATTRIBUTE4,
                                 P_ATTRIBUTE5 => :P_ATTRIBUTE5,
                                 P_ATTRIBUTE6 => :P_ATTRIBUTE6,
                                 P_ATTRIBUTE7 => :P_ATTRIBUTE7,
                                 P_ATTRIBUTE8 => :P_ATTRIBUTE8,
                                 P_ATTRIBUTE9 => :P_ATTRIBUTE9,
                                 P_ATTRIBUTE10 => :P_ATTRIBUTE10,
                                 P_ATTRIBUTE11 => :P_ATTRIBUTE11,
                                 P_ATTRIBUTE12 => :P_ATTRIBUTE12,
                                 P_ATTRIBUTE13 => :P_ATTRIBUTE13,
                                 P_ATTRIBUTE14 => :P_ATTRIBUTE14,
                                 P_ATTRIBUTE15 => :P_ATTRIBUTE15,
                                 P_ALIAS => :P_ALIAS);

2013年9月11日 星期三

Oracle ERP R12. How to select oe_transaction_type_syn ?

Before execute SQL :

declare
begin
  MO_GLOBAL.SET_POLICY_CONTEXT('S',81); --Set Org_ID
end;

Then

select * from oe_transaction_types_syn;

2013年7月31日 星期三

Oracle ERP R12. Profile - OE: AutoPrice (自動更新Unit Selling Price時機設定)

經同仁反應,訂單的單價常會不明原因自動被更改掉,而user都不知道.
經查發現原因如下:

因為訂單會指定price list ,故只要訂單項次有調整任何一欄位(unit selling price欄除外),則系統會再自動從price list中取回目前最新的設定.
而該行為的主要原因是控制在一Profile => OE: AutoPrice , 該Profile的值預設為空值所導致的關係.

以下是該Profile設定的說明 : (本人測試得來的結果)
空值 => 不論是Entered 或是 Booked狀態皆會自動取回最新的price list值
Entry => 只有在訂單狀態為Entered 時才會自動取回最新的price list值
Booking => 不論狀態如何皆不會自動取回最新的price list值.

Ps :
以上純為本人測試之結果,若讀者測試後有任何心得請不吝指教,以該本人更新正確之資訊~

<<2013/08/04 不具名的網友 補充以下說明>>
通常業務流程而言, 應該定義為N (calculate_price_flag) , 避免訂單預定後仍可能因為手動或API變更而改變售價 
*reference Doc ID 134326.1
· If it’s set to ‘Y’, both pricing and freight charge calculations are done.
· If it’s set to ‘P’, only the freight charge calculation is done.
'P' also indicates that modifiers assigned to a pricing phase
where freeze override is enabled could also be applied.
· If it’s set to ‘N’, neither pricing nor freight charge is calculated.