BIP Report Webservice in Oracle Fusion ERP

Oracle Fusion ERP (Enterprise Resource Planning) provides Business Intelligence Publisher (BIP) as a powerful reporting tool to create and distribute reports. We can write custom SQL queries in BI reports and extract data which is not provided by Oracle standard reports. BIP offers web services that allow external applications to interact with reports stored in Fusion ERP. Here’s how to utilize the BIP Report Webservice in Oracle Fusion ERP:

Develop a BIP report

As a part this demonstration, we have developed a sample report with p_invoice_id as a parameter. We need to get the report xdo path and e.g. in our case it is /Custom/Financials/Demo/DemoRpt.xdo and we need to provide it in request payload. Please note you should not include shared folders in path.

develop a report to call via BIP report webservice in Oracle Fusion ERP
Sample BI report model data model with parameter p_invoice_id

Obtain BIP Report Webservice WSDL

We will use SOAP Ui tool for this demonstration. Let’s create a new project and use below WSDL URL to get the list of all operations supported by this webservice. Change the instance name with your instance in below URL

https://ur-erpinstance-here.oraclecloud.com:443/xmlpserver/services/v2/ReportService?WSDL

We will replace standard request payload of runReport operation of WSDL in SOAP Ui with our sample payload (given below) before calling this webservice. Copy payload given below and replace user credentials and path information where needed.

SOAP request payload for BIP Report webservice
Sample request payload to call a BI report
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v2="http://xmlns.oracle.com/oxp/service/v2">
<soapenv:Header/>
<soapenv:Body>
<v2:runReport>
<v2:reportRequest>
<v2:attributeFormat>pdf</v2:attributeFormat>
<v2:parameterNameValues>
<v2:listOfParamNameValues>
<v2:item>
<v2:name>p_invoice_id</v2:name>
<v2:values>
<v2:item>parameter-value</v2:item>
</v2:values>
</v2:item>
<!--v2:item>
<v2:name>p_invoice_num</v2:name>
<v2:values>
<v2:item>paramter-value</v2:item>
</v2:values>
</v2:item-->
</v2:listOfParamNameValues>
</v2:parameterNameValues> <v2:reportAbsolutePath>/Custom/Financials/Demo/DemoRpt.xdo</v2:reportAbsolutePath>
</v2:reportRequest>
<v2:userID>integration username</v2:userID>
<v2:password>user password</v2:password>
</v2:runReport>
</soapenv:Body>
</soapenv:Envelope>

Send request and Handle Response

Run the request in SOAP Ui. From response payload (as shown below), copy report bytes tag content. Since it is in base64 format, we need to convert the output to the format defined in report definition. We can use utility like https://www.motobit.com/util/base64-decoder-encoder.asp and convert this report bytes in pdf output. The output could be in various formats such as PDF, Excel, etc. depending on the report definition.

Response payload of Oracle Fusion ERP report webservice
Response payload of runReport operation

Conclusion

Utilizing the BIP Report Web Service in Oracle Fusion ERP enables external applications to interact with reports seamlessly. By following the steps outlined above and leveraging the appropriate authentication mechanisms and client code generation tools, developers can integrate BIP functionality into their applications and automate report-related tasks effectively.

BIP Report Webservice in Oracle Fusion ERP

One thought on “BIP Report Webservice in Oracle Fusion ERP

Leave a Reply

Your email address will not be published. Required fields are marked *

Scroll to top