Submitting Oracle cloud ESS jobs with Python/Zeep

Vishu Guntupalli
Intelicloud
Published in
2 min readOct 13, 2018

Loading data into Oracle HCM/ERP cloud whether through UI or through web-services involves ESS (Enterprise Scheduler Service) jobs. If you are submitting jobs through UI you might be familiar with the following screen:

Not just the page above but all of data loading that is done from different places in Oracle cloud ends up submitting an ESS process in the background.

In this post we will learn how to submit an ESS job by invoking SOAP web-services using python and Zeep(Python library for SOAP web-services). The web-service we will use is the ErpIntegrationService and the endpoint loadAndImportData (which uploads file to UCM -> Loads data to Interface Tables -> Imports the data).

ESS soap call with Python

The actual SOAP call is made in lines 18–27, let us analyze what is going on there. The first parameter to the method loadAndImportData is the UCM info, the file that you are trying to load must be converted to a base64 encoded byte stream and given the proper DocumentAccount, SecurityGroup and title. The second parameter is the ESS job info which is a combination of

'Job package name, Job name'

and the parameter list a comma separated value list of parameters you want to pass to the job.

The example shown above loads and imports budget data to Oracle cloud. You can submit any ESS job provided you know the correct job package name and job name for the job you are trying to submit and the appropriate UCM document account for the file.

Hope the code above works for you, please don’t hesitate to comment if you have any questions.

p.s: please use the zeep library(my clone) mentioned above, I have made some modifications to it to be compatible with Oracle Cloud.

--

--

Vishu Guntupalli
Intelicloud

Software engineer/architect, Entrepreneur, AWS, Python, Data, Cloud