Usecase: Here, we will create a reusable child integration which will take the importable zip file(header file, line file, properties file) as base64 encoded and import to ERP and enable callback and we will also create a callback integration to subscribe the callback event upon ERP job completion. This is resuable integration so not only AP Invoice, we can also use for other import jobs also like GL, Fixed asset etc using a simple swich block.
High level Steps:
- Create FBDI Invoice header and line csv files
- Create .properties file
- Create zip file
- Upload to ERP using bulk import option
- Create a callback integration in order to get callback upon ERP job completion
- Build a Scheduled integration
- List all the files from SFTP
- Iterate over the files and Download file on staging
- Read the file from staging in chunks and create the FBDI file.
Create .properties file:
APInvoices.properties
Syntax:
<job package name>,<job definition name>,<zip file prefix>,<Param1>,.....<ParamN>
/oracle/apps/ess/financials/payables/invoices/transactions/,APXIIMPT,APInvoices,#NULL,$BusinesUnitId,N,#NULL,#NULL,#NULL,1000, Source,#NULL,N,N,LedgerId,#NULL,1
Create zip file:
create zip file with following 3 files
APInvoices.zip
APInvoicesInterface.csv
APInvoiceLinesInterface.csv
APInvoices.properties
Upload to ERP using bulk Import:
Configure oracle ERP cloud endpoint >> import bulk data into Oracle ERP Cloud >> Import Payables Invoices>>Enable callback>>Done
Mapping:
Zip file reference >> reference
zip file properties file name >> file name
Create a callback integration in order to get callback upon ERP job completion:
Configure oracle ERP cloud endpoint >>select option - receive callback message upon completion of FBDI bulk Import job submitted via another integration >>Import payables Invoices
Detailed screenshots:
Step1: create a reusable integration to import to ERP and enable callback
Flow diagram:
Subscribe to callback events:
Testing:
What we can do after subscribing call back:
- Success Scenario:
- First we check if summary status succeeded
- Then assign the import payables request it to a variable
- Download ess jobs execution logs or execution report for the import payables req id.
- Write the zip file to stage and unzip.
- Share the reports or logs over a Notification mail
- Failure Scenario
- When the summary status not succeeded, just send a notification mail with the callback file reference as attachment. The attachment will include all the processes log files, zipped file omported, properties file, and any error files. Then the concerned team or support team can take care of the issue.
Detailed Screenshots:
Note:
- Sometimes we observe that import to ERP main table does not happen with different kind of failures but still we are getting summary status as success in callback, in such scenario, we suggest to implement a custom callback.
- If we use import payables invoice request id to download pdf report file, it does not, it simply provides a general import log file. To get the overall invoice import report, we can schedule the report ESS job and get the report. Follow my blog to downlaod the teport - https://soalicious.blogspot.com/2023/12/oic-erp-how-to-get-import-payables.html
- Like for GL, import journal child process we are easily can download out file which includes all the status report.