2007年10月23日 星期二

FND_MESSAGE 常用的幾種用法

1. FND_MESSAGE.RETRIEVE
取得一條資料庫中的等待資訊。

2. FND_MESSAGE.SET_STRING (value IN varchar2)
將字串放到消息棧中

3. FND_MESSAGE.SET_TOKEN
用值替換MESSAGE的訊息中的變數
語法:
procedure FND_MESSAGE.SET_TOKEN(token_name IN VARCHAR2,
value IN VARCHAR2,
translate IN boolean default FALSE);

4. FND_MESSAGE.SET_NAME
語法:
procedure FND_MESSAGE.SET_NAME(application_shortname IN varchar2,
message_name IN varchar2);
(從Message Dictionary獲取ERP已定義的訊息:
FND_MESSAGE.SET_NAME( APPL_SHORT_NAME,MESSAGE_NAME) ;
FND_MESSAGE.ERROR ;)

-- 在FORM用於Show Message的函數

5. FND_MESSAGE.DEBUG

6. FND_MESSAGE.GET
取得在message中設置好的message訊息。

7. FND_MESSAGE.SHOW
以最基本的方式顯示給用戶,和FND_MESSAGE.DEBUG一樣效果。

8. FND_MESSAGE.HINT
不會彈出對話方塊給用戶,而是顯示在左下腳的狀態欄上面。

9. FND_MESSAGE.ERROR
以Error資訊的方式顯示給用戶

10.FND_MESSAGE.WARN (Function)
以選擇資訊的方式顯示給用戶,可以選擇[Ok]或[Cancel],返回值分別是TRUE和FALSE
範例:
if FND_MESSAGE.warn then
fnd_message.debug('True');
else
fnd_message.debug('False');
end if;

11.FND_MESSAGE.QUESTION (Function)
返回一個被選中的button的number
function QUESTION(BUTTON1 in varchar2 default 'YES',
BUTTON2 in varchar2 default 'NO',
BUTTON3 in varchar2 default 'CANCEL',
DEFAULT_BTN in number default 1,
CANCEL_BTN in number default 3,
ICON in varchar2 default 'question')
return number

範例:
FND_MESSAGE.SET_NAME('FND','ATCHMT-COMMIT BEFORE INVOKING');
IF FND_MESSAGE.QUESTION('YES','CANCEL',NULL,1,2,NULL) = 2 THEN
RAISE FORM_TRIGGER_FAILURE;
END IF;

沒有留言: