Enabling Dynamic Rows and Adding Members on the Fly
Want to make Web Forms truly dynamic for your end users? Do users need to add members on the fly to the application? Regardless if you use the web or Smart View for your data entry, with these couple of tricks you can make the user experience even more enhanced.
Watch the recorded demo!
Read the full blog post!
Enable Dynamic User Variables
This feature isn’t new but it’s one few organizations know about and often not implemented. When you create a form often times your rows have way too many members. This can cause delays in pulling up your application as the system tries to render all these blocks. It can also take quite some time if you are “Calculating Form On Save” or “Calculating Form on Load” as the system has to add all those block together each time.
With Dynamic User Variables you can choose a subset of data from your POV and populate only the appropriate children or descendants of that member. A common example is for folks who do Product planning. Instead of pulling back every single Product in the dimension you can select a Product Group or some subset of Product and only return the descendants of that group. The screen shot below is from a Planning and Budgeting Cloud Service (PBCS) instance but it works the same for on-premise Hyperion Planning.
To set this up is quite easy, and can be done in three steps. The first step is to setup a User Variable as an Administrator. User Variables were meant to be specific variables that any user could update as a preference to what they want to see. Users must have these variables defined in order to make this work. To create a User Variable go to the Variables screen. In this example, we’ll setup a User Variable called “Product Group”.
Once the Administrator has created this Variable end users can go in and define what they’d like their variable to typically be. If unsure you can select anything but something must be in there to make it work. User Variables can be defined in the Simplified Interface through Settings ->User Variable
The third and last step is to enable this feature within the Form. When designing a form there’s a tab called “Other Options”. At the bottom of this screen you’ll the section called Dynamic User Variables. Here is where you are telling the form to dynamically use the new variable you created in the POV and Rows simply by checking the “Enable dynamic user variables” box and selecting the variable from the list of User Variable.
Once that option has been selected, go back to the Layout tab in your Form design and select the children or descendants of that variable depending on how many layers you want to see. In this example we’ll choose IChildren of our Product Group Variable. The syntax will put an “&” in front of the variable to distinguish it.
Presto! You now have a form that’s dynamic enough to only bring back your relevant data.
Also works in Smart View!
Adding Members on the Fly
This came out with the introduction of Project Planning module but is now available for Planning environments on-premise or in the cloud with PBCS. It’s a great feature that gives the user the feeling they are updating a member dynamically within the system. So instead of waiting for the administrator to add a new member the user can do it without affecting the application and without needing a refresh. Common applications of this may be adding a potential new product that hasn’t been released yet or a new project.
In order to make this work you first update the properties of the member where users will add children and then create a prompting rule and menu to make it simpler to use. So let’s break this down in three steps.
The first step is updating the member properties. If you’ve ever edited a dimension before you’ve probably seen the option toward the bottom to “Enable Dynamic Children”. If you check the box there you’re given an option on the number of Dynamic Children you want to enter. It’s important to note that you cannot create children of children dynamically so it’s only one layer down. You can also choose what access the new member will have compared to the parent. For this example, you will choose Inherit.
Once you’ve enabled it be sure to do a Refresh of the application. What’s happening behind the scenes is Essbase is creating dummy members that will be renamed when users make the update. That’s why users don’t need to do a refresh every time because the members are all created upon this first refresh, just not visible to the end users.
The next step is to create a Calculation Manager Rule that will allow for the adding of these new members. The first step of the rule will be to create a RTP or prompting variable that allows users to add this new named product. To create a prompt like this we’ll go to our Variable Designer under Calculation Manager.
When you create a new Variable make sure to choose the appropriate PlanType or Database that has that member. We give the new Variable a name (no spaces) and then select the Type of “Member”, since that’s what we’re adding. Choose the appropriate Dimension that will be updated and check the box for RTP and give the prompting text the appropriate language. Notice that when you choose the Type called Member that an option for “Dynamic Member Parent” comes up. Since we want all users to have input of New Products that go under that parent we’ll select that member.
Now on to the rule that we’ll use to call upon this Variable. This might be the simplest rule you’ve ever written. To create the rule, again pick the appropriate PlanType and select New Rule. We’ll call our rule “Add New Product”. Select the button at the bottom that says Create dynamic members and select in the Global Range the Variable just created.
That’s it! When you save it, validate and deploy, just use an existing member to bypass the validation process.
Next step is to create a Menu. Click on the Navigator in PBCS and select Menus. Create a menu that’s called AddProduct (no spaces in menu items either) with a label of “Add Product”. For the Type select “Business Rule” and select the new rule we just created called “Add New Project” as seen below.
To add the menu to a form, go to the Other Options tab and select the menu you’ve just created from the Context Menus. This will make a new menu option appear when users right click on the row or columns of a form.
For the rest of the form we have all the Product members in the rows including the member “New Product” that we created. Make sure to select “IChildren” of New Product so the children show as well.
Open the form and right click on the member New Product. You’ll see the menu option has been added that we created called Add Product. When you click on this the Rule will run.
The rule will simply prompt the user for the input of the new product they want added.
A message will appear showing the rule ran successfully and the new member will appear under the New Product Group.
That’s it! Oh, this all works in Smart View too.
Blog by Scott Costello of Key Performance Ideas