Oracle’s Planning & Budgeting Cloud Service (PBCS) and it’s sibling Enterprise PBCS includes many great built-in administrative features. You can manage just about all facets of the normal care & feeding of planning and reporting applications without leaving the application interface – even scheduling logic such as data & dimension loads, business rules, and data backups. But what if you need connect your cloud automation to your company’s enterprise scheduling tool, perhaps to leverage your working days calendar, or connect the planning loads with other jobs in other systems? Oracle gives you that flexibility as well via EPM Automate!
EPM Automate is a batch utility that comes with your PBCS/EPBCS environment, enabling automation of many tasks including:
- Import and export metadata, data, artifact and application snapshots, templates, and Data Management mappings
- Upload files into environments, list files, and delete files from the service
- Download snapshots, reports, and metadata and data files from the service
- Run business rules on data, and refresh the application
- Copy data from one database to another; typically, from a block storage database to an aggregate storage database or from a block storage database to another block storage database
- Run a Data Management load
- Generate Data Management reports, provisioning report, and user audit report
- Replay Oracle Smart View for Office load on an environment to enable performance testing under heavy load
Let’s look at a simple example of a common use case for EPM Automate – loading prior period actuals to your PBCS application.
Step 1 – Generate Your Source Data
- Create a repeatable process for generating a flat file of prior period financials from your ERP system.
- Files used in the automation process should reside in a common location on-premise, such as a network file share. You can also put your EPM Automate scripts in this same directory
- The generation of your source files and any associated file transfer activities can be built into your overall scheduled job definition.
Step 2 – Create Your EPM Automate Scripts
- The commands for EPM Automate are very simple and easy to understand. Full syntax details can be found in Oracle’s documentation.
- For example – here we are logging into a PBCS application and running the provisioning report (which lands in the Planning Inbox).
- While you can call EPM Automate commands directly as shown above, most customers use a scripting tool such as PowerShell to group EPM Automate commands together into logical units of work. These scripts are then called by your scheduling tool.
*This has the added benefit of leveraging reusable functions and variables, customizing error handling, and adding commentary to the scripts so they are self-documenting.
- Here is a simple PowerShell script that contains the logic steps for the load of our historical actuals. The steps include clearing the data, uploading and processing the data file through Data Management, and running an aggregation.
Step 3 – Add the Schedule
Now that you have your source data files and your EPM Automate scripts, you can define the jobs in your scheduling tool, such as IBM Command Center, Autosys, or even just Windows Task Scheduler or Linux Cron jobs.
- You can create dependencies, such as making sure the source file extract is complete before attempting to load it
- You can connect the automation activity to your business calendar so that logic runs when expected. For example, you may have a holiday in the middle of your close and your data load to PBCS needs to shift accordingly.
- Through the scheduling tool and/or additional scripting, you can ensure appropriate people are notified when jobs are successful or if errors are encountered.
- You can also enhance your EPM Automate scripts to include other common administrative tasks to streamline many other aspects of supporting the application environment.
Source Data + Simple Scripts + Scheduler = Connected Automation!
As you know, batch processes can sometimes have a lot of steps! Achieving automation on your PBCS/EPBCS tasks is a very doable task that will not only save you time – it will also reduce the risk of user error.