StrToMember (MDX)

Restituisce il membro specificato da una stringa formattata Multidimensional Expressions (MDX).

Sintassi

  
StrToMember(Member_Name [,CONSTRAINED] )   

Arguments

Member_Name
Un'espressione valida di stringa che specifica, direttamente o indirettamente, un membro.

Osservazioni:

La funzione StrToMember restituisce il membro specificato nell'espressione della stringa. La funzione StrToMember è tipicamente utilizzata con funzioni definite dall'utente per restituire una specifica di membro da una funzione esterna a un'istruzione MDX, oppure quando una query MDX è parametrizzata.

  • Quando viene utilizzato il flag CONSTRAINED (CONSTRAINT), il nome del membro deve essere direttamente risolvibile in un nome di membro qualificato o non qualificato. Questo flag viene utilizzato per ridurre il rischio di attacchi di iniezione tramite la stringa specificata. Se viene fornita una stringa che non è direttamente risolvibile in un nome di membro qualificato o non qualificato, appare il seguente errore: "Le restrizioni imposte dal flag CONSTRAINED nella funzione STRTOMEMBER sono state violate."

  • Quando il flag CONSTRAINED non viene utilizzato, il membro specificato può risolvere direttamente su un nome di membro oppure su un'espressione MDX che si risolve in un nome.

  • Per comprendere meglio le differenze tra insiemi e membri, vedi Uso delle espressioni di insieme e Uso delle espressioni membri.

Examples

Il seguente esempio restituisce la misura dell'importo delle vendite del rivenditore per il membro Bayern nella gerarchia degli attributi State-Province utilizzando la funzione StrToMember . La stringa specificata forniva il nome del membro qualificato.

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

Il seguente esempio restituisce la misura dell'importo delle vendite del rivenditore per il membro Bayern utilizzando la funzione StrToMember . Poiché la stringa del nome del membro forniva solo un nome non qualificato, la query restituisce la prima istanza del membro specificato, che si trova nella gerarchia della Geografia del Cliente nella dimensione Cliente, che non si interseca con le Vendite del Rivenditore. Le migliori pratiche prevedono di specificare il nome qualificato per garantire i risultati attesi.

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

Il seguente esempio restituisce la misura dell'importo delle vendite del rivenditore per il membro Bayern nella gerarchia degli attributi State-Province utilizzando la funzione StrToMember . La stringa del nome del membro forniva le risoluzioni a un nome di membro qualificato.

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

Il seguente esempio restituisce un errore dovuto al flag CONSTRAINED (CONSTRAINED flag). Sebbene la stringa di nomi membri fornita contenga un'espressione MDX valida che si risolve in un nome membro qualificato, il flag CONSTRAINED richiede nomi membri qualificati o non qualificati nella stringa di nomi membri.

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