I need help with a rule that compares two C1 hierarchies and runs a calc. if a base member is not in both. Or in other words, if hierarchy 1 has base members A, B and C and hierarchy 2 has base members A and B then I want to execute a calculation on only member C. I can get this to work using a User Defined attribute, but I'm thinking there must be another way. Thanks for any suggestions.
I would suggest structuring something using HS.Custom1.IsBase. See below:
If HS.Custom1.IsBase("CUSTOMPARENT1","") = TRUE Then
If HS.Custom1.IsBase("CUSTOMPARENT2","") = FALSE Then
This only compares in one direction Parent1 -> Parent2, but should be enough to get you pointed in the right direction... You could consider setting up a common parent custom member for these two hierarchies to simplify the filtering of the members.
+'First determine if the member is part of the rollup of the two hierarchies for comparison+ If HS.Custom1.IsBase("CUSTOMPARENT_TOP","") = TRUE Then
+'Next, see if the member does not exist in one of the hierarchies+ If HS.Custom1.IsBase("CUSTOMPARENT1","") = FALSE or HS.Custom1.IsBase("CUSTOMPARENT2","") = FALSE Then
+'Close out your IF statements+ End If End If
For more details on this function, use http://docs.oracle.com/cd/E17236_01/epm.1112/hfm_admin.pdf, pages 279-281. As a note, the second set of empty quotes in the function dynamically checks the current member.
Hope that helps,
Edited by: SDuplaga on May 22, 2013 11:30 AM
If HS.Custom1.IsBase("BUSINESSLINE","") = TRUE Then
If HS.Custom1.IsBase("OTH_BUSINESSLINE","") = FALSE Then
I even tried:
If HS.Custom1.IsBase("","") Then
Both times I just force calculated on a single base entity.