Tuesday, August 21, 2018

#649 - OIC integration with Fusion HCM & the efficacy of BI reports & HCM REST APIs


I am not a HCM expert, but playing around with the Oracle HCM adapter did force me to dig a bit deeper into how HCM works.

It all began with a relatively simple file based integration that "imported" a worker into HCM.

The integration had a REST trigger and leveraged the Oracle HCM adapter as well as the technical SOAP adapter.

I ran a test from Postman, with, what a colleague told me was, a valid REST payload, one of the attributes being BusinessUnitID.

{ "PersonNumber":"77012", "StartDate":"2014/01/01", "DateOfBirth":"1988/05/23", "LegislationCode":"US", "FirstName":"FirstName0112", "LastName":"LastName0112", "LegalEmployerName":"US1 Legal Entity", "BusinessUnitId":"458", "JobId":"300100003260508" }

I tested the integration and then went into Fusion HCM to validate what I had done.
From an OIC perspective, the integration flow had executed successfully.

So off I ventured into HCM -







































The file import went ok, but the loading of the new Worker failed.

Here's the error message















So 458 is obviously invalid.
Note the field name - LocationSetId - more anbout that later.

So how do I get a list of the valid Business Unit IDs?

A colleague, Stephen R., helped me out with the following SQL.

Select BU_id,  BU_name
From FUN_NAMES_BUSINESS_UNITS_V 

So now where do I execute this?

Again, back in Fusion HCM -

Click on Reports and Analytics






























Click Cancel 





















Now click on Catalog -













then New - Data Model -






















Choose SQL Query -



















Point to the appropriate data source -


















Click on the Data tab - to see the results of the Query -















Click View -











To make this a bit more readable - click Table View -















So that's the valid BusinessUnit ID sorted!

I run my integration again and now get an issue with the JobId.
Apparently, that is also invalid.

I now need to find out which view I should use for this.
A good starting point is here

















This looks like the right one - 
























The SQL Query






























I test the integration again - this time using my name -
























and see what has happened in HCM -

Import and Load completed successfully.











I search for the new employee - Niall Commiskey
















Great stuff!

Now I could also use the HCM REST APIs to get this information -

These are described in detail here

Now I had a problem testing from Postman with the following Jobs API call -
According to the docs, the UTL format is -
https://yourHCM:443/hcmRestApi/resources/versionNr/jobs

Apparently the version nr I tried was no longer supported.
Then a tip from Angelo S. use latest instead.

https://yourHCM:443/hcmRestApi/resources/latest/jobs



And there is my Job Id.































No comments: