You are on page 1of 2

Submitting BI Publisher Concurrent Program from PL/SQL

For example, we want to submit Open Balance Supplier Letter Data report from PL/SQL and here are the details. Data Definition Code: APXSOBLX Application Short Name: AP Template Code: APXSOBLX_1 Template Name: Supplier Balances Letter Concurrent Program Name : Short Name : APXSOBLX Supplier Open Balance Letter

Concurrent Program short name always same as Data Definition Code. Here is the PL/SQL logic to fire this : create or replace PACKAGE SAMPLE_CP_BIP_REPORT_PKG AS PROCEDURE submit_req ( requestId OUT NUMBER, errbuf OUT VARCHAR2, retcode OUT VARCHAR2); END SAMPLE_CP_BIP_REPORT_PKG ; / create or replace PACKAGE BODY SAMPLE_CP_BIP_REPORT_PKG AS PROCEDURE submit_req ( requestId OUT NUMBER, errbuf OUT VARCHAR2, retcode OUT VARCHAR2) IS l_request_id NUMBER; l_layout BOOLEAN; l_phase VARCHAR2(50); l_status VARCHAR2(50); l_dev_phase VARCHAR2(50); l_dev_status VARCHAR2(50); l_message VARCHAR2(100); l_wait BOOLEAN; BEGIN l_layout := FND_REQUEST.ADD_LAYOUT ('AP', 'APXSOBLX_1', 'en', 'US', 'PDF'); IF l_layout THEN l_request_id := FND_REQUEST.SUBMIT_REQUEST ('AP', 'APXSOBLX', 'Supplier Balances Letter ', NULL, FALSE,'','','', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''); COMMIT; requestId :=l_request_id; END IF; EXCEPTION WHEN OTHERS THEN RETCODE := 2; ERRBUF := sqlcode||':'||sqlerrm; --fnd_file.put_line(fnd_file.log, sqlcode||':'||sqlerrm); END submit_req; END SAMPLE_CP_BIP_REPORT_PKG ; / We are using following two function from the FND_REQUEST package : 1) FND_REQUEST.add_layout ( template_appl_name in varchar2, template_code in varchar2, template_language in varchar2, template_territory in varchar2, output_format in varchar2) return boolean; This need to be call before submit request to add the layout to Request. It initiates the post process to apply the Layout. Arguments -- Template_APPL_Name -- Template_code

- Template Application Short name. - Template code

argument1 IN varchar2 default CHR(0). sub_request IN boolean default FALSE. add_printer. Attributes: -.Submit_Request submit_request ( application IN varchar2 default NULL..argument1. Time at which the request has to start .100 -Short name of application . Please feel free to ask . Set to TRUE if the request is sub request. start_time IN varchar2 default NULL.program -.Optional.concurrent program short name -Optional Program Description -Optional. We can use them as per our requirement.Template File Territory (iso value) .Output Format 2) FND_REQUEST.Template File language (iso value) . argument2 IN varchar2 default CHR(0). program IN varchar2 default NULL. There are other functions available within FND_REQUEST package like add_notification. ---argument100 IN varchar2 default CHR(0)) return number. This submits the concurrent request and returns the Request ID.---- Template_Language Template_Territory Output Format .running -.start_time -.sub_request -. .application -. description IN varchar2 default NULL. The default is false.description -.Optional. Arguments for the concurrent request. Please pass the parameter value define in CP Report definition..