I was interested in experimenting with intercompany eliminations in a BSO cube but the only information I could find was Martin Neuliep’s rules in Developing Essbase Applications: Hybrid Techniques and Practices. The book did not contain much detail so I decided to build a very simple application to see how they could work. The application I built is described below.
Creating the application
Create an Oracle Cloud Planning application and add an Intercompany dimension.
Create the following accounts:
Add this member formula to the IntercoPlug account:
IF(NOT @ISUDA(Entity,"Elimination")) @Member(@Concatenate(@Name(@MemberAt(@Intersect( @Ancestors(@CurrMbr(Entity)), @Ancestors(@Member(@SubString(@Name(@CurrMbr(Intercompany)),2)))) ,1 )),"_E")) = @Member(@Concatenate(@Name(@MemberAt(@Intersect( @Ancestors(@CurrMbr(Entity)), @Ancestors(@Member(@SubString(@Name(@CurrMbr(Intercompany)),2)))) ,1 )),"_E")) + IntercoInput; ENDIF
Add this member formula to the IntercoInput account:
IF(@ISUDA (Entity,"Elimination")) IntercoInput = -IntercoPlug; ENDIF
Create the following entities:
The eliminations happen in the _E entities. Give them a UDA of Elimination. This UDA is used in the member formula.
Creating Intercompany Partners
Create the following members in the Intercompany dimension:
Creating a Rule
Create the following rule called Main:
SET AGGMISSG ON; FIX(Actual,Feb,Working,FY22) /* These are calculated so we can clear existing data */ CLEARDATA Intercompany; CLEARDATA IntercoPlug; /* Consolidates */ CALC DIM(Account,Entity,Intercompany); ENDFIX
For simplicity, the point of view has been hard coded into the rule.
Creating a Form
Create a form to test the rules and formula:
Attach the Main business rule to the form so it runs when the form is saved.
Enter test data, save the form, and check the eliminations.
This show eliminations for balances within Division A in DivA_E.
This show eliminations for balances between Division A and Division B in Total_E.
This simple example shows how intercompany balances can be recorded and eliminated in a BSO cube. Many improvements are possible.