Page 1 of 1

overriding Consolidation

Posted: Thu May 26, 2011 8:55 am
by ryan
I am copying the values in one version to another version (from Actuals to Budget Version), let say an element1, I have a rule on this element1 (skipcheck & feeders are there):
SKIPCHECK();
['element1'] = ['elementX']\['elementY'];
.
.
.
.
Feeders;
['elementY'] => ['element1'];

No problem with this code and the values under ['element1'] @ Consolidate level performing the % at Actuals, but when I copy the same values in to the another version i.e., BUDGET using script, instead of % it is aggregating.
What is reason behind this, and can anyone help me how to resolve this. I want to apply the same rule for the Budget version.

Re: overriding Consolidation

Posted: Thu May 26, 2011 11:53 am
by jrizk
Hi. Is the rule only applied to version Actual?

When you mention script - do you mean you are copying from one version to another using Turbo Integrator? Also are you copying from one cube to another or within the same cube?

If it's in the same cube and you haven't specified Actual or Budget in you rule then the consolidated value will be overwritten for both versions. If you are copying to another cube you will need to apply the same rule to that cube.

Re: overriding Consolidation

Posted: Thu May 26, 2011 10:13 pm
by Martin Ryan
There may also be rule precedence in play. If there's another rule higher up that is stetting out the budget then this rule will not be applied. The first rule that can be applied, will be applied.

Martin

Re: overriding Consolidation

Posted: Thu May 26, 2011 11:04 pm
by ryan
jrizk wrote:Hi. Is the rule only applied to version Actual?

When you mention script - do you mean you are copying from one version to another using Turbo Integrator? Also are you copying from one cube to another or within the same cube?

If it's in the same cube and you haven't specified Actual or Budget in you rule then the consolidated value will be overwritten for both versions. If you are copying to another cube you will need to apply the same rule to that cube.

Yeah, using TI process copying from one version to another. copying is done with in the cube. Since Budget is in the same cube and earlier Actual is having the earlier said rule, hope it should apply for all irrespective of buget or actual or any other version as the rule is not specific to any version right.

Re: overriding Consolidation

Posted: Thu May 26, 2011 11:33 pm
by ryan
Martin Ryan wrote:There may also be rule precedence in play. If there's another rule higher up that is stetting out the budget then this rule will not be applied. The first rule that can be applied, will be applied.

Martin
Irrespective of the version ['element1'] = ['elementX']\['elementY']; should work right, more over no other factors influencing this statement. Copying the values with the cube from one version to another.

My Rule Code goes here:
-------------------------------
SKIPCHECK;

[]= IF(ELPAR('DimV',!EVer, 1)@='AllFinalVersions',STET, CONTINUE);

#### RULE EXCLUSIONS ####

['VERSION 1','DA'] = N: STET;
['VERSION 1','FF'] = N: STET;
['VERSION 1','TVL'] =N: STET;
['VERSION 1','VC'] = N: STET;
['VERSION 1','OverHds'] = N: STET;
['VERSION 1','LC'] =N: STET;
['VERSION 1','OF'] = N: STET;
['VERSION 1','OR'] =N: STET;
['VERSION 1','SR1'] =N: STET;
['VERSION 1','ows1'] =N: STET;

['LASTYEARACTUAL','DA'] = N: STET;
['LASTYEARACTUAL','FF'] = N: STET;
['LASTYEARACTUAL','TVL'] =N: STET;
['LASTYEARACTUAL','VC'] = N: STET;
['LASTYEARACTUAL','OverHds'] = N: STET;
['LASTYEARACTUAL','LC'] =N: STET;
['LASTYEARACTUAL','OF'] = N: STET;
['LASTYEARACTUAL','OR'] =N: STET;
['LASTYEARACTUAL','SR1'] = N: STET;
['LASTYEARACTUAL','ows1'] =N: STET;


#### VNo ####
['VNo'] = N: IF(['VNoTrigger'] <> 0 , 1, 0);

#### MEASURES RULES ####

['USD','AFF3']=N:
DB('ForeCastCube',!Version,'AIF1','ABF1','ACS1','NSNE1'
,!sfD1,'cc1',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'TRF1');

['USD','Of Which Slots']=N:
DB('ForeCastCube',!Version,'AIF1','ABF1','ACS1','OWLT'
,!sfD1,'cc1',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'TRF1');

['USD','SR2']=N:
DB('ForeCastCube',!Version,'AIF1','ABF1','ACS1','TS1'
,!sfD1,'SR2',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'RVF2');

['element1'] = ['elementX']\['elementY'];

['AFF3 %']=
['AFF3']\['AAAZ'];

['USD','Revenue']=N:
DB('ForeCastCube',!Version,'AIF1','YES','ACS1','ACT3'
,!sfD1,'Revenue',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'RVF2');

['USD','Det1']=N:
DB('ForeCastCube',!Version,'AIF1','YES','ACS1','ACT3'
,!sfD1,'Det1',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'RVF2');

['USD','Total Out Cost']=N:
DB('ForeCastCube',!Version,'AIF1','YES','ACS1','ACT3'
,!sfD1,'Total Out Cost',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'RVF2');

['USD','Total In Cost']=N:
DB('ForeCastCube',!Version,'AIF1','YES','ACS1','ACT3'
,!sfD1,'Total In Cost',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'RVF2');

['USD','TOC3']=N:
DB('ForeCastCube',!Version,'AIF1','YES','ACS1','ACT3'
,!sfD1,'TOC3',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'RVF2');

['USD','TLC3']=N:
DB('ForeCastCube',!Version,'AIF1','YES','ACS1','ACT3'
,!sfD1,'TLC3',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'RVF2');

['USD','TOHC1']=N:
DB('ForeCastCube',!Version,'AIF1','YES','ACS1','ACT3'
,!sfD1,'TOHC1',!SFS,'AOR1','ADR1'
,!Period,!SFV1,'RVF2');

['USD','RBBH1']=N:
['Net Contribution'] - ['Fixed Costs'];


['USD','RAPVA1] =N:['RBBH1'] + ['PVAA1'];

['EPTL1']=
['Revenue'] \ ['AFF3'];

['CPTL2'] =
['Net Contribution'] \ ['AFF3'];

['SCPTL2'] =
['Fixed Costs'] \ ['AAAZ'] ;


['OHPTL2'] =
['TOHC1'] \ ['AFF3'];

['OFPT1'] =
['Revenue'] \ ['AFF3'];

['DpT1'] =
['DA'] \ ['AFF3'];

['LPT4'] =
['TLC3'] \ ['AFF3'];

['SlotRev'] =
['SR2'] \ ['Of Which Slots'];

['LiftRev'] =
['Revenue'] \ (['TVL'] - ['Of Which Slots']);

['TCOCOR1'] =
['DA'] \ (['TVL'] - ['Of Which Slots']);

['LogORRate'] =
['Det1'] \ (['TVL'] - ['Of Which Slots']);

['DA'] = N:
['Total Out Cost'] + ['Total In Cost'] + ['TOC3'] ;

['FF'] = N:
['Of Which Slots'] + ['AFF3'] ;

['TVL'] =N:
['Of Which Slots'] + ['AFF3'] ;

['D&D1'] = N:
DB('SF_Results',!Version,!ReportingCurrency,'ED1',!SFS,!Period,!SFV1,'Det1') ;

['SCBA1']=
['Fixed Costs'] \ ['Total Allocation'] ;






FEEDERS;
#### VNo ####
['VNT1']=>['VNo'] ;

#### MEASURE FEEDERS ####
['USD','Net Contribution'] =>['USD','RBBH1'] ;
['USD','Fixed Costs']=>['USD','RBBH1'];

##['USD','BHC1'] => ['USD','RAPVA1];
['USD','RBBH1'] => ['USD','RAPVA1];

['USD','PVAA1'] => ['USD','RAPVA1];

['elementY'] => ['element1'];


['AFF3']=>['AFF3 %'];

['AFF3'] => ['EPTL1'];

['AFF3'] => ['CPTL2'];

['Fixed Costs'] =>['SCPTL2'] ;

['AFF3'] => ['TOHC1'];

['AFF3'] => ['OFPT1'];

['AFF3'] => ['DpT1'];

['AFF3'] => ['LPT4'];

['SR2'] => ['SlotRev'];

['Revenue'] => ['LiftRev'];

['DA'] => ['TCOCOR1'];

['Det1'] => ['LogORRate'];

['TOC3'] => ['DA'] ;
['Total Out Cost'] => ['DA'] ;
['Total In Cost'] => ['DA'] ;

['Of Which Slots'] => ['FF'];
['AFF3'] => ['FF'];

['Of Which Slots'] => ['TVL'] ;
['AFF3'] => ['TVL'] ;

['ED1','Det1']=>['D&D1'] ;

['Fixed Costs'] => ['SCBA1'];

Re: overriding Consolidation

Posted: Thu May 26, 2011 11:43 pm
by Alan Kirk
ryan wrote:
Martin Ryan wrote:There may also be rule precedence in play. If there's another rule higher up that is stetting out the budget then this rule will not be applied. The first rule that can be applied, will be applied.

Martin
Irrespective of the version ['element1'] = ['elementX']\['elementY']; should work right, more over no other factors influencing this statement. Copying the values with the cube from one version to another.

My Rule Code goes here:
-------------------------------
SKIPCHECK;

[]= IF(ELPAR('DimV',!EVer, 1)@='AllFinalVersions',STET, CONTINUE);
Not if the budget version is steted by that rule it won't...

Are you sure that it isn't?

Re: overriding Consolidation

Posted: Fri May 27, 2011 1:38 am
by ryan
Alan Kirk wrote:
ryan wrote:
Martin Ryan wrote:There may also be rule precedence in play. If there's another rule higher up that is stetting out the budget then this rule will not be applied. The first rule that can be applied, will be applied.

Martin
Irrespective of the version ['element1'] = ['elementX']\['elementY']; should work right, more over no other factors influencing this statement. Copying the values with the cube from one version to another.

My Rule Code goes here:
-------------------------------
SKIPCHECK;

[]= IF(ELPAR('DimV',!EVer, 1)@='AllFinalVersions',STET, CONTINUE);
Not if the budget version is steted by that rule it won't...

Are you sure that it isn't?
This is my actual Version Dim:
E->AllFinalVersions
|n-> SuperFlash Final 201105
|n-> SuperFlash Final 201106
|n-> SuperFlash Final 201107
E->AllVersions
|n-> Actual
|n-> Forecast1
|n-> LASTYEARACTUAL
E->AllRuleVersions
|n-> SuperFlash
n-> SuperFlash Final 201105
n-> SuperFlash Final 201106
n-> SuperFlash Final 201107

I want to move the data from SUPERFLASH to SuperFlash Final 201105
Am I requried to STET the SuperFlash Final 201105(which I have refered as BUDGET in this post earlier.
eg: []= IF(ELPAR('DimV',!EVer, 1)@='SuperFlash Final 201105',STET, CONTINUE);

Re: overriding Consolidation

Posted: Sat May 28, 2011 9:16 am
by Steve Rowe
If you change

[]= IF(ELPAR('DimV',!EVer, 1)@='AllFinalVersions',STET, CONTINUE);

to

[]= N: IF(ELPAR('DimV',!EVer, 1)@='AllFinalVersions',STET, CONTINUE);

as you want to keep some areas open for input then you want the second one, the first applies to both the N and C level of the cube and so overrides your calc. (since it is first in the rule sheet)

Be very careful about using Elpar in rules, (or nearly any TM1 function that has an index). In most dimensions it's very difficult to control the indexes and in particular it's hard to be sure which parent number a particular consolidation is. Even if you know when you save the rule it can change the next time you change the dimension.

In your rule you are much better off using ElIsAnc if you want to keep the test in this "style".
That said you are probably better off setting up a numeric attribute on your version dimension called "InputVersion" and changing your rule to

[]=N: IF(Attrn('EVer',!EVer, 'InputVersion')=1,STET, CONTINUE);

This is a simpler test in the rule and the cube should perform better, though you may not notice the difference!

Other tips,

There a couple of your rules where you do a simple summation, you should do that in the dimension if possible, as a consolidation evaluates much faster and does not need feeding.

Cheers