cancel
Showing results for 
Search instead for 
Did you mean: 

Snap Execute snap with Oracle Cloud HCM Data Loader (HDL)

swright
New Contributor III

We are new customers of Snaplogic and Oracle Cloud HCM and are trying to use Snaplogic for integrations with Oracle Cloud HCM (OC). One of our first projects is to update a flexfield on OC with our custom ID number for each person listed in the a csv file that we will receive from another process. We are using the OC HCM Data Loader (HDL). Outside of Snaplogic we transform the info. from the csv to a “.dat” file in a format that HDL uses, and then zip the file as required by HDL. I have loaded and processed the file manually using HDL so that I know that the file and HDL are working properly. Now I want to use Snaplogic to automate a process to run nightly to update OC

What I want Snaplogic to do is:

Send the zip file to OC.
Initiate the process on OC to process the contents of the zip file.
Store/log the results of the transactions.

I plan on using the SOAP Execute snap for this unless I find a better method.

The first thing I need to know is how to use Snaplogic to send the zip file to OC. It looks like I need the file to be loaded into the envelope in BASE64 format as “Contents”. How do I use Snaplogic to get the file from the server into snaplogic, transform it to BASE64 format and get it into the envelope?

Thanks in advance,
Scott

9 REPLIES 9

koryknick
Employee
Employee

I almost mentioned that you could allow the Binary to Document to encode_base64 and can probably even skip the Mapper snap before the SOAP Execute, assuming there are no other values you need to push into the envelope.

I’m not sure why the Mapper would have an error that $content is undefined after the Binary to Document snap as that is the point of that snap, unless maybe the input view of the Mapper is not really linked. When you Validate, open up the Mapper and make sure you see fields in the Input Schema. If there are no fields listed in the Input Schema, you probably didn’t link the Mapper to the Binary to Document.

swright
New Contributor III

Kory,

I was not seeing the Input Schema but the snaps were all connected and seemed to be linked. Is there something special that I have to do to link them other than just connecting them to each other in the GUI? After reading your last message I was looking around for the problem and suddenly I could see the Input Schema and it validated! Somehow I must have caused them to be link I guess… but I don’t know how.

I’ll probably continue using the mapper because I have more items to map anyway.

I found a post that seems closely related to what I am trying to do:

https://community.snaplogic.com/t/soap-execute-snap-attachment-error/5201

I’ll probably use an envelope based on the one they are using so I will probably be passing most of those variables using the Mapper Snap.

They seem to have solved their problem by using something like the following and NOT using base64 so I’m not sure if I should something like that:

<xop:Include
xmlns:xop=“http://www.w3.org/2004/08/xop/include” href=“cid:ArAutoinvoiceImport.zip”/>
</erp:Content>

It seems like this requires mtom. They didn’t mention exactly how they changed the envelope to do this.

Can I (should I) use mtom somehow?

Thanks,

Scott

Hi swright,

Have you tried sending the request manually? I usually try the Soap service first using Soap-UI then once that I have successfully invoked the soap service and got a response, I will use the Soap-UI request as my template. Hope this helps

swright
New Contributor III

That does help! I had heard about SoapUI but I’ve never used it. I’ll start using it today.

Thanks Mike!

Scott

koryknick
Employee
Employee

I will need to defer to others in the Community as this is reaching beyond my current experience. Good luck!