Hello Ladies and Gents, I have a question on how to write ICP elimination rules in a 6 custom dimension v11.1.2.3 application. Just to set the scene I am a 10 year plus HFM rules writer, so not someone who has just read the manual . I am currently on a project using v11.1.2.3 and against my better judgemement we are using 6 custom dimensions, What I thought was going to be a straightforward lift of existing rules I have has turned into a nightmare, namely intercompany elimination. The usual rule is to open a dataunit, identify your intercompany accounts and then reverse the IC balance into a plug account. I can get the IC balance to reverse into its original account, but it will not put the value into the plug account. The error message I get is that it doesn't recognise the custom1 dimension, the metadata custom dimension setup for both the plug and original account match. My current rule is
Call MyDataUnit.GetItemExtDim(i, vAccount, vICP, vCustom, dData)
Dim CanEliminate
Dim vPlug
CanEliminate = True
If (strComp(vICP, "[ICP None]", vbTextCompare) = 0) Then
CanEliminate = False
ElseIf (HS.Account.IsICP(vAccount) = False) Then
CanEliminate = False
ElseIf (HS.Parent.IsDescendant(HS.Parent.Member,vICP) = False) Then
CanEliminate = False
Else
vPlug = HS.Account.PlugAcct(vAccount)
If (vPlug = "") Then CanEliminate = False
End If
If CanEliminate Then
dPCon = HS.Node.PCon("")
Call HS.Con("V#[Elimination]",-1 * dPCon,"")
Call HS.Con("V#[Elimination].C1#"&vCustom(0,1)&".A#"& vPlug,dPCon,"")
End If
End If
Next
The bolded line is the one that bombs out. I have used the new GetItemExtDim rule function. And the value that appears against vCustom(0,1) is exactly what I want it to be, but it still won't recognise it and the consolidation aborts. If I change the vPlug to vAccount then the rule runs, but that is not what I want, I need the plug account populated.
I can't be the only one who has experienced this, What am I doing wrong??
Paul