Introduction
EPM Automate plays a vital role in automating many admin and user tasks in Oracle Hyperion Cloud. This blog post demonstrates how EPM Automate can help in troubleshooting the issues during support phase. Basically, this method is useful when we have more than one instance like Development and a SIT/UAT/Prod instance. The following explains the scenario and provides the complete automation script which can be directly used in similar instances.
Scenario
The following approach is based on the assumption that there is a development instance and a UAT Instance where a user reports any issues. Below is the entity dimension:
During UAT/Prod testing we may have issues reported by various users which may be data issue or Business rule issue. Consider a user who supports the America Entity to have some issue with a Business rule; then below are some of the operations that cannot be performed in the instance user reported:
1. Updating data directly in the forms.
2. Running any business rule as it may update the user data.
3. Taking a level zero backup and update the Development environment.
To elaborate further on point #3, we cannot just copy the level zero backup data from UAT/Prod to Development instance as it may affect other developers’ data.
How do we then resolve this problem that makes user comfortable?
We have two prerequisites to implement this solution. They will not be covered in extensive detail but well enough to make convey the idea behind this solution.
Below are the two prerequisites:
Prerequisite-1: Business Rule (User Reported Instance)
Create a business Rule which accepts Entity and Month as run-time prompt. The Business rule should try to extract the level zero data from instance user reported. Store the file in the Inbox FDMEE Folders.
**************************************************************************************************************************
SET DataExportOptions
{
DATAEXPORTCOLFORMAT ON;
DATAEXPORTDIMHEADER ON;
DATAEXPORTDRYRUN OFF;
DataExportRelationalFile OFF;
DataExportNonExistingBlocks OFF;
DataExportLevel ALL;
DATAEXPORTCOLHEADER “Period”;
DATAEXPORTOVERWRITEFILE ON;
DataExportDynamicCalc OFF;
DataExportDecimal 2;
};
FIX (@Relative(“Account”,0),{Entity},{Month},@Relative(“Scenario”,0),@Relative(“Version”,0),”FY18″,@Relative(“Projects”,0))
DATAEXPORT “File” “,” “/u03/inbox/inbox/EPM/export_entity.csv” “#”;
ENDFIX
**************************************************************************************************************************
Prerequisite-2: FDMEE Data Rule (Development Instance)
Create a data rule in FDMEE to load the data extract file to Development instance. Below are the steps to create the data rule:
1. Create an Import format based on the Extract file created in Prerequisite-1.
2. Create data mappings to map the source and target dimension.
3. Create a data rule to load the data into development instance.
After setting up the prerequisite now its the time to write the automation batch script. Below is the steps to be written in the Batch script
1. Enter the dimension information to be passed to Extract business Rule.
2. Run the business Rule to extract the data for specific Entity.
3. Download the data file from UAT/Prod Instance.
4. Upload the data file to development instance.
5. Run the data rule to load the data.
The following script is completely tested script and it works well in our PBCS environment. Also the above steps are marked in the comment section in the below EPM Automate Script for better understanding.
EPM Automate Script
**************************************************************************************************************************
REM SET variables for development and UAT Instance.
SET p_url=https://fastforward-perficient.pbcs.us2.oraclecloud.com
SET p_domain=perficient
SET p_user= don.ford@perficient.com
SET p_password=xxxxx
SET d_url=https://fastforward-test-perficient.pbcs.us2.oraclecloud.com
SET d_domain=perficient
SET d_user= don.ford@perficient.com
SET d_password=xxxxxx
CALL epmautomate login %p_user% %p_password% %p_url% %p_domain%
REM Get the parameters for the dimension – Step 1
SET /P Entity=Enter Entity:
SET /P Month=Enter Month:
REM Call the Extract data rule to get the data of the Entity for the specific month. – Step 2
CALL epmautomate runbusinessrule Extract Entity=%Entity% Month=%Month%
REM Download the file – Step 3
CALL epmautomate downloadfile inbox/EPM/export_entity.csv
CALL epmautomate logout
REM Login to Development environment
CALL epmautomate login %d_user% %d_password% %d_url% %d_domain%
REM Upload the file – Step 4
CALL epmautomate uploadfile export_entity.csv inbox/EPM
REM Call the Data load rule to copy the data to Development Environment – Step 5
CALL epmautomate rundatarule Budget_load %Month% %Month% REPLACE REPLACE_DATA export_entity.csv
CALL epmautomate logout
**************************************************************************************************************************
Above script may require few modification based on the Dimension and FDMEE Data folders. Script has to be saved as *.bat file in your local machine and run the script in Admin mode.
Steps to run the script
1. Save the EPM Automate script *.bat file.
2. Run the script in Admin mode.
3. Enter the Entity America and Month Jan.
4. Script gets completed successfully.
Data specific to the entity America gets copied to Development instance. The developer can start working on the issue the user is facing in UAT/Prod Instance.
Key Benefits
1. Developers can test the Business rule/Data Issue in development with similar data in which user reported the issue.
2. User can see the results before the changes are pushed to UAT/Prod.
3. No need to overwrite all level zero data in any instances.