April 24, 2022

Schedule BI Publisher Report through OIC | Oracle Integration Cloud


In this article I have mentioned the steps to develop an Integration that can invoke "Schedule Report" operation and can check the status of submitted schedule report operation i.e. Job Status.


When to use Schedule Report & when to use run report operation ❓πŸ€” :  

  • In laymen term , use 'Run Report' operation if report output size  is <10 MB and use 'Schedule Report' if report content size is >10 MB. Run Report operation can provide the report output in the webservice response but Schedule Report will generate the report output in FTP , UCM etc. ( know as report bursting )





Lets develop the  integration in two parts. In Part 1 : we will see the development steps to invoke 'Schedule Report' operation and in Part 2 : we will see the development steps to check the Status of 'Schedule Report' operation.




Prerequisite : 'Schedule Service SOAP WSDL' Connection. Please access this link and create the connection. We will use the same connection while developing the integration below.


PART - 1 : Invoke Schedule Report Operation

Step 1 : Login to OIC Instance, click on Navigation Menu (top left) then click Integrations and then again click Integrations. Click on Create (top right) and select Scheduled Orchestration. Enter any meaningful name to the Integration.


Step 2 : Search for the Schedule Service Connection which we have created above in prerequisite section ( if you have not created it yet, you can access this link to create this connection ) and select it. Adapter endpoint configuration wizard will get opened :


    • Enter any meaningful name (ex - ScheduleBIReport ) for the endpoint and click Next



    • Select ScheduleReport operation from drop down list and then click Next

    • Header configuration not require for this POC , so leave it as it is , just click Next

Knowledge :  πŸ˜‡
Headers are optional elements that pass extra information about your application requirements. For Example, the header element can be used to specify digital signature for password protected services.


    • Adapter configuration completed. You can see the connection summary. Now click Done to close the configuration window.


Step 3 : Now open the mapper. Here we will pass the parameters name and its values that will be require to Schedule the Report.


    • Below Columns Mappings are require to invoke Schedule BI Report operation


    • Once the mapping completed, Click Validate and Close the mapping window.


PART - 2 : Schedule Report Job Status Check 


Step 4 :  Add Assign action to declare some variables.


    • Click '+' to declare Variable to store count (i.e. while loop count ). Enter any meaningful name to the variable then click Edit πŸ–‰ and hardcode value '1' for the variable

    • Similar declare one more variable and initialize its value to '' (i.e. empty string) . You can take reference from below image. In this variable we will save 'GetSchedeuledReportStatus' operation response.



Step 5 : Add While Action. Enter any meaningful name.



    • Click 'Expression Mode' and write the below expression. The while loop will keep running till the time below expression is true. ( Take reference from below image )
not(contains($GetScheduleReportStatus,"Success"))  and not( contains($GetScheduleReportStatus, "Error"))  and not( contains($GetScheduleReportStatus, "Failed")) and  xsd:integer($CounterVariable) <  xsd:integer('30')




Step 6 : In this step we will invoke 'getScheduledReportStatus' operation to get the status of the 'Schedule Report' operation (which we configured in PART 1, above). 
    • Again search for the Schedule Report Service connection which we have created above in prerequisite section if you have not created it yet, you can access this link to create this connection and Select it.




    • Adapter configuration window will get opened, enter any meaningful name and click Next
    • Select 'getScheduledReportStatus' and click Next
    • Header configuration is not require for this POC, just click Next.
    • Adapter configuration completed. Click Done.


Step 7 : Open the mapper and map the 'ScheduleReportResponse' to 'ScheduledJobId' along with SaaS application credentials. ( take reference from below image )



Step 8 : Now add one more assign activity in which we will Increase the counter variable value and assign the 'GetScheduledReportStatus' operation response to the variable.


    • Select the counter variable from drop down list, click EditπŸ–‰ and increase the variable value by '1'.  Note : Make sure to use Integer function, Take reference from below image .
    • Similarly select the another variable, click EditπŸ–‰  and the map the *jobStatus element of 'GetScheduledReportStatus' Response.

    • Click Validate and then click Close

Step 9 : Add Wait activity for 30 seconds inside While Loop. So that status check call happen after certain interval of time only otherwise While loop keep invoking status check  operation continuously, which is not a correct practice.




Step 10 :  Enable Tracking for the Integration.



Step 11 : Save and close the Integration window. Activate the integration. Your have successfully develop an Integration to Schedule BI Report and can check its status.



Thank you ! 😊 , TADA !! πŸ‘‹. 

April 21, 2022

Create Schedule Service SOAP Connection | Oracle Integration Cloud

 

In this article I have mentioned the steps to Create Schedule Service Connection  that can be use to Schedule Report 

    • Login to OIC Instance. Navigate to Connections window, Click on Create button (top right) and then Search for SOAP Adapter. Select SOAP adapter and click Select button.
    • Enter any meaningful name for the connection and then click create


    • Enter the below details and then Click Test and then click Save :
      • *WSDL URL : https://<domainname>/xmlpserver/services/v2/ScheduleService?wsdl
      • Security : Select No Security Policy
    • Connection is Active and ready to use in Integrations 


April 14, 2022

Subscribe to HCM Updates ( via ATOM Feed ) | Oracle Integration Cloud


In this Article I have tried to explain HCM Atom Feeds and also have develop one end to end Integration to let you know how you can subscribe to changes made to feed-enabled resources in Oracle HCM Cloud through OIC Integration.


What are Atom Feeds ?
  • HCM Atom Feeds offer a real time mechanism to subscribe to changes in the application
  • Atom feeds enable you to track changes made to feed-enabled resources in Oracle Global Human Resources Cloud
  • For any updates of interest to downstream applications such as new hires, terminations, employee transfers, and promotions, Oracle Global Human Resources Cloud publishes Atom feeds.
  • Oracle Global Human Resources Cloud currently supports creation of Atom feeds for the employees and work structures resources in the following scenarios:
      1. When an employee is hired, updated, or terminated
      2. When an assignment is created, updated, or end dated
      3. When any of the following work structures is created, updated, or end dated.
        • Grades
        • Jobs
        • Locations
        • Organizations
        • Positions



Use Case : Lets develop one Scheduled Integration which can get the Employee update details ( for ex   : if employee email got updated ) via ATOM Feed and can write the Employee Update details  as a file in the FTP Server.

Prerequisite : Make sure that you have the below connections available in your OIC Instance. We need both connections while developing the Integration.
    • HCM Adapter Connection (can access this link to see the configuration steps)
    • FTP Adapter Connection (can access this link to see the configuration steps)


NOTE :  !
HCM Atom Feeds : Can use this feature only as an Schedule Integration (invoke),not as an App Driven Integration (Trigger).




Step 1: Create one Schedule Integration.

                                       





Step 2 : Search for the HCM connection and select it. Endpoint configuration window will get open.

    • Enter any meaningful name for the endpoint and click Next.
    • Select Subscribe to Updates (via ATOM feed ). Click Next
    • Select 'Employee Update' Atom feed and leave max entries to process as 10 and then click Next.
Knowledge :  πŸ‘€ 
Max Entries to process List?:  This sets the value of the page-size query parameter that is sent as part of the request to the Atom server to get the feed. The Atom feed size is limited by this number. The recommendation is to use a small number for this option and have the integration execute more frequently.



Knowledge :  πŸ‘€ 
What does "Process Future Dated Entries Immediately" means?:   This option allows users to process future-dated entries from HCM Cloud immediately, instead of processing them only when they become effective. Integration Flow that is subscribing to a feed with this option selected will receive the future dated entries along with currently effective entries. The integration flow is responsible for handling yet to be effective future dated entries. Leave this option unchecked if you want the future dated entries to be processed when they become effective.


    • HCM endpoint configuration is completed. Click Done.



Step 3 :  Now to read the Response of the  'Employee Update' Atom Feed we need to configure two For Each action.
    • Search for the For Each action and select it.

    • Enter the below details :
      • Name : enter any meaningful name 
      • Repeating Elements : drag and drop repeating parent element from the Employee Update Response (take reference from below image)
      • Current Element Name : enter any meaningful name and then click Create


Step 4 : Now we need to add one child For Each inside the above configured For Each action. So that we can iterate over the Current Element Name (configured in above for each action) 
    • Search for the For Each action and add it inside above configured For Each action
    • Just like above For Each action, configured the below details. 
      • Name : enter any meaningful name 
      • Repeating Elements : drag and drop the Current Element Name which we have configured in above For Each Action (take reference from below image)
      • Current Element Name : enter any meaningful name and then click Create


Step 5 :  Lets configure FTP to write the Update Employee Atom Feed response in the FTP directory.


Knowledge :  πŸ‘€ 
FTP Adapter ?:  Using the FTP Adapter, Oracle Integration Cloud Service can retrieve files for processing in Oracle Integration Cloud Service and upload files and messages from Oracle Integration Cloud Service to a directory on a remote FTP server.

    • Search for the FTP connection and select it.
    • Enter any meaningful name for the endpoint and click Next
    • Configure the below operations :
      • *Select Operation : Write File
      • *Select a Transfer mode : Binary
      • *Output Directory : here you need to provide the FTP directory path where you want to write the file
      • *File Name Pattern : here you need to provide the name with which file will get generated in FTP (ex : EmployeeUpdate%SEQ%.csv) and then click Next
    • Select Sample Delimited document (e.g. csv) to define the content of the file and click Next

    • Now in this configuration wizard window we need to provide the details to create the Schema from a sample CSV file. Copy the below line and save it as .csv file in your computer (ex: UpdateEmployee.csv)

PersonId,PersonNumber,Attribute,New,Old 

      • Lets Configure schema using the above saved .csv file. Browse the file and enter the other details as shown in below image  and then click Next
    • Configuration of FTP is done. Click Done.




Step 6 : Now we need to create one Schedule Parameter, which will actually be the Input Parameter of the Invoke HCM ATOM FEED. This Parameter will store the Timestamp value. This value will get updated after every run of the Integration. This enables new updates to be processed every time and prevents the same update from being processed multiple times.
    • Click on Edit icon πŸ–‰of the Scheduler
    • Declare one variable and pass sample timestamp  value (take reference from below image).

    • In the request mapper between the schedule and the Oracle HCM Cloud Adapter, map the above scheduled parameter (timestamp value)  to Updated-min. Click Validate and Close the mapper.

NOTE :  !
The Oracle HCM Cloud Adapter sends the updated-min query parameter to the Atom server when requesting a feed. The Atom server returns a feed with updated entries occurring after newer updates to the timestamp value. This enables new updates to be processed every time and prevents the same update from being processed multiple times.







Step 7 : Now we need to complete the Mapping of the FTP. Open the FTP mapper and complete the mapping as shown in below image and then click validate and close the mapper






Step 8 :Add one Assign activity to update the Scheduled Parameter Variable value (timestamp value)


    • Enter any meaningful name and click create.

    • Select the scheduled parameters variable from the drop down list and then click on edit icon πŸ–‰
    • Drag and drop updated timestamp element from then employee update response (as shown in below image). Click validate and close.





Step 9 :  Enable the Tracking Variable for the Integration (as shown in below image)




  • Integration development completed. Click Save and Close the window.




TESTING :

  • Activate and Submit the Integration. You can enter New Value ( timestamp ) for the schedule parameter or just submit the flow with the default value that is already present.





  • Open your respective Output FTP directory which you have passed above in Step 5.  You can see the file got generated in the Directory with the details of the changed Attributes of the employees.


    • Open any file, you can see the Details (like Employee Id, Employee Number, Attributes Name for which value get updated and its new value and old value as well )




That's it …  πŸ˜‡ I hope you like my Article. Please do let me know with your valuable comments in the below comment section. 

TADA !πŸ‘‹