Equity method of Consolidation

BCG
New Contributor II

Dears,

We have a requirement, where we need to write only into C#Elimination of  [Share of Profit from] A#NetIncome and Same to be written to A#Investment in Equity Account as a other side of entry for the Equity Account type of consolidation in OneStream [We do not need line by line consolidation for all other items/accounts]

To achieve this, I setup a entity as follows:

PCON = 0

POWN = 50%

Ownership Type = Equity

when i put PCON as zero[0] and execute the consolidation, the results are not writing up to Elimination member. What  can be the reason for same?

 

 

2 ACCEPTED SOLUTIONS

ChrisLoran
Valued Contributor

If the Consolidation Algorithm is Standard then the PCON=0 will ensure nothing gets as far as the C#Elimination stage, because the internal DataBuffer for C#Share (dynamic calc) will be empty.

If you change the Cube's Algorithm Type to [Custom] then you can override how the C#Share and C#Elimination gets processed, but this has a big performance impact because it writes the C#Share to the database, which creates about +25%-30% database size, and approx 25-30% longer consolidation times. (maybe more, depending on how big you data units are).  So that's not a good option either.

What you could do, by keeping your Consolidation Algorithm Type to [Standard], and thus benefitting from the performance of Dynamic Calc C#Share, is to have a calculate pass which reads directly from the child entity's C#Translated data unit (parent currency before the C#Share allocation) and not try to read from C#Share (which would be empty if PCON=0).  You would also need to set the cube setting to [Calculate Elimination Member if NoData] = True.

I don't know what's inside your EqutiyAccountCalculation() function, so we can't really provide any more details.

 

Another way to do this, by totally removing the need for a custom calculation pass, and removing the need for any custom consolidation, is to simply have a member formula, or Allocation Journal, on the Holding Company's base entity which has an interest in the non-consolidated joint-venture.  Then you just 'pick-up' the P&L result from the JV and post it into the Holding Company's base entity. You would probably Debit the A#[Investment] (Asset), and Credit the A#[Income From JV] (Income Statement).

An Allocation Journal will automatically apply the %interest. Alternatively a member formula that runs on the base entity, and you put the reference to the JV on the Text property of the holding company's base entity.

View solution in original post

yogeshkumjain
New Contributor II

Did you check to make sure that Cube property - 'Calculate Elimination Cons Member If No Data is set to True'. Rerun consolidation with the setting and share results.

View solution in original post

4 REPLIES 4

yogeshkumjain
New Contributor II

Hi BCG - You would need to write custom rule for the Equity method scenario. Results for the scenario mentioned cannot be seen by OOB rules, however if your case is Proportionate/JV then Con % should be set as 50% instead.

BCG
New Contributor II

Hi Yogesh,

PCON = 0

POWN = 50%

Ownership Type = Equity

I have written a logic under below routine with the method specific logic related to Equity method of accounting treatments, But no luck. results are not writing up to Elimination member.

Case Select Case api.FunctionType
Case Is = FinanceFunctionType.Calculate

If Pown > 20 And Pown <= 50 AndAlso vMethod.ToString = "Equity" Then
      If api.Pov.Cons.MemberId = DimConstants.Elimination Then
             Call EqutiyAccountCalculation(api,Pown)
     End If
End If

Consolidation algorithm = standard and other options under it is false, even I tried putting true for Cons & Elimination options - no luck

yogeshkumjain
New Contributor II

Did you check to make sure that Cube property - 'Calculate Elimination Cons Member If No Data is set to True'. Rerun consolidation with the setting and share results.

ChrisLoran
Valued Contributor

If the Consolidation Algorithm is Standard then the PCON=0 will ensure nothing gets as far as the C#Elimination stage, because the internal DataBuffer for C#Share (dynamic calc) will be empty.

If you change the Cube's Algorithm Type to [Custom] then you can override how the C#Share and C#Elimination gets processed, but this has a big performance impact because it writes the C#Share to the database, which creates about +25%-30% database size, and approx 25-30% longer consolidation times. (maybe more, depending on how big you data units are).  So that's not a good option either.

What you could do, by keeping your Consolidation Algorithm Type to [Standard], and thus benefitting from the performance of Dynamic Calc C#Share, is to have a calculate pass which reads directly from the child entity's C#Translated data unit (parent currency before the C#Share allocation) and not try to read from C#Share (which would be empty if PCON=0).  You would also need to set the cube setting to [Calculate Elimination Member if NoData] = True.

I don't know what's inside your EqutiyAccountCalculation() function, so we can't really provide any more details.

 

Another way to do this, by totally removing the need for a custom calculation pass, and removing the need for any custom consolidation, is to simply have a member formula, or Allocation Journal, on the Holding Company's base entity which has an interest in the non-consolidated joint-venture.  Then you just 'pick-up' the P&L result from the JV and post it into the Holding Company's base entity. You would probably Debit the A#[Investment] (Asset), and Credit the A#[Income From JV] (Income Statement).

An Allocation Journal will automatically apply the %interest. Alternatively a member formula that runs on the base entity, and you put the reference to the JV on the Text property of the holding company's base entity.