Forum Discussion
- T_KressContributor III
I have seen this done before with a dashboard extender BR.
Here is some DB extender BR sample code that should get you started:
Namespace OneStream.BusinessRule.DashboardExtender.SetDefaultParamValue Public Class MainClass Public Function Main(ByVal si As SessionInfo, ByVal globals As BRGlobals, ByVal api As Object, ByVal args As DashboardExtenderArgs) As Object Try Select Case args.FunctionType Case Is = DashboardExtenderFunctionType.LoadDashboard If (args.FunctionName.XFEqualsIgnoreCase("OnLoadMainDashboard_Sales")) Then If args.LoadDashboardTaskInfo.Reason = LoadDashboardReasonType.Initialize And args.LoadDashboardTaskInfo.Action = LoadDashboardActionType.BeforeFirstGetParameters Then 'Initialize Message Dim loadDashboardTaskResult As New XFLoadDashboardTaskResult() loadDashboardTaskResult.ChangeCustomSubstVarsInDashboard = True 'Grab the default value to pass into the dashboard Dim defaultSalesperson As String = BRApi.Dashboards.Parameters.GetLiteralParameterValue(si, False, "Salesperson_DefaultValue") 'Modify the workflow profile entity parameter to pass in the default value at run time loadDashboardTaskResult.ModifiedCustomSubstVars.Add("paramSecuritySalesPersonBase", defaultSalesperson) ' brapi.ErrorLog.LogMessage(si, "defaultSalesperson = " & defaultSalesperson) Return loadDashboardTaskResult End If End If If (args.FunctionName.XFEqualsIgnoreCase("OnLoadMainDashboard_SGA")) Then If args.LoadDashboardTaskInfo.Reason = LoadDashboardReasonType.Initialize And args.LoadDashboardTaskInfo.Action = LoadDashboardActionType.BeforeFirstGetParameters Then 'Initialize Message Dim loadDashboardTaskResult As New XFLoadDashboardTaskResult() loadDashboardTaskResult.ChangeCustomSubstVarsInDashboard = True 'Grab the default value to pass into the dashboard Dim wfSGABranch As String = BRApi.Dashboards.Parameters.GetLiteralParameterValue(si, False, "SGA_Branches_DefaultValue") 'Modify the workflow profile entity parameter to pass in the default value at run time loadDashboardTaskResult.ModifiedCustomSubstVars.Add("SGA_Branches", wfSGABranch) loadDashboardTaskResult.ModifiedCustomSubstVars.Add("paramWFBranch", wfSGABranch) ' brapi.ErrorLog.LogMessage(si, "wfSGABranch = " & wfSGABranch) Return loadDashboardTaskResult End If End If If (args.FunctionName.XFEqualsIgnoreCase("OnLoadMainDashboard_CONSGA")) Then If args.LoadDashboardTaskInfo.Reason = LoadDashboardReasonType.Initialize And args.LoadDashboardTaskInfo.Action = LoadDashboardActionType.BeforeFirstGetParameters Then 'Initialize Message Dim loadDashboardTaskResult As New XFLoadDashboardTaskResult() loadDashboardTaskResult.ChangeCustomSubstVarsInDashboard = True 'Grab the default value to pass into the dashboard Dim wfSGABranchCon As String = BRApi.Dashboards.Parameters.GetLiteralParameterValue(si, False, "SGA_Branches_Copy_3_Default") Dim wfSGABranch As String = BRApi.Dashboards.Parameters.GetLiteralParameterValue(si, False, "SGA_Branches_DefaultValue") ' brapi.ErrorLog.LogMessage(si, "wfSGABranchCon = " & wfSGABranchCon) 'Modify the workflow profile entity parameter to pass in the default value at run time loadDashboardTaskResult.ModifiedCustomSubstVars.Add("SGA_Branches_Copy_3", wfSGABranchCon) loadDashboardTaskResult.ModifiedCustomSubstVars.Add("SGA_Branches", wfSGABranch) loadDashboardTaskResult.ModifiedCustomSubstVars.Add("paramWFBranch", wfSGABranch) ' brapi.ErrorLog.LogMessage(si, "wfSGABranch = " & wfSGABranch) Return loadDashboardTaskResult End If 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
Related Content
- 2 years ago