In 'FDMEE System Maintenance Tasks' blog series, we have already covered the following topics:
Manual implementation:
FDMEE: System Maintenance Tasks: Maintain FDMEE Data Tables
FDMEE: System Maintenance Tasks: Maintain ODI Session Data
FDMEE: System Maintenance Tasks: Maintain Application Folder
FDMEE: System Maintenance Tasks: Maintain Process Tables
FDMEE: System Maintenance Tasks: Maintain EBS GL Balances Table
Automation:
Automation of 'Maintain FDMEE Data Tables' System Maintenance Task
Manual implementation:
FDMEE: System Maintenance Tasks: Maintain FDMEE Data Tables
FDMEE: System Maintenance Tasks: Maintain ODI Session Data
FDMEE: System Maintenance Tasks: Maintain Application Folder
FDMEE: System Maintenance Tasks: Maintain Process Tables
FDMEE: System Maintenance Tasks: Maintain EBS GL Balances Table
Automation:
Automation of 'Maintain FDMEE Data Tables' System Maintenance Task
Automation of 'Maintain ODI Session Data' System Maintenance Task
If you have not already gone through the above articles, I would suggest you read them first to get a comprehensive understanding of all the Hyperion Financial Data Quality Management (FDMEE) System Maintenance Tasks.
Note:
If you have not already gone through the above articles, I would suggest you read them first to get a comprehensive understanding of all the Hyperion Financial Data Quality Management (FDMEE) System Maintenance Tasks.
Note:
- The demonstrating Hyperion environment has the 'Windows Server 2012 R2 Standard' operating system.
- The demonstrating Hyperion environment has 'Oracle database server 12.2.0.2 (18c)' as backend database.
- This post has been written and associated activities have been demonstrated on Oracle FDMEE version 11.1.2.4.220.
- There is no outage required on the FDMEE application to execute these scripts. But it is advisable not to run any data loads during the activity.
- Don't forget to take complete FDMEE schema backup before attempting to run these scripts.
- Different paths and folder names mentioned in this post may slightly vary for different Hyperion setups but at large it should be the same.
Command syntax of FDMEE batch utility executescript.bat:
----------------------------------------------------------------------------------
executescript <username> <password> "<script name>" "<parameters>" <execution mode>
Where:
executescript <username> <password> "<script name>" "<parameterdisplay1=value1>" "<parameterdisplay2=value2>" <SYNC | ASYNC>
If you are going to use an encrypted password (which is the recommended best practice), following will be the command syntax:
executescript <username> <password | -f:password.txt> "<script name>" "<parameterdisplay1=value1>" "<parameterdisplay2=value2>" <SYNC | ASYNC>
You will find the configuration steps for password encryption in the FDMEE admin guide as shown below:
You need to ensure that your encrypted password.txt file is placed in the location defined in Navigate-Administer-Data Management-Setup tab-System Settings-Encrypted Password Folder.
----------------------------------------------------------------------------------
executescript <username> <password> "<script name>" "<parameters>" <execution mode>
Where:
- <username>: is your FDMEE user running the script
- <password>: can be either the hard-coded password or a file with encoded password (-f:filename)
- <script name>: is the name of the script registered in Script Registration page (not the python script filename). You find the script name here: Navigate-Administer-Data Management-Setup tab-Script Registration
- <parameters>: are the script parameters in the form "Display Name=Parameter Value"
- <execution mode>: is either SYNC (synchronous) or ASYNC (asynchronous). SYNC—Process runs immediately and control returns when process completes. ASYNC—When the ODI job is submitted, control returns. The load process continues to execute in ODI.
executescript <username> <password> "<script name>" "<parameterdisplay1=value1>" "<parameterdisplay2=value2>" <SYNC | ASYNC>
If you are going to use an encrypted password (which is the recommended best practice), following will be the command syntax:
executescript <username> <password | -f:password.txt> "<script name>" "<parameterdisplay1=value1>" "<parameterdisplay2=value2>" <SYNC | ASYNC>
You will find the configuration steps for password encryption in the FDMEE admin guide as shown below:
You need to ensure that your encrypted password.txt file is placed in the location defined in Navigate-Administer-Data Management-Setup tab-System Settings-Encrypted Password Folder.
Automating 'Maintain Application Folder' System Maintenance Task:
-------------------------------------------------------------------------------------------------
In this post, we will see how to automate 'Maintain Application Folder' System Maintenance Task. I suggest you to first read this post FDMEE: System Maintenance Tasks: Maintain Application Folder for theoretical understanding, manual implementation, and post-execution activities of 'Maintain Application Folder' System Maintenance Task.
When you execute ‘Maintain Application Folder’ purge script manually from Data Management console, it seeks the following input parameter:
- Target Application
- Days to keep Inbox directory
- Days to keep Outbox directory
- Days to keep Data directory
To run ‘Maintain Application Folder’ purge script using executescript.bat command-line utility below is the command syntax:
executescript username password "MaintainApplicationFolder" "Target Application=EnterYourTargetAppName" "Days to keep Inbox directory=EnterDaysInNumber" "Days to keep Outbox directory=EnterDaysInNumber" "Days to keep Data directory=EnterDaysInNumber" SYNC
Description:
Above query-output is same as what you see in Data Management console Target Applications list values as shown below:
- TargetAppName should be entered the same as what you get in the output by running below query against FDMEE schema:
Above query-output is same as what you see in Data Management console Target Applications list values as shown below:
- You need to enter the number of days you want to retain files/folders for, in FDMEE Inbox, Outbox and Data folders.
Suppose using FDMEE Admin user, you want to run 'Maintain Application Folder' purge script for 2 Target applications name TargetApp1, TargetApp and for 90 days (3 months) retention period i.e. you want to delete all the files/folders in FDMEE Inbox, Outbox and Data folders keeping only last 90 days (3 months) data.
In order to achieve the above goal, create a batch script name 'MaintainApplicationFolder.bat' under folder E:\Admin\scripts having the following content:
MaintainApplicationFolder.bat:
--------------------------------------------------
--------------------------------------------------
@echo off
REM Set the value for the variables
set "username=admin"
set "password=YourAdminPassword"
set "DaystokeepInboxdirectory=90"
set "DaystokeepOutboxdirectory=90"
set "DaystokeepDatadirectory=90"
set "logfile=E:\Admin\scripts\MaintainApplicationFolder.log"
REM Clear the content of existing logfile
rem.> %logfile%
REM Navigate the executescript.bat utility folder
cd "E:\apps\OracleEPM\Middleware\user_projects\epmsystem_fdm\FinancialDataQuality"
REM Run executescript to perform "MaintainApplicationFolder" for a set of 2 Target Applications and 90 days to keep the application directories
for %%f in (TargetApp1 TargetApp2) do (
echo call executescript %username% %password% "MaintainApplicationFolder" "Target Application=%%f" "Days to keep Inbox directory=%DaystokeepInboxdirectory%" "Days to keep Outbox directory=%DaystokeepOutboxdirectory%" "Days to keep Data directory=%DaystokeepDatadirectory%" SYNC
call executescript %username% %password% "MaintainApplicationFolder" "Target Application=%%f" "Days to keep Inbox directory=%DaystokeepInboxdirectory%" "Days to keep Outbox directory=%DaystokeepOutboxdirectory%" "Days to keep Data directory=%DaystokeepDatadirectory%" SYNC
echo ------------------------------------------------------------------------------
echo ------------------------------------------------------------------------------
) >>%logfile%
cd E:\Admin\scripts
Change the paths and variables mentioned in the script as per your requirement and FDMEE application setup.
You can put your Target Application names in the segment (TargetApp1 TargetApp2 ) separated by a single space.
Now login to your FDMEE server, open an Administrator Command prompt and run MaintainApplicationFolder.bat.
After completion of the script your MaintainApplicationFolder.log will be generated in below format:
After completion of the script your MaintainApplicationFolder.log will be generated in below format:
To verify whether your process IDs have successfully completed or not, you can navigate to Process Details page (In Data Management console, click on the Process Details link under the Workflow tab—Monitor—Process Details):
We can see our process IDs have executed successfully. Click on the 'Show' button for a particular Process ID to open the corresponding log file to see more details. Similarly, you can verify other process IDs recorded in the log file for all the Target Applications.
That's all for this post.
I hope this article has helped you.
Your suggestions/feedback are most welcome.
Keep learning and Have a great day!!!
That's all for this post.
I hope this article has helped you.
Your suggestions/feedback are most welcome.
Keep learning and Have a great day!!!