Successfully reported this slideshow.
Upcoming SlideShare
×

# Hfm rule custom consolidation

1,839 views

Published on

Hfm rule custom consolidation

Published in: Education
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

### Hfm rule custom consolidation

1. 1. www.bispsolutions.com Working with HFM Calc Manager Session#20 : Creating Consolidation and Elimination Rule Presented By :Amit Sharma
2. 2. www.bispsolutions.com DataUnitItem Returns the data unit item to process during consolidation, calculation, or translation. This function can be used in these types of rules: I. Calculation II. Translation III. Consolidation Syntax HS.OpenDataUnit("") Set MyDataUnit = HS.OpenDataUnit("") NumItems= MyDataUnit.GetNumItems For i = 0 to NumItems - 1 Account = MyDataUnit.Item(i)Account. ICP = MyDataUnit.Item(i).ICP Flow = MyDataUnit.Item(i)Custom("Flows") Nature = MyDataUnit.Item(i).Custom("Nature")
3. 3. www.bispsolutions.com PCon Gets the percentage of consolidation for the current member or a specified member. This function can be used in these types of rules: I. Calculation II. Translation III. Consolidation IV. Allocation Syntax HS.Node.PCon("S#Scenario.Y#Year.P#Period.E#Entity") HS.Node.PCon("") Pcon = HS.Node.PCon("S#Actual.Y#2014.P#January.E#Regional.Connecticut")
4. 4. www.bispsolutions.com Con Puts data into the [Proportion] and [Elimination] Value dimension members. This function can be used in Consolidation rules. Syntax HS.Con ("DestPOV", Factor, "Nature") Examples Call HS.Con ("V#[Elimination]",-1*dPCon,"") Call HS.Con ("V#[Elimination]",-1*dPCon,"Elimination") Call HS.Con ("V#[Elimination]"PCON,"DefaultConsolidation")
5. 5. www.bispsolutions.com
6. 6. www.bispsolutions.com Consolidation is the process of gathering data from child entities and aggregating the data to parent entities. When you run a consolidation, each child's contribution to the parent is derived by using the default application calculations, and the results are written to the Entity Currency member of the parent. The following steps describe the procedure that Financial Management uses to calculate the child's contribution to the parent for each account: 1 Verify that there is data in the account. 2 Apply the consolidation percentage in the PCON system account to the data in the Parent Total member. (Th ePCON account stores the consolidation percentage for the child.) The Parent Total member is the sum of the Parent Curr Total and Parent Curr Adjs. If there is no data in the PCON account, use 100%. 3 Write the result to the Proportion member of the Value dimension. 4 Run Calculate rules for the Proportion member. 5 Determine whether an intercompany elimination is required. These four criteria must be met. 1. The IsICP property of the account is selected. 2. The PlugAcct property of the account specifies a plug account. 3. The ICP member of the Value dimension specifies an intercompany partner. 4. The specified Intercompany partner is a descendant of the current parent. About the Default Consolidation Calculation
7. 7. www.bispsolutions.com 6. If the criteria listed instep 5 are met, perform the elimination  Write a reversing entry to the Elimination member:-(Parent Total x PCON)  Write an entry to the Elimination member of the Plug account: (Parent Total x PCON) 7 Run Calculate rules for the Elimination member. 8 Run Calculate rules for the Contribution Adjs member. 9 Write the sum of the Proportion, Elimination, and Contribution Adjs membres of the child to the Entity Currency member of the parent. About the Default Consolidation Calculation
8. 8. www.bispsolutions.com
9. 9. www.bispsolutions.com You can override the default consolidation calculations by creating your own consolidation rules. To use consolidation rules, you must enable the Consolidation Rules option in the application settings. When the Consolidation Rules option is enabled, the default consolidation calculations are disabled. You must create a Consolidate ruleset with the necessary rules for consolidation. Accounts for which you do not include rules in the Consolidate ruleset are not consolidated. You create consolidation rules to derive the values for the Proportion and Elimination members of the value dimension. The aggregation of the Proportion, Elimination, and Contribution Adjs members to the Entity Currency member of the parent takes place automatically, even when the Consolidation Rules option is enabled. Creating Consolidation and Elimination Rules
10. 10. www.bispsolutions.com
11. 11. www.bispsolutions.com PCON The PCon function retrieves the consolidation percentage from the PCON system account for a specified parent and child. It multiples the amount in the PCON account by .01 to arrive at a percentage. For example, if the value in the PCON account is 80, the PCON function returns .8. Syntax @Node.PCon(S#Scenario.Y#Year.P#Period.E#Parent.Child) Parameters Scenario, Year, Period The point of view for which to retrieve the consolidation percentage. If a dimension is omitted, the value from the current point of view is used. Parent, Child The parent and child for which to retrieve the consolidation percentage. If this parameter is omitted, the current parent and child are used. Consolidation Functions
12. 12. www.bispsolutions.com Factor A factor by which to multiple the data in the Parent Total member. This factor can be a variable, a constant, a function,or an expression using mathematical operators (+,-,*,/). The PCon function is typically used to specify the factor. Nature A text string used for audit purposes. This string is stored and provides information about the accounting purpose of the transaction. To allow users to view consolidation source and destination transaction details after running a consolidation, you must include test in this parameter. Otherwise, the transaction details is not stored.
13. 13. www.bispsolutions.com Remarks You cannot specify a source member expression for the Con function. The source is always the Parent Total member of the Value dimension for the current scenario, year, period, and entity. The Con function is used within a loop that is created with a Data Range component, and the source account for Con is always the account for the current item in the data range. You can use any valid combination of members for the Account, Intercompany, custom, and Entity dimensions on the left(destination) side of the equal sign. You can use only the Proportion and Elimination members of the Value dimension on the left side of the equal sign. If no value dimension member is specified, the Proportion member is used as the destination. To use the default destination, enter quotation marks on the left side of the equal sign. If the destination account has a different debit/credit attribute from the source account, the system reverses the sign in the destination. For example, if the source is a Revenue account and the destination is an Expense
14. 14. www.bispsolutions.com Examples For example 1 on the slide, the Parent Total member is multiplied by the value returned by the PCon function. If there is no data in the PCON system account for the current point of view, a default of 100 percent is used. Because no destination point of view is specified, the Proportion member, which is the default destination member, is updated with the result. If you are not using consolidation percentages in your application, you can use a factor 1 to consolidate all children at 100 percent, as in the following example: @con(1,"") For the second example on the slide, the Elimination member is specified as the destination for the Value dimension. Because this entry is a reversing entry, a factor of -1 is used. @Parent.Member The @Parent.Member function returns the parent of the current entity Example The following example stores the current parent in a variable: {vParent}=@Parent.Member()
15. 15. www.bispsolutions.com Standard Consolidation Template Standard Consolidation Template When you create a custom consolidation rule, you can use the calculation defined in the Standard Consolidation system template as a starting point. You can modify the degault calculations for those entities or accounts that you need special treatment.
16. 16. www.bispsolutions.com The example on the slide shows the calculations that are defined by the Standard Consolidation System template. The following steps explain the calculations: 1. The consolidation percentage for the current child is retrieved from the PCON system account by using the PCon() function, and is stored in the nrPcon variable. {nrPcon}=@Node.PCon("") 2. A data range component opens a data unit for all accounts for the current point of view. The global variables srAcct, srCr, srC2, srC3, srC4, srICP store member names for the current record in the data range. The variable nrData stores the data value for the current record. 3. A condition component verifies that there is data for the current record in the data unit. The condition statement is {nrData} <>0. If there is no data, the rest of the procedure is skipped 4. The Con function calculates the Proportion member for the current account in the data range by multiplying the account value with the percentage in the PCON account(nrPCon). Quotation marks are used on the left(destination) side of the equal sign to specify the default destination. "" = @CON({nrPCon},"") Standard Consolidation Template
17. 17. www.bispsolutions.com 5. The plug account for the current account member (srAcct) is retrieved by using the @Account.PlugAccount function, and is stored in the srPlugAccount variable. The srPlugAccount variable is used in a later step as part of the intercompany elimination. {srPlugAccount} = @Account.PlugAcct({srAcct}) 6. A condition component tests whether the current record contain intercompany data. The condition statement is {srICT} <> [ICP None]. If the record does not contain intercompany data, the rest of the procedure is skipped. 7. A condition component vertifies, for the records that contain intercompany data, that the record meets the requirements for intercompany elimination: The account must be an intercompany account, the partner entity must be a descendant of the current parent, and the account must have a plug account. The following is the condition statement: @Account.IsICP(){srAcct}=True AND @Parent.IsDescendant(@Parent.Member, {srICP})=True and {srPlugAcct} <> "" Standard Consolidation Template
18. 18. www.bispsolutions.com 8 If the current record meets the requirements for the intercompany elimination, the Con function is used to create a reversing entry and a plug account entry. a) To create the reversing entry, the Elimination member is specified as the destination for the Value dimension, and the sign for the consolidation percentage is reversed. V#Elimination = @Con(-1 * {nrPCon},"") b) To create the plug account entry, the Elimination member for the plug account (srPlugAccount) is specified as the destination. A#{srPlugAcct}.V#[Elimination] = @Con({nrPCon},"") Standard Consolidation Template
19. 19. www.bispsolutions.com Standard Consolidation Template Sub Consolidate() Set MyDataUnit = HS.OpenDataUnit("") PCon = HS.Node.PCon("") NumItems = MyDataUnit.GetNumItems For i = 0 to NumItems - 1 'Get the next item from the dataunit 'Call MyDataUnit.GetItem(i, strAccount, strICP, strCustom1, strCustom2, strCustom3, strCustom4, dData) Set MyRecord = MyDataUnit.Item(i) 'Proportionalize this account HS.Con "", PCon, "" 'See if we should eliminate this account Call Eliminate(Account, ICP, PCon) Next End Sub
20. 20. www.bispsolutions.com Standard Consolidation Template Sub Eliminate (Account, ICP, PCon) CanEliminate = True If StrComp(ICP, "[ICP None]", vbTextCompare) = 0 Then 'If the ICP is [ICP None] don't eliminate CanEliminate = False ElseIf Not HS.Account.IsICP(Account) Then 'If the account is not an ICP account, don't eliminate CanEliminate = False ElseIf Not HS.Parent.IsDescendant(HS.Parent.Member, ICP) Then 'If the ICP is not a descendant of the entity's parent, don't eliminate CanEliminate = False Else 'If there is no Plug account, don't eliminate Plug = HS.Account.PlugAcct(Account) If (Plug = "") Then CanEliminate = False End If If CanEliminate Then 'Reverse the account HS.Con "V#[Elimination]", -1 * PCon, "" 'Repost in the Plug account to balance HS.Con "V#[Elimination].A#" & Plug, PCon, "" End If End Sub
21. 21. www.bispsolutions.com Any Question?