Compartilhar via


StrToMember (MDX)

Retorna o membro especificado por uma cadeia de caracteres formatada em MDX (Multidimensional Expressions).

Sintaxe

  
StrToMember(Member_Name [,CONSTRAINED] )   

Argumentos

Member_name
Uma expressão de cadeia de caracteres válidos especificando, direta ou indiretamente, um membro.

Comentários

A função StrToMember retorna o membro especificado na expressão de cadeia de caracteres. A função StrToMember normalmente é usada com funções definidas pelo usuário para retornar uma especificação de membro de uma função externa de volta para uma instrução MDX ou quando uma consulta MDX é parametrizada.

  • Quando o sinalizador CONSTRAINED for usado, o nome de membro deverá ser diretamente resolvido para um nome de membro qualificado ou não qualificado. Esse sinalizador CONSTRAINED é usado para reduzir o risco de ataques de injeção pela cadeia de caracteres especificada. Se uma cadeia de caracteres fornecida não for totalmente resolvida para um nome de membro qualificado ou não qualificado, surge o seguinte erro: "As restrições impostas pelo sinalizador CONSTRAINED na função STRTOMEMBER foram violadas".

  • Quando o sinalizador de CONSTRAINED não for usado, o membro especificado poderá resolver diretamente um nome de membro ou uma linguagem MDX que resolve um nome.

  • Para entender melhor as diferenças entre conjuntos e membros, consulte Usando expressões de conjuntos e Usando expressões de membros.

Exemplos

O exemplo a seguir retorna a medida Valor de Vendas do Revendedor para o membro bayern na hierarquia de atributos State-Province usando a função StrToMember . A cadeia de caracteres especificada forneceu o nome de membro qualificado.

SELECT {StrToMember ('[Geography].[State-Province].[Bayern]')}  
ON 0,  
{[Measures].[Reseller Sales Amount]} ON 1  
FROM [Adventure Works]  
  

O exemplo a seguir retorna a medida Valor de Vendas do Revendedor para o membro do Bayern usando a função StrToMember . Considerando que a cadeia de caracteres de nome de membro forneceu apenas um nome de membro não qualificado, a consulta retorna a primeira instância do membro especificado, que está na hierarquia Geografia do Cliente, na dimensão Cliente, que não faz intersecção com Vendas do Revendedor. As práticas recomendadas ditam que se especifique o nome qualificado para assegurar resultados esperados.

SELECT {StrToMember ('[Bayern]').Parent}  
ON 0,  
{[Measures].[Reseller Sales Amount]} ON 1  
FROM [Adventure Works]  
  

O exemplo a seguir retorna a medida Valor de Vendas do Revendedor para o membro bayern na hierarquia de atributos State-Province usando a função StrToMember . A cadeia de caracteres de nome de membro fornecida resolve um nome de membro qualificado.

SELECT {StrToMember('[Geography].[Geography].[Country].[Germany].FirstChild', CONSTRAINED)}  
ON 0,  
{[Measures].[Reseller Sales Amount]} ON 1  
FROM [Adventure Works]  
  

O exemplo a seguir retorna um erro devido ao sinalizador CONSTRAINED. Enquanto a cadeia de caracteres de nome de membro fornecida contém uma expressão de membro MDX válida, que resolve um nome de membro qualificado, o sinalizador CONSTRAINED exige nomes de membros qualificados ou não qualificados na cadeia de caracteres de nome de membro.

SELECT StrToMember ('[Geography].[Geography].[Country].[Germany].FirstChild', CONSTRAINED)  
ON 0  
FROM [Adventure Works]  

Consulte Também

Referência de função MDX (MDX)