Partager via


Utilisation de variables et de paramètres (MDX)

Dans MicrosoftSQL ServerAnalysis Services, vous pouvez paramétrer une instruction MDX (Multidimensional Expressions). Une instruction paramétrable permet de créer des instructions génériques pouvant être personnalisées au moment de l'exécution.

Lors de la création d'une instruction paramétrable, vous devez identifier le nom du paramètre en l'ajoutant comme préfixe avec le signe arobase (@). Par exemple, @Year est un nom de paramètre valide.

La syntaxe MDX ne prend en charge que les paramètres de valeurs littérales ou scalaires. Pour créer un paramètre faisant référence à un membre, un jeu ou un tuple, vous devez utiliser une fonction telle que StrToMember ou StrToSet.

Dans l'exemple de code XMLA (XML for Analysis) suivant, le paramètre @CountryName contient le pays pour lequel les données se rapportant aux clients doivent être récupérées :

<Envelope xmlns="https://schemas.xmlsoap.org/soap/envelope/">
  <Body>
    <Execute xmlns="urn:schemas-microsoft-com:xml-analysis">
      <Command>
        <Statement>
select [Measures].members on 0, 
       Filter(Customer.[Customer Geography].Country.members, 
              Customer.[Customer Geography].CurrentMember.Name =
              @CountryName) on 1
from [Adventure Works]
</Statement>
      </Command>
      <Properties />
      <Parameters>
        <Parameter>
          <Name>CountryName</Name>
          <Value>'United Kingdom'</Value>
        </Parameter>
      </Parameters>
    </Execute>
  </Body>
</Envelope>

Pour utiliser cette fonctionnalité avec OLE DB, vous devez utiliser l'interface ICommandWithParameters. Pour utiliser cette fonctionnalité avec ADOMD.NET, vous devez utiliser la collection AdomdCommand.Parameters .