Do you need the flexibility to select the parameters to push data from BSO to ASO? In Groovy, administrators have the ability to create Groovy business rules to execute a data map and override the data map parameters. For example, administrators can create business rules to execute the data map and allow users to select their parameters using RTP. Currently, this feature is only in EPBCS hence that Groovy calculation is only available in EPBCS.
How can you create a Groovy rule and execute a data map in EPBCS?
The following instructions are steps to create a Groovy rule in EPBCS.
First, launch calculation manager and create a new rule.
In the drop-down, select “Edit Script”
In the right hand corner, click on the drop-down for Script Type and select “Groovy Script”. This will allow you to write calculation in Groovy.
Here is a sample Groovy script to execute a data map. The IF statement is checking to see if there is a data map called “Data Map Name”. If there is a data map called “Data Map Name”, the Groovy script will execute the data map. The .execute (true) means that it will clear the data before loading the data to the target cube. If the .execute is false, then it will just load the data to the target cube without clearing.
Also, if you want to override the existing members in your data map, you have the options to override the member using Groovy script. To override the members, insert the dimension name and member after .execute.
In this example, I am overriding the member for “Net Income” from the account dimension, “Budget” from the scenario dimension, “Working” from the version dimension, and “No Entity” from the entity dimension.
Sample Groovy Script to Execute a Data Map
In this example, I created RTP for Scenario, Version, and Entity. The users will be prompted to select a member for each of the dimensions. This gives the user the flexibility to push the selected set of data to the target cube.
You have the option to attach this Groovy script to “run after save” for a form where it will push the data over when the users save the data. In addition, you can create a Groovy script to track the edited cells that the user edited and only push those intersections over to the target cube. This will require using the iterator method in Groovy.
Overall, this Groovy method of executing a data map allows users the flexibility to select the set of data that they wanted to push over to the target cube. This is just another option to push data within EPBCS while giving you the capability of overriding members in a data map. It helps reduce the number of data maps and gives users the dynamic feature of selecting the parameters.
Blog post by Steven Wang of Key Performance Ideas.