Problem
Many times we need to fetch SaaS in OIC for processing, one of the way is to call the BIP report and fetch the data into OIC.
Solution
To call the BIP report we need to use External Report WSS Service SOAP service. By using the run report operation we can call the report and report response will be base64 format, in OIC we need to write the response to stage directory using opaque schema and then read the stage file using the report output schema.
Approach
Let’s take a example of calling SaaS BIP report and calling local integration.
Prerequisites:
- Oracle Fusion Instance with BIP report
- Oracle Cloud Instance
- SOAP connection to call BIP report (WSDL: https://servername/xmlpserver/services/ExternalReportWSSService?WSDL)
- Local integration which accepts the payload
- Opaque file (https://docs.oracle.com/en/cloud/paas/integration-cloud/integrations-user/use-stage-file-write-operation-opaque-schema.html)
Let’s get started.
Step 1: First let’s validate the report in SaaS, Login in to the SaaS instance and navigate to Tools -> Reports and Analytics and click on Browse catalog as shown in the below screenshots
Step 2: Navigate to the report path and click on edit and click on view a list let’s see the report output format (Ex: in our case it is text) and run the report to save the output which will be useful in next steps as shown below in the screenshots. Note report output should be in OIC readable format like XML, CSV, JSON etc.
Run the report
Save report output: Click on settings button and click on export to save the output file.
Also copy the report path which is required to pass in web service payload
Step 3: Now let’s navigate to OIC and create a integration to call the report and then call the local integration with report data as shown below in the screenshot.
Step 4: Create a new integration with schedule orchestration and then select the SOAP connection created to call BIP report as shown below in the screenshots. Select the runReport operation to call the BIP report as shown below in the screenshot.
Mapper
reportAbsolutePath : Report path from BIP
sizeOfDataChunkDownload : we need to provide “-1” so that entire data from BIP will be fetched. If any other value provided only partial / no data will be fetched.
Step 5: Now we need to write the base64 response of BIP report to a opaque schema file of stage write. Select the stage write activity and provide necessary details as shown below in the screenshots.
Mapper: we need to pass reportBytes to the opaqueElement in map activity as shown below.
Step 6: Now let’s read the stage file using the report output schema, select stage read activity and provide necessary details as shown below in the screenshots.
Step 7: Now let’s call the local integration with the report data, select the integration activity and configure as shown below
Mapper: Now let’s map the report read response to local integration as shown below.
Advantages
Using this approach we can call the BIP report and process the data in OIC as required.
Roshan comes with an extensive experience in the Oracle Implementation domain after completing his Electronics and Communication Engineering from Bengaluru. He holds a plethora of professional certifications from Oracle after starting as an Associate Developer role and quickly made his way to a Senior Manager. He has worked with clients across the globe in ANZ, EMEA, APAC and Europe. At Conneqtion Group, Roshan has been a key part of managing the organization’s largest risk teams apart from sharing his experience and skills to develop and nurture young talent with his dynamic vision.