In this article, I’ll explain how to use Oracle Integration cloud to place file from BI Publisher report to Object Storage.

What is Object Storage

  • It is an internet-scale, high-performance storage platform that offers reliable and cost-efficient data durability.
  • This is used to store an unlimited amount of unstructured data such as images, videos, analytics data, and so on.
  • You can create private and public buckets to safely access the data from within the cloud or from the internet.

Following are the pre-requisites to connect to the Object Storage in Oracle Integration:

  1. A bucket in the Object storage
  2. The namespace of the bucket
  3. API signing key (public and private)
  4. Fingerprint
  5. Object storage Rest API
  6. OCI tenancy OCID
  7. User OCID
  8. OCI tenancy region

Refer to this video to know how to Accessing Object Storage from Oracle Integration Cloud.

I’ll develop a scheduled integration that will run a BIP report in fusion and place the file in Object storage bucket.

This use case requires five simple steps to complete:

  1. Create BI Publisher report
  2. Create SOAP connection
  3. Create Object storage connection
  4. Create an Integration
  5. Activate the Integration
  1. Lets say we have created a simple data model and a report for that data model in fusion instance.
  2. Now to invoke that report from OIC we will need to have a SOAP connection. For more details on how to create a SOAP connection refer this blog.
  1. In order to place the BIP report output in Object storage location we need to create the Object Storage connection. Using the above 8 details we can create an Object Storage connection.
  1. Lets start by creating the scheduled integration. Give some name to the integration like INVOKE_BIP_OBJ_STG. For the initial step on how create the integration and add the RunBIPReport activity refer this blog.

So now you have configured the REST connection and we have the file in base64 encoded format. Now we have to invoke the Object storage connection and pass this file reference after decoding it. Search for the FTP connection that you have created in step 3.

Enter SendFileToObjStg in What do you want to call your endpoint, Endpoint relative resource URI as /n/{namespaceName}/b/{bucketName}/o/{objectName}, Action as PUT and checkmark the box Configure the request payload for this endpoint then click on Next.

Select the request payload format as “Binary” and media type of application body as application/octet-stream. Click on Next and then Done.

Now edit the mapper for SendFileToObjStg and map the reportBytes BIPReport Response to Stream Reference request of SendFileToObjStg using decodeBase64ToReference function.

Now click on validate and close. On the top right (below start button) click on Tracking and add the startTime in the tracking field and click on save.

  1. Now the integration is ready to use. And it looks something like this.

Click on save and close. And activate the integration by clicking on the start button and enabling tracing and payload.

Voila, you have completed the integration run. That’s all about this post. Thank you!

If you like this article, please like, comment, and share. Request you to subscribe to my YouTube channel for more such videos and don’t forget to subscribe to our channel to get regular updates.

Further readings:

Place file in ATP from BIP using OIC

How to write files using OIC FTP adapter

Read files from Object Storage in Oracle Integration

Access Object Storage from Oracle Integration

FTP adapter in Oracle Integration Cloud(OIC)