MEMBERGET

Tato funkce vrátí jedinečný název prvku odkazem na jeho vztah s konsolidovaným prvkem. Tato funkce je k dispozici pouze s databázemi vyhovujícími specifikaci ODBO. Chcete-li vrátit popisek, použijte formát čísla s tildou (~).

Syntaxe

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

Poznámka

Třetím argumentem funkce je Hierarchie, nikoli Dimenze. Je to důležité, když používáte relační databáze nebo databáze Analysis Services, které mohou mít více hierarchií v dimenzi. Je nutné zadat jedinečný název hierarchie.

Dočasně byl změněný způsob, kterým funkce MEMBERGET zpracovává neplatné nebo neodpovídající parametry hierarchií a prvků.

Pokud stejný prvek názvu existuje ve více dimenzích, může se zobrazit chyba Neshoda dimenzionality. Chcete-li tomu předejít, zadejte jedinečný název prvku.
Poznámka

Pokud jako název zadáte prázdný řetězec, použije se výchozí prvek určené hierarchie.

Příklad

Tento příklad využívá databázi Adventure Works pro službu Analysis Services. Dimenze Zeměpis má více hierarchií. V tomto příkladu využíváme hierarchii Města. Jedinečný název je [Geography].[City].

=MEMBERGET("Adventure Works","Adventure Works","[Geography].[City]",
"[Geography].[City].&[Abingdon]&[ENG]","Sibling",2)
Tento příklad vrátí prvek Alexandria [NSW]. Jedná se o druhý prvek na stejné úrovni (počítáno od nuly) jako Abingdon [ENG]. Pokud místo 2 dosadíte 1, bude vrácen prvek Albany [OR], což je první prvek na stejné úrovni jako Abingdon [ENG].
Možné hodnoty pro Param1 jsou:
Podřízený prvek
Vrátí podřízený prvek (na základě nuly) nadřazeného prvku určeného parametrem Param2. Param2 musí být číslo.
Další
Vrátí další prvek v hierarchii na stejné úrovni jako určený prvek. Param2 není povinný.
Poznámka

Syntaxe Memberget ("...,"Next") je ekvivalentní k syntaxi Memberget ("...,"Sibling",1)

Předchozí
Vrátí prvek v hierarchii, který je před určeným prvkem a na stejné úrovni. Param2 není povinný.
Prvek na stejné úrovni
Vrátí prvek na stejné úrovni nadřazeného prvku určeného parametrem Param2. Param2 musí být kladné číslo, záporné číslo nebo nula.
Poznámka
Memberget ("...,"sibling",-1) is equivalent to Memberget ("...,"Prev")
Parent
Vrátí nadřazený prvek určeného prvku. Param2 není povinný.
=MEMBERGET("Adventure Works","Adventure Works","[Geography].[City]",
"[Geography].[City].&[Abingdon]&[ENG]","Parent")
Self a Verify
Parametry Self a Verify vrátí jedinečný název určeného prvku. Param2 není povinný. Pokud prvek neexistuje, vrátí vzorec výchozí prvek určené hierarchie.
Parametr Verify kontroluje, zda určená hierarchie existuje. Pokud ne, vzorec vrátí údaj #NA!.
Parametr Self nekontroluje, zda určená hierarchie existuje. Znamená to, že pokud prvek existuje, vzorec vrátí jeho jedinečný název.
Poznámka

Syntaxe Memberget ("...,"Self") i Memberget ("...,"Verify") jsou ekvivalentní k syntaxi ("...,"Sibling",0)

Příklad

Výchozí prvek hierarchie není nezbytně prvek na nejvyšší úrovni. Chcete-li zjistit, který prvek je výchozí, můžete použít parametr self a prázdný řetězec jako název prvku:

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

Vícenásobný výběr

Funkce MEMBERGET podporuje vícenásobný výběr. Znamená to, že s využitím funkce MEMBERGET můžete vrátit jedinečné názvy více prvků, které jsou uloženy ve struktuře MLS-XML.

Například proměnná reportu s názvem rv_multi obsahuje tuto strukturu 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>
Vytvoříte tento vzorec MEMBERGET:
=MEMBERGET( "BestPracticesOLAP", "Analysis", "[Period]", reportvariables.rv_multi.text, "child",2)

Vzorec MEMBERGET vrátí tento formát 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>
Poznámka

Buňka, která obsahuje vzorec MEMBERGET, zobrazí údaj </Multiselect>. Zvětšením výšky buňky se zobrazí úplná definice MLS_XML.

Vzorec MULTISELECTGETMEMBERS nebo MULTISELECTGETMEMBERSSIMPLE můžete použít k extrakci jedinečných názvů prvků ze struktury MLS-XML:

Případně, pokud chcete zobrazit popisky prvků v buňce, můžete zadat tildu (~) jako formát čísel buňky.