FDMEE Essbase/Planning Script Execution Glitch
When targeting Essbase/Planning applications through FDMEE, a particularly useful feature is the ability to trigger Calculation scripts before and after the Load process as well as before and after the Check process. Not only can you execute scripts, but you can control the execution order and pass script parameters. This functionality is quite useful for executing fixed scope data clear operations before the data load and executing targeting aggregation/calculations after the data load has been completed.
Figure 1 – FDMEE Target Application Calculation Script Editor
While this feature works great when the scripts are working, what happens when there is a script failure? If a script executed during the Load process fails, should the FDMEE Load step report a failure? (even if the data loaded?) How about a script failure during the Check step? Would you be surprised to know that currently in 184.108.40.206.210, this is not the case?
In the event of a successful load process, even if a script error occurred, all FDMEE “fish” steps will return gold and the Process Monitor report will reflect the same. (e.g. no issues) Your only indication of a failure will be in the job log for the data load process!
If you are currently leveraging this functionality, please be aware of this quirk until this is corrected!
- 220.127.116.11.100 (Patch 20648390) advertises this as being fixed; however, it still presents itself in 18.104.22.168.200+ [See Defect: 20631385]
- An enhancement request, 25217240, was created for this issue when submitted in 22.214.171.124.200. I do not know if this has been implemented yet; however, no fix is listed in the Defects Fixed Finders Tool through 126.96.36.199.210
Steps to Recreate [target a non-existent script]
#1 – Create FDM Target Planning Application and associate a Calculation script that does not exist in the target application
Figure 2 – Create Calculation Script references for our sample Target Application
#2 – Create your Location / Data Load Maps / Data Load Rule / etc.
#3 – Load a data file through and confirm that the Process Monitor reflects success.
Figure 3 – Perform a data load and confirm that the Process Monitor User Interface shows no errors
#4 – Pull Process Monitor report and confirm no errors reflected.
Figure 4 – Run the Process Monitor Report to verify it also does not reflect any errors
#5 – Review the log file
Since the script doesn’t exist, the FDMEE log will reflect an Essbase error due to the non-existent script.
Figure 5 – Review the Job log to verify an error is reflected in the logs
Figure 6 – Confirm version of FDMEE
If your load process is being performed manually, the easiest recommendation is to have users review the log to confirm successful script execution.
If you are performing automated processing where it is not feasible to manually review logs, considering implementing an Event script to scan the log file for script success/failure and using that to trigger a failure in FDMEE / Error Log / Email Notification / etc.