CELLGET

Tato funkce vrací hodnoty datové kostky na základě zadaných prvků. Funkci lze použít pouze s databázemi kompatibilními se specifikacemi ODBO a XMLA. Podobá se vzorci ROC, je však dynamická. Nemusíte tedy zadávat všechny prvky hierarchie. U nezadaných dimenzí se použije výchozí prvek.

Tato dynamika má zvláštní význam pro šablony reportů. Návrhář šablony může například určit, že uživatelé musí vybrat dimenzi obsahující ukazatele nebo dimenzi obsahující časová období. Skutečné dimenze, které má uživatel k dispozici nebo které vybere, však návrhář nezná. Vzorce, které návrhář v šabloně použije, proto nemohou obsahovat odkazy na konkrétní dimenze, hierarchie či prvky. Všechny argumenty vzorce CELLGET lze zadat pomocí proměnné.

Pořadí zadaných dimenzí není důležité. Vzorec CELLGET může obsahovat odkaz na rozsah buněk, nemusíte se tedy odkazovat jednotlivě na každou z nich.

Funkce CELLGET podporuje výběr více prvků z jedné dimenze.

Syntaxe

=CELLGET("data_connection", "cube"{,"slice_element"})

Příklad

=CELLGET( "BestPracticesOLAP", "Analysis", "[Period].[All Years].[2017]",
"[Product].[Car Tires All Season]")
	 

Funkci CELLGET můžete použít k odkazování na prvky z více dimenzí, a to jednotlivě nebo pomocí rozsahu. Pokud tedy buňky B4, B5, B6 a B7 obsahují název prvku, následující dva příklady dávají stejný výsledek:

=CELLGET("BestPracticesOLAP", "Analysis",B4,B5,B6,B7)
=CELLGET("BestPracticesOLAP","Analysis",B4:B7)

Pokud změníte hodnotu buňky obsahující vzorec CELLGET, hodnota se zapíše zpět do databáze.

Vzorec CELLGET můžete použít k odkazování na buňku v hyperbloku.

Vícenásobný výběr

Funkce MEMBERGET podporuje vícenásobný výběr. Libovolný prvek ve vzorci CELLGET můžete nahradit odkazem na platnou strukturu XML s vícenásobným výběrem (MLS-XML). Cílem odkazů mohou být buňky nebo proměnné obsahující strukturu MLS-XML.

V tomto příkladu jsou prvky 2016 a 2017 uloženy jako MLS-XML v proměnné reportu:

=CELLGET("BestPracticesOLAP","ANALYSIS","[CHANNEL].[All Channels]","[MEASURE].[Gross Margin]",
"[POS].[All POS]","[PRODUCT].[All Tires]","[REGION].[All Regions].[Europe]",
ReportVariables.rv_multi.Text,"[VALTYPE].[Variance]")

K určení více prvků dimenze můžete také použít rozsah:

V tomto příkladu jsou prvky 2016 a 2017 zadány rozsahem.

=CELLGET("BestPracticesOLAP","ANALYSIS","[CHANNEL].[All Channels]","[MEASURE].[Gross Margin]"
,"[POS].[all pos]","[Product].[all tires]","[region].[all regions].[europe]",
"[Period].[all years].[2016]::[period].[all years].[2017]","[valtype].[variance]")
Funkce vrací součet hodnot jednotlivých prvků.