Forum Discussion
ajackett
3 years agoNew Contributor III
Management reports to sign flip on some expense accounts to be negative
Hi all, We have a Global Chart of Accounts that is used for both our Statutory and Management reporting. For our management reports, there is a requirement to have expense items below OP showing as...
- 3 years ago
You have a couple of options. If those lines are isolated in your cube views, you can just format that line to show as flipped. You can also use a Text field to delineate those accounts and then use a member formula in a reporting UD (typically UD8) to calculate accounts with those text fields differently.
ajackett
3 years agoNew Contributor III
Thanks Eric - I did actually have a look at something like this, but I hadn't really worked out how to apply it to specific accounts, or a specific group of accounts - since this will only apply to a certain group of Expenses. The parent accounts I would need to incorporate in are M_TAX and M_Depreciation, to apply to their children entities - how could this be added into the rule? I'm still just learning about writing business rules, so it's not my strong point at this stage.
Thanks again
EricOsmanski
OneStream Employee
3 years agoWithout knowing even more specifics here is some sample code. This is untested but might be able to get you close. You will have to update the red highlight at the very least.
Dim acct As String = api.Pov.Account.Name
Dim acctMbrId As Integer = api.Members.GetMemberId(DimType.Account.Id, acct)
Dim acctMbrInfo As MemberInfo = BRApi.Finance.Members.GetMemberInfo(si, DimType.Account.Id, acctMbrId, False)
Dim acctDimPk As DimPk = api.Dimensions.GetDim("AccountDimName").DimPk
Dim mbrListM_TAX As List(Of MemberInfo) = api.Members.GetMembersUsingFilter(acctDimPk, "M_TAX.Base")
Dim mbrListM_Depreciation As List(Of MemberInfo) = api.Members.GetMembersUsingFilter(acctDimPk, "M_Depreciation.Base")
If (Not acct Is Nothing) Then
If mbrListM_TAX.Contains(acctMbrInfo) OrElse mbrListM_Depreciation.Contains(acctMbrInfo) Then
Return api.Data.GetDataCell("A#" + acct + ":U8#None * -1")
Else
Return api.Data.GetDataCell("A#" + acct + ":U8#None")
End If
End If
Return Nothing- ajackett3 years agoNew Contributor III
Thanks Eric - I'll take a look through both this and Michel's option and see how I go!