EBS Form : 消息字典 fnd_message. (转)

来源:互联网 发布:菲律宾globe网络制式 编辑:程序博客网 时间:2024/05/16 04:44

1. FND_MESSAGE.warn

以选择信息的方式显示给用户。

可以选择Ok或者Cancel,返回值分别是TRUEFALSE
例:

if FND_MESSAGE.warn then
fnd_message.debug('True');
else
fnd_message.debug('False');
end if;
执行效果如下:
点击OK会弹出 True
点击Cancel会弹出 False

IF (NOT FND_MESSAGE.WARN) THEN
Raise FORM_TRIGGER_FAILURE;
END IF;

2. FND_MESSAGE.question
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

     调用:
declare
v_result 
 number;
begin
APPS.XXFORM_ADIO_TEST_PKG.RETURN_MESSAGE;
FND_MESSAGE.retrieve;
v_result:=FND_MESSAGE.QUESTION('Yes','No','Cancel',null,null,'Question');
fnd_message.debug(v_result);

Example:
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;

3. FND_MESSAGE.SET_NAME设置信息:
--
语法:
procedure 
 FND_MESSAGE.SET_NAME

                        (application_shortname IN varchar2,

                                                 message_name         IN varchar2);
作用: Message Dictionary获取一条信息
一般情况下在FORM中显示出错信息使用以下代码:
        
FND_MESSAGE.SET_NAME( APPL_SHORT_NAME,

MESSAGE_NAME) ;

         FND_MESSAGE.ERROR ;

         FND_MESSAGE.SET_NAME(’SQLAP’,’AP_PAY_MULTI_PAY_VOID’);
4.fnd_message.retrieve
     作用:   取得一条数据库中的等待信息
5. Fnd_message.set_string(value  
IN  Varchar2)
     作用:将字符串放到消息栈中,
6.FND_MESSAGE.SET_TOKEN
     作用:用值替换message的信息中的变量
     语法:   procedure FND_MESSAGE.SET_TOKEN

(token_name    IN VARCHAR2,

                                value              IN VARCHAR2

translate        IN boolean   default   FALSE);  

               REC_COUNT:= <NUMBER OF PAYMENTS>;
               FND_MESSAGE.SET_TOKEN(’NUM_OF_RECS’,REC_COUNT);

7.FND_MESSAGE.SHOW
作用:显示信息, FND_MESSAGE.debug效果相同
8.FND_MESSAGE.GET
作用:取得在message中设置好的message信息

9. FND_MESSAGE.hint
这种方式不会弹出对话框给用户,而是显示在左下脚的状态栏上面
10. FND_MESSAGE.error
Error信息的方式显示给用户

=====================================================  =================================

示例一:弹出消息窗口,等待用户选择后进行下一步的处理;
fnd_message.set_string('
该物料多发和欠发的物料总成本,占物料需求总成本的比重,' ||
chr(10) || '
已经超过预设允差!' ||
chr(10) ||
chr(10) ||'
是否继续?');
v_choose := fnd_message.question('
确定', NULL, '取消', 1, 3,'NOTE');
IF v_choose = 3 THEN
RETURN;
ELSIF v_choose = 1 THEN
Your Code;
End if;
要点:
1
chr(10) 代表分行;
2
fnd_message.question默认为Yes,No,Cancel,如果不要其中一项就用Null替代;
示例二:弹出错误提示窗口;
Fnd_Message.Set_Name('FND','
日期不能为空!');
Fnd_Message.Error;
Raise Form_Trigger_Failure;
========================