It is always a good idea to have a retention policy defined for your systems. For FDMEE file cleanup (Data Management), Oracle has supplied scripts out of the box for your use to execute on your retention policies. These can be found in Data Management, on the Workflow tab under the Script Execution link. Then select the System Maintenance Tasks from the Custom Script Group dropdown menu.
The “Maintain Application Folder” script will cleanup the Inbox, Outbox, and Data (minus the sub-folder for Scripts) folders by the number of days selected. This includes Reports and Logs that are associated with Process IDs.
The “Maintain Process Tables” script will cleanup the Process IDs in the Process Details by the number of days selected.
The “Maintain ODI Session Data” script will clean up the ODI Sessions logs that are associated with the Process IDs by the number of days selected.
These can even be scheduled within the Data Management workspace. When you Execute one of these scripts you will see in this popup, it not only accepts the input parameters needed to run the script, but also; a “Schedule” button that allows you to schedule the job.
These are all nice features that Oracle has delivered to enable its customers to meet the file system maintenance portion of their retention policies.
However, there are some clients who don’t want to use the workspace schedule option. They prefer to use the Enterprise Scheduling tool all the rest of their batch jobs run in. No problem, Oracle provides a utility to run each of these System Maintenance Tasks. As well as other custom scripts from the command line. In the <drive>\Oracle\Middleware\user_projects\epmsystem1_FDMEE\FinancialDataQuality folder you will find the executescript.bat (among others). Check the Oracle documentation for this.
Executing a Custom Script from a Command Line
Executescript <script name> <Parameter Display Name>=<Value>.
It doesn’t have as many details or examples to give complete clarity. What ends up working to run these maintenance scripts is a far cry from what is in the documentation.
What it should look like is this:
Executescript <loginid> <password | -f:password.txt> <script name> <Parameter Display Name>=<Value> <SYNC | ASYNC>.
There should also be a couple more clarifications
- <script name> : Is the name of the script as found on the Script Execution page (not the script filename), with no spaces.
- <Parameter Display Name> is the text that is displayed on the prompt (in this example “Days to keep records”).
For example, let’s run the Maintain Process Tables script from the command line, removing Process IDs older than 35 days. It will look like this..
executescript admin -f:FDMEEUtilPW.txt MaintainProcessTables “Days to keep records=35” SYNC
Here’s what the cmd session will look like (please excuse the word wrap of the cmd window).
Note the last entry is the process ID that was created, this is normal. To see the output from the python script that was executed, look at the process ID 5762 in FDMEE GUI.
This shows it was a successful run. The Process Details gives you access to the Log and ODI Session log from this run if you choose to pursue them.
FDMEE file cleanup gives you one more way to manage your environments.
Questions? Comments? Feel free to reach us at:
Robert Reis, firstname.lastname@example.org
Courtney Belden, email@example.com