Ceci est pour une application qui définit dynamiquement les données et rend les rapports.La requête MDX renvoie la valeur dans le rapport mais pas dans le code Visual Basic
J'ai une requête MDX pour un rapport qui repose sur un paramètre. La requête est:
SELECT NULL ON COLUMNS, strtomember(@DateYear) ON ROWS FROM [MYDATACUBE]
Lors de l'exécution dans le Concepteur de requêtes de rapport, il renvoie une valeur correctement. Toutefois, lors de l'exécution de ce code visuel de base, il ne renvoie rien. Voici la partie importante de mon code:
Dim cn = New AdomdConnection(adomdparamconnectionstrings(countparamsadomd))
Dim da As AdomdDataAdapter = New AdomdDataAdapter()
Dim cmd = New AdomdCommand(paramcommands(countparamsadomd), cn)
Dim tbl = New DataTable
If (adomdparams) Then 'If there are parameters, adds them to the query
For l As Integer = 0 To (countparamsadomd - 1)
If (adomdparamconnectionstrings(l) = "NODATASET") Then
Dim p As New AdomdParameter(paramvaradomd(l), paramadomd(l))
cmd.Parameters.Add(p)
Else
Dim p As New AdomdParameter(paramvaradomd(l), adomdqueryvalues(l))
cmd.Parameters.Add(p)
End If
Next
End If
da.SelectCommand = cmd
cn.Open()
da.Fill(tbl)
cn.Close()
Je sais la chaîne de connexion fonctionne parce que tous les autres ensembles de données utilisent le même. Je sais que la commande est correcte en utilisant des points de rupture. Je sais que la valeur du paramètre est correcte également en utilisant des points de rupture. Je sais que le code fonctionne globalement parce qu'il fonctionne avec tous les ensembles de données avec lesquels je l'ai testé sauf celui-ci. En utilisant les points de rupture, tout semble fonctionner comme pour les autres ensembles de données, mais ensuite, il ne renvoie aucune valeur.
La table qui en résulte a une colonne correctement nommée ([Date]. [Année]. [Année]. [MEMBER_CAPTION]) mais ne contient aucune ligne. La valeur renvoyée doit être une seule ligne avec l'année dedans.
Vous ne renvoyaient aucun des données sur l'axe des COLONNES, à savoir, 'SELECT NULL ON COLUMNS'. J'ai fourni un exemple ci-dessous qui renvoie la propriété MEMBER_CAPTION d'un membre paramétré. – jhenninger