Summary: Unable to execute Business Rule ' '. Object reference not set to an instance of an object.

OS_Pizza
Contributor III

I have a dashboard with a Label component that uses a Cube View as the data adapter. Here's how it's set up:

  1. The Cube View (CV) employs an XFBR in the account POV to retrieve one account number. Therefore, I've assigned XFBR(BRName, Function_Name, Account =[|!Param_Account!|]).

  2. The XFBR utilizes a Member List parameter from the same dashboard, where I've set the parameter's default value.

The error occurs when I open the dashboard. The Label value attempts to run the Cube View, triggering the XFBR rule. However, it fails to capture the default value of the parameter, resulting in an error.

My assumption is that the XFBR is unable to transmit the default parameter value.


The workaround is to directly open the Cube View section and modify the account POV field to only include |!Param_Account!|, then run it once. This action somehow prompts the system to store the parameter value for that user. Subsequently, when the user runs it from the dashboard, the error is resolved.

Do you have any insights into why this issue is happening?"

1 REPLY 1

sameburn
Contributor

To resolve parameters at runtime for all users, please consider using a DashboardExtenderFunctionType.LoadDashboard function (DashboardExtender).  There are lots of examples in Golfstream.  That is a generic error that states that one of your parameters is not resolved in your logic.  So you either need (a) null handling in your logic (which is best practice) and / or (b) LoadDashboard logic when your dashboard is invoked e.g. setting parameter values as defaults e.g.

				Select Case args.FunctionType
					
					Case Is = DashboardExtenderFunctionType.LoadDashboard
						If args.FunctionName.XFEqualsIgnoreCase("OnLoad") Then
							
							'Implement Load Dashboard logic here.
							
							If args.LoadDashboardTaskInfo.Reason = LoadDashboardReasonType.Initialize And args.LoadDashboardTaskInfo.Action = LoadDashboardActionType.BeforeFirstGetParameters Then
								Dim loadDashboardTaskResult As New XFLoadDashboardTaskResult()
								loadDashboardTaskResult.ChangeCustomSubstVarsInDashboard = True
								loadDashboardTaskResult.ModifiedCustomSubstVars.Add("Param_Account", "AccountName")
								Return loadDashboardTaskResult
							End If
						End If
						
				End Select