Leverandørspesifikke funksjoner Konstanter En konstant er en fast verdi som kan brukes i et uttrykk. Operatorer Operatorer spesifiserer hva som skjer med verdiene på begge sider av operatoren. På samme måte som funksjoner kan operatorer manipulere dataposter og returnere et resultat. dato Setter inn gjeldende systemdato. datotid Setter inn gjeldende systemtid. klokkeslett med tidssone Setter inn et null-klokkeslett med tidssone. systemtid med tidssone Setter inn et eksempel på systemtid med tidssone. Setter inn verdien 'false' (usann). intervall Setter inn et nullintervall: 000 00:00:00.000. årsintervall Setter inn en null som årsintervall: 0 år. månedsintervall Setter inn en null som månedsintervall: 0 måneder. år-til-måned-intervall Setter inn en null som år-til-måned-intervall: 0000-00 år til måned. dagsintervall Setter inn en null som dagsintervall: 0 dager. timesintervall Setter inn en null som timesintervall: 0 timer. minuttintervall Setter inn en null som minuttintervall: 0 minutter. sekundintervall Setter inn en null som sekundintervall: 0 sekunder. dag-til-time-intervall Setter inn en null som dag-til-time-intervall: 0 00 dager til timer. dag-til-minutt-intervall Setter inn en null som dag-til-minutt-intervall: 0 00:00 dager til minutter. dag-til-sekund-intervall Setter inn en null som dag-til-sekund-intervall: 0 00:00:00.000000000 dager til sekunder. time-til-minutt-intervall Setter inn en null som time-til-minutt-intervall: 00:00 timer til minutter. time-til-sekund-intervall Setter inn en null som time-til-sekund-intervall: 00:00:00.000000000 timer til sekunder. minutt-til-sekund-intervall Setter inn en null som minutt-til-sekund-intervall: 00:00.000000000 minutter til sekunder. Setter inn en "null" hvis uttrykksbetingelsene ikke oppfylles. nummer Setter inn tallet 0, som kan byttes ut med en annen numerisk verdi. streng Setter inn en tom streng som to enkeltanførselstegn der du kan skrive inn en streng. tid Setter inn gjeldende systemtid. Setter inn verdien 'true' (sann).
Angir begynnelsen av et uttrykk. ( uttrykk ) Angir slutten av et uttrykk. ( uttrykk ) Multipliserer to numeriske verdier. verdi * verdi2 , Skiller komponenter i uttrykk fra hverandre. uttrykk ( parameter1; parameter2 ) Dividerer to numeriske verdier. verdi1 / verdi2 Sammenkjeder eller kobler to strenger. streng1 || streng2 Adderer to numeriske verdier. verdi1 + verdi2 Subtraherer to numeriske verdier eller negerer en numerisk verdi. verdi1 - verdi2 eller - verdi Sammenlikner verdiene som er angitt som "verdi1" mot "verdi2", og henter verdiene som er mindre enn "verdi2". verdi < verdi2 Sammenlikner verdiene som er angitt som "verdi1" mot "verdi2", og henter verdiene som er mindre enn eller som samsvarer med "verdi2". verdi1 <= verdi2 Sammenlikner verdiene som er angitt som "verdi1" mot "verdi2", og henter verdiene som ikke samsvarer med "verdi2". verdi1 <> verdi2 Sammenlikner verdiene som er angitt som "verdi1" mot "verdi2", og henter verdiene som samsvarer med "verdi2". verdi1 = verdi2 Sammenlikner verdiene som er angitt som "verdi1" mot "verdi2", og henter verdiene som er større enn "verdi2". verdi1 > verdi2 Skiller komponentene i et litteralt medlemsuttrykk. [navneområde].[dimensjon].[hierarki].[nivå]->[L1] Sammenlikner verdiene som er angitt som "verdi1" mot "verdi2", og henter verdiene som er større enn eller som samsvarer med "verdi2". verdi1 >= verdi2 Returnerer "true" (sann) hvis betingelsene på begge sider av uttrykket er sanne. argument1 and argument2 Fungerer i sammendragsuttrykk for å definere omfanget av justeringen, basert på grupperingkolonnene i spørringen. Omfanget er kontekstavhengig. aggregeringsfunksjon ( uttrykk AUTO ) Fastsetter om en verdi ligger innenfor et gitt intervall. uttrykk between verdi1 and verdi2 Eksempel: [Inntekt] between 200 and 300 Resultat: Returnerer antall resultater med inntekter mellom 200 og 300. Revenue Between ---- ---- $332.06 false $230.55 true $107.94 false Fungerer med when, then, else og end. Case angir begynnelsen av en bestemt situasjon, der when-, then- og else-handlinger er definert. case uttrykk { when uttrykk then uttrykk } [ else uttrykk ] end Fastsetter om "streng1" inneholder "streng2". Denne syntaksen støtter begge metategn: Prosenttegnet (%) representerer null, ett eller flere tegn, og understrekingstegnet (_) representerer et hvilket som helst tegn. Det valgfrie LITERAL-nøkkelordet angir hvordan '%' og '_' tolkes. Når LITERAL-nøkkelordet finnes, skal ikke '%' og '_' behandles som metategn (se eksempel 3 og 5). Hvis LITERAL-nøkkelordet ikke er oppgitt, fungerer '%' og '_' som metategn (se eksempel 1, 2 og 4). streng1 contains [LITERAL] streng2 Eksempel 1: [PRODUCT_LINE] contains 'door' Resultat 1: Outdoor Equipment Eksempel 2: [PRODUCT_LINE] contains 'Golf%' Resultat 2: Golf Equipment Eksempel 3: [PRODUCT_LINE] contains literal 'Golf%' Resultat 3: Golf% Eksempel 4: [PRODUCT_LINE] contains 'Current_Year%' Resultat 4: Current Year Price, Current Year Price%, Current_Year Price%. Eksempel 5: [PRODUCT_LINE] contains literal 'Current_Year%' Resultat 5: Current_Year%. Nøkkelord som kan brukes som første argument i sammendragsfunksjoner for medlemmer. Denne funksjonen brukes i eksempelrapporten Total Revenue by Country i pakken GO Datavarehus (spørring). aggregeringsfunksjon ( currentMeasure within set uttrykk ) current_date Returnerer gjeldende dato for databasen. current_date Fungerer med lookup-setningen. lookup (....) in (....) default (....) Et nøkkelord som brukes i et aggregeringsuttrykk for å inkludere bare entydige forekomster av verdier. Se også funksjonen unique. distinct dataelement Eksempel: count ( distinct [OrdreinfoKvantum] ) Resultat: 1704 Fungerer med if- eller case-setninger. Hvis if-betingelsen eller case-uttrykket ikke er sanne (true), brukes else-uttrykket. Denne funksjonen brukes i eksempelrapporten Top 10 Retailers for 2005 i pakken GO Datavarehus (analyse). if ( betingelse ) then .... else ( uttrykk ) ,  eller case .... else ( uttrykk ) end Angir slutten av en case- eller when-setning. case .... end Fastsetter om "streng1" slutter med "streng2". Denne syntaksen støtter begge metategn: Prosenttegnet (%) representerer null, ett eller flere tegn, og understrekingstegnet (_) representerer et hvilket som helst tegn. Det valgfrie LITERAL-nøkkelordet angir hvordan '%' og '_' tolkes. Når LITERAL-nøkkelordet finnes, skal ikke '%' og '_' behandles som metategn (se eksempel 3 og 5). Hvis LITERAL-nøkkelordet ikke er oppgitt, fungerer '%' og '_' som metategn (se eksempel 1, 2 og 4). streng1 ends with [LITERAL] streng2 Eksempel 1: [PRODUCT_LINE] ends with 'Equipment' Resultat 1: Camping Equipment, Golf Equipment Eksempel 2: [PRODUCT_LINE] ends with '%Equipment' Resultat 2: Golf Equipment, Camping Equipment Eksempel 3: [PRODUCT_LINE] ends with literal 'Equipment%' Resultat 3: Equipment% Eksempel 4: [PRODUCT_LINE] ends with '%Price' Resultat 4: Product Price, Current_Year Price Eksempel 5: [PRODUCT_LINE] ends with literal '%Price' Resultat 5: %Price Fastsetter om "streng1" samsvarer med mønsteret til "streng2", med tegnet "char" eventuelt brukt som escape-tegn i mønsterstrengen. streng1 LIKE streng2 [ ESCAPE char ] Eksempel: [PRODUCT_LINE] like 'G%' Resultat: Alle produktkategorier som begynner med 'G'. Eksempel: [PRODUCT_LINE] like '%Ga%' escape 'a' Resultat: Alle produktkategorier som slutter med 'G%'. Fungerer i sammendragsuttrykk for å definere omfanget av aggregeringen i spørringen. aggregeringsfunksjon ( uttrykk for uttrykk { ; uttrykk } ) Fungerer i sammendragsuttrykk for å definere omfanget av justeringen, basert på et delsett av grupperingkolonnene i spørringen. Tilsvarer for-leddet. aggregeringsfunksjon ( uttrykk for ANY uttrykk { ; uttrykk } ) Fungerer i sammendragsuttrykk for å definere omfanget som alle de spesifiserte grupperingkolonnene i spørringen. Se også for-leddet. aggregeringsfunksjon ( uttrykk for ALL-uttrykk { ; uttrykk } ) Fungerer i sammendragsuttrykk for å definere omfanget som hele spørringen. Se også for-leddet. Denne funksjonen brukes i eksempelrapporten Customer Returns and Satisfaction i pakken GO Datavarehus (analyse). aggregeringsfunksjon ( uttrykk for report ) Fungerer med then- og else-setninger. Den definerer en betingelse. Når if-betingelsen er sann (true), brukes then-uttrykket. Hvis if-betingelsen ikke er sann (true), brukes else-uttrykket. Denne funksjonen brukes i eksempelrapporten Top 10 Retailers for 2005 i pakken GO Datavarehus (analyse). if ( betingelse ) then ( uttrykk ) else ( uttrykk ) Fastsetter om "uttrykk1" finnes i en gitt uttrykksliste. uttrykk1 in ( uttrykksliste ) Fastsetter om "uttrykk1" finnes i en gitt liste over konstantverdier eller intervaller. uttrykk1 in_range { konstant : konstant [ ; konstant : konstant ] } Eksempel: [kode] in_range { 5 } Resultat: Dette tilsvarer [kode] = 5. Eksempel: [kode] in_range { 5: } Resultat: Dette tilsvarer [kode] >= 5. Eksempel: [kode] in_range { :5 } Resultat: Dette tilsvarer [kode] <= 5. Eksempel: [kode] in_range { 5:10 } Resultat: Dette tilsvarer ( [kode] >= 5 og [kode] <= 10 ). Eksempel: [kode] in_range { :5,10,20 } Resultat: Dette tilsvarer ( [kode] <= 5 eller [kode] = 10 elle [kode] >= 20 ). Fastsetter om en "verdi" er udefinert i dataene. verdi is missing Fastsetter om en "verdi" er udefinert i dataene. verdi is null Fastsetter om en "verdi" er definert i dataene. verdi is not missing Fastsetter om en "verdi" er definert i dataene. verdi is not null Fastsetter om "streng1" samsvarer med mønsteret til "streng2", med tegnet "char" eventuelt brukt som escape-tegn i mønsterstrengen. Denne syntaksen støtter begge metategn: Prosenttegnet (%) representerer null, ett eller flere tegn, og understrekingstegnet (_) representerer et hvilket som helst tegn. streng1 LIKE streng2 [ ESCAPE char ] Eksempel 1: [PRODUCT_LINE] like 'G%' Resultat 1: Alle produktkategorier som begynner med 'G'. Eksempel 2: [PRODUCT_LINE] like '%Ga%' escape 'a' Resultat 2: Alle produktkategorier som slutter med 'G%'. Eksempel 3: [PRODUCT_LINE] like 'C_R_' Resultat 3: Alle produktkategorier med navnet CARS eller CARD. Eksempel: lookup ( [Land]) in ( 'Canada'--> ( [Listepris] * 0.60); 'Australia'--> ( [Listepris] * 0.80 ) ) default ( [Listepris] ) Finner og erstatter data med en verdi du spesifiserer. Du bør helst bruke case-setningen. lookup ( navn ) in ( verdi1 --> verdi2 ) default ( uttrykk ) Returnerer TRUE hvis "argumentet" er false (usant), eller returnerer FALSE hvis "argumentet" er true (sant). NOT argument Returnerer TRUE hvis "argument1" eller "argument2" er true (sanne). argument1 or argument2 Utfører en sammendragsberegning før sammendragsfilteret brukes. sammendragsfunksjon ([uttrykk] prefilter) Eksempel: total ( [Quantity] for report prefilter ) summaryFilter: total( [Quantity] for [ProductNo] ) > 50000 Resultat: Summerer mengdene i en rapport før sammendragsfilteret blir brukt. PNo Total Total Total forPNo forRep forRep_Prefilter --------- -------- ---------- ------------------- 88 54928 298140 2215354 89 51126 298140 2215354 90 69996 298140 2215354 94 69004 298140 2215354 95 53086 298140 2215354 Teller antall utdatarader fra spørringen. Brukes med Count (). count ( ROWS ) Teller antall utdatarader fra spørringen. Brukes med Count (). count ( ROWS  [ uttrykk ]) Fastsetter om "streng1" begynner med "streng2". Denne syntaksen støtter begge metategn: Prosenttegnet (%) representerer null, ett eller flere tegn, og understrekingstegnet (_) representerer et hvilket som helst tegn. Det valgfrie LITERAL-nøkkelordet angir hvordan '%' og '_' tolkes. Når LITERAL-nøkkelordet finnes, skal ikke '%' og '_' behandles som metategn (se eksempel 3 og 5). Hvis LITERAL-nøkkelordet ikke er oppgitt, fungerer '%' og '_' som metategn (se eksempel 1, 2 og 4). streng1 starts with [LITERAL] streng2 Eksempel 1: [PRODUCT_LINE] starts with 'Golf' Resultat 1: Golf Equipment Eksempel 2: [PRODUCT_LINE] starts with 'Outdoor%' Resultat 2: Outdoor Equipment Eksempel 3: [PRODUCT_LINE] starts with literal 'Golf%' Resultat 3: Golf% Eksempel 4: [PRODUCT_LINE] starts with 'Current_Year%' Resultat 4: Current Year Price, Current Year Price%, Current_Year Price% Eksempel 5: [PRODUCT_LINE] starts with literal 'Current_Year%' Resultat 5: Current_Year% Fungerer med if- eller case-setninger. Når if-betingelsen eller when-uttrykket er true (sant), brukes then-uttrykket. Denne funksjonen brukes i eksempelrapporten Top 10 Retailers for 2005 i pakken GO Datavarehus (analyse). if ( betingelse ) then ..., eller case uttrykk when uttrykk then .... end Fungerer med case-setningen. Du kan definere betingelser som skal forekomme når WHEN-uttrykket er true (sant). case [uttrykk] when ... end
Sammendrag Denne listen inneholder forhåndsdefinerte funksjoner som returnerer enten en enkelt sammendragsverdi for en gruppe beslektede verdier, eller en ulik sammendragsverdi for hver forekomst av en gruppe med beslektede verdier. Returnerer en beregnet verdi for den aktuelle aggregeringsfunksjonen, basert på aggregeringstypen for uttrykket. Denne funksjonen brukes i eksempelrapporten Budget vs. Actual i pakken GO Datavarehus (analyse). aggregate ( uttrykk [ auto ] ) aggregate ( uttrykk for [ all|any ] uttrykk { ; uttrykk } ) aggregate ( uttrykk for report ) Returnerer gjennomsnittsverdien for valgte dataposter. Distinct er et alternativt uttrykk som er kompatibelt med tidligere versjoner av produktet. average ( [ distinct ] uttrykk [ auto ] ) average ( [ distinct ] uttrykk for [ all|any ] uttrykk { ; uttrykk } ) average ( [ distinct ] uttrykk for report ) Eksempel: average ( Salg ) Resultat: Returnerer gjennomsnittet av alle salgsverdier. Returnerer antall valgte dataelementer, unntatt null-verdier. Distinct er et alternativt uttrykk som er kompatibelt med tidligere versjoner av produktet. Alle støttes bare i DQM-modus, og dette fjerner muligheten for dobbelttelling av et dataelement i en dimensjonstabell. count ( [ all | distinct ] uttrykk [ auto ] ) count ( [ all | distinct ] uttrykk for [ all|any ] uttrykk { ; uttrykk } ) count ( [ all | distinct ] uttrykk for report ) Eksempel: count ( Salg ) Resultat: Returnerer det totale antall oppføringer under Salg. Returnerer maksimumsverdien for valgte dataelementer. Distinct er et alternativt uttrykk som er kompatibelt med tidligere versjoner av produktet. maximum ( [ distinct ] uttrykk [ auto ] ) maximum ( [ distinct ] uttrykk for [ all|any ] uttrykk { ; uttrykk } ) maximum ( [ distinct ] uttrykk for report ) Eksempel: maximum ( Salg ) Resultat: Returnerer maksimumsverdien av alle salgsverdier. Returnerer medianverdien for valgte dataposter. median ( uttrykk [ auto ] ) median ( uttrykk for [ all|any ] uttrykk { ; uttrykk } ) median ( uttrykk for report ) Returnerer minimumsverdien for valgte dataposter. Distinct er et alternativt uttrykk som er kompatibelt med tidligere versjoner av produktet. minimum ( [ distinct ] uttrykk [ auto ] ) minimum ( [ distinct ] uttrykk for [ all|any ] uttrykk { ; uttrykk } ) minimum ( [ distinct ] uttrykk for report ) Eksempel: minimum ( Salg ) Resultat: Returnerer minimumsverdien av alle salgsverdier. Returnerer et bevegelig gjennomsnitt (moving average) per rad for et spesifisert sett med verdier over et spesifisert antall rader. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. moving-average ( numerisk_uttrykk ; numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) moving-average (  numerisk_uttrykk ; numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: moving-average ( Ant ; 3 ) Resultat: For hver rad returneres antallet (ant) og et bevegelig gjennomsnitt (moving-average) for den gjeldende raden og de to foregående radene. Qty Moving-Average (Qty, 3) ------ ------------------------------------ 200 200 700 450 400 433.3333 200 433.3333 200 266.6667 500 300.0000 Returnerer en bevegelig sum per rad for et spesifisert sett med verdier over et spesifisert antall rader. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. moving-total ( numerisk_uttrykk ; numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) moving-total (  numerisk_uttrykk ; numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: moving-total ( Ant ; 3 ) Resultat: For hver rad returneres antallet (ant) og en bevegelig totalsum (moving-total) for den gjeldende raden og de to foregående radene. Qty Moving-Total (Qty, 3) ------ -------------------------------- 200 200 700 900 400 1300 200 1300 200 800 500 900 Returnerer prosentdelen av totalverdien for de valgte datapostene. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. Denne funksjonen brukes i den interaktive eksempelrapporten Calculation (by year). percentage ( numerisk_uttrykk [ at uttrykk  { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) percentage (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: percentage ( Salg 98 ) Resultat: Returnerer prosentdelen av totalsalget for 1998 som tilskrives hver enkelt selger. Employee Sales 98 Percentage --------- --------- ------------- Gibbons 60646 7.11% Flertjan 62523 7.35% Cornel 22396 2.63% Returnerer en verdi, på en skala til hundre, som indikerer prosenten av en fordeling som er lik eller under de valgte datapostene. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. percentile ( numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) percentile (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: percentile ( Salg 98 ) Resultat: For hver rad returneres prosentdelen av rader som er lik eller mindre enn antall-verdien for raden. Qty Percentile (Qty) ------ ----------------- 800 1 700 0.875 600 0.75 500 0.625 400 0.5 400 0.5 200 0.25 200 0.25 Returnerer rangeringen til en verdi innenfor et intervall som du oppgir. Det returneres heltall som representerer alle rangeringsintervaller, for eksempel 1 (høyest) til 100 (lavest). Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. quantile ( numerisk_uttrykk ; numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) quantile (  numerisk_uttrykk ; numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: quantile ( Ant ; 4 ) Resultat: Returnerer antallet, rangeringen av verdien for antallet og denne verdien nedbrutt i fire fraktilgrupper (kvartil). Qty Rank Quantile (Qty, 4) ------ ------- --------------- 800 1 1 700 2 1 600 3 2 500 4 2 400 5 3 400 5 3 200 7 4 200 7 4 Returnerer rangeringen til en verdi representert som heltall fra 1 (høyeste) til 4 (laveste), i forhold til en gruppe med verdier. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. quartile ( numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) quartile (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: quartile ( Ant ) Resultat: Returnerer antallet og kvartilen av antallet representert som heltall fra 1 (høyeste) til 4 (laveste). Qty Quartile (Qty) ------ --------------------- 450 1 400 1 350 2 300 2 250 3 200 3 150 4 100 4 Returnerer rangeringsverdien for valgte dataelementer. Sorteringsrekkefølgen er valgfri: Synkende rekkefølgen (DESC) brukes som standard. Hvis to eller flere rader med like verdier, er det et mellomrom i rekkefølgen til de rangerte verdiene (også kalt olympisk rangering). Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. Distinct er et alternativt uttrykk som er kompatibelt med tidligere versjoner av produktet. Nullverdier er rangert sist. Denne funksjonen brukes i eksempelrapporten Top 10 Retailers for 2005 i pakken GO Datavarehus (analyse). rank ( uttrykk [ ASC|DESC ] { ; uttrykk [ ASC|DESC ] } [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) rank ( [ distinct ] uttrykk [ ASC|DESC ] { ; uttrykk [ ASC|DESC ] } [ <for-parameter>] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: rank ( Salg 98 ) Resultat: For hver rad returneres rangeringsverdien for salget for 1998 tilskrevet hver selger. Noen av tallene hoppes over hvis det finnes rader med like verdier. Employee Sales 98 Rank --------- --------- ------------ Gibbons 60000 1 Flertjan 50000 2 Cornel 50000 2 Smith 48000 4 Returnerer løpende gjennomsnitt (running-average) per rad (inkludert den gjeldende raden) for et sett med verdier. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. running-average ( numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) running-average (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: running-average ( Ant ) Resultat: For hver rad returneres antallet (ant) og et løpende gjennomsnitt (running-average) for den gjeldende og de foregående radene. Name Qty Avg Running-Average for name ------- ------ ------ ----------------------- Smith 7 5 7 Smith 3 5 5 Smith 6 5 5.33 Smith 4 5 5 Wong 3 4 3 Wong 5 4 4 Returnerer løpende telling (running-count) per rad (inkludert gjeldende rad) for et sett med verdier. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. running-count ( numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) running-count (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: running-count ( Ant ) Resultat: For hver rad returneres antallet (ant) og en løpende telling (running-count) av posisjonen til gjeldende rad. Name Qty Count Running-Count for name ------- ------ --------- ------------------------ Smith 7 4 1 Smith 3 4 2 Smith 6 4 3 Smith 4 4 4 Wong 3 3 1 Wong 5 3 2 Returnerer en løpende differanse (running-difference) per rad, beregnet som differansen mellom verdien i gjeldende rad og den foregående raden (inkludert gjeldende rad) for et sett med verdier. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. running-difference ( numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) running-difference (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: running-difference ( Ant ) Resultat: For hver rad returneres antallet (ant) og en løpende differanse (running-difference) mellom verdien i den gjeldende og den foregående raden. Name Qty Running-Difference for name ------- ------ --------------------------- Smith 7 NULL Smith 3 -4 Smith 6 3 Smith 4 -2 Wong 3 -1 Wong 5 2 Returnerer løpende maksimum (running-maximum) per rad (inkludert gjeldende rad) for et sett med verdier. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. running-maximum ( numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) running-maximum (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: running-maximum ( Ant ) Resultat: For hver rad returneres antallet (ant) og et løpende maksimum (running-maximum) for den gjeldende og de foregående radene. Name Qty Max Running-Maximum (Qty) for name ------- ------ ------ ------------------------- Smith 2 7 2 Smith 3 7 3 Smith 6 7 6 Smith 7 7 7 Wong 3 5 3 Wong 5 5 5 Returnerer løpende minimum (running-minimum) per rad (inkludert gjeldende rad) for et sett med verdier. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. running-minimum ( numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) running-minimum (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: running-minimum ( Ant ) Resultat: For hver rad returneres antallet (ant) og et løpende minimum (running-minimum) for den gjeldende og de foregående radene. Name Qty Min Running-Minimum (Qty) for name ------- ----- ------ -------------------------- Smith 7 2 7 Smith 3 2 3 Smith 6 2 3 Smith 2 2 2 Wong 4 3 4 Wong 5 3 4 Returnerer en løpende totalsum (running-total) per rad (inkludert gjeldende rad) for et sett med verdier. Parameteren "<for>" definerer omfanget til funksjonen. Parameteren "at" definerer aggregeringsnivået og kan bare brukes i konteksten for relasjonsdatakilder. running-total ( numerisk_uttrykk [ at uttrykk { ; uttrykk } ] [ <for-parameter> ] [ prefilter ] ) running-total (  numerisk_uttrykk [ <for-parameter> ] [ prefilter ] ) <for-parameter> ::= for uttrykk { ; uttrykk }|for report|auto Eksempel: running-total ( Ant ) Resultat: For hver rad returneres antallet (ant) og en løpende total (running-total) for den gjeldende og de foregående radene. Name Qty Total Running-Total (Qty) for name ------- ------ -------- ------------------------- Smith 2 18 2 Smith 3 18 5 Smith 6 18 11 Smith 7 18 18 Wong 3 12 3 Wong 5 12 8 Returnerer standardavviket (standard-deviation) for valgte dataposter. standard-deviation (  uttrykk [ auto ] ) standard-deviation (  uttrykk for [ all|any ] uttrykk { ; uttrykk } ) standard-deviation (  uttrykk for report ) Eksempel: standard-deviation ( Produktkostnad ) Resultat: Returnerer en verdi som indikerer avviket mellom produktkostnader og gjennomsnittlig produktkostnad. Beregner populasjonens standardavvik (standard-deviation-pop) og returnerer kvadratroten av populasjonens varians. standard-deviation-pop (  uttrykk [ auto ] ) standard-deviation-pop (  uttrykk for [ all|any ] uttrykk { ; uttrykk } ) standard-deviation-pop (  uttrykk for report ) Eksempel: standard-deviation-pop ( Produktkostnad ) Resultat: Returnerer en verdi for kvadratroten av populasjonens varians. Beregner utvalgets standardavvik (standard-deviation-samp) og returnerer kvadratroten av populasjonens varians. standard-deviation-samp ( uttrykk [ auto ] ) standard-deviation-samp ( uttrykk for [ all|any ] uttrykk { ; uttrykk } ) standard-deviation-samp ( uttrykk for report ) Eksempel: standard-deviation-samp ( Produktkostnad ) Resultat: Returnerer en verdi for kvadratroten av utvalgets varians. Returnerer rangeringen til en verdi som H(øy), M(iddels) eller L(av) i forhold til en gruppe med verdier. tertile (  uttrykk [ auto ] ) tertile (  uttrykk for [ all|any ] uttrykk { ; uttrykk } ) tertile (  uttrykk for report ) Eksempel: tertile ( Ant ) Resultat: Returnerer antallet, fraktilen for antallet nedbrutt i tertiler, og antallet nedbrutt i tertiler. Qty Quantile (Qty, 3) Tertile (Qty) ------ ------------------------ ------------------ 800 1 H 700 1 H 500 2 M 400 2 M 200 3 L 200 3 L Returnerer totalverdien for valgte dataposter. Distinct er et alternativt uttrykk som er kompatibelt med tidligere versjoner av produktet. Denne funksjonen brukes i eksempelrapporten Budget vs. Actual i pakken GO Datavarehus (analyse). total ( [ distinct ] uttrykk [ auto ] ) total ( [ distinct ] uttrykk for [ all|any ] uttrykk { ; uttrykk } ) total ( [ distinct ] uttrykk for report ) Eksempel: total ( Salg ) Resultat: Returnerer den totale verdien av alle salgsverdier. Statistikkfunksjoner Denne listen inneholder forhåndsdefinerte sammendragsfunksjoner av statistisk type. Returnerer variansen (variance) for valgte dataposter. variance (  uttrykk [ auto ] ) variance (  uttrykk for [ all|any ] uttrykk { ; uttrykk } ) variance (  uttrykk for report ) Eksempel: variance ( Produktkostnad ) Resultat: Returnerer en verdi som indikerer hvor mye produktkostnadene varierer i forhold til gjennomsnittlig produktkostnad. Returnerer populasjonens varians (variance-pop) for et sett med tall etter at nullene i settet er fjernet. variance-pop (  uttrykk [ auto ] ) variance-pop (  uttrykk for [ all|any ] uttrykk { ; uttrykk } ) variance-pop (  uttrykk for report ) Eksempel: variance-pop ( Ant ) Resultat: For hver rad returneres populasjonens varians for et sett med tall etter at nullene i settet er fjernet. Returnerer utvalgets varians (variance-samp) for et sett med tall etter at nullene i settet er fjernet. variance-samp (  uttrykk [ auto ] ) variance-samp (  uttrykk for [ all|any ] uttrykk { ; uttrykk } ) variance-samp (  uttrykk for report ) Eksempel: variance-samp ( Ant ) Resultat: For hver rad returneres utvalgets varians for et sett med tall etter at nullene i settet er fjernet. corr ( numerisk_uttrykk1 ;  numerisk_uttrykk2  [ auto ] ) corr ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) corr ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer koeffisienten for korrelasjonen for et sett med nummererte par. Dette beregnes slik: COVAR_POP(numerisk_uttrykk1; numerisk_uttrykk2) / (STDDEV_POP(numerisk_uttrykk1) * STDDEV_POP(numerisk_uttrykk2)) Eksempel: corr ( Kostnad ;  Margin  for report) Resultat: Koeffisienten for korrelasjon mellom Kostnad og Margin. Cost Margin corr (Cost, Margin for report) ------- ---------- ----------------------------------------- 4 0.33 0.0872648 5 0.28 0.0872648 9.22 0.23 0.0872648 15.93 0.28 0.0872648 34.97 0.3 0.0872648 covariance-pop ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) covariance-pop ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) covariance-pop ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer populasjonens kovarians for et sett med nummererte par. Eksempel: covariance-pop ( Kostnad ;  Margin  for report) Resultat: Populasjonens kovarians mellom Kostnad og Margin. Cost Margin covariance-pop (Cost, Margin for report) ------- ---------- --------------------------------------------------------- 4 0.33 0.032384 5 0.28 0.032384 9.22 0.23 0.032384 15.93 0.28 0.032384 34.97 0.3 0.032384 covariance-samp ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) covariance-samp ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) covariance-samp ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer utvalgets kovarians for et sett med nummererte par. Eksempel: covariance-samp ( Kostnad ;  Margin  for report) Resultat: Utvalgets kovarians mellom Kostnad og Margin. Cost Margin covariance-samp (Cost, Margin for report) ------- ---------- ------------------------------------------------------------ 4 0.33 0.04048 5 0.28 0.04048 9.22 0.23 0.04048 15.93 0.28 0.04048 34.97 0.3 0.04048 regression-average-x ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-average-x ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-average-x ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer gjennomsnittet av den uavhengige variabelen (numerisk_uttrykk2) til regresjonslinjen. Eksempel: regression-average-x ( Kostnad ;  Margin  for report) Resultat: Gjennomsnitt av Margin til regresjonslinjen for Kostnad og Margin. Cost Margin regression-average-x (Cost, Margin for report) ------- ---------- ----------------------------------------------------------------- 4 0.33 0.284 5 0.28 0.284 9.22 0.23 0.284 15.93 0.28 0.284 34.97 0.3 0.284 regression-average-y ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-average-y ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-average-y ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer gjennomsnittet av den avhengige variabelen (numerisk_uttrykk1) til regresjonslinjen. Eksempel: regression-average-y ( Kostnad ;  Margin  for report) Resultat: Gjennomsnitt av Kostnad til regresjonslinjen for Kostnad og Margin. Cost Margin regression-average-y (Cost, Margin for report) ------- ---------- ----------------------------------------------------------------- 4 0.33 13.824 5 0.28 13.824 9.22 0.23 13.824 15.93 0.28 13.824 34.97 0.3 13.824 regression-count ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-count ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-count ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer antall ikke-null-tall som er brukt for å passe til regresjonslinjen. Eksempel: regression-count ( Kostnad ;  Margin  for report) Resultat: Antall ikke-null-tall som er brukt for å passe til regresjonslinjen for Kostnad og Margin. Cost Margin regression-count (Cost, Margin for report) ------- ---------- ----------------------------------------------------------- 4 0.33 5 5 0.28 5 9.22 0.23 5 15.93 0.28 5 34.97 0.3 5 regression-intercept ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-intercept ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-intercept ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer skjæringpunkt mot Y-aksen til regresjonslinjen. Dette beregnes slik: AVG(numerisk_uttrykk1) - REGR_SLOPE(numerisk_uttrykk1; numerisk_uttrykk2) * AVG(numerisk_uttrykk2) Eksempel: regression-intercept ( Kostnad ;  Margin  for report) Resultat: Skjæringpunktet mot Y-aksen til regresjonslinjen for Kostnad og Margin. Cost Margin regression-intercept (Cost, Margin for report) ------- ---------- ---------------------------------------------------------------- 4 0.33 5.18015038 5 0.28 5.18015038 9.22 0.23 5.18015038 15.93 0.28 5.18015038 34.97 0.3 5.18015038 regression-r2 ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-r2 ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-r2 ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer determinasjonskoeffisienten (også kalt "R-kvadrat") til regresjonslinjen. Denne verdien beregnes på følgende betingelser: IF VAR_POP(numerisk_uttrykk2) = 0 THEN NULL IF VAR_POP(numerisk_uttrykk1) = 0 AND VAR_POP(numerisk_uttrykk2) <> 0 THEN 1 IF VAR_POP(numerisk_uttrykk1) > 0 and VAR_POP(numerisk_uttrykk2) <> 0 THEN POWER(CORR (numerisk_uttrykk1; numerisk_uttrykk2)) Eksempel: regression-r2 ( Kostnad ;  Margin  for report) Resultat: Determinasjonskoeffisienten til regresjonslinjen for Kostnad og Margin. Cost Margin regression-r2 (Cost, Margin for report) ------- ---------- ------------------------------------------------------ 4 0.33 0.00761514 5 0.28 0.00761514 9.22 0.23 0.00761514 15.93 0.28 0.00761514 34.97 0.3 0.00761514 regression-slope ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-slope ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-slope ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer hellingen på regresjonslinjen. Dette beregnes slik: COVAR_POP(numerisk_uttrykk1;numerisk_uttrykk2) / VAR_POP(numerisk_uttrykk2) Eksempel: regression-slope ( Kostnad ;  Margin ) Resultat: Hellingen på regresjonslinjen for Kostnad og Margin. Cost Margin regression-slope (Cost, Margin for report) ------- ---------- ----------------------------------------------------------- 4 0.33 30.43609023 5 0.28 30.43609023 9.22 0.23 30.43609023 15.93 0.28 30.43609023 34.97 0.3 30.43609023 regression-sxx ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-sxx ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-sxx ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer følgende beregning etter at NULL-par er fjernet: REGR_COUNT(numerisk_uttrykk1; numerisk_uttrykk2) * VAR_POP(numerisk_uttrykk2) Eksempel: regression-sxx ( Kostnad ;  Margin  for report) Resultat: sxx-beregningen av regresjonslinjen for Kostnad og Margin. Cost Margin regression-sxx (Cost, Margin for report) ------- ---------- --------------------------------------------------------- 4 0.33 0.00532 5 0.28 0.00532 9.22 0.23 0.00532 15.93 0.28 0.00532 34.97 0.3 0.00532 regression-sxy ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-sxy ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-sxy ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer følgende beregning etter at NULL-par er fjernet: REGR_COUNT(numerisk_uttrykk1; numerisk_uttrykk2) * COVAR_POP(numerisk_uttrykk1; numerisk_uttrykk2) Eksempel: regression-sxy ( Kostnad ;  Margin  for report) Resultat: sxy-beregningen av regresjonslinjen for Kostnad og Margin. Cost Margin regression-sxy (Cost, Margin for report) ------- ---------- --------------------------------------------------------- 4 0.33 0.16192 5 0.28 0.16192 9.22 0.23 0.16192 15.93 0.28 0.16192 34.97 0.3 0.16192 regression-syy ( numerisk_uttrykk1 ;  numerisk_uttrykk2 ) regression-syy ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for [ all|any ] uttrykk { ; uttrykk } ) regression-syy ( numerisk_uttrykk1 ;  numerisk_uttrykk2 for report ) Returnerer følgende beregning etter at NULL-par er fjernet: REGR_COUNT(numerisk_uttrykk1; numerisk_uttrykk2) * VAR_POP(numerisk_uttrykk1) Eksempel: regression-syy ( Kostnad ;  Margin  for report) Resultat: syy-beregningen av regresjonslinjen for Kostnad og Margin. Cost Margin regression-syy (Cost, Margin for report) ------- ---------- --------------------------------------------------------- 4 0.33 647.15932 5 0.28 647.15932 9.22 0.23 647.15932 15.93 0.28 647.15932 34.97 0.3 647.15932 Medlemssammendrag Denne listen inneholder forhåndsdefinerte funksjoner som returnerer enten en enkelt sammendragsverdi for et sett med medlemmer, eller en ulik sammendragsverdi for hvert medlem i et sett.
Feil Det er en feil i uttrykket ved tokenet som er uthevet.
Setninger Denne listen inneholder setninger og maler som kan brukes til å opprette et uttrykk. Maler kombinerer flere funksjoner til en gruppe. Malen for søke-case omfatter case-, when-, else- og end-funksjonene. search case Denne setningen er malen for et søke-case, inkludert CASE-, WHEN-, ELSE- og END-funksjonene. CASE WHEN [Land] = 'Canada' THEN ([Listepris] * 0.60) WHEN [Landkode] > 100 THEN [Listepris] * 0.80 ELSE [Listepris] END simple case Denne setningen er malen for et enkelt case-uttrykk, inkludert CASE-, WHEN-, ELSE- og END-funksjonene. CASE [Land] WHEN 'Canada' THEN ([Listepris] * 0.60) WHEN 'Australia' THEN [Listepris] * 0.80 ELSE [Listepris] END if then else Denne setningen er malen for en if...- then...- else-setning. Denne setningen brukes i eksempelrapporten Top 10 Retailers for 2005 i pakken GO Datavarehus (analyse). IF ([Land] = 'Canada') THEN ([Listepris] * 0.60) ELSE ([Listepris]) in_range Dette er malen for et in_range-uttrykk. [kode] IN_RANGE { :30 ; 40, 50, 999: } Eksempel: [kode] IN_RANGE { 5 } Resultat: Dette tilsvarer [kode] = 5. Eksempel: [kode] IN_RANGE { 5: } Resultat: Dette tilsvarer [kode] >= 5. Eksempel: [kode] IN_RANGE { :5 } Resultat: Dette tilsvarer [kode] <= 5. Eksempel: [kode] IN_RANGE { 5:10 } Resultat: Dette tilsvarer ( [kode] >= 5 og [kode] <= 10 ). Eksempel: [kode] IN_RANGE { :5,10,20 } Resultat: Dette tilsvarer ( [kode] <= 5 eller [kode] = 10 elle [kode] >= 20 ).
Periodepredikater Denne listen inneholder predikater som kan brukes til å sammenlikne periodeuttrykk. contains Returnerer "true" hvis "periodeuttrykk1" inneholder "periodeuttrykk2", det vil si at "true" blir returnert hvis den første perioden inneholder datotidverdien eller alle verdiene som ligger i den andre perioden. periodeuttrykk1 contains ( periodeuttrykk2 | datotiduttrykk ) periode( 1989-11-01, 1991-05-19 ) contains periode( 1991-05-19, 1991-06-04 ) Resultat: false periode( 1989-11-01, 1991-05-19 ) contains periode( 1990-05-19, 1991-04-04 ) Resultat: true periode( 1989-11-01, 1991-05-19 ) contains 1991-04-04 Resultat: true er lik Returnerer "true" hvis "periodeuttrykk1" og "periodeuttrykk2" har samme start- og sluttverdier for perioden. periodeuttrykk1 equals periodeuttrykk2 periode( 1989-11-01, 1991-05-19 ) equals periode( 1989-11-01, 1991-05-19 ) Resultat: true immediately precedes Returnerer "true" hvis "periodeuttrykk1" kommer umiddelbart foran "periodeuttrykk2", det vil si at sluttverdien for den første perioden er lik startverdien for den andre perioden. periodeuttrykk1 immediately precedes periodeuttrykk2 periode( 1989-11-01, 1991-05-19 ) immediately precedes periode( 1991-05-19, 1991-06-04 ) Resultat: true periode( 1989-11-01, 1991-05-18 ) immediately precedes periode( 1991-05-19, 1991-06-04 ) Resultat: false immediately succeeds Returnerer "true" hvis "periodeuttrykk1" kommer umiddelbart etter "periodeuttrykk2", det vil si at startverdien for den første perioden er lik sluttverdien for den andre perioden. periodeuttrykk1 immediately succeeds periodeuttrykk2 periode( 1991-05-19, 1994-01-10 ) immediately succeeds periode( 1991-01-19, 1991-05-19 ) Resultat: true periode( 1991-05-19, 1994-01-10 ) immediately succeeds periode( 1991-01-20, 1991-05-18 ) Resultat: false overlaps Returnerer "true" hvis "periodeuttrykk1" overlapper "periodeuttrykk2", det vil si at de har minst en verdi til felles. periodeuttrykk1 overlaps periodeuttrykk2 periode( 1991-05-19, 1994-01-10 ) overlaps periode( 1993-01-19, 1995-05-19 ) Resultat: true precedes Returnerer "true" hvis "periodeuttrykk1" kommer foran "periodeuttrykk2", det vil si at alle verdiene i den første perioden er mindre enn eller lik startverdien for den andre perioden. periodeuttrykk1 precedes periodeuttrykk2 periode( 1989-11-01, 1991-05-19 ) precedes periode( 1991-05-19, 1991-06-04 ) Resultat: true periode( 1989-11-01, 1991-05-18 ) precedes periode( 1991-05-19, 1991-06-04 ) Resultat: true succeeds Returnerer "true" hvis "periodeuttrykk1" kommer etter "periodeuttrykk2", det vil si at alle verdiene i den første perioden er større enn eller lik sluttverdien for den andre perioden. periodeuttrykk1 succeeds periodeuttrykk2 periode( 1991-05-19, 1994-01-10 ) succeeds periode( 1991-01-19, 1991-05-19 ) Resultat: true periode( 1991-05-20, 1994-01-10 ) succeeds periode( 1991-01-20, 1991-05-19 ) Resultat: true
Funksjoner for dato/klokkeslett Lisen inneholder forretningsfunksjoner for beregning av dato og klokkeslett. _add_seconds ( klokkeslettuttrykk; heltallsuttrykk ) Returnerer klokkeslett og datotid, avhengig av formatet til "klokkeslettuttrykk", som er et resultat av tilføyelse av "heltallsuttrykk" sekunder til "klokkeslettuttrykk". Eksempel: _add_seconds ( 13:04:59 ; 1 ) Resultat: 13:05:00 Eksempel: _add_seconds ( 2002-04-30 12:10:10.000; 1 ) Resultat: 2002-04-30 12:10:11.000 Eksempel: _add_seconds ( 2002-04-30 00:00:00.000; 1/100 ) Merk at argument nummer to ikke er et heltall. Dette støttes av enkelte databaseteknologier og øker tidsdelen. Resultat: 2002-04-30 00:00:00.010 _add_minutes ( klokkeslettuttrykk; heltallsuttrykk ) Returnerer klokkeslett og datotid, avhengig av formatet til "klokkeslettuttrykk", som er et resultat av tilføyelse av "heltallsuttrykk" minutter til "klokkeslettuttrykk". Eksempel: _add_minutes ( 13:59:00 ; 1 ) Resultat: 14:00:00 Eksempel: _add_minutes ( 2002-04-30 12:59:10.000; 1 ) Resultat: 2002-04-30 13:00:10.000 Eksempel: _add_minutes ( 2002-04-30 00:00:00.000; 1/60 ) Merk at argument nummer to ikke er et heltall. Dette støttes av enkelte databaseteknologier og øker tidsdelen. Resultat: 2002-04-30 00:00:01.000 _add_hours ( klokkeslettuttrykk; heltallsuttrykk ) Returnerer klokkeslett og datotid, avhengig av formatet til "klokkeslettuttrykk", som er et resultat av tilføyelse av "heltallsuttrykk" timer til "klokkeslettuttrykk". Eksempel: _add_hours ( 13:59:00 ; 1 ) Resultat: 14:59:00 Eksempel: _add_hours ( 2002-04-30 12:10:10.000; 1 ) Resultat: 2002-04-30 13:10:10.000, Eksempel: _add_hours ( 2002-04-30 00:00:00.000; 1/60 ) Merk at argument nummer to ikke er et heltall. Dette støttes av enkelte databaseteknologier og øker tidsdelen. Resultat: 2002-04-30 00:01:00.000 _add_days ( datouttrykk; heltallsuttrykk ) Returnerer dato og datotid, avhengig av formatet til "datouttrykk", som er et resultat av tilføyelse av "heltallsuttrykk" for dager til "datouttrykk". Eksempel: _add_days ( 2002-04-30 ; 1 ) Resultat: 2002-05-01 Eksempel: _add_days ( 2002-04-30 12:10:10.000; 1 ) Resultat: 2002-05-01 12:10:10.000 Eksempel: _add_days ( 2002-04-30 00:00:00.000; 1/24 ) Merk at argument nummer to ikke er et heltall. Dette støttes av enkelte databaseteknologier og øker tidsdelen. Resultat: 2002-04-30 01:00:00.000 _add_months ( datouttrykk; heltallsuttrykk ) Legger "heltalluttrykk" måneder til "datouttrykk". Hvis resultatmåneden har færre dager enn komponenten for dag i måneden gir, returneres den siste dagen i resultatmåneden. I alle andre tilfeller har den returnerte verdien samme komponent for dag i måneden som "datouttrykk". Eksempel: _add_months ( 2012-04-15 ; 3 ) Resultat: 2012-07-15 Resultatet er ikke den siste dagen i resultatmåneden. Eksempel: _add_months ( 2012-02-29 ; 1 ) Resultat: 2012-03-29 Bruk funksjonen _last_of_month til å returnere den siste dagen i måneden. Eksempel: _last_of_month ( _add_months ( 2012-02-29 ; 1 ) ) Resultat: 2012-03-31 Dag blir justert til den siste dagen i resultatmåneden. Eksempel: _add_months ( 2012-01-31 ; 1 ) Resultat: 2012-02-29 Legge til i en tidsangivelse. Eksempel: _add_months ( 2002-04-30 12:10:10.000 ; 1 ) Resultat: 2002-05-30 12:10:10.000 _add_years ( datouttrykk; heltallsuttrykk ) Legger "heltalluttrykk" år til "datouttrykk". Hvis "date_expression" er 29. februar og resultatåret ikke er et skuddår, settes resultatdagen til 28. februar. I alle andre tilfeller har den returnerte verdien samme dag og måned som "datouttrykk". Eksempel: _add_years ( 2012-04-15 ; 1 ) Resultat: 2013-04-15 29. februar blir justert for år som ikke er skuddår. Eksempel: _add_years ( 2012-02-29 ; 1 ) Resultat: 2013-02-28 Legge til i en tidsangivelse. Eksempel: _add_years ( 2002-04-30 12:10:10.000 ; 1 ) Resultat: 2003-04-30 12:10:10.000 _age ( datouttrykk ) Returnerer et tall som fremkommer ved å trekke "datouttrykk" fra dagens dato. Verdien som returneres, har formatet ÅÅÅÅMMDD, der ÅÅÅÅ er antall år, MM er antall måneder og DD er antall dager. Eksempel: _age ( 1990-04-30 ) (hvis dagens dato er 2003-02-05) Resultat: 120906 betyr 12 år, 9 måneder og 6 dager. _date_to_int ( datouttrykk ) Returnerer heltallsrepresentasjonen av "datouttrykk". Verdien som returneres, har formatet ÅÅÅÅMMDD, der ÅÅÅÅ er antall år, MM er antall måneder og DD er antall dager. Eksempel: _date_to_int ( 2003-01-01 ) Resultat: 20030101 _day_of_week ( datouttrykk; heltall ) Returnerer ukedagen (1 til 7), der 1 er den første dagen i uken, som angitt av den andre parameteren (1 til 7, der 1 er mandag og 7 er søndag). Legg merke til at i ISO-standarden 8601 begynner uken på mandag (dag 1). Eksempel: _day_of_week ( 2003-01-01 ; 1 ) Resultat: 3 _day_of_year ( datouttrykk ) Returnerer dagen i året (1 til 366) i "datouttrykk". Dette kalles også juliansk dag. Eksempel: _day_of_year ( 2003-03-01 ) Resultat: 61 _days_between ( datouttrykk ; datouttrykk ) Returnerer et positivt eller negativt tall som representerer antall dager mellom "datouttrykk1" og "datouttrykk2". Hvis "datouttrykk1" < "datouttrykk2", blir resultatet et negativt tall. Eksempel: _days_between ( 2002-06-21 ; 2002-04-30 ) Resultat: 52 Eksempel: _days_between ( 2002-04-30 ; 2002-06-21 ) Resultat: -52 _days_to_end_of_month ( datouttrykk ) Returnerer et tall som representerer antall dager som gjenstår i måneden som representeres av "datouttrykk". Eksempel: _days_to_end_of_month ( 2002-04-20 14:30:22.123 ) Resultat: 10 _first_of_month ( datouttrykk ) Returnerer en dato eller datotid, avhengig av argumentet, ved å konvertere "datouttrykk" til en dato med samme år og måned, men med dagen satt til 1. Eksempel: _first_of_month ( 2002-04-20 ) Resultat: 2002-04-01 Eksempel: _first_of_month ( 2002-04-20 12:10:10.000 ) Resultat: 2002-04-01 12:10:10.000 _last_of_month ( datouttrykk ) Returnerer en dato eller datotid, avhengig av argumentet, som er siste dagen i måneden, representert av "datouttrykk". Eksempel: _last_of_month ( 2002-01-14 ) Resultat: 2002-01-31 Eksempel: _last_of_month ( 2002-01-14 12:10:10.000 ) Resultat: 2002-01-31 12:10:10.000 _make_timestamp ( heltallsuttrykk1; heltallsuttrykk2; heltallsuttrykk3 ) Returnerer en systemtid som er opprettet fra "heltallsuttrykk1" (året), "heltallsuttrykk2" (måneden) og "heltallsuttrykk3" (dagen). Tidsdelen (klokkeslett) settes som standard til 00:00:00.000 . Eksempel: _make_timestamp ( 2002 ; 01 ; 14 ) Resultat: 2002-01-14 00:00:00.000 _months_between ( datouttrykk1; datouttrykk2 ) Returnerer et positivt eller negativt heltall som representerer antall måneder mellom "datouttrykk1" og "datouttrykk2". Hvis "datouttrykk1" er tidligere enn "datouttrykk2", blir det returnert et negativt tall. Eksempel: _months_between ( 2002-04-03 ; 2002-01-30 ) Resultat: 2 Eksempel: _months_between ( 2002-01-30 ; 2002-04-03 ) Resultat: -2 _shift_timezone ( systemtidverdi ; fra_tidssone ; måltidssone ) _shift_timezone ( systemtid_med_tidssoneverdi ; mål_tidssone ) Endrer en systemtidverdi fra en tidssone til en annen. Denne funksjonen tar hensyn til sommertid når det er aktuelt. Hvis det første argumentet er av typen "systemtid", representerer det andre og tredje argumentet henholdsvis "fra"- og "mål"-tidssoner. Hvis det første argumentet er av typen "systemtid med tidssone", er "fra"-tidssonen allerede implisitt i det første argumentet. Derfor representerer det andre argumentet "mål"-tidssonen. Datatypen for det første argumentet bestemmer også datatypen for returverdien. De andre og tredje argumentet er av typen "streng" og representerer tidssoneidentifikatorer. Du finner en liste med disse identifikatorene nedenfor. Merk: Bruk av denne funksjonen medfører lokal behandling. Eksempel: _shift_timezone( 2013-06-30 12:00:00 ; 'America/New_York' ; 'GMT' ) Resultat: 2013-06-30 16:00:00 Eksempel: _shift_timezone( 2013-11-30 12:00:00-05:00 ; 'America/Vancouver' ) Resultat: 2013-11-30 09:00:00-08:00 Tidssoneidentifikatorer: GMT (GMT+00:00) Greenwich Mean Time Europe/Lisbon (GMT+00:00) Portugal Time (Lisbon) Europe/Amsterdam (GMT+01:00) Netherlands Time Europe/Paris (GMT+01:00) France Time Europe/Berlin (GMT+01:00) Germany Time Europe/Brussels (GMT+01:00) Belgium Time Europe/Rome (GMT+01:00) Italy Time Europe/Vienna (GMT+01:00) Austria Time Africa/Cairo (GMT+02:00) Egypt Time Africa/Johannesburg (GMT+02:00) South Africa Time Europe/Athens (GMT+02:00) Greece Time Africa/Addis_Ababa (GMT+03:00) Ethiopia Time Asia/Dubai (GMT+04:00) United Arab Emirates Time Asia/Karachi (GMT+05:00) Pakistan Time Asia/Calcutta (GMT+05:30) India Time Asia/Dhaka (GMT+06:00) Bangladesh Time Asia/Saigon (GMT+07:00) Vietnam Time Asia/Hong_Kong (GMT+08:00) Hong Kong SAR China Time Asia/Tokyo (GMT+09:00) Japan Time Australia/Darwin (GMT+09:30) Australia Time (Darwin) Australia/Sydney (GMT+10:00) Australia Time (Sydney) Pacific/Guadalcanal (GMT+11:00) Solomon Islands Time America/Argentina/San_Juan (GMT-03:00) Argentina Time (San Juan) America/Buenos_Aires (GMT-03:00) Argentina Time (Buenos Aires) America/Sao_Paulo (GMT-03:00) Brazil Time (Sao Paulo) America/St_Johns (GMT-03:30) Canada Time (St. John’s) America/Puerto_Rico (GMT-04:00) Puerto Rico Time America/New_York (GMT-05:00) United States Time (New York) America/Toronto (GMT-05:00) Canada Time (Toronto) America/Jamaica (GMT-05:00) Jamaica Time America/Chicago (GMT-06:00) United States Time (Chicago) America/Mexico_City (GMT-06:00) Mexico Time (Mexico City) America/Cambridge_Bay (GMT-07:00) Canada Time (Cambridge Bay) America/Edmonton (GMT-07:00) Canada Time (Edmonton) America/Yellowknife (GMT-07:00) Canada Time (Yellowknife) America/Denver (GMT-07:00) United States Time (Denver) America/Chihuahua (GMT-07:00) Mexico Time (Chihuahua) America/Los_Angeles (GMT-08:00) United States Time (Los Angeles) America/Tijuana (GMT-08:00) Mexico Time (Tijuana) America/Vancouver (GMT-08:00) Canada Time (Vancouver) America/Anchorage (GMT-09:00) United States Time (Anchorage) Pacific/Honolulu (GMT-10:00) United States Time (Honolulu) Pacific/Tahiti (GMT-10:00) French Polynesia Time (Tahiti) Pacific/Midway (GMT-11:00) U.S. Minor Outlying Islands Time (Midway) Pacific/Niue (GMT-11:00) Niue Time En tilpasset tidssoneidentifikator kan også brukes, med formatet GMT(+|-)TT:MM. For eksempel GMT-06:30 eller GMT+02:00. _week_of_year ( datouttrykk ) Returnerer årets ukenummer i "datouttrykk" i henhold til ISO 8601-standarden. Uke 1 er den første uken i året som inneholder en torsdag, som tilsvarer den første uken som inneholder 4. januar. En uke starter på mandag (dag 1) og slutter på søndag (dag 7). Eksempel: _week_of_year ( 2003-01-01 ) Resultat: 1 _years_between ( datouttrykk1; datouttrykk2 ) Returnerer et positivt eller negativt heltall som representerer antall år mellom "datouttrykk1" og "datouttrykk2". Hvis "datouttrykk1" < "datouttrykk2", blir det returnert en negativ verdi. Eksempel: _years_between ( 2003-01-30 ; 2001-04-03 ) Resultat: 1 Eksempel: _years_between ( 2001-04-03 ; 2003-01-30 ) Resultat: -1 _ymdint_between ( datouttrykk1 ; datouttrykk2 ) Returnerer et tall som representerer differansen mellom "datouttrykk1" og "datouttrykk2". Verdien som returneres, har formatet ÅÅÅÅMMDD, der ÅÅÅÅ er antall år, MM er antall måneder og DD er antall dager. Eksempel: _ymdint_between ( 1990-04-30 ; 2003-02-05 ) Resultat: 120905 betyr 12 år, 9 måneder og 5 dager. _year ( datouttrykk ) Returnerer verdien i årfeltet i "datouttrykk". Eksempel: _year ( 2003-03-01 ) Resultat: 2003 _month ( datouttrykk ) Returnerer verdien i månedfeltet i "datouttrykk". Eksempel: _month ( 2003-03-01 ) Resultat: 3 _day ( datouttrykk ) Returnerer verdien i dagfeltet i "datouttrykk". Eksempel: _day ( 2003-03-01 ) Resultat: 1 _hour ( datouttrykk ) Returnerer verdien i timefeltet i "datouttrykk". Eksempel: _hour ( 2002-01-31 12:10:10.254 ) Resultat: 12 _minute ( datouttrykk ) Returnerer verdien i minuttfeltet i "datouttrykk". Eksempel: _minute ( 2002-01-31 12:10:10.254 ) Resultat: 10 _second ( datouttrykk ) Returnerer verdien i sekundfeltet i "datouttrykk". Eksempel: _second ( 2002-01-31 12:10:10.254 ) Resultat: 10.254 _timezone_hour ( timestamp_with_time_zone_value ) _timezone_hour ( time_with_time_zone_value ) Returnerer verdien i tidssonetimefeltet i uttrykket. Uttrykket må være av typen "timestamp with time zone" eller "time with time zone". Eksempel: _timezone_hour ( 2002-01-31 12:10:10.254-05:30 ) Resultat: -5 _timezone_minute ( timestamp_with_time_zone_value ) _timezone_minute ( time_with_time_zone_value ) Returnerer verdien i tidssoneminuttfeltet i uttrykket. Uttrykket må være av typen "timestamp with time zone" eller "time with time zone". Eksempel: _timezone_minute ( 2002-01-31 12:10:10.254-05:30 ) Resultat: -30 _start_of_day ([ datouttrykk ]) Returnerer starten på "date_expression" eller starten på dagens dato som en systemtid. Eksempel: _start_of_day ( 2014-11-23 12:10:10.254 ) Resultat: 2014-11-23 00:00:00 Eksempel: _start_of_day () Resultat: 2016-01-01 00:00:00 _end_of_day ([ datouttrykk ]) Returnerer slutten på "date_expression" eller slutten på dagens dato som en systemtid. Eksempel: _end_of_day ( 2014-11-23 12:10:10.254 ) Resultat: 2014-11-23 23:59:59 Eksempel: _end_of_day () Resultat: 2016-01-01 23:59:59 _unix_timestamp ( datouttrykk ) Returnerer antall sekunder siden 1970-01-01 00:00:00-00 for angitt "datouttrykk". Eksempel: _unix_timestamp ( 2014-11-23 ) Resultat: 1416718800 _from_unixtime ( heltallsuttrykk ) Returnerer unix-klokkeslettet angitt av "heltallsuttrykk" som en systemtid med tidssone. Eksempel: _from_unixtime (1417807335) Resultat: 2014-12-05 19:22:15+00:00
Makrofunksjoner Denne listen inneholder funksjoner som kan brukes i en makro. En makro kan inneholde en eller flere makrofunksjoner. En makro avgrenses av et nummertegn (#) på begynnelsen og slutten av makroen. Alt mellom nummertegnene behandles som et makrouttrykk, og det utføres under kjøring. For makrofunksjoner som godtar uttrykk med datatypen systemtid med tidssone som argumenter, er det aksepterte formatet 'åååå-mm-dd tt:mm:ss[.ff]+tt:mm', der sekundbrøkdelen er valgfri og kan representeres av 1 til 9 sifre. I stedet for et mellomrom som skiller datodelen fra tidsdelen (klokkeslettdelen), godtas tegnet 'T'. I stedet for tidssonen '+tt:mm' godtas også tegnet 'Z' og blir behandlet internt som '+00:00'. Makrofunksjonen som returnerer uttrykk av datatypen systemtid med tidssone, returnerer 9 sifre som standard for sekundbrøkdel. Makrofunksjonen timestampMask () kan brukes til å kutte utdataene, hvis det er nødvendig. Returnerer systemtiden med tidssone (som en streng) som er et resultat av tilføyelse av "heltallsuttrykket" antall sekunder til "strenguttrykket", der "strenguttrykket" representerer en systemtid med tidssone. _add_seconds ( strenguttrykk ; heltallsuttrykk ) Eksempel: # _add_seconds ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Resultat: 2005-11-01 11:59:59.000-05:00 Eksempel: # _add_seconds ( $current_timestamp ; 1 ) # Resultat: 2005-11-01 12:00:01.000000000-05:00 Eksempel: # timestampMask ( _add_seconds ( $current_timestamp ; 1 ) ; 'hh:mm:ss' ) # Resultat: 12:00:01 Returnerer systemtiden med tidssone (som en streng) som er et resultat av tilføyelse av "heltallsuttrykket" antall minutter til "strenguttrykket", der "strenguttrykket" representerer en systemtid med tidssone. _add_minutes ( strenguttrykk ; heltallsuttrykk ) Eksempel: # _add_minutes ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Resultat: 2005-11-01 11:59:00.000-05:00 Eksempel: # _add_minutes ( $current_timestamp ; 1 ) # Resultat: 2005-11-01 12:01:00.000000000-05:00 Eksempel: # timestampMask ( _add_minutes ( $current_timestamp ; 1 ) ; 'hh:mm:ss' ) # Resultat: 12:01:00 Returnerer systemtiden med tidssone (som en streng) som er et resultat av tilføyelse av "heltallsuttrykket" antall timer til "strenguttrykket", der "strenguttrykket" representerer en systemtid med tidssone. _add_hours ( strenguttrykk ; heltallsuttrykk ) Eksempel: # _add_hours ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Resultat: 2005-11-01 13:00:00.000-05:00 Eksempel: # _add_hours ( $current_timestamp ; 1 ) # Resultat: 2005-11-01 13:00:00.000000000-05:00 Eksempel: # timestampMask ( _add_hours ( $current_timestamp ; 1 ) ; 'hh:mm:ss' ) # Resultat: 13:00:00 Returnerer systemtiden med tidssone (som en streng) som er et resultat av tilføyelse av "heltallsuttrykket" antall dager til "strenguttrykket", der "strenguttrykket" representerer en systemtid med tidssone. Når det første argumentet er en dato, oppgitt som en streng med format: åååå-mm-dd, er returverdien en streng som er formatert som en dato. _add_days ( strenguttrykk ; heltallsuttrykk ) Eksempel: # _add_days ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Resultat: 2005-10-31 12:00:00.000000000-05:00 Eksempel: # _add_days ( $current_timestamp ; 1 ) # Resultat: 2005-11-02 12:00:00.000000000-05:00 Eksempel: # timestampMask ( _add_days ( $current_timestamp ; 1 ) ; 'åååå-mm-dd' ) # Resultat: 2005-11-02 Eksempel: # _add_days( '2019-11-14' , 3 ) # Resultat: 2019-11-17 Returnerer systemtiden med tidssone (som en streng) som er et resultat av tilføyelse av "heltallsuttrykket" antall måneder til "strenguttrykket", der "strenguttrykket" representerer en systemtid med tidssone. Når det første argumentet er en dato, oppgitt som en streng med format: åååå-mm-dd, er returverdien en streng som er formatert som en dato. _add_months ( strenguttrykk ; heltallsuttrykk ) Eksempel: # _add_months ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Resultat: 2005-10-01 12:00:00.000000000-05:00 Eksempel: # _add_months ( $current_timestamp ; 1 ) # Resultat: 2005-12-01 12:00:00.000000000-05:00 Eksempel: # timestampMask ( _add_months ( $current_timestamp ; 1 ) ; 'åååå-mm-dd' ) # Resultat: 2005-12-01 Eksempel: # _add_months( '2019-11-14' , -1 ) # Resultat: 2019-10-14 Returnerer systemtiden med tidssone (som en streng) som er et resultat av tilføyelse av "heltallsuttrykket" antall år til "strenguttrykket", der "strenguttrykket" representerer en systemtid med tidssone. Når det første argumentet er en dato, oppgitt som en streng med format: åååå-mm-dd, er returverdien en streng som er formatert som en dato. _add_years ( strenguttrykk ; heltallsuttrykk ) Eksempel: # _add_years ( '2005-11-01 12:00:00.000-05:00' ; -1 ) # Resultat: 2004-11-01 12:00:00.000000000-05:00 Eksempel: # _add_years ( $current_timestamp ; 1 ) # Resultat: 2006-11-01 12:00:00.000000000-05:00 Eksempel: # timestampMask ( _add_years ( $current_timestamp ; 1 ) ; 'åååå-mm-dd' ) # Resultat: 2006-11-01 Eksempel: # _add_years( '2019-11-14' , -2 ) # Resultat: 2017-11-14 _first_of_month ( strenguttrykk ) Returnerer en systemtid med tidssone (som en streng) ved å konvertere dag-verdien i "strenguttrykket" til 1, der "strenguttrykket" er en systemtid med tidssone. Eksempel: # _first_of_month ( '2005-11-11 12:00:00.000-05:00' ) # Resultat: 2005-11-01 12:00:00.000000000-05:00 Eksempel: # timestampMask ( _first_of_month ( '2005-11-11 12:00:00.000-05:00' ) ; 'ååååmmdd' ) # Resultat: 20051101 _last_of_month ( strenguttrykk ) Returnerer en systemtid med tidssone (som en streng) som er den siste dagen i måneden representert av "strenguttrykk", der "strenguttrykk" er en systemtid med tidssone. Eksempel: # _last_of_month ( '2005-11-11 12:00:00.000-05:00' ) # Resultat: 2005-11-30 12:00:00.000000000-05:00 Eksempel: # timestampMask ( _last_of_month ( '2005-11-11 12:00:00.000-05:00' ) ; 'åååå-mm-dd' ) # Resultat: 2005-11-30 modelj ( 'identifier' [ , 'model_search_path' [ , 'options' ] ] ) Returnerer en del av metadatamodellen i json-format. Den gjeldende modellen vil bli brukt når 'model_search_path' ikke er oppgitt. Argumentet 'options' kan settes til 'cleanup', slik at noen deler av resultatet endres til faste verdier (nyttig for testing). sq ( modelj ( '[gosales].[country].[country]' ) Setter hakeparentes rundt "strenguttrykket". sb ( strenguttrykk ) Eksempel: # sb ( 'abc' ) # Resultat: [abc] Setter enkeltanførselstegn rundt "strenguttrykket". sq ( strenguttrykk ) Eksempel: # sq ( 'null' ) # Resultat: 'null' Setter anførselstegn rundt "strenguttrykket". dq ( strenguttrykk ) Eksempel: # dq ( 'null' ) # Resultat: "null" Bruker identitetsinformasjonen for den autentiserte brukeren til å søke etter verdier i den spesifiserte parameteroversikten. De enkelte delene i brukeridentiteten (kontonavn, gruppenavn, rollenavn) brukes som nøkkel i tilordningen. Den unike listen over verdier hentet fra parameteroversikten, returneres deretter som en streng, der hver verdi omsluttes av enkeltanførselstegn, og der det skilles mellom flere verdier med komma. CSVIdentityName ( %parameteroversiktsnavn [ ; skilletegnstreng ] ) Eksempel: # CSVIdentityName ( %sikkerhetsklareringsnivå_tilordning ) # Resultat: 'level_500' ; 'level_501' ; 'level_700' Returnerer delene i brukeridentiteten (kontonavn, gruppenavn, rollenavn) som en liste med strenger. Den unike listen over verdier returneres som en streng, der hver verdi omsluttes av enkeltanførselstegn, og der det skilles mellom flere verdier med komma. CSVIdentityNameList ( [ skilletegnstreng ] ) Eksempel: # CSVIdentityNameList ( ) # Resultat: 'Alle' ; 'Rapportadministratorer' ; 'Spørringsbruker' Returnerer Cognos® Access Manager-passet. CAMPassport ( ) Eksempel: # CAMPassport ( ) # Resultat: 111:98812d62-4fd4-037b-4354-26414cf7ebef:3677162321 Returnerer delene i brukerens Cognos® Access Manager-ID (CAMID), for eksempel kontonavn, gruppenavn eller rollenavn, som en liste med verdier atskilt med komma. CAMIDList ( [ skilletegnstreng ] ) Eksempel: #CAMIDList ( ) # Resultat: CAMID ( "::Alle" ) , CAMID ( ":Forfattere" ) , CAMID ( ":Spørringsbrukere" ) , CAMID ( ":Forbrukere" ) , CAMID ( ":Styringsparametere Forfattere ) Returnerer en matrise over brukerens Cognos® Access Manager-IDer (CAMIDs) basert på identitetstype (konto, gruppe eller rolle). CAMIDListForType kan brukes med makrofunksjonene csv eller join. CAMIDListForType ( identitetstype ) Eksempel: [qs].[brukerrolle] in ( # csv ( CAMIDListForType ( 'role' ) ) # ) Resultat: [qs].[brukerrolle] in ( 'CAMID ( "::Systemadministratorer ) ' ; 'CAMID ( ":Forfattere )' ) Sammenkjeder to strenger. verdi1 + verdi2 Eksempel: # '{ ' + $runLocale + ' }' # Resultat: {no-no} Fjerner ledetegnene fra det første argumentet. Det valgfrie andre argumentet definerer settet med tegn som skal fjernes. Som standard fjerner denne funksjonen blanktegn (dvs. mellomromstegn, tabulatortegn, vognreturtegn og linjeskifttegn). lstrip ( strenguttrykk [ ; sett_med_tegn ] ) Eksempel: # sq( lstrip ( ' abc ' ) ) # Resultat: 'abc ' Eksempel: # lstrip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Resultat: 53.2100 Returnerer parameterverdien for "parameterName" hvis den er definert. Verdien for "defaultText" vil bli returnert hvis "parameterName" ikke finnes. Når "datatype" er satt til "string", settes resultatverdien i enkeltanførselstegn. Bruk av denne funksjonen fører ikke til et unntak om manglende parameter. ParamValue ( parameterName [ , defaultText [, datatype ] ] ) Eksempel: # ParamValue ( 'p_country' ) # Resultat: 'Canada' - p_country blir definert Resultat: null - p_country er ikke en kjent parameter Resultat: null - p_country brukes i en valgfri forespørsel og blir ikke definert Eksempel: # ParamValue ( 'p_country' , 'Netherlands' ) # Resultat: 'Canada' - p_country blir definert Resultat: 'Netherlands' - p_country er ikke en kjent parameter Resultat: 'Netherlands' - p_country brukes i en valgfri forespørsel og blir ikke definert Eksempel: # ParamValue ( 'p_country', ' cast ( null as varchar(20)) ' , 'token' ) # Resultat: 'Canada' - p_country blir definert Resultat: cast ( null as varchar(20)) - p_country er ikke en kjent parameter Resultat: cast ( null as varchar(20)) - p_country brukes i en valgfri forespørsel og blir ikke definert Ber brukeren om å oppgi en enkelt verdi eller ett enkelt medlem. Bare "forespørselsnavn" kreves. Datatypen settes som standard til 'string' når den ikke er oppgitt. Forespørselen er valgfri når "standardtekst" er oppgitt. "Tekst", når oppgitt, vil stå foran verdien. "Spørringselement" kan oppgis for å utnytte fordelene ved egenskapene til forespørselsinformasjonen for "spørringselement". "Etterfølgende_tekst", når oppgitt, blir føyd til verdien. Når datatypen er 'memberuniquename', blir det opprettet en forespørsel for valg av ett enkelt medlem. Det er fornuftig å gi en standardverdi, som tredje argument. Standardverdien må være et gyldig unikt medlemsnavn. Det kan også være et alias som refererer til et unikt medlemsnavn, som i Report Studio. prompt ( forespørselsnavn ; datatype ; standardtekst ; tekst ; spørringselement ; etterfølgende_tekst ) Eksempel: select . . . where LAND_FLERSPRÅKLIG.LANDKODE > #prompt ( 'Første landkode' ; 'integer' ; '10' ) # Resultat: select . . . where LAND_FLERSPRÅKLIG.LANDKODE > 10 Eksempel: [gosales].[LAND].[LAND] = # prompt ( 'countryPrompt' ; 'string' ; '''Canada''' ) # Resultat: [gosales].[LAND].[LAND] = 'Canada' Eksempel: set ( #prompt ('mittProdukt'; 'memberuniquename'; '[Campingutstyr]'; ''; '[Salg].[Produkt].[Produkt].[Produktkategori]')#) Resultat: set([Salg].[Produkt].[Produkt].[Produktkategori]->[all].[1]) Parameteren "standardtekst" må oppgis slik at den er bokstavelig gyldig i konteksten til makroen, fordi det blir ikke utført noen formatering for denne verdien. Standardstrengen '''Canada''' i eksempel 2 er oppgitt som en streng i enkeltanførselstegn, der innebygde enkeltanførselstegn er fordoblet, derfor 3 anførselstegn. Dette fører til at strengen blir vist på riktig måte i enkeltanførselstegn i uttrykket. En generell regel for datatypen streng er at "standardtekst" alltid må oppgis på denne måten, bortsett fra i konteksten til en lagret prosedyreparameter. For "standardtekst" av typen 'date' eller 'datetime' skal det brukes et spesialformat i konteksten til SQL. Eksempler på disse formatene er 'DATE ''2001-12-25''' og 'DATETIME ''2001-12-25 12:00:00'''. I alle andre kontekster skal du bruke date/datetime uten nøkkelordet og enkeltanførselstegn (for eksempel '2001-12-25'). Ber brukeren om å oppgi en eller flere verdier eller medlemmer. Bare "forespørselsnavn" kreves. Datatypen settes som standard til 'string' når den ikke er oppgitt. Forespørselen er valgfri når "standardtekst" er oppgitt. "Tekst", når oppgitt, vil stå foran listen med verdier. "Spørringselement" kan oppgis for å utnytte fordelene ved egenskapene til forespørselsinformasjonen for "spørringselement". "Etterfølgende_tekst", når oppgitt, blir føyd til listen med verdier. Når datatypen er 'memberuniquename', blir det opprettet en forespørsel for valg av flere medlemmer. Det er fornuftig å gi en standardverdi, som tredje argument. Standardverdien må være et gyldig unikt medlemsnavn. Det kan også være et alias som refererer til et unikt medlemsnavn, som i Report Studio. promptmany ( forespørselsnavn ; datatype ; standardtekst ; tekst ; spørringselement ; etterfølgende_tekst ) Eksempel: select . . . where LAND_FLERSPRÅKLIG.LAND in ( # promptmany ( 'LandNavn' ) # ) Resultat: select . . . where LAND_FLERSPRÅKLIG.LANDKODE in ( 'Canada' ; 'Nederland' ; 'Russland' ) Eksempel: select . . . from gosales.gosales.dbo.LAND_FLERSPRÅKLIG LAND_FLERSPRÅKLIG , gosales.gosales.dbo.LAND XX where LAND_FLERSPRÅKLIG.LANDKODE = XX.LANDKODE # promptmany ( 'Valgte landkoder' ; 'integer' ; ' ' ; ' og LAND_FLERSPRÅKLIG.LANDKODE in ( ' ; '' ; ' ) ' ) # Resultat: select . . . from gosales.gosales.dbo.LAND_FLERSPRÅKLIG LAND_FLERSPRÅKLIG , gosales.gosales.dbo.LAND XX where LAND_FLERSPRÅKLIG.LANDKODE = XX.LANDKODE and LAND_FLERSPRÅKLIG.LANDKODE in ( 'Canada' ; 'Nederland' ; 'Russland' ) Eksempel: set ( #promptmany ('mittProdukt'; 'memberuniquename'; '[Campingutstyr]'; ''; '[Salg].[Produkt].[Produkt].[Produktkategori]')#) Resultat: set([Salg].[Produkt].[Produkt].[Produktkategori]->[all].[1]; [Salg].[Produkt].[Produkt].[Produktkategori]->[all].[2]) Utfør en spørring for en enkelt kolonne og returner verdien i den første (eneste) raden. Resultatet er ikke formatert. Pass på at du omgir kallet med sq ( ) etter behov. queryValue ( verdiuttrykk [ , filteruttrykk ] ) Eksempel: # sq ( queryValue ( 'TheCalendar.TheWeekdayName' , 'TheCalendar.TheDate = 2018-06-06' ) ) # Resultat: 'Wednesday' Konstruerer en matrise fra listen over parametere. array ( strenguttrykk|strenguttrykk { ; strenguttrykk|strenguttrykk } ) Eksempel: # csv ( array ( 'a1' ; array ( 'x1' ; 'x2' ) ; 'a2' ) ) # Resultat: 'a1' ; 'x1' ; 'x2' ; 'a2' Konstruerer en streng fra elementer i matrisen der verdier er atskilt med semikolon. Skilletegn- og anførselstegnstrenger er valgfrie. Standardskilletegnet er semikolon ( ; ) og standardanførselstegnet er enkeltanførselstegn ( ' ). csv ( matriseuttrykk [ ; skilletegnstreng [ ; anførselstegnstreng ] ] ) Eksempel: # sq ( csv ( array ( 'a1' , 'a2' ) ) ) # Resultat: 'a1'; 'a2' Hent en oppføring fra konfigurasjonsfilen til IBM® Cognos®. Flagget_for_tving_dekoding er valgfritt og må være en av disse: 'true' , '1', 1 , 'false', '0', 0. Standard er 'false'. I noen sjeldne tilfeller skal force_decode_flag settes til true. Når force_decode_flag settes til true, vil verdien i ren tekst blir returnert for konfigurasjonsoppføringer som er konfigurert i IBM® Cognos®-konfigurasjonen via Avanserte egenskaper. For oppføringer som ikke er identifisert i Avanserte egenskaper, returneres det en tom streng uavhengig av om det finnes kryptert informasjon. Oppføringen i Avanserte egenskaper er qs.getConfigurationEntry.1 og er en liste med navn atskilt med semikolon. Som standard er denne listen med navn tom, og kall til denne funksjonen med flagget satt til true vil returnere en tom streng. getConfigurationEntry ( oppføringsstreng ; flagg_for_tving_dekoding ) Eksempel: # getConfigurationEntry ( 'serverLocale'  ) # Resultat: en Returnerer en oppføring fra en ressursfil. Det første argumentet er ressurs-IDen som finnes i ressursfilen. Det valgfrie andre argumentet er ressursfilnavnet uten språkmiljøsuffikset (f.eks. 'mfwa4j' for meldingsfilen 'mfwa4j_en.properties'). Standard ressursfil er 'xqejavamsgs'. Det valgfrie tredje argumentet er språkmiljøet, som er 'en' som standard. getResourceString ( ressurs_id_streng [, ressursfil_streng [ , språkmiljøstreng ] ] ) Eksempel: # getResourceString ( 'XQE_BIN_binLow' ) # Resultat: XQE-BIN-0001 mindre enn %1 Eksempel: # getResourceString ( 'MFW_UT_INTERNAL_ERROR' , 'mfw4j' , 'en' ) # Resultat: MFW-UT-1002 Det har oppstått et internt problem. Kontakt systemadministratoren. Søker etter og returnerer elementer i en matrise som samsvarer med mønsteret som er oppgitt i "mønsterstreng". De eneste støttede metategnene er: ^ (begynnelsen av ord), $ (slutten av ord), ! (negering - støttes bare som første tegn). grep ( mønsterstreng ; matriseuttrykk ) Eksempel: # sq ( csv ( grep ( 's' , array ( 'as', 'an', 'arts' ) ) ) ) # Resultat: 'as', 'arts' Eksempel: # sq ( csv ( grep ( '^g' , array ( 'group', 'golf' ) ) ) ) # Resultat: 'group', 'golf' Eksempel: # sq ( csv ( grep ( 's$' , array ( 'oranges', 'mangoes' ) ) ) ) # Resultat: 'oranges', 'mangoes' Eksempel: # sq ( csv ( grep ( '!o' , array ( 'oranges', 'apples' ) ) ) ) # Resultat: 'apples' Finn forskyvningen i 'str' der 'delstr' blir funnet. Verdien -1 blir returnert når 'delstr' ikke blir funnet. Du kan også gi en valgfri 'forskyvning' som søket skal starte på. Det første argumentet 'str' kan også være et matriseuttrykk. I så fall blir funksjonen brukt for hvert matriseelement, og funksjonsresultatet er en matrise med verdier. index ( str , delstr [ , forskyvning ] ) # index ( 'The black horse jumped over the black sheep.', 'black' ) # Resultat: 4 # index ( 'The black horse jumped over the black sheep.', 'black', 10 ) # Resultat: 32 # index ( 'The black horse jumped over the black sheep.', 'green' ) # Resultat: -1 # sq ( join ( ' | ', index ( array ('black' , 'red', 'green' ) , 'e' ) ) ) # Resultat: -1 | 1 | 2 Kobler sammen elementene i en matrise ved å bruke "skilletegnstreng". join ( skilletegnstreng ; matriseuttrykk ) Eksempel: # sq ( join ( ' | | ' ; array ( 'as'; 'an'; 'arts' ) ) ) # Resultat: 'as | | an | | arts' Beregner antall tegn i strenguttrykk. Hvis argumentet er et matriseuttrykk, vil resultatet være en matrise med verdier, og hver oppføring vil være antall tegn i hvert av elementene i matriseuttrykket. length ( strenguttrykk | matriseuttrykk ) length ( 'abcdef' ) Resultat: 6 join ( '--', length ( array ( 'abcdef' , 'xyz' ) ) ) Resultat: 6--3 Finn siste forskyvning i 'str' der 'delstr' blir funnet. Denne funksjonen kalles omvendt indeks. Du kan se på den som at den starter søket fra slutten av strengen. Verdien -1 blir returnert når 'delstr' ikke blir funnet. Du kan også gi en valgfri 'forskyvning' som søket skal slutte på. Det første argumentet 'str' kan være et matriseuttrykk. I så fall blir funksjonen brukt for hvert matriseelement, og funksjonsresultatet er en matrise med verdier. rindex ( str , delstr [ , forskyvning ] ) # rindex ( 'The black horse jumped over the black sheep.', 'black' ) # Resultat: 32 # rindex ( 'The black horse jumped over the black sheep.', 'black', 10 ) # Resultat: 4 # rindex ( 'The black horse jumped over the black sheep.', 'green' ) # Resultat: -1 # sq ( join ( ' | ', rindex ( array ('black' , 'red', 'green' ) , 'e' ) ) ) # Resultat: -1 | 1 | 3 Fjerner følgetegnene fra det første argumentet. Det valgfrie andre argumentet definerer settet med tegn som skal fjernes. Som standard fjerner denne funksjonen blanktegn (dvs. mellomromstegn, tabulatortegn, vognreturtegn og linjeskifttegn). rstrip ( strenguttrykk [ ; sett_med_tegn ] ) Eksempel: # sq( rstrip ( ' abc ' ) ) # Resultat: 'abc ' Eksempel: # rstrip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Resultat: 0053.21 Sorterer elementene i en matrise i alfabetisk rekkefølge. Duplikater blir beholdt. sort ( matriseuttrykk ) Eksempel: # csv ( sort ( array ( 's3'; 'a'; 'x' ) ) ) # Resultat: 'a', 's3', 'x' Deler en streng eller strengelementer i en matrise i separate elementer. split ( mønsterstreng; strenguttrykk|matriseuttrykk ) Eksempel: # sq ( csv ( split ( '::', 'ab=c::de=f::gh=i' ) ) ) # Resultat: 'ab=c', 'de=f', 'gh=i' Eksempel: # sq ( csv ( split ( '=' , split ( '::', 'ab=c::de=f::gh=i' ) ) ) ) # Resultat: 'ab', 'c', 'de', 'f', 'gh', 'i' Fjerner lede- og følgetegnene fra det første argumentet. Det valgfrie andre argumentet definerer settet med tegn som skal fjernes. Som standard fjerner denne funksjonen blanktegn (dvs. mellomromstegn, tabulatortegn, vognreturtegn og linjeskifttegn). strip ( strenguttrykk [ ; sett_med_tegn ] ) Eksempel: # sq( strip ( ' abc ' ) ) # Resultat: 'abc' Eksempel: # strip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Resultat: 53.21 Søker etter et mønster i en streng eller i strengelementene i en matrise, og erstatter den første forekomsten av "mønsterstreng" med "erstatningsstreng". De eneste støttede metategnene er: ^ (begynnelsen av ord), $ (slutten av ord) substitute ( mønsterstreng; erstatningsstreng; strenguttrykk|matriseuttrykk ) Eksempel: #sq ( substitute ( '^cn='; '***'; 'cn=help' ) )# Resultat: '***help' Eksempel: # csv ( substitute ( '^cn='; '***'; array ( 'cn=help' ; 'acn=5' ) ) ) # Resultat: '***help', 'acn=5' Eksempel: # csv ( substitute ( 'cn='; ''; array ( 'cn=help' ; 'acn=5' ) ) ) # Resultat: 'help', 'a5' Eksempel: #sq ( substitute ( 'help$', '***', 'cn=help' ) )# Resultat: 'cn=***' Trekker ut en del fra 'strenguttrykk' fra 'start_forskyvning'. Du kan oppgi 'lengde' for å trekke ut et bestemt antall tegn. Hvis 'lengde' ikke blir oppgitt, returneres tegnene frem til slutten av 'strenguttrykk'. Det første argumentet kan også være et matriseuttrykk. I så fall blir funksjonen brukt for hvert matriseelement, og funksjonsresultatet er en matrise med strenger. substr ( strenguttrykk , start_forskyvning [ , lengde ] ) substr ( 'The horse is black.', 0, 3 ) Resultat: The substr ( 'The horse is black.', 4 ) Resultat: horse is black. substr ( 'The horse is black', index ('The horse is black.' , 'green' ) ) Resultat: The horse is black. join ( ' | ', substr ( array ('black' , 'red', 'green' ) , 2, 2 ) ) Resultat: ac | d | en substr ('over the moon', -2, 4) Resulterer i en feil: Det andre argumentet i funksjonen 'substr' må være større enn eller lik -1.' . Returnerer "strenguttrykk1", som representerer en systemtid med tidssone kuttet til formatet som er oppgitt i "strenguttrykk2". Formatet i "strenguttrykk2" må være et av følgende: 'åååå', 'mm', 'dd', 'åååå-mm', 'ååååmm', 'åååå-mm-dd', 'ååååmmdd', 'åååå-mm-dd tt:mm:ss', 'åååå-mm-dd tt:mm:ss+hh:mm', 'åååå-mm-dd tt:mm:ss.ff3', 'åååå-mm-dd tt:mm:ss.ff3+tt:mm', 'åååå-mm-ddTtt:mm:ss', 'åååå-mm-ddTtt:mm:ss+tt:mm', 'åååå-mm-ddTtt:mm:ss.ff3+tt:mm', eller 'åååå-mm-ddTtt:mm:ss.ff3+tt:mm'. Makrofunksjonene som returnerer en strengrepresentasjon av en systemtid med tidssone, viser som standard en presisjon på 9 sifre for sekundbrøkdelen. Formatvalgene gjør det mulig å kutte dette ned til en presisjon på 3 eller 0. timestampMask ( strenguttrykk1 ; strenguttrykk2 ) Eksempel: # timestampMask ( $gjeldende_systemtid ; 'åååå-dd-mm' ) # Resultat: 2005-11-01 Eksempel: # timestampMask (  '2005-11-01 12:00:00.000-05:00' ; 'åååå-mm-dd tt:mm:ss+tt:mm' ) # Resultat: 2005-11-01 12:00:00-05:00 Eksempel: # timestampMask (  '2005-11-01 12:00:00.123456789-05:00' ; 'åååå-mm-ddTtt:mm:ss+tt:mm.ff3+tt:mm' ) # Resultat: 2005-11-01T12:00:00.123-05:00 Returnerer strengen som representerer en systemtid med tidssone, som et resultat av justering av "strenguttrykk" til tidssonen i operativsystemet. Vær oppmerksom på at makrofunksjonen timestampMask () kan brukes til å kutte utdataene. toLocal ( strenguttrykk ) Eksempel: # toLocal ( '2005-11-01 17:00:00.000-00:00' ) # - der lokal tidssone for OS er -05:00 Resultat: 2005-11-01 12:00:00.000000000-05:00 Eksempel: # timestampMask ( toLocal ( '2005-11-01 17:00:00.000-00:00' ) ; 'åååå-mm-dd tt:mm:ss+tt:mm' ) # - der lokal tidssone for OS er -05:00 Resultat: 2005-11-01 12:00:00-05:00 Eksempel: # toLocal ( '2005-11-01 13:30:00.000-03:30' ) # - der lokal tidssone for OS er -05:00 Resultat: 2005-11-01 12:00:00.000000000-05:00 Returnerer strengen "strenguttrykk" med alle tegnene konvertert til små bokstaver ved hjelp av reglene for språkmiljøet "språkmiljøstreng". Hvis det ikke blir oppgitt noe språkmiljø, brukes språkmiljøet 'en'. tolower ( strenguttrykk [ ; språkmiljøstreng ] ) Eksempel: # tolower ( 'ABC' ) # Resultat: abc Eksempel: # tolower ( 'ABC' ; 'fr' ) # Resultat: abc Returnerer strengen "strenguttrykk" med alle tegnene konvertert til store bokstaver ved hjelp av reglene for språkmiljøet som er definert i "språkmiljøstreng". Hvis "språkmiljøstreng" ikke blir oppgitt, brukes språkmiljøet 'en'. toupper ( strenguttrykk [ ; språkmiljøstreng ] ) Eksempel: # toupper ( 'abc' ) # Resultat: ABC Eksempel: # toupper ( 'abc' ; 'fr' ) # Resultat: ABC Returnerer strengen som representerer en systemtid med tidssone, som et resultat av justering av "strenguttrykk" til nullpunktreferanse UTC tidssone, også kalt GMT-tid. Vær oppmerksom på at makrofunksjonen timestampMask () kan brukes til å kutte utdataene. toUTC ( strenguttrykk ) Eksempel: # toUTC ( '2005-11-01 12:00:00.000-05:00' ) # Resultat: 2005-11-01 17:00:00.000000000-00:00 Eksempel: # timestampMask( toUTC ( '2005-11-01 12:00:00.000-05:00' ) ; 'åååå-mm-dd tt:mm:ss.ff3+tt:mm' ) # Resultat: 2005-11-01 17:00:00.000-00:00 Eksempel: # toUTC ( $gjeldende_systemtid ) # Resultat: 2005-11-01 17:00:00.000000000-00:00 Fjerner duplikatoppføringer i matrisen. Elementrekkefølgen blir beholdt. unique ( matriseuttrykk ) # csv ( unique ( array ( 's3'; 'a'; 's3'; 'x' ) ) ) # Resultat: 's3', 'a', 'x' URL-koding av det sendte argumentet. Denne funksjonen er nyttig når du spesifiserer XML-tilkoblingsstrenger. urlencode ( prompt ( 'brukerverdi' ) ) urlencode ( prompt ( 'en_verdi' ) ) %27testVerdi%27 simple case Denne makrosetningen er malen for et enkelt case-uttrykk, inkludert then-, when-, then-, else- og end-funksjonene. Legg merke til at denne makrosetningen bare støttes i DQM-modus. CASE <uttrykk> WHEN <litteral> THEN <uttrykk> [ELSE <uttrykk>] END Eksempel: #CASE prompt('pDateRange','token') WHEN 'Gjeldende uke' THEN '[PR Gjeldende uke]' ELSE '[PR Foregående uke]' END# Resultat: [PR Gjeldende uke]
Blokkeringsfunksjoner Denne listen inneholder funksjoner som brukes for å få tilgang til medlemmer i et sett, vanligvis i konteksten til Analysis Studio. Returnerer de første medlemmene som ble funnet i settet, opptil "numerisk_uttrykk_maksimum" + "numerisk_uttrykk_overflyt". Hvis "numerisk_uttrykk_maksimum" + "numerisk_uttrykk_overflyt" overskrides, returneres bare det maksimale antallet medlemmer. Hvis et sett bare har et par medlemmer mer enn det som er oppgitt for numerisk_uttrykk_maksimum, tillater numerisk_uttrykk_overflyt at de ekstra medlemmene blir inkludert. Hvis settet har flere medlemmer enn det overflyt tillater, returneres bare numerisk_uttrykk_maksimum-medlemmene. _firstFromSet ( settuttrykk ; numerisk_uttrykk_maksimum ; numerisk_uttrykk_overflyt ) _firstFromSet ( [Ferie_og_Fritid_AS].[Produkter].[Produkter].[Produktkategori] ; 2 ; 8 ) Resultat: Returnerer fem medlemmer i produktkategorisettet. De to første medlemmene returneres innenfor maksimum, og de tre neste medlemmene returneres som overflyt. Campingutstyr Golfutstyr Klatreutstyr Utendørs beskyttelsesutstyr Personlig tilbehør _firstFromSet ( [Ferie_og_Fritid_AS].[Produkter].[Produkter].[Produktkategori] ; 2 ; 2 ) Resultat: Campingutstyr, Golfutstyr Returnerer et sett som inneholder "medlemsuttrykk" når størrelsen på "medlemsuttrykk" er større enn "numerisk_uttrykk", for eksempel et nytt medlem blir generert hvis antall medlemmer i "gruppeuttrykk" er større enn oppgitt "numerisk_uttrykk". _remainderSet ( medlemsuttrykk; settuttrykk ; numerisk_uttrykk ) _remainderSet ( member ( aggregate ( currentMeasure within set [Ferie_og_Fritid_AS].[Produkter].[Produkter].[Produktkategori] ) ; 'Product Aggregate' ; 'Product Aggregate' ; [Ferie_og_Fritid_AS].[Produkter].[Produkter] ) ; [Ferie_og_Fritid_AS].[Produkter].[Produkter].[Produktkategori] ; 1 ) Resultat: Kvantum solgt for produktaggregering