EPM Automate

Implementing Multiple Languages in Oracle EPM Systems: Python, Jython, and EPM Automate

CloudADDIECloudADDIE•January 11, 2026•6 min read
Implementing Multiple Languages in Oracle EPM Systems: Python, Jython, and EPM Automate

Most Oracle EPM administrators come to the platform knowing one scripting language reasonably well (Python is a common one) and end up picking up several more along the way: Jython, batch scripting, Groovy, and EPM Automate's own command syntax among them. None of these are exotic or hard to pick up individually, but combined, they let you automate work that would otherwise eat up an admin's entire day. This article walks through one concrete example, reconciliation loading in Account Reconciliation (ARCS), to show how the pieces fit together, and why it's worth learning more than one of them.

Python and Jython in Oracle Systems

If you already know Python, you have a real head start in Oracle's ecosystem, thanks to Jython: a Python interpreter implemented in Java that runs on the Java Virtual Machine. Jython lets you write Python-syntax code that runs in and interoperates with a Java environment, which matters because so much of Oracle's EPM Cloud tooling (including the EPM Integration Agent's custom event scripts) is built on Java under the hood. That combination gives Python knowledge real leverage inside Oracle EPM Cloud: it shows up in event scripts for data integration jobs (the "before extract," "after extract," "before upload," and "after upload" hooks that Oracle's Integration Agent supports), and it's just as useful as a general-purpose scripting language for prepping files before they ever touch an Oracle application.

One of Python's real strengths is its package ecosystem, and that's genuinely useful here. As an example: it's common to pull an HTML file (readable in Excel as an .xls-style export) out of Data Integration (the current name for what used to be called Data Management) from an ARCS environment. Using Python with a library that handles HTML parsing and spreadsheet manipulation, you can take that raw export and:

  1. Convert it to a CSV
  2. Delete unneeded columns
  3. Insert a new column with calculated or static values
  4. Reorder the columns
  5. Rename the columns
  6. Delete rows with no usable data

That gets the file into a format ARCS can actually import. It's a narrow example, but it's representative of the broader pattern: almost any messy source export can be normalized into an importable format with a fairly small amount of Python.

Implementing Languages

EPM Automate

EPM Automate is Oracle's own command-line tool for scripting actions inside EPM Cloud environments: anything you could otherwise do by clicking through the UI, EPM Automate can typically do from a single command. (See our EPM Automate overview and best practices posts for the broader command set beyond ARCS.) It's worth knowing the real command names rather than treating it as a black box, because it makes troubleshooting and building on top of someone else's script far easier. Continuing the ARCS example above, once the cleaned-up file exists, EPM Automate can:

  1. login: authenticate to the ARCS environment
  2. setPeriodStatus: open the target reconciliation period
  3. uploadFile: upload the prepared file
  4. importPreMappedBalances: import the pre-mapped balance data into the source system
  5. createReconciliations: generate reconciliations for the period from a profile filter

On its own, that's a modest number of steps, but it's also genuinely time-consuming when done by hand, on top of whatever time it took to clean up the source file in the first place. A single reconciliation-loading cycle like this can easily run 15 minutes of hands-on work, and creating the reconciliations themselves can add another 30 to 45 minutes depending on volume. Multiply that across every reconciliation type in an ARCS environment (many organizations run six to ten distinct types), and you're looking at hours of repetitive work every close cycle. That's exactly the kind of task worth reducing to a single script execution.

Batch Scripting and Automation

The piece that ties everything together is your local machine's command-line shell. Anything you can run manually (a Python script, a Jython script, an EPM Automate command) can also be called from a batch script (.bat on Windows, a shell script on macOS/Linux), executed in sequence, with no manual intervention required once it starts. A representative end-to-end version of the ARCS example above looks like this:

  1. Download the raw export from Data Integration
  2. Kick off a batch script that runs the following steps in order
  3. Run a Python script to clean and reformat the file for import
  4. Call EPM Automate to log in and open the target period
  5. Call EPM Automate to upload the file and import the pre-mapped balances
  6. Call EPM Automate to create the reconciliations and clean up temporary files
  7. Call EPM Automate to log out

A process that traditionally takes a skilled user the better part of an hour becomes a double-click on a batch file, freeing that person up to spend their close cycle reviewing exceptions instead of re-keying the same steps every period.

A Few Best Practices Worth Adopting

This was a fairly narrow example (one reconciliation type, three scripting layers, and a batch file tying it together), but it's representative of what's possible once you're comfortable combining a couple of these tools rather than relying on just one. There's plenty more headroom beyond this: other languages, other EPM applications, and other manual processes just waiting to be scripted away. It mostly comes down to being willing to learn the tools and get a little creative with what they can do together.

At CloudADDIE, we are equipped with years of experience in business solutions and the latest software for enterprises. We are confident that we can help your companies be more effective, more profitable, and make more informed decisions. Contact us to get started today!

Free Consultation

Want help from senior EPM and ERP consultants?

Schedule a free consultation with CloudADDIE to talk through your planning, consolidation, reporting, or data challenges.

Keep Reading

Related posts

EPM Automate

EPM Automate: An Overview of Oracle's EPM Cloud Automation Tool

3 min readRead post
EPM Automate

EPM Automate Best Practices

6 min readRead post
EPM Automate|Finance Transformation

The Power of Automation for EPM Cloud

5 min readRead post