Friday, May 27, 2022

OIC - Schedule BI Publisher Report through OIC | Oracle Integration Cloud | Schdule report Service

Usecase:

Here, we will see how to call a schedule BI publisher report service( with BI bursring to FTP).

When to use Run Report operation:

  • In Laymen term, use Run report operation if report output size is less than 10MB. 
  • Run report operation will provide the report output in the webservice response.

When to use Schedule Report operation:

  • Use "Schedule Report" operation when report output is > 10MB. 
  • Schedule report will generate the report output in FTP, UCM, Email etc. Which is known as BI report bursting.
High level steps:
  1. Create a Schedule service Soap connection
  2. Take a Schedule orchestration integration and call Schedulw service operation and map all the required patameters 
  3. Take a while loop and call getScheduledReportStatus operation to get the BI run status
  4. You should have a BI report with Bursting data model option, here we are bursting the report to FTP delivery.

Implementation steps:

Create Schedule service SOAP connection


Integration flow:


Create a Scheduled Orchestration Integration


Provide a name and package


Select the created Soap connection for schedule report service.


Configure the Schedule service operation.





Now open the mapper and the map the required parameters name and its values.

Below Columns mappings are required to invoke Schedule BI report operation.

I have provided the following details:

attributeTemplate : "pdf"
parameterNameValues
name: "p_destination"
Values item: " FTP full path"
reportAbsolutePath: "/Custom/Integrations/Poc/XXSupplierREP1.xdo"
sizeOfDataChunkDownload: "-1"
scheduleBurstingOption: "true"
userJobDesc: instancd id
userJobName: instance id
userId: ERP Service account user
password: ERP Service account pwd

Note: we cant use getFlowId() instead, use  metadata >> runtime >> instanceid. If we use getFlowId, the integration will run continuously and fail. May be it does not support anymore



Mappings:







Next, we will assign counter and loop till we get the GetScheduledReportstatus and then update the counter.










Add tracking





Activate


Test and see the outcome.

File generated in the ftp directory

From Monitoring:





To create a BI Bursting report and data model, follow my blog:

Note:
You can also use below ScheduleReport service but you can only call the schedule service, there is not "getScheduledReportStatus" operation available.
https://<ERP domain name>/xmlpserver/services/ScheduleReportWSSService?WSDL

5 comments:

  1. Hi Sanddy,

    Can you explain that why we need to put a loop around to get schedule report status.

    ReplyDelete
    Replies
    1. Hi Ankur, we need loop bacause sometimes the the schedule process takes time to complete the delivery, so looping means waiting for the process to complete it either succeeded or failed or warning. If we dont use loop, in one run we may get wrong status.

      Delete
  2. This comment has been removed by the author.

    ReplyDelete
  3. Can you please explain how to get the doucmentName or Document Information when used UCM as scheduled delivery

    ReplyDelete
  4. This comment has been removed by the author.

    ReplyDelete

Featured Post

11g to 12c OSB projects migration points

1. Export 11g OSB code and import in 12c Jdeveloper. Steps to import OSB project in Jdeveloper:   File⇾Import⇾Service Bus Resources⇾ Se...