Funcţii dimensionale A-C D-G H-L M-Q R-Z Avansat Avansat Avansat Avansat Avansat _format ( expresie ; cuvântcheie_format  ) Asociază un format cu expresia. Cuvântul_cheie_format poate fi PERCENTAGE_0, PERCENTAGE_1 sau PERCENTAGE_2. PERCENTAGE_1 returnează un procentaj cu o cifră la dreapta virgulei zecimale, PERCENTAGE_2 returnează un procentaj cu două cifre la dreapta virgulei zecimale şi PERCENTAGE_3 returnează o valoare procentuală din unu cu trei cifre la dreapta virgulei zecimale (de exemplu 0,965). Exemplu: _format ( [Unit Sale Price] / [Unit Price] ; PERCENTAGE_2 ) Rezultat: 75,12% ancestor ( membru; nivel|întreg ) Returnează strămoşul unui "membru" la "nivel" sau la numărul "întreg" de niveluri aflate deasupra variabilei "membru". Observaţie: Nu se garantează consecvenţa rezultatului dacă există mai mulţi strămoşi. Exemplu: ancestor ( [TrailChef Water Bag] ; 1 ) Rezultat: Cooking Gear Exemplu: ancestor ( [TrailChef Water Bag] ; 2 ) Rezultat: Camping Equipment Exemplu: ancestor ( [TrailChef Water Bag] ; [great_outdoors_company].[Products].[Products].[Product type] ) Rezultat: Cooking Gear caption ( nivel|membru|expresie_set ) Returnează valorile de subtitlu pentru "nivel", "membru" sau "expresie_set". Subtitlul reprezintă numele de afişare al şirului pentru un anumit element şi nu corespunde neapărat cu identificatorul unic folosit la generarea cheii de activitate sau cu numele unic de membru (MUN) pentru elementul respectiv. Subtitlul nu este neapărat unic; de exemplu, subtitlul unei luni poate returna numele lunii respective fără alte detalii privind anul care să unicizeze valoarea. Exemplu: caption ( [TrailChef Water Bag] ) Rezultat: TrailChef Water Bag Exemplu: caption ( [great_outdoors_company].[Products].[Products].[Product line] ) Rezultat: Returnează valorile subtitlului pentru setul linie de produse. Camping Equipment Mountaineering Equipment Personal Accessories Outdoor Protection Golf Equipment children ( membru ) Returnează setul de fii ai membrului specificat. Exemplu: children ( [Camping Equipment] ) Rezultat: Returnează setul de fii pentru Camping Equipment. Cooking Gear Tents Sleeping Bags Packs Lanterns closingPeriod ( nivel [ ; membru ] ) Returnează ultimul membru frate dintre descendenţii unui membru la "nivel". Această funcţie se utilizează de obicei cu o dimensiune timp. Exemplu: closingPeriod ( [great_outdoors_company].[Years].[Years].[Month] ) Rezultat: 2006/Dec Exemplu: closingPeriod ( [great_outdoors_company].[Years].[Years].[Year] ) Rezultat: 2006 Exemplu: closingPeriod ( [great_outdoors_company].[Years].[Years].[Month] ; [2006 Q 4] ) Rezultat: 2006/Dec completeTuple ( membru { ; membru  } ) Identifică locul unei celule (intersecţie) în funcţie de membrii specificaţi şi fiecare dintre aceştia trebuie să fie de dimensiune diferită. Totuşi, completeTuple () include în mod implicit membrul implicit din toate dimensiunile nespecificate altfel în argumente, decât membrul curent. CompleteTuple va utiliza măsura implicită şi nu currentMeasure în interogare în cazul în care măsura nu este definită în funcţia completetuple. Această funcţie apare în exemplul de raport Planned Headcount din pachetul GO Data Warehouse (analysis). Exemplu: completeTuple ( [Mountaineering Equipment] ; [Fax] ) Rezultat: completeTuple nu alege în mod implicit currentMember aşa cum face funcţia tuplu. Valorile din prima coloană sunt identice pentru fiecare an deoarece este utilizat membrul implicit al dimensiunii Ani, membrul rădăcină, şi nu membrul curent. Similar, prima coloana afişează Venitul şi nu Cantitatea vândută, deoarece măsura Venit este implicită pentru dimensiunea Măsuri. CompleteTuple va utiliza măsura implicită şi nu currentMeasure în interogare în cazul în care măsura nu este definită în funcţia completetuple. Qty Sold Mountaineering Sales by Fax -------- -------------- 2004 $1,220,329.38 2005 $1,220,329.38 2006 $1,220,329.38 Exemplu: completeTuple ( [Mountaineering Equipment] ; [Fax] ; [Quantity sold] ; currentMember ( [great_outdoors_company].[Years].[Years] ) ) Rezultat: Funcţia completeTuple utilizează currentMember din dimensiunea anilor şi măsura Cantitate vândută. Qty Sold Mountaineering Sales by Fax ----------- ------------------------------------------ 2004 0 2005 8,746 2006 7,860 unique ( expresie_set ) Elimină toate duplicatele din "expresie_set". Membrii rămaşi îşi păstrează ordinea iniţială. openingPeriod ( nivel [ ; membru ] ) Returnează primul membru frate dintre descendenţii unui membru la "nivel". Această funcţie se utilizează de obicei cu o dimensiune timp. Exemplu: openingPeriod ( [great_outdoors_company].[Years].[Years].[Month] ) Rezultat: 2004/Jan Exemplu: openingPeriod ( [great_outdoors_company].[Years].[Years].[Year] ) Rezultat: 2004 Exemplu: openingPeriod ( [great_outdoors_company].[Years].[Years].[Month] ; [2006 Q 4] ) Rezultat: 2006/Oct parallelPeriod ( nivel [ ; expresie_întreg[ ; membru ] ] ) Returnează un membru dintr-o perioadă anterioară din aceeaşi poziţie relativă ca "membru". Această funcţie este similară funcţiei cousin, dar este mai apropiată de seria orară. Preia strămoşul unui "membru" la "nivel" (denumit "strămoş"), apoi membrul de acelaşi nivel al "strămoş" care îl precede cu "expresie_întreg" poziţii şi returnează perioada paralelă a "membru" dintre descendenţii respectivului membru de acelaşi nivel. Când nu se specifică, "expresie_întreg" are valoarea implicită 1, iar "membru" are valoarea implicită a membrului curent. Exemplu: parallelPeriod ( [great_outdoors_company].[Years].[Years].[Quarter] ; -1 ; [2006/Aug] ) Rezultat: 2006/Nov Exemplu: parallelPeriod ( [great_outdoors_company].[Years].[Years].[Quarter] ; 1 ; [2006/Aug] ) Rezultat: 2006/May Exemplu: parallelPeriod ( [great_outdoors_company].[Years].[Years].[Year] ; 2 ; [2006/Aug] ) Rezultat: 2004/Aug cousin ( membru1 ; membru2 ) Returnează membrul copil al "membru2" cu aceeaşi poziţiei relativă ca şi "membru1" faţă de părintele său. Această funcţie apare în exemplul de raport Revenue by GO Subsidiary 2005 din pachetul GO Data Warehouse (analysis). Exemplu: cousin ( [Irons] ; [Camping Equipment] ) Rezultat: Cooking Gear Exemplu: cousin ( [Putters] ; [Camping Equipment] ) Rezultat: Sleeping Bags crossjoin ( expresie1_set ; expresie2_set ) Returnează produsul cartezian dintre "expresie_set1" şi "expresie_set2". currentMember ( ierarhie ) Returnează membrul curent al ierarhiei în timpul unei iteraţii. Dacă "ierarhie" nu este prezentă în contextul în care se evaluează expresia, membrul său implicit este acceptat. Această funcţie apare în exemplul de raport interactiv Medii continue şi mobile. defaultMember ( ierarhie ) Returnează membrul implicit pentru "ierarhie". Exemplu: defaultMember ( [great_outdoors_company].[Products].[Products] ) Rezultat: Products Exemplu: defaultMember ( [great_outdoors_company].[Years].[Years] ) Rezultat: Year Exemplu: defaultMember ( hierarchy ( [great_outdoors_company].[Measures].[Quantity sold] ) ) Rezultat: Revenue emptySet ( ierarhie ) Returnează un set de membri gol pentru "ierarhie". Aceasta este de cele mai multe ori folosită ca şi placeholder în timpul dezvoltării sau cu design de raport dinamic (fie cu IBM® Cognos® Software Development Kit sau prin design de raport). Prin crearea unui articol de date care conţine funcţia emptyset, este posibilă crearea expresiilor complexe care pot fi ulterior revizuite prin redefinirea articolului de date emptyset. Exemplu: except ( [great_outdoors_company].[Produse].[Produse].[Linie de produse] ; emptySet ( [great_outdoors_company].[Produse].[Produse] ) ) Rezultat: Returnează setul linie de produse şi un set vid pentru setul Products. Echipament de camping Echipament de golf Echipament de alpinism Articole de protecţie pentru exterior Accesorii personale firstChild ( membru ) Returnează primul fiu al unui "membru". Exemplu: firstChild ( [By Product Lines] ) Rezultat: Camping Equipment Exemplu: firstChild ( [Camping Equipment] ) Rezultat: Cooking Gear firstSibling ( membru ) Returnează primul fiu al părintelui unui "membru". Exemplu: firstSibling ( [Outdoor Protection] ) Rezultat: Camping Equipment Exemplu: firstSibling ( [Camping Equipment] ) Rezultat: Camping Equipment hierarchy ( nivel|membru|expresie_set ) Returnează ierarhia care conţine "nivelul", "membrul" sau "expresia_set". Exemplu: hierarchy ( [Cooking Gear] ) Rezultat: Returnează fiecare membru din ierarhie care conţine Cooking Gear. Products Camping Equipment Cooking Gear TrailChef Water Bag TrailChef Canteen ... Mountain Man Extreme Mountain Man Deluxe Exemplu: hierarchy ( [great_outdoors_company].[Products].[Products].[Product line] ) Rezultat: Returnează fiecare membru din ierarhie care conţine Product line. Products Camping Equipment Cooking Gear TrailChef Water Bag TrailChef Canteen ... Mountain Man Extreme Mountain Man Deluxe isEmpty ( expresie_valoare ) Returnează TRUE dacă "expresie_valoare" este NULL; altfel, returnează FALSE. item ( expresie_set ; index ) Returnează un membru din locaţia "index" din "expresie_set". Indexul din set se bazează pe zero. Exemplu: item ( children ( [Camping Equipment] ) ; 2 ) Rezultat: Sleeping Bags lag ( membru ; expresie_index ) Returnează membrul frate care este cu "expresie_index" poziţii înaintea unui "membru". Exemplu: lag ( [Tents] ; 1 ) Rezultat: Cooking Gear Exemplu: lag ( [Tents] ; -2 ) Rezultat: Packs lastChild ( membru ) Returnează ultimul fiu al unui membru specificat. Exemplu: lastChild ( Cooking Gear ) Rezultat: TrailChef Utensils Exemplu: lastChild ( [By Product Line] ) Rezultat: Golf Equipment lastSibling ( membru ) Returnează ultimul fiu al părintelui unui membru specificat. Exemplu: lastSibling ( [Camping Equipment] ) Rezultat: Golf Equipment lead ( membru ; expresie_index ) Returnează membrul frate care este cu un număr de poziţii "expresie_index" după un "membru". Dacă "expresie_index" este negativă, se returnează membrul frate care este cu un număr de poziţii "expresie_index" înainte de "membru". Exemplu: lead ( [Outdoor Protection] ; 1 ) Rezultat: Personal Accessories Exemplu: lead ( [Outdoor Protection] ; -2 ) Rezultat: Golf Equipment level ( membru ) Returnează nivelul unui "membru". Exemplu: level ( [Golf Equipment] ) Rezultat: Returnează membrii de la nivelul Golf Equipment. Camping Equipment Mountaineering Equipment Personal Accessories Outdoor Protection Golf Equipment levels ( ierarhie ; index ) Returnează nivelul unei "ierarhii" al cărui distanţă de la rădăcină este specificată de "index". Exemplu: levels ( [great_outdoors_company].[Products].[Products] ; 2 ) Rezultat: Returnează membrii de la două niveluri faţă de rădăcina ierarhiei Products. Ustensile de bucătărie Saci de dormit Rucsacuri Corturi ... Irons Putters Woods Accesorii de golf Exemplu: levels ( [great_outdoors_company].[Products].[Products] ; 1 ) Rezultat: Returnează membrii de la un nivel faţă de rădăcina ierarhiei Products. Camping Equipment Mountaineering Equipment Personal Accessories Outdoor Protection Golf Equipment linkMember ( membru ; nivel|ierarhie ) Returnează membrul corespunzător din "nivel" sau "ierarhie" (din aceeaşi dimensiune). În cazul ierarhiilor bazate pe nivel, trebuie specificat un nivel ca al doilea argument, iar pentru ierarhiile părinte-fiu trebuie specificată o ierarhie. Se returnează o excepţie atunci când al doilea parametru nu se soluţionează la o ierarhie de dimensiunea membrului. Reţineţi că membrii calculaţi nu sunt acceptaţi drept argument principal. member ( expresie_valoare [ ; şir1 [ ; şir2 [ ; ierarhie ] ] ] ) Defineşte un membru bazat pe "expresie_valoare" în "ierarhie". "Şir1" identifică membrul creat prin această funcţie. Acesta trebuie să fie unic în interogare şi diferit de oricare alt membru din aceeaşi ierarhie. "Şir2" este subtitlul membrului; dacă lipseşte, subtitlul este gol. Pentru a asigura rezultate previzibile, se recomandă furnizarea parametrului "ierarhie". Notă: Toate calculele folosite ca articole de grupare, ale căror articole de acelaşi nivel sunt alte calcule sau seturi de membri, trebuie atribuite explicit unei ierarhii cu ajutorul acestei funcţii. În caz contrar, rezultatele nu sunt previzibile. Singura excepţie este atunci când calculul implică numai membri din aceeaşi ierarhie cu membrii de acelaşi nivel. În acest caz, calculul se presupune a aparţine ierarhiei respective. Exemplu: member ( total ( currentMeasure within set filter ( [compania_great_outdoors].[Produse].[Produse].[Nume produse] ; caption ( [compania_great_outdoors].[Produse].[Produse].[Nume produs] ) starts with 'B' ) ) ; 'BProduse' ; 'B Produse' ; [compania_great_outdoors].[Produse].[Produse] ) Rezultat: Returnează cantitatea vândută şi venitul pentru toate produsele care încep cu litera B. members ( ierarhie|nivel ) Returnează setul de membri dintr-o "ierarhie" sau dintr-un "nivel". În cazul unei ierarhii, ordinea membrilor din rezultat nu este garantată. Dacă se solicită o ordine previzibilă, trebuie folosită o funcţie de ordonare explicită (cum ar fi ierarhizarea). Exemplu: members ( [great_outdoors_company].[Years].[Years] ) Rezultat: Returnează membrii din Years. Exemplu: members ( [great_outdoors_company].[Products].[Products].[Product line] ) Rezultat: Returnează membrii din Product line. nestedSet ( expresie1_set ; expresie2_set ) Această funcţie este destinată să fie folosită doar de Analysis Studio Rezultat: Returnează primele două produse după venit din fiecare linie de produse. nextMember ( membru ) Returnează următorul membru din nivelul "membrului". Exemplu: nextMember ( [Outdoor Protection] ) Rezultat: Golf Equipment ordinal ( nivel ) Returnează valoarea ordinală bazată pe zero (distanţa de la nivelul rădăcină) a "nivelului". Exemplu: ordinal ( [compania_great_outdoors].[Produse].[Produs].[Linie de produse] ) Rezultat: 1 Exemplu: ordinal ( [compania_great_outdoors].[Produse].[Produse].[Tip produs] ) Rezultat: 2 parent ( membru|măsură ) Returnează membrul care este părintele lui "membru" sau "măsură". Exemplu: parent ( [Cooking Gear] ) Rezultat: Camping Equipment _addMemberToSet ( expresie_membru ; expresie_set ; părinte|nul ; frate|nul ; poziţie ) Atenţie: a se folosi numai intern; nu adăugaţi această funcţie la raport. Returnează un set. Funcţia inserează "expresie_membru" în "expresie_set" imediat BEFORE (înainte) sau AFTER (după) frate. Reţineţi că "expresie_membru" şi "expresie_set" trebuie să fie din aceeaşi dimensiune şi ierarhie. "Părinte" este numele unic al părintelui membrului calculat (expresie_membru ) ; sau NULL. "Frate" este numele unic al membrului faţă de care este relativ poziţionată "expresie_membru", sau NULL. "Position" are valoarea BEFORE sau AFTER. Dacă "position" nu este specificată, valoarea implicită este AFTER. prevMember ( membru ) Returnează membrul care precede imediat "membru" din acelaşi nivel. Această funcţie apare în exemplul de raport Sales Growth Year Over Year din pachetul GO Data Warehouse (analysis). Exemplu: prevMember ( [Outdoor Protection] ) Rezultat: Personal Accessories Exemplu: prevMember ( [2005] ) Rezultat: 2004 roleValue ( string [ ; member|expresie_set ] ) Returnează valoarea atributului asociat rolului al cărui nume este specificat de "şir" din contextul specificat. "Membru" sau "expresie_set" este opţional numai într-un număr limitat de situaţii, când poate fi derivat dintr-un alt context. Aplicaţiile pot fi făcute portabile peste surse de date şi modele diferite prin accesarea atributelor după rol, mai degrabă decât după ID-ul de articol de interogare. Rolurile intrinseci definite pentru membrii tuturor tipurilor de date includ: '_businessKey', '_memberCaption', '_memberDescription', '_memberUniqueName'. Pentru sursele OLAP (Online Analytical Processing) doar rolurile intrinsece pot fi accesate de obiectele care se întind pe mai multe niveluri. Pentru sursele de date DMR (dimensionally-modeled relational), atribuirea rolurilor este responsabilitatea modelatorului. Pot fi definite roluri suplimentare în Framework Manager, pentru fiecare nivel dintr-o ierarhie. De exemplu, un nivel Product type poate avea o coloană de atribut numită "Type Shipping Container", iar nivelul Product poate avea atributul "Product Shipping Container". Fiecare din aceste obiecte poate fi alocat la un rol personalizat numit "Container" în Framework Manager. Apoi se poate face referinţă la proprietate independent de numele efectiv al coloanei folosind funcţia roleValue. Exemplu: roleValue ( '_memberCaption' ; [Sales].[Product].[Product].[Product line] -> [all].[1] ) Rezultat: Camping Equipment Exemplu: roleValue ( '_businessKey' ; [great_outdoors_company].[Years].[Years].[Year] ) Rezultat: Returnează valoarea atributului care este asociat cu rolul de cheie de activitate. ("2004-01-01";"2004-12-31") ("2005-01-01";"2005-12-31") ("2006-01-01";"2006-12-31") Exemplu: roleValue ( '_memberUniqueName' ; [great_outdoors_company].[Years].[Years].[Year] ) Rezultat: Returnează valoarea atributului care este asociat cu rolul MUN. [great_outdoors_company].[Ani].[Ani].[An] ->:[PC].[Ani (Root)].[20040101-20041231] [great_outdoors_company].[Ani].[Ani].[An] ->:[PC].[Ani (Root)].[20050101-20051231] [great_outdoors_company].[Years].[Years].[An] ->:[PC].[Ani (Root)].[20060101-20061231] rootMember ( ierarhie ) Returnează membrul rădăcină al unei ierarhii rădăcină unice. Această funcţie apare în exemplul Promotion Success din pachetul GO Data Warehouse (analysis). rootMembers ( hierarchy ) Returnează membrii rădăcină ai unei ierarhii. Exemplu: rootMembers ( [great_outdoors_company].[Years].[Years] ) Rezultat: După oră value ( tuplu ) Returnează valoarea celulei identificată de un "tuplu". Reţineţi că membrul implicit al dimensiunii de măsură este măsura implicită. Exemplu: value ( tuple ( [great_outdoors_company].[Years].[Years].[Year] ->:[PC].[Years (Root)].[20040101-20041231] ; [great_outdoors_company].[Measures].[Revenue] ) ) Rezultat: 34.750.563,50 $ Exemplu: value ( tuple ( [2004] ; [Camping Equipment] ; [Revenue] ) ) Rezultat: 20.471.328,88 $ descendants ( member|expresie_set ; level|distance [ ; { self|before|beforewithmember|after } ] ) Returnează setul descendenţilor unui "membru" sau "expresie_set" la un "nivel" (nume calificat) sau "distanţă" (întreg 0..n) specificat(ă) faţă de rădăcină. Se pot specifica mai multe opţiuni (separate prin spaţiu) pentru a determina care membri vor fi returnaţi. self: Numai membrii de pe nivelul specificat sunt incluşi în setul final (acesta este comportamentul implicit în absenţa vreunei opţiuni). before: Dacă există vreun nivel intermediar între nivelul membrului şi cel specificat, sunt incluşi şi membrii de pe acele niveluri. Dacă nivelul specificat este acelaşi cu al membrului asupra căruia se aplică funcţia, membrul este inclus în setul final. beforewithmember: Dacă există vreun nivel intermediar între nivelul membrului şi cel specificat, sunt incluşi şi membrii de pe acele niveluri. Membrul pe care se aplică funcţia este şi el inclus în setul final. after: Dacă există şi alte niveluri după nivelul specificat, sunt incluşi şi membrii de pe acele niveluri. Această funcţie apare în exemplul de raport Sales Commissions for Central Europe din pachetul GO Data Warehouse (analysis). Exemplu: descendants ( [great_outdoors_company].[Products].[Products].[Products] ; [great_outdoors_company].[Products].[Products].[Product type] ) Rezultat: returnează setul de descendenţi pentru setul Products la nivelul Product type. Notă: [great_outdoors_company].[Products].[Products].[Products] reprezintă membrul rădăcină în ierarhia Products. Ustensile de bucătărie Saci de dormit Rucsacuri Corturi ... Ochelari Cuţite Ceasuri Exemplu: descendants ( [great_outdoors_company].[Products].[Products].[Products] ; 1 ) Rezultat: Returnează setul de descendenţi ai setului Products la primul nivel. Echipament de camping Echipament de golf Echipament de alpinism Articole de protecţie pentru exterior Accesorii personale Exemplu: descendants ( [great_outdoors_company].[Products].[Products].[Products] ; 3 ; before ) Rezultat: Returnează descendenţii setului Products dinaintea nivelului al treilea. Camping Equipment Cooking Gear Sleeping Bags Packs Tents ... Eyewear Knives Watches Exemplu: descendants ( [great_outdoors_company].[Products].[Products].[Products] ; 2 ; self before ) Rezultat: Returnează setul de descendenţi ai setului Product înainte şi inclusiv la nivelul al doilea. Camping Equipment Cooking Gear Sleeping Bags Packs Tents ... Eyewear Knives Watches except ( expresie1_set ; expresie2_set [ ; all ] ) Returnează membrii "expresie1_set" care nu se află şi în "expresie2_set". Duplicatele sunt reţinute doar dacă cuvântul cheie opţional "all" este furizat ca al treilea argument. Exemplu: except ( set ( [Camping Equipment] ; [Mountaineering Equipment] ) ; set ( [Camping Equipment] ; [Golf Equipment] ) ) Rezultat: Mountaineering Equipment filter ( expresie_set ; expresie_boolean ) Returnează setul care rezultă din filtrarea unui set specificat pe baza condiţiei booleene. Fiecare membru este inclus în rezultat dacă şi numai dacă valoarea corespunzătoare a "expresie_booleană" este adevărată. Exemplu: filter ( [Linie de produse] ; [Marjă brută] > .30 ) Rezultat: Mountaineering Equipment intersect ( expresie1_set ; expresie2_set [ ; all ] ) Returnează intersecţia dintre "expresie1_set" şi "expresie2_set". Rezultatul păstrează duplicatele numai când cuvântul cheie opţional "all" este furnizat ca al treilea argument. Exemplu: intersect ( set ( [Camping Equipment] ; [Mountaineering Equipment] ) ; set ( [Camping Equipment] ; [Outdoor Protection] ; ) ; all ) Rezultat: Camping Equipment lastPeriods ( expresie_întreg ; member ) Returnează setul membrilor de la acelaşi nivel care se termină cu "membru". Numărul membrilor returnaţi reprezintă valoarea absolută a "expresie_întreg". Dacă "expresie_întreg" este negativă, se returnează membrii care urmează, inclusiv membrul specifict. Se utilizează de obicei cu o dimensiune timp. Această funcţie apare în exemplul de raport interactiv Medii continue şi mobile. Exemplu: lastPeriods ( 2 ; [2006 Q 4] ) Rezultat: Returnează ultimii doi membri din nivelul care se termină cu 2006 T 4. 2006 T 3 2006 T 4 Exemplu: lastPeriods ( -3 ; [2006 Q 4] ) Rezultat: Returnează ultimii trei membri din nivelul care începe cu 2006 T 4. 2006 T 4 2007 T 1 2007 T 2 periodsToDate ( level ; member ) Returnează un set de membri frate de la acelaşi nivel ca "membru", constrâns de "nivel". Localizează strămoşul "membru" la "nivel" şi returnează descendenţii strămoşului la acelaşi nivel ca "membru" (până la şi inclusiv "membru"). Se utilizează de obicei cu o dimensiune timp. Această funcţie apare în exemplul de raport interactiv Medii continue şi mobile. Exemplu: periodsToDate ( [compania_great_outdoors].[Ani].[Ani].[An] ; [2004/Mar] ) Rezultat: Returnează valorile pentru [2004/Ian]; [2004/Feb]; [2004/Mar] topCount ( expresie_set ; expresie_index ; expresie_numerică ) Sortează un set în funcţie de valorile "expresie_numerică" evaluate pentru fiecare dintre membrii "expresie_set" şi returnează primii "expresie_index" membri. Exemplu: topCount ( [great_outdoors_company].[Products].[Products].[Product line] ; 2 ; [Revenue] ) Rezultat: Returnează primele două venituri pentru setul Product line. Prod line Revenue ----------- ---------- Camping $89,713,990.92 Personal $31,894,465.86 bottomCount ( expresie_set ; expresie_index ; expresie_numerică ) Sortează un set în funcţie de valorile "expresie_numerică" evaluate pentru fiecare dintre membrii "expresie_set" şi returnează ultimii "expresie_index" membri. Exemplu: bottomCount ( [great_outdoors_company].[Products].[Products].[Product line] ; 2 ; [Revenue] ) Rezultat: Returnează ultimii doi membri din setul sortat după venit. Prod line Revenue ----------- ----------- Camping $3,171,114.92 Personal $20,891,350.60 topPercent ( expresie_set ; procentaj ; expresie_numerică2 ) Sortează setul specificat în "expresie_set" în ordine descrescătoare şi întoarce cele mai de sus elemente din setul sortat ale căror procentaj cumulat al totalului este mai mare cu "procentaj". Exemplu: topPercent ( set ( [Camping Equipment] ; [Golf Equipment] ; [Mountaineering Equipment] ) ; 40 ; [2006] ) Rezultat: Pentru setul lui Camping Equipment, Golf Equipment şi Mountaineering Equipment, întoarce membrii cu cel mai mare Gross profit al căror total pentru anul 2006 este cel puţin 40% din totalul general. bottomPercent ( expresie_set ; procentaj ; expresie_numerică ) Sortează setul specificat în "expresie_set" în ordine crescătoare şi întoarce cele mai de jos elemente din setul sortat ale căror procentaj cumulat al totalului este mai mare sau egal cu "procentaj". Exemplu: bottomPercent ( set ( [Camping Equipment] ; [Golf Equipment] ; [Mountaineering Equipment] ) ; 40 ; [2006] ) Rezultat: Pentru setul lui Camping Equipment, Golf Equipment şi Mountaineering Equipment, întoarce membrii cu cel mai mic Gross profit al căror total pentru anul 2006 este cel puţin 40% din totalul general. topSum ( expresie_set ; value ; expresie_numerică2 ) Sortează setul specificat în "expresie_set" în ordine descrescătoare şi întoarce cele mai de sus elemente din setul sortat ale căror total cumulat este mai mare decât "value". Exemplu: topSum ( children ( [Products] ) ; 16000000 ; tuple ( [2006] ; [great_outdoors_company].[Measures].[Gross profit] ) ) Rezultat: Pentru membrii Product line, întoarce membrii cu cel mai mare Gross profit ale căror total pentru anul 2006 este de cel puţin $6.000.000. bottomSum ( expresie_set ; valoare ; expresie_numerică ) Sortează setul specificat în "expresie_set" în ordine crescătoare şi întoarce cele mai de jos elemente din setul sortat ale căror total cumulat este mai mare sau egal cu "valoare". Exemplu: bottomSum ( members ( [great_outdoors_company].[Products].[Products].[Product line] ) ; 6000000 ; tuple ( [2006] ; [great_outdoors_company].[Measures].[Gross profit] ) ) Rezultat: Pentru membrii Product line, întoarce membrii cu cel mai mic Gross profit ale căror total pentru anul 2006 este de cel puţin $6.000.000. union ( expresie1_set ; expresie2_set [ ; all ] ) Returnează datele pentru "expresie1_set" şi "expresie2_set". Rezultatul păstrează duplicatele numai când cuvântul cheie opţional "all" este furnizat ca al treilea argument. Exemplu: union ( set ( [Echipament de camping] ; [Echipament de golf] ) ; set ( [Golf Echipament] ; [Echipament de alpinism] ) ) Rezultat: Returnează data pentru ambele seturi ca un set nou, afişând coloana Echipament de golf doar o dată. Exemplu: union ( set ( [Echipament de camping] ; [Echipament de golf] ) ; set ( [Golf Equipment] ; [Echipament de alpinism] ) ; all ) Rezultat: Returnează data pentru ambele seturi ca un set nou, afişând coloana Echipament de golf de două ori. ancestors ( member ; level|index ) Returnează toţi strămoşii unui "membru" la un "nivel" sau distanţă "index" deasupra membrului. (Majoritatea surselor de date acceptă un singur strămoş la un nivel specificat. Dacă sursa de date acceptă mai mult de un strămoş, rezultatul este un set de membri.) Exemplu: ancestors ( [TrailChef Water Bag] ; 1 ) Rezultat: Cooking Gear Exemplu: ancestors ( [TrailChef Water Bag] ; 2 ) Rezultat: Camping Equipment Exemplu: ancestors ( [TrailChef Water Bag] ; [compania_great_outdoors].[Produs].[Produse].[Tip produs] ) Rezultat: Cooking Gear generate ( expresie1_set ; expresie2_set [ ; all ] ) Evaluează "expresie2_set" pentru fiecare membru "expresie1_set" şi uneşte seturile rezultate. Rezultatul păstrează duplicatele numai când cuvântul cheie opţional "all" este furnizat ca al treilea argument. Exemplu: generate ( [Linie de produse] ; topCount ( descendants ( currentMember ( [compania_great_outdoors].[Produse].[Produse] ) ;  [compania_great_outdoors].[Produse].[Produse].[Produs name] ) ; 2 ; [Venituri] ) ) Rezultat: Returnează primele două produse după venit din fiecare linie de produse. head ( expresie_set [ ; expresie_index ] ) Returnează primele elemente "expresie_index" ale "expresie_set". Valoarea implicită a "expresie_index" este 1. Exemplu: head ( members ( [compania_great_outdoors].[Produse].[Produse].[Linie de produse] ) ) Rezultat: Camping Equipment Exemplu: head ( members ( [compania_great_outdoors].[Produse].[Produse].[Linie de produse] ) ; 2 ) Rezultat: Returnează primii doi membri pentru setul Linie de produse. Echipament de camping Echipament de alpinism hierarchize ( expresie_set ) Ordonează membrii "expresie_set" într-o ierarhie. Membrii dintr-un nivel sunt sortaţi în ordinea lor normală. Aceasta este ordinea implicită a membrilor pe o dimensiune când nu se specifică alte condiţii de sortare. Exemplu: hierarchize ( set ( [Echipament de golf] ; [Echipament de alpinism] ; [Camping Equipment] ) ) Rezultat: Returnează Echipament de camping, Echipament de golf, Echipament de alpinism. mtd ( [ member ] ) Returnează un set de membri de acelaşi nivel ca şi un "membru", care începe cu primul articol de acelaşi nivel şi se termină cu "membrul", după cum se determină de către nivelul lună al dimensiunii timp. Dacă nu este specificat niciun membru, valoarea implicită este "currentMember" din dimensiunea timp. order ( expresie_set ; expresie_valoare [ ; ASC|DESC|BASC|BDESC ] ) Aranjează membrii "expresie_set" în funcţie de "expresie_val" şi de al treilea parametru. ASC şi DESC aranjează membrii în ordine crescătoare sau, respectiv, descrescătoare, conform poziţiei lor în ierarhia setată. Apoi fiii fiecărui membru sunt aranjaţi conform "expresie_valoare". BASC şi BDESC aranjează membrii din set indiferent de ierarhie. În lipsa unei specificări explicite, ASC este valoarea implicită. Exemplu: order ( members ( [Great Outdoors Company].[Produs].[Produs].[Tip produs] ) ; [Cantitate vândută] ; BASC ) Rezultat: Returnează cantitatea vândută pentru fiecare tip de produs în ordine aleatoare. ProdLine Quantity ------------ ------------- Woods 13,924 Irons 14,244 Safety 22,332 ... ... Sun 215,432 Repellent 270,04 Lanterns 345,096 Exemplu: order ( members ( [Great Outdoors Company].[Produs].[Produs].[Tip produs] ) ; [Cantitate vândută] ; ASC ) Rezultat: Returnează cantitatea vândută pentru fiecare tip de produs în ordine crescătoare. ProdLine Quantity ------------ ------------- Woods 13,924 Irons 14,244 Putters 23,244 ... ... Tents 130,664 Cooking 198,676 Lanterns 345,096 qtd ( [ member] ) Returnează un set de membri de acelaşi nivel ca şi un "membru", care începe cu primul articol de acelaşi nivel şi se termină cu "membrul", după cum se determină de către nivelul trimestru al dimensiunii timp. Dacă nu este specificat niciun membru, valoarea implicită este "currentMember" din dimensiunea timp. set ( member { ; member } ) Returnează lista membrilor definiţi în expresie. Membrii trebuie să aparţină aceleiaşi ierarhii. Exemplu: set ( [Golf Equipment] ; [Irons] ; [Cana TrailChef] ) Rezultat: Returnează Echipament de golf, Irons şi Cana TrailChef. siblings ( member ) Returnează fiii părintelui membrului specificat. Exemplu: siblings ( [Echipament de golf] ) Rezultat: Returnează membrii de acelaşi nivel cu Echipament de golf. Echipament de camping Echipament de golf Echipament de alpinism Articole de protecţie pentru exterior Accesorii personale subset ( expresie_set; expresie1_index [ ; expresie2_index ] ) Returnează un subset al membrilor de la "expresie_set" pornind cu "expresie1_index" de la început. Dacă se specifică numărul "expresie2_index", acei membri sunt returnaţi (dacă sunt disponibili). În caz contrar, membrii rămaşi sunt returnaţi. Exemplu: subset ( members ( [compania_great_outdoors].[Produse].[Produse].[Linie de produse] ) ; 2 ) Rezultat: Returnează membrii setului Linie de produse începând cu al doilea membru. Echipament de alpinism Articole de protecţie pentru exterior Accesorii personale Exemplu: subset ( members ( [compania_great_outdoors].[Produse].[Produse].[Linie de produse] ) ; 2 ; 2 ) Rezultat: Returnează doi membri ai setului Linie de produse începând cu al doilea membru. Echipament de alpinism Articole de protecţie pentru exterior tail ( expresie_set [ ; expresie_index ] ) Returnează ultimele elemente "expresie_index" ale "expresie_set". Valoarea implicită a "expresie_index" este 1. Exemplu: tail (members ( [compania_great_outdoors].[Produse].[Produse].[Linie de produse] ) ) Rezultat: Returnează ultimul membru al setului Linie de produse. Accesorii personale Exemplu: tail ( members ( [compania_great_outdoors].[Produse].[Produse].[Linie de produse] ) ; 2 ) Rezultat: Returnează ultimii doi membri din setul Linie de produse. Articole de protecţie pentru exterior Accesorii personale tuple (  member { ; member } ) Identifică locul unei celule (intersecţie) în funcţie de membrii specificaţi şi fiecare dintre aceştia trebuie să fie de dimensiune diferită. Această funcţie include implicit membrul curent din toate dimensiunile nespecificate în alt mod în argumente. Membrul curent al oricărei dimensiuni, care nu este specificat în contextul de evaluare, se presupune că este membrul implicit al acelei dimensiuni. Valoarea acestei celule poate fi obţinută cu funcţia "value". Exemplu: tuple ( [Echipament de alpinism] ; [Fax] ) Rezultat: Returnează vânzările de Echipament de alpinism prin fax. wtd ( [member] ) Returnează un set de membri de acelaşi nivel ca şi "membru", care începe cu primul articol de acelaşi nivel şi se termină cu "membrul", după cum se determină de către nivelul săptămână al dimensiunii timp. Dacă nu este specificat niciun membru, valoarea implicită este "currentMember" din dimensiunea timp. ytd ( [member] ) Returnează un set de membri de acelaşi nivel ca şi "membru", care începe cu primul articol de acelaşi nivel şi se termină cu "membrul", după cum se determină de către nivelul an al dimensiunii timp. Dacă nu este specificat niciun membru, valoarea implicită este "currentMember" din dimensiunea timp.
Sumare membri Această listă conţine funcţiile predefinite care returnează o singură valoare sumar pentru un set de membri sau o valoare sumar diferită pentru fiecare membru al unui set de membri. aggregate ( < currentMeasure|expresie_numerică > within set expresie_set ) aggregate ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează o valoare calculată utilizând funcţia de agregare corespunzătoare pe baza tipului de agregare al expresiei. average ( < currentMeasure|expresie_numerică > within set expresie_set ) average ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează valoarea medie a articolelor de date selectate. Exemplu: average ( Vânzări ) Rezultat: Returnează media tuturor valorilor Vânzări. count ( < currentMeasure|expresie_numerică > within set expresie_set ) count ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează numărul de articole de date selectate, excluzând valorile NULL. Exemplu: count ( Vânzări ) Rezultat: Returnează numărul total de intrări de la Vânzări. maximum ( < currentMeasure|expresie_numerică > within set expresie_set ) maximum ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează valoarea maximă a articolelor de date selectate. Exemplu: maximum ( Vânzări ) Rezultat: Returnează valoarea maximă a tuturor valorilor Vânzări. median ( < currentMeasure|expresie_numerică > within set expresie_set ) median ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează valoarea mediană a articolelor de date selectate. minimum ( < currentMeasure|expresie_numerică > within set expresie_set ) minimum ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează valoarea minimă a articolelor de date selectate. Examplu: minimum ( Sales ) Rezultat: Returnează valoarea minimă a tuturor valorilor Sales. Returnează procentul valorii totale pentru articolele de date selectate. percentage ( expresie_numerică [ tuple expresie_membru { ; expresie_membru } ] within set expresie_set ) Exemplu: percentage ( [gosales].[sales measures].[quantity] tuple [gosales].[Staff].[].[department] -> [West] within set children ( [gosales].[Staff].[].[Staff] ) ) Returnează o valoare, pe o scară de la 0 la 100, care indică procentajul unei distribuiri care este egală sau mai mică decât articolele de date selectate. percentile ( expresie_numerică [ tuple expresie_membru { ; expresie_membru } ] within set expresie_set ) Returnează rangul unei valori pentru intervalul specificat. Returnează numere întregi pentru reprezentarea oricărui interval de ranguri, cum ar fi de la 1 (cel mai mare) la 100 (cel mai mic). quantile ( expresie_numerică ; expresie_numerică [ tuple expresie_membru { ; expresie_membru } ] within set expresie_set ) Returnează rangul unei valori, reprezentată ca întreg de la 1 (cel mai mare) la 4 (cel mai mic), comparativ cu un grup de valori. quartile ( expresie_numerică [ tuple expresie_membru { ; expresie_membru } ] within set expresie_set ) Returnează valoarea rangului articolelor de date selectate. Tipul de rang returnat (Olimpic, compact sau serial) depinde de sursa de date. Ordinea de sortare este opţională; DESC este acceptată implicit. rank ( expresie_numerică [ ASC|DESC ] [ tuple expresie_membru { ; expresie_membru } ] within set expresie_set ) Exemplu: rank ( [gosales].[sales measures].[quantity] tuple [gosales].[Staff].[].[department] -> [West] within set children ( [gosales].[Staff].[].[Staff] ) ) standard-deviation ( < currentMeasure|expresie_numerică > within set expresie_set ) standard-deviation ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează deviaţia standard a articolelor de date selectate. standard-deviation-pop ( < currentMeasure|expresie_numerică > within set expresie_set ) standard-deviation-pop ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează devierea standard a populaţiei articolelor de date selectate. total ( < currentMeasure|expresie_numerică > within set expresie_set ) total ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează valoarea totală a articolelor de date selectate. variance ( < currentMeasure|expresie_numerică > within set expresie_set ) variance ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează varianţa articolelor de date selectate. variance-pop ( < currentMeasure|expresie_numerică > within set expresie_set ) variance-pop ( < currentMeasure|expresie_numerică > within < detail|aggregate > expresie ) Returnează variaţia populaţiei articolelor de date selectate.
OLAP