Hi Ludo,
Many thanks for sharing the code for logging using Json - I tried but I am not getting any results. Here is my code:
Imports Newtonsoft.Json
Imports Newtonsoft.Json.Linq
Namespace OneStream.BusinessRule.Finance.FinVB
Public Class MainClass
Public Function Main(ByVal si As SessionInfo, ByVal globals As BRGlobals, ByVal api As FinanceRulesApi, ByVal args As FinanceRulesArgs) As Object
Try
Select Case api.FunctionType
Case Is = FinanceFunctionType.CustomCalculate
If args.CustomCalculateArgs.FunctionName.XFEqualsIgnoreCase("TestJsonLog") Then
Dim objDimPk As DimPk = api.Dimensions.GetDim("UD1Main").DimPk
Dim ctryList As List(Of MemberInfo) = api.Members.GetMembersUsingFilter(objDimPk, "U1#APAC.Base", Nothing)
Dim ctryInfo As MemberInfo
For Each ctryInfo In ctryList
If Not ctryInfo Is Nothing Then
Dim stringObj As String = JsonConvert.SerializeObject(ctryInfo, Formatting.Indented)
BRApi.ErrorLog.LogMessage(si, ctryInfo.Member.Name & ", ctryInfo: " & stringObj)
End If
Next
End If
End Select
Return Nothing
Catch ex As Exception
Throw ErrorHandler.LogWrite(si, New XFException(si, ex))
End Try
End Function
End Class
End Namespace
And, here are my result - not sure what I am missing -
Many thanks for your help
Wei