Page 1 of 1

How to copy Data to descendants’ level

Posted: Tue Dec 03, 2013 4:08 am
by mekd1977
We have driver cube with 4 Dimensions (Year, MU, scenario, Job Grade, Percentage). User will enter percentage in driver cube at any level and we want to copy that percentage to all the descendants’ level. Can anyone please guide me how to implement this requirement useing Turbo Integrator.
Below is the high-level requirement. User will input percentage at any level like below example.

scenario: Forecast Job Code: FT
MU 201312
AAA 10
---- BBB
------CCC 8
------- DDD
EEE
----XXX 5
----YYY
ZZZ


This is the output based on above input. TI script needs to populate percentage to descendants’ level

scenario: Forecast Job Code: FT

MU 201312
AAA 10
---- BBB 10
------CCC 8
------- DDD 8
EEE 10
----XXX 5
----YYY 5
ZZZ 10

Re: How to copy Data to descendants’ level

Posted: Tue Dec 03, 2013 3:26 pm
by ardi
Hi,

Unless I don't understand the structure of your dimension, you are trying to enter data into consolidated cells and then cascade them down to their descendants?

In TM1 you cannot enter data into a consolidated cells at all (unless you are populating them through a C: Rule ). So the problem I see here is not cascading the data (vecause that could be easely done ) but entering the data:)

Thanks,
Ardi

Re: How to copy Data to descendants’ level

Posted: Tue Dec 03, 2013 3:37 pm
by mekd1977
Hey Ardi,

This cube is input cube and I have measures (Input percent) in String. so user can enter data at any level and We want to cascade that number to descendants’ level. If there is no data entered at descendants’ level .
As per below example user has entered 10 at AAA , 8 for CCC and 5 for XXX in input cube. We want to cascade number to descendants’ level. Expectation is 10 will be copied at BBB, EEE and ZZZ, 8 will be copied at DDD and 5 will be copied at YYY.

MU 201312
AAA 10
---- BBB
------CCC 8
------- DDD
EEE
----XXX 5
--------YYY
ZZZ

Thanks for Reply..

Re: How to copy Data to descendants’ level

Posted: Tue Dec 03, 2013 8:51 pm
by ardi
I would do it like that.

Create a Main Process that Dies the following:

In the dimension that holds the hierarchy in your example, Retrieve the number of Dimension Levels

nDimensionLevels = DNLEV ( dimName ) ;
nDimLevel = nDimensionLevels ;
WHILE ( nDimLevel >= 1 ) ;

EXECUTEPROCESS ( 'Cascade_Down_Measure_TI', 'pDimLevel' , nDimLevel ) ;
nDimLevel = nDimLevel - 1 ;
END ;

Then in the TI 'Cascade_Down_Measure_TI', do the following:

In Prolog tab:

Create a Data SOurce View
In the dimension that holds the hierarchy in your example, create a subset with to Filter Only elements of Level passed as parameter (pDimLevel) and assign the subset to the view
In Measure Dim, create a subset to include only the string measure you want to cascade down as assign the subset to the view.
SUppress zeros from the view


In Data tab:
Get the number of immediate children of current element from dimension in your example
For each child element, check if there is already a value ( you do not want to overwrite the values entered directly from UI into that specific intersection)
If there is no Value, store the value comming from datasource view into the child cell

I hope this helps

All the best

Re: How to copy Data to descendants’ level

Posted: Thu Dec 05, 2013 6:20 pm
by mekd1977
Thanks Ardi for your comments..I will try this.