1、定义可执行
路径:系统管理员-->并发-->可执行
注意:定义成请求的过程或函数,必须加入(Errbuf Out Varchar2,Retcode Out Number)两个形参。
2、定义并发程序
路径:系统管理员-->并发-->程序
注意:并发程序界面的可执行组中的“名称”,与上面的可执行并发程序界面的“简称”是一致的。
如果要传入参数到PL/SQL 包中,点击《参数》按钮进行设置。
也可以为参数赋给默认值,例:默认传入数值。
如果要限定参数的取数范围,则要定义值集
3、请求的输出及日志
Oracle EBS 会在EBS 的安装目录,保存查看输出及日志之文件。查看具体目录:
Select t.Logfile_Name, t.Outfile_Name
From Fnd_Concurrent_Requests t
Where t.Request_Id = '请求编码'
当我们自行定义了一个并发请求时,也经常需要使用上面的方式进行一些调试。
请求的输出:apps.Fnd_File.Put_line (apps.FND_FILE.OUTPUT, '请求的输出');
请求的日志:apps.Fnd_File.Put_line (apps.FND_FILE.LOG, '请求的日志');
对于报表,一般情况是把报表的内容输出到OUTPUT,把报表中间的debug 逻辑输出到日志中。
对于请求包,一般情况是输出到日志中。OUTPUT 就不用管了。
4、实现手动提交请求
在Form 里面,我们可以用APPS.FND_REQUEST.SUBMIT_REQUEST
提交一个Request 到Oracle Request Manager。如果提交成功,该函数返回Request ID,否则,返回0。
a、初始化
在提交一个Request 之前,我们会调用Oracle Standard 的Procedure 对这个Request 做一些基本的参数的初
始化。
Begin
Apps.Fnd_Global.Apps_Initialize(User_Id => Apps.Fnd_Global.User_Id,
Resp_Id => Apps.Fnd_Global.Resp_Id,
Resp_Appl_Id => Apps.Fnd_Global.Resp_Appl_Id);
End;
注:这个初始化不是必须的,之所以要初始化,是因为视图是OU 屏蔽的。
上述语句等同于dbms_application_info.set_client_info;
b、函数介绍
函数APPS.FND_REQUEST.SUBMIT_REQUEST 有105 个参数:
Begin
Apps.Fnd_Request.Submit_Request(Application In Varchar2 Default Null,
Program In Varchar2 Default Null,
Description In Varchar2 Default Null,
Start_Time In Varchar2 Default Null,
Sub_Request In Boolean Default False,
Chr(0)),'','','','','','','','','','','','','','','','','','','',
'','','','','','','','','','', '','','','','','','','','','',
'','','','','','','','','','', '','','','','','','','','','',
'','','','','','','','','','', '','','','','','','','','','',
'','','','','','','','','','', '','','','','','','','','',''
Return Number;
End;
b1、参数详解
b1.1、APPLICATION(必需参数)
应用程序的名称缩写。一般我们可能会用到下面的几个:
Oracle Assets ……> OFA
Oracle General Ledger ……> SQLGL
Oracle Inventory ……>INV
Oracle Order Management ……>ONT
Oracle Payables ……SQLAP
Oracle Pricing ……QP
Oracle Purchasing ……PO
Oracle Receivables ……AR
b1.2、PROGRAM(必需参数)
要提交到Oracle Request Manager 的并发程序之简称
操作路径:应用开发员=>并发=>程序
b1.3、第三、第四个参数
第三、第四个参数默认为空
b1.4、第五个参数
第五个参数默认为false
b1.5、第六至第十零五个参数
第六至第十零五个参数为要传入到请求中的自定义参数值。如果无须这么多参数时,以chr(0)作为
参数结束的标记。Chr(0)后面剩余的参数为’’。