Forum Discussion

KevinEvange's avatar
KevinEvange
New Contributor II
7 months ago

Display text field or other Member Filter in BI Viewer dashboard for dimensions

Hey everyone, Is it possible to display either a text field or any other member filter in BI Viewer Dashboard? When using a CubeViewMD data adapter, I notice that even if the cube view being refe...
  • aformenti's avatar
    7 months ago

    Hi - I realized there was an Issue on that line of code, see it corrected:

    Dim ScenarioTypeId As Integer = ScenarioType.GetItem(ScenarioTypeName).Id
    

    Full Br:

    	'{GetDataSet}{DataSetName}{ScenarioTypeName=[Actual],Time=[|WFTime|]}
    		Public Function GetCubeViewMDData(ByVal si As SessionInfo, ByVal args As DashboardDataSetArgs, ByVal DataAdapterName As String) As DataTable
    			Try
    				'Gets data from the Cube View MD Data Adapter:
    				Dim objDataSet As DataSet = BRApi.Dashboards.Process.GetAdoDataSetForAdapter(si, False, DataAdapterName, "CubeViewMD", args.CustomSubstVars)
    				Dim dt As DataTable = objDataSet.Tables(0).Copy()
    				
    				'Get args:
    				Dim ScenarioTypeName As String = args.NameValuePairs.XFGetValue("ScenarioTypeName",String.Empty)
    				Dim Time As String = args.NameValuePairs.XFGetValue("Time",String.Empty)
    				Dim ScenarioTypeId As Integer = ScenarioType.GetItem(ScenarioTypeName).Id
    				Dim TimeId As Integer = BRApi.Finance.Members.GetMemberId(si, dimtypeid.Time,Time)
    				
    				'Loops through Table and pulls Text3 
    				If (Not dt Is Nothing)
    					For Each srow As DataRow In dt.Rows
    						'Pull the Account Name (Should be pointed to the right Account Field Name ("Account"):
    						Dim AccountName As String = srow("Account").item
    						Dim AccountId As Integer = BRApi.Finance.Members.GetMemberId(si,dimtypeid.Account,AccountName)
    						Dim AccountText As String = BRApi.Finance.Account.Text(si,AccountId,3,ScenarioTypeId,TimeId)
    						'Repoints the Account Field for Text Property:
    						srow("Account") = AccountText
    					Next sRow
    					Return dt
    				End If 
    				
    				Return Nothing
    			
    		Catch ex As Exception
    			Throw ErrorHandler.LogWrite(si, New XFException(si, ex))
    		End Try
    	End Function