请求的输出及日志
1、Effect:
Oracle EBS会在EBS的安装目录,保存查看输出及日志之文件。查看具体目录:
select t.logfile_name,t.outfile_name from fnd_concurrent_requests t
where t.request_id = _request_id
2、当我们自行定义了一个并发请求时,也经常需要使用上面的方式进行一些调试。
请求的输出:apps.Fnd_File.Put_line (apps.FND_FILE.OUTPUT, '请求的输出');
请求的日志:apps.Fnd_File.Put_line (apps.FND_FILE.LOG, '请求的日志');
对于报表,一般情况是把报表的内容输出到OUTPUT,把报表中间的debug逻辑输出到日志中。
对于请求包,一般情况是输出到日志中。OUTPUT就不用管了。
实现手动提交请求
在Form里面,我们可以用
APPS.FND_REQUEST.SUBMIT_REQUEST
提交一个Request到Oracle Request Manager。如果提交成功,该函数返回Request ID,否则,返回0。
1、初始化
在提交一个Request之前,我们会调用Oracle Standard的Procedure对这个Request做一些基本的参数的初始化。
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 );
注:这个初始化不是必须的,之所以要初始化,是因为视图是OU屏蔽的。 上述语句等同于dbms_application_info.set_client_info;
2、函数介绍
2.1 函数APPS.FND_REQUEST.SUBMIT_REQUEST有105个参数:
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;
2.2 参数详解
2.2.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
操作路径:系统管理员=>应用=>注册
2.2.2 PROGRAM(必需参数)
要提交到Oracle Request Manager的并发程序之简称
操作路径:应用开发员=>并发=>程序
2.2.3 第三、第四个参数
第三、第四个参数默认为空
2.2.4 第五个参数
第五个参数默认为false
2.2.5 第六至第十零五个参数
第六至第十零五个参数为要传入到请求中的自定义参数值。如果无须这么多参数时,以chr(0)作为参数结束的标记。Chr(0)后面剩余的参数为 ‘‘。