Building the Essbase Outline [ 80 ] For example: In the above formula: TOTAL SALES = SALES + (DISCOUNTS * (-1)) Member storage When you create a member in Essbase, you need to tag the member with a storage property on how the data is stored for this member. By default, when a member is created, it is tagged as Store Data. You can change the member storage option in Member Properties | Data Storage. The different storage options available to you are explained as follows: • Store Data: Stores the data value with the member. The data can be the result of a calculation, data load from an external source, or an Essbase "Lock and Send" directly from Microsoft Excel using the Essbase Add-in for Microsoft Excel. The data is physically stored in the database. • Dynamic Calc and Store: The rst time the data is requested, Essbase will dynamically calculate it and then store it with the member. Essbase will automatically recalculate the data and update the stored values on the next request for data if a component value used in the member formula changes. At the rst call for a dynamically calculated and stored member's data value, the data is dynamically calculated and physically stored in its proper cell in the database. Unless a component value of the now stored data value has changed, the data is not dynamically calculated again. • Dynamic Calc: Essbase does not physically store the calculated data value at all and only calculates it on demand. This is a good option if database size is an issue as it helps keep the database smaller. Some care must be exercised because dynamic calculations tend to consume large amounts of resources. Balance is the key here. • Never Share: Does not allow Essbase to implicitly share this member. What this means in Essbase is when you have a member that only has one child member that member implicitly takes the value of the only child. There are times when you do not want this to occur. You can still share this member explicitly by creating another member of the same name and selecting Shared Member as its storage option. This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com Chapter 3 [ 81 ] • Label Only: Members you create as placeholders only. The Label Only option is a way to help organize your database outline without affecting database size. Label Only members do not contain any data. No data is physically stored in this member. • Shared Member: For convenience, you may want to have a member appear in different groups take values from different groups or simply use a member's data somewhere else in the outline. The Shared Member allows you to do this with relative ease. Yes, the same effect could be achieved with specic calculation coding, but that can be complex and confusing. Look at the following screenshot to see how you would use a shared member: In the following screenshot you will see how easy it is to set the outline member properties using the EAS tool. This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com Building the Essbase Outline [ 82 ] Member formulas One of the coolest things in Essbase is that you can create a formula which will be attached to a member in the database outline. If the member is tagged as Dynamic Calc, the formula will execute when the user is trying to retrieve the data for that member. If the member is tagged as Store Data, the formula will execute when a calculation script is executed against that member. Member formulas can be constructed by using some of the available commands and functions of which a few are listed here: • Conditional coding functions like IF, ELSEIF, and ENDIF • Boolean (true or false) functions like ISMBR, ISCHILD, and ISDESC • Relationship functions like @LEV, @GEN, and @CURGEN • Mathematical operators like +, -, *, and / • Math functions like @ABS, @SUM, and @MOD The steps to add a formula to the member TOTAL NET REVENUE are as follows: 1. Select the TOTAL NET REVENUE member and click on Edit the formula for the selected member as shown in the following screenshot: This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com Chapter 3 [ 83 ] 2. Enter the formula as shown below in the formula editor. The formula states that the member TOTAL NET REVENUE is calculated as GROSS REVENUE less DISCOUNTS "TOTAL NET REVENUE"="GROSS REVENUE" - "TOTAL DISCOUNTS"; The member TOTAL NET REVENUE is tagged as Dynamic Calc. When a database user executes a retrieve for the data stored in the TOTAL NET REVENUE member, the TOTAL NET REVENUE value will be dynamically calculated as TOTAL NET REVENUE = TOTAL REVENUE - TOTAL DISCOUNTS. 3. As shown below in the Formula editor screen, once you have entered the formula, you can click on Verify to verify it and then click on OK to save the formula. It should be pointed out that the formula is only saved in a temporary buffer until the database outline has been saved. This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com Building the Essbase Outline [ 84 ] After you have clicked OK in the Formula editor, you can see the new formula in the Essbase outline next to the appropriate outline member. The following screenshot shows the formula attached to the outline member TOTAL NET REVENUE: Member alias As the name implies, a member alias, is an alternate name for a database outline member. This is a very useful feature for several reasons. For instance, let's say there is an Esscar car dealership whose member name in the database outline is Hood Esscar Best Dealers with the dealer ID code set up as an alias ( 03030-USA). The dealership is purchased by a person named Robin and he has decided to change the name of the dealership to Robin Hood Esscar Best Dealers . This dealership, for all Esscar purposes is the same dealership, so a simple outline change to the member name is all that is required while leaving the alias the same to identify the dealer to the system. As a best practice, it is always advisable, wherever possible, to load data using the aliases and not the descriptions. If the aliases are left alone, any cosmetic naming changes to the database outline will only consist of the outline change. If the aliases are also changed, any special mappings must also be changed. When constructing an Essbase database, it is always advisable for you to plan appropriately and consistently. When setting up your outline, you must decide if the member names will reect the full text name of the data element, or will you use alias tables for this purpose. Report generation, data loading, and data calculation can depend heavily on member names or aliases. To avoid confusion and simplify things, it is best to develop a strategy on how to use member's names and aliases and stick to it consistently! This material is copyright and is licensed for the sole use by Paul Corcorran on 5th July 2009 8601 ave. p #1, , lubbock, , 79423 Download at Boykma.Com . Corcorran on 5th July 20 09 8601 ave. p #1, , lubbock, , 794 23 Download at Boykma.Com Building the Essbase Outline [ 82 ] Member formulas One of the coolest things in Essbase is that you can create. July 20 09 8601 ave. p #1, , lubbock, , 794 23 Download at Boykma.Com Building the Essbase Outline [ 84 ] After you have clicked OK in the Formula editor, you can see the new formula in the Essbase. Dynamic Calc and Store: The rst time the data is requested, Essbase will dynamically calculate it and then store it with the member. Essbase will automatically recalculate the data and update