CELLGET
Denne funksjonen returnerer verdiene til en kube, basert på elementene du angir. Funksjonen kan bare brukes med ODBO- og XMLA-kompatible databaser. Den ligner på en ROC-formel, men er dynamisk. Det betyr at du ikke trenger å angi alle elementene i en dimensjon. Standardelementet brukes for dimensjonene du ikke angir.
Denne dynamikken er spesielt relevant for rapportmaler. Designeren av en mal kan for eksempel angi at brukerne må velge en dimensjon som inneholder mål eller en dimensjon som inneholder tidsperioder. Men designeren kan ikke vite de faktiske dimensjonene som er tilgjengelige for brukeren, eller som brukeren vil velge. Formler som maldesigneren setter inn, må derfor ikke referere til bestemte dimensjoner, hierarkier eller elementer. Hvert argument av en CELLGET-formel kan leveres av en variabel.
Det er ikke viktig hvilken rekkefølgen du angir dimensjonene i. Du kan referere til et område med celler i en CELLGET-formel i stedet for å referere til hver individuelt.
CELLGET støttet valg av flere elementer fra én enkel dimensjon.
Syntaks
=CELLGET("data_connection", "cube"{,"slice_element"})
Eksempel
=CELLGET( "BestPracticesOLAP", "Analysis", "[Period].[All Years].[2017]",
"[Product].[Car Tires All Season]")
Du kan bruke CELLGET for å referere til elementer fra flere dimensjoner individuelt eller som område. Hvis cellene B4, B5, B6 og B7 hver inneholder et elementnavn, gir disse to eksemplene samme resultat:
=CELLGET("BestPracticesOLAP", "Analysis",B4,B5,B6,B7)
=CELLGET("BestPracticesOLAP","Analysis",B4:B7)
Når du endrer verdien til cellen som inneholder CELLGET-formlen blir verdien tilbakeskrevet til databasen.
Du kan bruke en CELLGET-formel for å referere til en celle i en hyperblokk.
Multiselect
CELLGET støtter multiselect. Du kan erstatte hvilket som helst av elementene i en CELLGET-formel med referanser til gyldig multiselect XML (MLS-XML). Referansene kan være til celler eller variabler som inneholder MLS-XML.
I dette eksemplet lagres elementene 2016 og 2017 som MLS-XML i en rapportvariabel:
=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]")
Du kan også bruke et område for å spesifisere flere elementer i en dimensjon:
I dette eksemplet angis elementene 2016 og 2017 i et intervall.
=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]")
Funksjonen returnerer summen av verdiene til de individuelle elementene.