MEMBERGET

Questa funzione restituisce il nome univoco di un elemento mediante il riferimento alla rispettiva relazione con un elemento consolidato. La funzione è utilizzabile solo con database conformi a ODBO. Per restituire la didascalia, utilizzare il formato numerico tilde (~).

Sintassi

MEMBERGET("data_connection","cube","hierarchy","element_name","param" {,"param"})

Nota

il terzo argomento della funzione è Gerarchia (Hierarchy), non Dimensione (Dimension). Ciò è importante quando si utilizzano database relazionali o di Analysis Services che possono contenere più gerarchie in una dimensione. È necessario specificare il nome univoco della gerarchia.

La modalità di gestione dei parametri di gerarchia ed elemento non validi o non corrispondenti da parte di MEMBERGET è temporaneamente cambiata.

Se lo stesso nome di elemento è presente in più dimensioni, potrà verificarsi l'errore di Mancata corrispondenza della dimensionalità. Per evitare questo problema, specificare il nome univoco dell'elemento.
Nota

se si specifica una stringa vuota come nome dell’elemento, viene utilizzato l'elemento predefinito della gerarchia specificata.

Esempio

In questo esempio viene utilizzato il database Adventure Works per Analysis Services. La dimensione Geography dispone di più gerarchie. Nell'esempio viene utilizzata la gerarchia City, il cui nome univoco è [Geography].[City].

=MEMBERGET("Adventure Works","Adventure Works","[Geography].[City]",
"[Geography].[City].&[Abingdon]&[ENG]","Sibling",2)
In questo esempio verrà restituito l'elemento Alexandria [NSW], ovvero il secondo elemento fratello (contando da zero) di Abingdon [ENG]. Sostituire 2 con 1 per ottenere la restituzione di Albany [OR], ovvero il primo elemento fratello di Abingdon [ENG].
I valori possibili per Param1 sono i seguenti:
Child
Restituisce l'elemento figlio (basato su zero) dell'elemento padre, specificato da Param2. Quest'ultimo deve essere un numero.
Next
Restituisce l'elemento della gerarchia successivo e allo stesso livello dell'elemento specificato. Param2 non è necessario.
Nota

Memberget ("...,"Next") equivale a Memberget ("...,"Sibling",1).

Prev
Restituisce l'elemento della gerarchia precedente e allo stesso livello dell'elemento specificato. Param2 non è necessario.
Sibling
Restituisce l'elemento fratello dell'elemento padre, specificato da Param2. Quest'ultimo deve essere un numero positivo, negativo o zero.
Nota
Memberget ("...,"sibling",-1) is equivalent to Memberget ("...,"Prev")
Parent
Restituisce l'elemento padre dell'elemento specificato. Param2 non è necessario.
=MEMBERGET("Adventure Works","Adventure Works","[Geography].[City]",
"[Geography].[City].&[Abingdon]&[ENG]","Parent")
Self e Verify
Self e Verify restituiscono entrambi il nome univoco dell'elemento specificato. Param2 non è necessario. Se l'elemento non esiste, la formula restituisce l'elemento predefinito della gerarchia specificata.
Verify controlla che la gerarchia specificata esista. Se non esiste, la formula restituisce #NA!.
Self non controlla che la gerarchia specificata esista. In altri termini, se l'elemento esiste, la formula restituisce il relativo nome univoco.
Nota

Memberget ("...,"Self") e Memberget ("...,"Verify") sono entrambi equivalenti a ("...,"Sibling",0)

Esempio

L'elemento predefinito di una gerarchia non è necessariamente l'elemento di livello principale. Per individuare l'elemento predefinito è possibile utilizzare il parametro Self, quindi una stringa vuota come nome dell'elemento:

=MEMBERGET("data_connection","cube","hierarchy","","self")

Selezione multipla

MEMBERGET supporta la selezione multipla. In altri termini, è possibile utilizzare MEMBERGET per restituire i nomi univoci di più elementi memorizzati in MLS-XML.

Ad esempio, una variabile di report denominata rv_multi contiene il seguente codice MLS-XML:
<?xml version="1.0" encoding="utf-16"?>
<MultiSelect xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Hierarchy>[Period]</Hierarchy>
  <AggregationFunction>Sum</AggregationFunction>
  <StructureSelection>
    <Member>
      <MemberUName>[period].[all years].[2016]</MemberUName>
    </Member>
    <Member>
      <MemberUName>[period].[all years].[2017]</MemberUName>
    </Member>
  </StructureSelection>
</MultiSelect>
Se si crea la seguente formula MEMBERGET:
=MEMBERGET( "BestPracticesOLAP", "Analysis", "[Period]", reportvariables.rv_multi.text, "child",2)

La formula MEMBERGET restituirà il seguente MLS-XML:

<?xml version="1.0" encoding="utf-16"?>
<MultiSelect xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Hierarchy>[Period]</Hierarchy>
  <AggregationFunction>Sum</AggregationFunction>
  <StructureSelection>
    <Member>
      <MemberUName>[Period].[All Years].[2016].[2016_Q3]</MemberUName>
    </Member>
    <Member>
      <MemberUName>[Period].[All Years].[2017].[2017_Q3]</MemberUName>
    </Member>
  </StructureSelection>
</MultiSelect>
Nota

nella cella contenente la formula MEMBERGET viene visualizzato </Multiselect>. Espandere l'altezza della cella per visualizzare la definizione MLS-XML completa.

Per estrarre i nomi univoci degli elementi da MLS-XML, è possibile utilizzare MULTISELECTGETMEMBERS o MULTISELECTGETMEMBERSSIMPLE.

In alternativa, per visualizzare le didascalie degli elementi nella cella, è possibile specificare il carattere tilde (~) come formato numerico della cella.