Condividi tramite


StrToMember (MDX)

Restituisce il membro specificato da una stringa in formato MDX (Multidimensional Expression).

Sintassi

StrToMember(Member_Name [,CONSTRAINED] ) 

Argomenti

  • Member_Name
    Espressione stringa valida che specifica, in modo diretto o indiretto, un membro.

Osservazioni

La funzione StrToMember restituisce il membro specificato nell'espressione stringa. La funzione StrToMember viene in genere utilizzata con funzioni definite dall'utente per la restituzione di una specifica di set da una funzione esterna a un'istruzione MDX o quando si utilizza una query MDX con parametri.

  • Quando viene utilizzato il flag CONSTRAINED, il nome del membro deve essere direttamente risolvibile in un nome di membro completo o non qualificato. Questo flag viene utilizzato per ridurre il rischio di attacchi intrusivi tramite la stringa specificata. Se viene specificata una stringa non direttamente risolvibile in un nome di membro completo o non qualificato, viene visualizzato l'errore seguente: "Le restrizioni imposte dal flag CONSTRAINED nella funzione STRTOMEMBER sono state violate".

  • Quando non viene utilizzato il flag CONSTRAINED, il membro specificato può essere risolto direttamente nel nome di un membro oppure in un'espressione MDX risolvibile in un nome.

  • Per comprendere meglio le differenze tra set e membri, vedere Utilizzo di espressioni set e Utilizzo delle espressioni di membro.

Esempi

Nell'esempio seguente la funzione StrToMember viene utilizzata per restituire la misura Reseller Sales Amount relativa al membro Bayern della gerarchia dell'attributo State-Province. La stringa specificata ha indicato il nome completo del membro.

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

Nell'esempio seguente la funzione StrToMember viene utilizzata per restituire la misura Reseller Sales Amount relativa al membro Bayern. Poiché con la stringa del nome del membro è stato specificato soltanto un nome di membro non qualificato, la query restituisce la prima istanza del membro specificato, che si trova nella gerarchia Customer Geography della dimensione Customer, che non si interseca con Reseller Sales. Le procedure consigliate prevedono la specifica del nome completo in modo da garantire i risultati previsti.

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

Nell'esempio seguente la funzione StrToMember viene utilizzata per restituire la misura Reseller Sales Amount relativa al membro Bayern della gerarchia dell'attributo State-Province. La stringa del nome del membro specificata viene risolta in un nome di membro completo.

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

Nell'esempio seguente viene restituito un errore a causa del flag CONSTRAINED. Nonostante la stringa del nome del membro specificata contenga un'espressione di membro MDX valida che viene risolta in un nome di membro completo, il flag CONSTRAINED richiede nomi di membro completi o non qualificati nella stringa del nome del membro.

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