Definire un membro predefinito
Il membro predefinito di una gerarchia dell'attributo viene utilizzato per valutare le espressioni quando una gerarchia dell'attributo non è inclusa in una query. Il membro predefinito viene ignorato ogni volta che una query include una gerarchia dell'attributo o dell'utente contenente l'attributo che dà origine alla gerarchia dell'attributo, poiché viene utilizzato il membro specificato nella query.
Il membro predefinito per una gerarchia dell'attributo viene impostato specificando un membro dell'attributo come valore della proprietà DefaultMember
per la gerarchia dell'attributo. È possibile impostare questa proprietà nella scheda Struttura dimensione in Dimensione Designer oppure nello script di calcolo del cubo nella scheda Calcolo in Cubo Designer in SQL Server Data Tools (SSDT). È inoltre possibile specificare la proprietà DefaultMember
per un ruolo di sicurezza (sostituendo il membro predefinito impostato sulla dimensione) nella scheda Dati della dimensione quando viene definita la sicurezza delle dimensioni. Per evitare problemi di risoluzione del nome, definire il membro predefinito nello script MDX del cubo nelle situazioni seguenti: se il cubo fa riferimento a una dimensione del database più di una volta, se la dimensione nel cubo ha un nome diverso da quello nel database o se si desidera avere membri predefiniti diversi in cubi diversi.
Il membro predefinito di un attributo viene utilizzato per valutare le espressioni se un attributo non è incluso in una query. Il membro predefinito per un attributo viene specificato tramite la proprietà DefaultMember
nell'attributo. Se in una query è inclusa una gerarchia di una dimensione, verranno ignorati tutti i membri predefiniti degli attributi corrispondenti ai livelli della gerarchia. Se in una query non viene inclusa alcuna gerarchia di una dimensione, i membri predefiniti vengono utilizzati per tutti gli attributi della dimensione.
Risoluzione del membro predefinito quando non viene specificato alcun membro predefinito
Se non viene specificato alcun membro predefinito per una gerarchia dell'attributo e tale gerarchia è aggregabile, ovvero la proprietà IsAggregatable
dell'attributo è impostata su True
, il membro (All) è sarà il membro predefinito. Se non viene specificato alcun membro predefinito e la gerarchia dell'attributo non è aggregabile, ovvero la proprietà IsAggregatable
dell'attributo è impostata su False
, verrà selezionato un membro predefinito dal livello principale della gerarchia dell'attributo.
Impostazione del membro predefinito
Ogni attributo in una dimensione in Microsoft SQL Server Analysis Services ha un membro predefinito, che è possibile specificare usando la DefaultMember
proprietà per un attributo. Questa impostazione viene utilizzata per valutare espressioni nel caso in cui in una query non venga specificato un attributo. Se in una query viene specificata una gerarchia di una dimensione, i membri predefiniti degli attributi nella gerarchia verranno ignorati. Se una query non specifica una gerarchia in una dimensione, le DefaultMember
impostazioni per gli attributi della dimensione hanno effetto.
Se l'impostazione per un attributo è vuota e la DefaultMember
relativa IsAggregatable
proprietà è impostata su True
, il membro predefinito è il membro All. Se la IsAggregatable
proprietà è impostata su False
, il membro predefinito è il primo membro del primo livello visibile.
L'impostazione DefaultMember
per un attributo si applica a ogni gerarchia in cui partecipa l'attributo. Non è possibile utilizzare impostazioni diverse per gerarchie diverse in una dimensione. Se, ad esempio, il membro [1998] è il membro predefinito di un attributo [Year], questa impostazione verrà applicata a tutte le gerarchie della dimensione. L'impostazione DefaultMember
in questo caso non può essere [1998] in una gerarchia e [1997] in una gerarchia diversa.
Se si definisce un membro predefinito per un livello particolare di una gerarchia che non viene aggregato in modo naturale, sarà necessario definire membri predefiniti in tutti i livelli al di sopra di tale livello nella gerarchia. Ad esempio, nella gerarchia All-Countries-Climate non è possibile definire un membro predefinito per il clima, a meno che non si definisci un membro predefinito per i Paesi. Se non si rispetta questo requisito, si verificheranno errori durante l'esecuzione delle query.
Quando i livelli di una gerarchia vengono aggregati in modo naturale, è possibile definire un membro predefinito per qualsiasi attributo della gerarchia senza tenere conto di altri attributi di tale gerarchia. Ad esempio, nella gerarchia Country/Region-Province-City è possibile definire un membro predefinito per City, ad esempio [City]. [Montreal] senza definire il membro predefinito per lo stato o per paese/area geografica.
Vedere anche
Configurare il livello (Totale) per le gerarchie di attributi