Izračun odabranih n-torki

Odabirom n-torki možete fokusirati svoje Essbase izračune u aktivnoj Smart View rešetki te ograničiti njihov opseg na određene isječke podataka u svojoj block storage kocki.

U sljedećim odjeljcima opisan je izračun n-torke:

Opis sintakse za primjenu @GRIDTUPLES u izračunskoj skripti potražite u poglavlju FIX…ENDFIX.

Način upotrebe za izračun n-torke

Odabirom n-torki možete fokusirati svoje Essbase izračune u aktivnoj Smart View rešetki te ograničiti njihov opseg na određene isječke podataka u svojoj block storage kocki.

Odabirom n-torki možete optimizirati asimetrične izračune rešetke u različitim dimenzijama i izbjeći prekomjerni izračun.

Essbase izračunske n-torke razlikuju se od onih koje se upotrebljavaju u MDX upitima. Izvedba izračuna i veličina kocke uglavnom ovise o broju blokova u kocki (s obzirom na veličinu određenog bloka). Iz tog razloga izračunske n-torke definiraju se samo za kombinacije sparse članova. Nadalje, radi jednostavnijeg skriptiranja izračuna, u specifikaciju izračunske n-torke može se uključiti više članova iz jedne sparse dimenzije. Ako, na primjer, kao izračunsku n-torku definirate ("New York", "California", "Actual", "Cola"), izračunat ćete sljedeće presjeke ćelija:

"New York"->"Actual"->"Cola"
"California"->"Actual"->"Cola"

Obratite pozornost na sljedeću simetričnu rešetku. Simetrična je zbog toga što su u rešetkama za svaki proizvod navedena ista tržišta i scenarij (Actual).

Simetrična rešetka s vrijednostima Actual, Jan za pet tržišta za proizvod Cola te istih pet tržišta za proizvod Diet Cola.

Sljedeća je rešetka asimetrična jer za proizvod Diet Cola u rešetki ima manje tržišta no Cola.

Asimetrična rešetka s vrijednostima Actual, Jan za pet tržišta za proizvod Cola, no samo dva tržišta za proizvod Diet Cola.

Kad se više od jedne dimenzije nalazi u naredbi FIX ili perspektivi Smart View rešetke, zadani opseg izračuna jest izračunavanje svih članova u naredbi FIX ili rešetki za proizvod. Drugim riječima, izračun na temelju perspektive u kojem se kombinacije proizvoda i tržišta uzimaju iz rešetke izračunat će sve sljedeće kombinacije retka i člana:

Cola->"New York"
Cola->"Massachusetts"
Cola->"Florida"
Cola->"Connecticut"
Cola->"New Hampshire"
"Diet Cola"->"New York"
"Diet Cola"->"Massachusetts"
"Diet Cola"->"Florida"
"Diet Cola"->"Connecticut"
"Diet Cola"->"New Hampshire"

Taj izračun vjerojatno je opsežniji no što vam je potrebno. Ako želite izračunati samo kombinacije prikazane na rešetki, možete definirati koje će se n-torke izračunati i izračun ograničiti na manji odsječak. Izračunske n-torke mogu skratiti izračun i smanjiti kocku.

Cola->"New York"
Cola->"Massachusetts"
Cola->"Florida"
Cola->"Connecticut"
Cola->"New Hampshire"
"Diet Cola"->"New York"
"Diet Cola"->"Florida"

Objašnjenje izračuna na temelju n-torki

Izračunska n-torka način je predstavljanja podatkovnog isječka članova iz dvije ili više sparse dimenzija koji će se upotrijebiti u Essbase block storage izračunu.

Primjeri valjanih izračunski n-torki:

  • ("Diet Cola", "New York")
  • ("Diet Cola", "Cola", Florida)
  • (Cola, "New Hampshire")

Ako pišete MDX izraze, možda ste upoznati sa sljedećim ograničenjima koja se za MDX primjenjuju na n-torke:

  • U MDX n-torku može se uključiti samo po jedan član iz svake dimenzije
  • U svim n-torkama MDX skupa moraju biti zastupljene iste dimenzije istim redoslijedom

Međutim, kad odabirete n-torke u izračunskim skriptama, ti su preduvjeti blaži. Možete slobodno pisati izraze n-torki i n-torke mogu opisivati popise članova, kao što je to slučaj u sljedećoj n-torki (@Children(East), Cola).

Odabir n-torki za izračun perspektive

N-torke jednostavno možete odabrati tako da ih eksplicitno umetnete u izračunsku skriptu kao popis unutar naredbe FIX.

Prisjetit ćete se da naredba FIX ima sljedeći format:

FIX (fixMbrs)
COMMANDS ;
ENDFIX

U naredbi FIX u nastavku dvije n-torke definirane su prije bloka s naredbama. N-torke su navedene unutar vitičastih zagrada { } koje razgraničuju skup, tj. zbirku n-torki.

FIX({
  (@Children(East), Cola),
  ("New York", Florida, "Diet Cola")
  })
Sales (Sales = Sales + 10;);
ENDFIX

N-torke možete odabrati i kontekstno, na temelju članova koji su u perspektivi rešetke u značajki Smart View prisutni pri izvršavanju izračuna. To možete učiniti tako da funkciju @GRIDTUPLES u svojoj izračunskoj skripti navedete kao argument naredbe FIX.

FIX ({@GRIDTUPLES(Product, Market)})
   Sales (Sales = Sales + 10;);
ENDFIX

Ako tu izračunsku skriptu izvršite u značajki Smart View za niže prikazanu rešetku, izračunat će se samo prikazane kombinacije proizvoda i tržišta. Na primjer, "Diet Cola"->Massachusetts neće se izračunati jer nije eksplicitno prikazan u rešetki. Napominjemo da će se izračunati svi scenariji (treća sparse dimenzija u oglednoj kocki), iako je na rešetki prikazan Actual. Razlog je to što dimenzija scenarija nije dio naredbe GRIDTUPLES u izračunskoj skripti.

Asimetrična rešetka s vrijednostima Actual, Jan za pet tržišta za proizvod Cola, no samo dva tržišta za proizvod Diet Cola.

Bez obzira na to odabirete li n-torke eksplicitno putem popisa n-torki ili putem funkcije @GRIDTUPLES , odabir će se primijeniti samo u kontekstu izračunske naredbe FIX…ENDFIX. Sintaksa naredbe FIX proširuje se kako bi se omogućio odabir n-torke:

FIX ([{ tupleList | @GRIDTUPLES(dimensionList) },] fixMbrs)
COMMANDS ;
ENDFIX
  • tupleList - popis n-torki razgraničen zarezima.
  • dimensionList - najmanje dvije sparse dimenzije čiji se članovi iz aktivne Smart View rešetke upotrebljavaju za definiranje područja izračuna (u izračunskim skriptama za definiranje n-torki možete upotrijebiti samo sparse dimenzije).
  • fixMbrs - član ili popis članova.

Primjeri odabira n-torke radi smanjenja opsega izračuna

Putem Smart View rešetke i naredbe FIX u Essbase izračunskoj skripti možete izračunati n-torke odabranih članova na temelju perspektive rešetke. Možete i eksplicitno unijeti kombinacije n-torki u svoju naredbu FIX, uklanjajući tako ovisnost o određenoj Smart View rešetki pri definiranju izračunskog opsega.

Izračun odabranih n-torki omogućit će vam učinkovit rad na asimetričnim regijama u izračunskim skriptama i Smart View rešetkama.

Pogledajte sljedeće primjere:

  • N-torke nisu odabrane - Izračunava na zadani način, na temelju trenutačne perspektive Smart View rešetke. Izračun nije ograničen na određene n-torke.
  • Odabir navedenih sparse dimenzija - Izračunava n-torke na temelju dvije ili više sparse dimenzija koje su navedene u izračunskoj skripti. Izračun je ograničen na članove iz dimenzija n-torki koje su prisutne u Smart View rešetki.
  • Odabir kontekstnih sparse dimenzija - Izračunava n-torke iz sparse dimenzija koje su odabrane pri pokretanju. Izračun je ograničen na članove iz dimenzija n-torki koje su prisutne u Smart View rešetki.

Želite li isprobati primjere, preuzmite predložak radne knjige CalcTuple_Tuple.xlsx iz odjeljka Tehnički > Izračun u mapi gallery koja se nalazi u području Datoteke u web-sučelju Essbase. Upute potražite u README radnom listu koji se nalazi u radnoj knjizi.

N-torke nisu odabrane

Demonstrirajući zadano ponašanje Essbase block storage izračuna do kojeg će doći ako ne odaberete n-torke, sljedeća izračunska skripta izračunat će cijeli unakrsni umnožak članova dimenzija Product i Market iz rešetke u značajki Smart View.

Uz pomoć dvije zamjenske izvršne varijable (RTSV) definirane u bloku SET RUNTIMESUBVARS izračun se ograničava na one perspektive dimenzija Product i Market koje su prisutne u rešetki kad se izračun pokrene u značajki Smart View.

SET RUNTIMESUBVARS
{
ProductGridMembers = POV
<RTSV_HINT><svLaunch>
<description>All Product's members on the grid</description>
<type>member</type>
<dimension>Product</dimension><choice>multiple</choice>
</svLaunch></RTSV_HINT>;
MarketGridMembers = POV
<RTSV_HINT><svLaunch>
<description>All Market's members on the grid</description>
<type>member</type> <dimension>Market</dimension><choice>multiple</choice>
</svLaunch></RTSV_HINT>;
};
FIX (
&ProductGridMembers, &MarketGridMembers
)
Marketing(
   Marketing = Marketing +1;
);
ENDFIX

Odabir navedenih sparse dimenzija

Putem funkcije @GRIDTUPLES odaberite n-torku dimenzija Product i Market i ta će Essbase block storage izračunska skripta izračunati n-torke samo za te dvije dimenzije, ograničavajući opseg na članove koji se nalaze u Smart View rešetki u trenutku kad se izračun pokrene u značajki Smart View.

FIX (
{@GRIDTUPLES(Product, Market)}
)
Marketing(
   Marketing = Marketing + 1;
);
ENDFIX

Ako se ograničite samo na sparse dimenzije navedene u n-torki, izračun će obuhvatiti mnogo manje blokova od zadanog izračuna. Izračunska će skripta, međutim, izračunati sve članove iz dimenzije koji nisu spomenuti u fiksiranju (Year, Scenario).

Odabir kontekstnih sparse dimenzija

Upotrebom funkcije @GRIDTUPLES i izvršne zamjenske varijable, ova Essbase block storage izračunska skripta izračunat će samo odabrane n-torke iz rešetke, na temelju odabira u sparse dimenziji u parametru RTSV.

Izvršna zamjenska varijabla &DimSelections definirana u bloku SET RUNTIMESUBVARS ograničava opseg izračuna samo na sparse dimenzije kocke, što ne uključuje scenarij. Funkcija @GRIDTUPLES koja se upotrebljava u naredbi FIX poziva tu varijablu i ograničava broj presjeka koji se izračunavaju.

SET RUNTIMESUBVARS
            {
            DimSelections = "Version", "Site", "Entity", "Product", "Market"
            <RTSV_HINT><svLaunch>
            <description>List two or more sparse dimensions used for forming calculation tuples:</description>
            <type>string</type>
            </svLaunch></RTSV_HINT>;
            };
            FIX (
            {@GRIDTUPLES(&DimSelections)}
            )
            Marketing(
            Marketing = Marketing + 1;
            );
            ENDFIX
        

Izračun obuhvaća još manji broj blokova od prethodnog primjera jer u ovom slučaju definicija n-torke proširuje se na više sparse dimenzija izvan Proizvod->Tržište.

Želite li isprobati primjere, preuzmite predložak radne knjige CalcTuple_Tuple.xlsx iz odjeljka Tehnički > Izračun u mapi gallery koja se nalazi u području Datoteke u web-sučelju Essbase. Upute potražite u README radnom listu koji se nalazi u radnoj knjizi.