Technical Articles
Update dimension properties using an application
In SAP Analytics Cloud Planning it is possible to use properties on a dimension actively in Data Actions, to different purposes.
I can be to distribute cost, to calculate results and many other use cases.
The advantage is that you can leverage attributes from the source system to ensure correct planning, this could be: Responsble person in Cost Centers, Company Code on Profit Center – But it can also be manually created properties (or attributes) on dimensions in the Modeler in SAP Analytics Cloud.
The disadvantages of the manually created properties, is that you need knowledge and access to do this, and could lead to not leveraging the full potential of the Self Service capabilities that SAP Analytics Cloud provides.
You can do this by creating an Application, where you can actually read the content of the properties created on a dimension, and by using standard functionality, update the values and reading these changes directly in a table.
In this example I am using a model created for the purpose of the blogpost, with only one measure and one dimension:
The property has been created on the dimension, and filled out with values, in this example it is called: Planning_Relevant – Is the dimension member planning relevant:
Masterdata
Model
I have constructed a page with a table, where the properties can be viewed, a Dropdown with the dimension members of the Dimension: Company_Code
A textbox with the description of the dimension member selected, and a Input Field where the user can read the current value of the property, and the user will be able to change the value, and update the value in the model by using the button in the application:
Canvas
There are 3 scripts in the solution: Initialization, where dimension members are being loaded when the application is being loaded, and inserted into the Dropdown:
Initialization
Selector script, where the property and the text of the chosen dimension member is being loaded, and presented in the relevant textbox and input field:
Selector
Update
Update script, where the changed value of the property is being sent to the model, and the application is being refreshed
Update
Application
And after the update script have been executed, the value is changed in the table
After the update
This way the end user can update properties without engaging IT, and we can leverage to full potential of the Self Service provided in SAP Analytics Cloud
Simon Lyng
Great Article. I think the screenshot for selector script ( reading existing property values ) section has been duplicated with Update script. SAC currently not supporting attribute updates for Version and Account dimension is creating some bottlenecks else this approach can be really handy to centrally manage some key plannable dimensions like version etc.
Br.
Nikhil
Hi
Thanks, I have inserted the correct screenshot - appreciate the comment 😀
/Simon Lyng
Hi Simon,
Your article couldn't have come at a better time.
We were looking for something like this for some time now.
Unfortunately, we are finding it very hard to code this because there is no reference as to what objects have what names.
Current_Value_Header
Comp_Code_Description
Comp_Code_Desc_Header
Current_Value_Input
Would you mind adding screenshots or simply noting what objects are being referenced by their names listed above?
Best,
Diego