Forum Discussion

yogeshkumjain's avatar
yogeshkumjain
New Contributor III
2 years ago

Elimination rule for OrgByPeriod application algorithm type

Hi,

We are working on Consolidation application with 'OOB and Store share' algorithm type. Came across an requirement to eliminate balances on few GLs with C#Elimination and O#Elimination member. Below calculate function worked randomly for few entities (step consol structure) and not for all. Any suggestions to improve on below logic ? Thanks

 

If api.Pov.Cons.Name.XFEqualsIgnoreCase("Elimination") Then
	api.Data.Calculate("C#Elimination:O#Elimination = (C#Share:O#BeforeElim) * -1", _
		"A#OtherAssets.TreeDescendantsInclusive.Where(Text2 = Others)", _
		"F#EndingBalance",,"I#None","U1#None","U2#None","U3#None", _
		"U4#TopSide_Adj","U5#None","U6#None","U7#None","U8#None")
End If

 

 

   

  • The way you have defined your filters it has restricted it to only calculate at a very specific intersection for the data unit.

    api.Data.Calculate("C#Elimination:O#Elimination:F#Endbal:I#None:U1#None:U2#None:U3#None:U4#TopSide_Adj:U5#None:U6#None:U7#None:U8#None = (C#Share:O#BeforeElim:F#Endbal:I#None:U1#None:U2#None:U3#None:U4#TopSide_Adj:U5#None:U6#None:U7#None:U8#None) * -1","A#OtherAssets.TreeDescendantsInclusive.Where(Text2 = Others)",,,,,,,,,,,,,,)

    The above script is same as your calculation script so can you try creating some quick views to check weather data is present at these specific data unit intersection to calculate as OneStream skips no data or zero data intersections to make calculations faster. 

    My guess is that either data is not present for OneStream to calculate or the way you have restricted the calculation script using filters you are missing out on intersections where you actually want to calculate.

    Check you cube setting too the below is the default you need to change second last option to true for your calc.

     

  • The way you have defined your filters it has restricted it to only calculate at a very specific intersection for the data unit.

    api.Data.Calculate("C#Elimination:O#Elimination:F#Endbal:I#None:U1#None:U2#None:U3#None:U4#TopSide_Adj:U5#None:U6#None:U7#None:U8#None = (C#Share:O#BeforeElim:F#Endbal:I#None:U1#None:U2#None:U3#None:U4#TopSide_Adj:U5#None:U6#None:U7#None:U8#None) * -1","A#OtherAssets.TreeDescendantsInclusive.Where(Text2 = Others)",,,,,,,,,,,,,,)

    The above script is same as your calculation script so can you try creating some quick views to check weather data is present at these specific data unit intersection to calculate as OneStream skips no data or zero data intersections to make calculations faster. 

    My guess is that either data is not present for OneStream to calculate or the way you have restricted the calculation script using filters you are missing out on intersections where you actually want to calculate.

    Check you cube setting too the below is the default you need to change second last option to true for your calc.

     

  • yogeshkumjain's avatar
    yogeshkumjain
    New Contributor III

    Thanks OmKareshwar.

    Balances were present in all entities for filters/POV applied, however turning the elimination cube setting/ property to 'True' did the magic and made system eliminate all entities. You owe me one !