代码如下:
procedure procedure_name is
L_REQUEST_ID NUMBER;
L_RESULT BOOLEAN;
L_BL_RESULT BOOLEAN;
X_PHASE VARCHAR2(100);
X_STATUS VARCHAR2(100);
X_DEV_PHASE VARCHAR2(100);
X_DEV_STATUS VARCHAR2(100);
X_MESSAGE VARCHAR2(100);
begin
--fnd_message.debug('headers.order_number' || :headers.order_number);
IF(:headers.order_number is null) then
fnd_message.set_name('fnd', '请选择一个订单');
fnd_message.error;
raise form_trigger_failure;
end if;
--定义一个Layout
l_result := fnd_request.add_layout(
template_appl_name => 'XHU',
template_code => 'XHUPOR2198F',
template_language => NULL,
template_territory => NULL,
output_format => 'PDF');
--fnd_request,这个package存在于ebs的服务器数据库上
--提交请求
L_REQUEST_ID := FND_REQUEST.SUBMIT_REQUEST('XHU',
'XHUPOR2198F',
'',
'',
FALSE,
:HEADERS.ORDER_NUMBER,
'','','','','','','','','',
'','','','','','','','','','',
'','','','','','','','','','',
'','','','','','','','','','',
'','','','','','','','','','',
'','','','','','','','','','',
'','','','','','','','','','',
'','','','','','','','','','',
'','','','','','','','','','',
'','','','','','','','','','');
COMMIT;
IF L_REQUEST_ID IS NULL OR L_REQUEST_ID = 0 THEN
fnd_message.set_name('XHU','打印错误');
fnd_message.error;
raise form_trigger_failure;
END IF;
--等待请求,需要往form中添加附加库FNDCONC.pll
L_BL_RESULT := FND_CONCURRENT.WAIT_FOR_REQUEST(L_REQUEST_ID,
1,
0,
X_PHASE,
X_STATUS,
X_DEV_PHASE,
X_DEV_STATUS,
X_MESSAGE);
IF X_DEV_PHASE = 'COMPLETE' AND X_DEV_STATUS = 'NORMAL' THEN
editor_pkg.report(L_REQUEST_ID,'Y');
ELSE
fnd_file.put_line(1,RPAD('x_phase',20,' ') || '=' || X_PHASE);
fnd_file.put_line(1,RPAD('x_status=',20,' ') || '=' || X_STATUS);
fnd_file.put_line(1,RPAD('x_dev_phase=', 20, ' ') || '=' || X_DEV_PHASE);
fnd_file.put_line(1,RPAD('x_dev_status=',20,' ') || '=' || X_DEV_STATUS);
fnd_file.put_line(1,RPAD('x_message=',20,' ') || '=' || X_MESSAGE);
fnd_file.put_line(1,'Warning : Starting journal print report failure! It did not running in 120 seconds, its request_id is ' ||
TO_CHAR(L_REQUEST_ID) || ' please check it.');
end if;
end;
本文作者:xialingge2006 来源: http://blog.163.com/xialingge2006@126/blog/static/1028229020097254303919/