Share via


Usar variables y parámetros (MDX)

MicrosoftSQL ServerAnalysis Services admite la parametrización de las instrucciones de expresiones multidimensionales (MDX). Las instrucciones con parámetros permiten crear instrucciones genéricas que pueden personalizarse en tiempo de ejecución.

Al crear una instrucción con parámetros, se debe identificar el nombre del parámetro adjuntando un prefijo con el símbolo de arroba (@). Por ejemplo, @Year sería un nombre de parámetro válido.

MDX solamente admite parámetros para valores literales o escalares. Para crear un parámetro que haga referencia a un miembro, conjunto o tupla debería utilizar una función como StrToMember o StrToSet.

En el siguiente ejemplo de XML for Analysis (XMLA), el parámetro @CountryName incluirá el país del que se obtienen los datos del cliente:

<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>

Para utilizar esta funcionalidad con OLE DB, debería usar la interfaz ICommandWithParameters. Para utilizar esta funcionalidad con ADOMD.NET, debería usar la colección AdomdCommand.Parameters.