Anbieterspezifische Funktionen Konstanten Eine Konstante ist ein fester Wert, den Sie in einem Ausdruck verwenden können. Operatoren Operatoren legen fest, was mit den Werten auf beiden Seiten des Operators geschehen soll. Operatoren gleichen Funktionen, da sie Datenelemente manipulieren und ein Ergebnis zurückgeben. Datum Fügt das aktuelle Systemdatum ein. Datum/Uhrzeit Fügt das aktuelle Systemdatum/die aktuelle Systemuhrzeit ein. Uhrzeit mit Zeitzone Fügt einen Nullzeitwert mit einer Zeitzone ein. Zeitmarke mit Zeitzone Fügt ein Beispiel einer Zeitmarke mit einer Zeitzone ein. Fügt Werte ein, die 'falsch' sind. intervall Fügt ein Nullintervall ein: 000 00:00:00,000. Jahresintervall Fügt ein Null-Jahresintervall ein: 0 Jahre. Monatsintervall Fügt ein Null-Monatsintervall ein: 0 Monate. Jahr-bis-Monat-Intervall Fügt ein Jahr-bis-Monat-Intervall mit Nullwert ein: 0000-00 Jahre bis Monat. Tagesintervall Fügt ein Null-Tagesintervall ein: 0 Tage. Stundenintervall Fügt ein Null-Stundenintervall ein: 0 Stunden. Minutenintervall Fügt ein Null-Minutenintervall ein: 0 Minuten. Sekundenintervall Fügt ein Null-Sekundenintervall ein: 0 Sekunden. Tag-bis-Stunde-Intervall Fügt ein Tag-bis-Stunde-Intervall mit Nullwert ein: 0 00 Tage bis Stunden. Tag-bis-Minute-Intervall Fügt ein Tag-bis-Minute-Intervall mit Nullwert ein: 0 00:00 Tage bis Minuten. Tag-bis-Sekunde-Intervall Fügt ein Tag-bis-Sekunde-Intervall mit Nullwert ein: 0 00:00:00,000000000 Tage bis Sekunden. Stunde-bis-Minute-Intervall Fügt ein Stunde-bis-Minute-Intervall mit Nullwert ein: 00:00 Stunden bis Minuten. Stunde-bis-Sekunde-Intervall Fügt ein Stunde-bis-Sekunde-Intervall mit Nullwert ein: 00:00:00,000000000 Stunden bis Sekunden. Minute-bis-Sekunde-Intervall Fügt ein Minute-bis-Sekunde-Intervall mit Nullwert ein: 00:00,000000000 Minuten bis Sekunde. Fügt 'Null' ein, wenn die Bedingungen des Ausdrucks nicht erfüllt sind. Zahl Fügt die Zahl 0 ein, die durch einen neuen numerischen Wert ersetzt werden kann. Zeichenfolge Fügt eine leere Zeichenfolge in Form von zwei einzelnen Anführungszeichen ein, zwischen denen Sie eine Zeichenfolge eingeben können. Uhrzeit Fügt die aktuelle Systemuhrzeit ein. Fügt Werte ein, die 'wahr' sind.
Identifiziert den Beginn eines Ausdrucks. ( Ausdruck ) Identifiziert das Ende eines Ausdrucks. ( Ausdruck ) Multipliziert zwei numerische Werte miteinander. Wert1 * Wert2 , Trennt Ausdruckskomponenten. expression ( Parameter1; Parameter2 ) Dividiert zwei numerische Werte. Wert1 / Wert2 Verkettet oder verknüpft Zeichenfolgen. Zeichenfolge1 || Zeichenfolge2 Fügt zwei numerische Werte hinzu. Wert1 + Wert2 Subtrahiert zwei numerische Werte voneinander oder negiert einen numerischen Wert. Wert1 - Wert2 oder - Wert Vergleicht die Werte, die durch 'Wert1' dargestellt werden, mit 'Wert2', und ruft diejenigen Werte ab, die kleiner als 'Wert2' sind. Wert1 < Wert2 Vergleicht die Werte, die durch 'Wert1' dargestellt werden, mit 'Wert2', und ruft diejenigen Werte ab, die kleiner als oder gleich 'Wert2' sind. Wert1 <= Wert2 Vergleicht die Werte, die durch 'Wert1' dargestellt werden, mit 'Wert2', und ruft diejenigen Werte ab, die ungleich 'Wert2' sind. Wert1 <> Wert2 Vergleicht die Werte, die durch 'Wert1' dargestellt werden, mit 'Wert2', und ruft diejenigen Werte ab, die gleich 'Wert2' sind. Wert1 = Wert2 Vergleicht die Werte, die durch 'Wert1' dargestellt werden, mit 'Wert2', und ruft diejenigen Werte ab, die größer als 'Wert2' sind. Wert1 > Wert2 Wird in einem Literal-Mitgliedsausdruck als Trennzeichen für Komponenten verwendet. [Namespace].[Dimension].[Hierarchie].[Ebene]->[L1] Vergleicht die Werte, die durch 'Wert1' dargestellt werden, mit 'Wert2', und ruft diejenigen Werte ab, die größer als oder gleich 'Wert2' sind. Wert1 >= Wert2 Gibt den Wert 'Wahr' zurück, wenn die Bedingungen auf beiden Seiten des Ausdrucks erfüllt werden. Argument1 and Argument2 Wird zusammen mit Auswertungsausdrücken verwendet, um den Bereich zu definieren, der auf Grundlage der gruppierten Spalten in der Abfrage angepasst werden soll. Der Bereich ist kontextabhängig. Aggregatfunktion ( Ausdruck AUTO ) Bestimmt, ob ein Wert in einen vorgegebenen Bereich fällt. Ausdruck between Wert1 and Wert2 Beispiel: [Einnahmen] between 200 and 300 Ergebnis: Gibt die Anzahl von Ergebnissen mit Einnahmen zwischen 200 und 300 zurück. Revenue Between ---- ---- $332.06 false $230.55 true $107.94 false Wird zusammen mit 'when', 'then', 'else' und 'end' verwendet. 'Case' identifiziert den Beginn einer spezifischen Situation, in der When-, Then- und Else-Aktionen definiert werden. case Ausdruck { when Ausdruck then Ausdruck } [ else Ausdruck ] end Stellt fest, ob 'Zeichenfolge2' in 'Zeichenfolge1' enthalten ist. Diese Syntax unterstützt beide Metazeichen: das Prozentzeichen (%) stellt null, ein oder mehrere Zeichen dar, das Unterstrichzeichen (_) stellt ein beliebiges Zeichen dar. Das optionale Schlüsselwort LITERAL gibt an, wie '%' und '_' inerpretiert werden. Ist das Schlüsselwort LITERAL vorhanden, werden '%' und '_' nicht als Metazeichen behandelt (Beispiel 3 und 5). Ist das Schlüsselwort LITERAL nicht vorhanden, werden '%' und '_' als Metazeichen behandelt (Beispiel 1, 2 und 4). Zeichenfolge1 contains [LITERAL] Zeichenfolge2 Beispiel 1: [PRODUKTREIHE] contains 'door' Ergebnis 1: Outdoor Equipment Beispel 2: [PRODUKTREIHE] contains 'Golf%' Ergebnis 2: Golf Equipment Beispiel 3: [PRODUKTREIHE] contains literal 'Golf%' Ergebnis 3: Golf% Beispiel 4: [PRODUKTREIHE] contains 'Current_Year%' Ergebnis 4: Current Year Price, Current Year Price%, Current_Year Price%. Beispiel 5: [PRODUKTREIHE] contains literal 'Current_Year%' Ergebnis 5: Current_Year%. Schlüsselwort, das als erstes Argument von Mitgliedsauswertungsfunktionen verwendet werden kann. Diese Funktion finden Sie im Package 'AUF Data Warehouse (Abfrage)' im Beispielbericht 'Gesamteinnahmen nach Land'. Aggregatfunktion ( currentMeasure within set Ausdruck ) current_date Gibt das aktuelle Datum der Datenbank zurück. current_date Wird mit dem lookup-Konstrukt verwendet. lookup (....) in (....) default (....) Ein in einem Aggregatausdruck verwendetes Schlüsselwort, das ausschließlich eindeutige Vorkommen von Werten einschließt. Siehe auch die Funktion 'unique'. distinct Datenelement Beispiel: count ( distinct [Bestellung_Detail_Menge] ) Ergebnis: 1704 Wird zusammen mit if- oder case-Konstrukten verwendet. Wenn die if-Bedingung oder der case-Ausdruck nicht erfüllt werden, wird der else-Ausdruck verwendet. Diese Funktion finden Sie im Package 'AUF Data Warehouse (Analyse)' im Beispielbericht 'Die besten 10 Einzelhändler 2005'. if ( Bedingung ) then .... else ( Ausdruck ) ; oder case .... else ( Ausdruck ) end Gibt das Ende eines case- oder when-Konstrukts an. case .... end Stellt fest, ob "Zeichenfolge1" mit "Zeichenfolge2" endet. Diese Syntax unterstützt beide Metazeichen: das Prozentzeichen (%) stellt null, ein oder mehrere Zeichen dar, das Unterstrichzeichen (_) stellt ein beliebiges Zeichen dar. Das optionale Schlüsselwort LITERAL gibt an, wie '%' und '_' inerpretiert werden. Ist das Schlüsselwort LITERAL vorhanden, werden '%' und '_' nicht als Metazeichen behandelt (Beispiel 3 und 5). Ist das Schlüsselwort LITERAL nicht vorhanden, werden '%' und '_' als Metazeichen behandelt (Beispiel 1, 2 und 4). Zeichenfolge1 ends with [LITERAL] Zeichenfolge2 Beispiel 1: [PRODUKTREIHE] ends with 'Equipment' Ergebnis 1: Camping Equipment, Golf Equipment Beispiel 2: [PRODUKTREIHE] ends with '%Equipment' Ergebnis 2: Golf Equipment, Camping Equipment Beispiel 3: [PRODUKTREIHE] ends with literal 'Equipment%' Ergebnis 3: Equipment% Beispiel 4: [PRODUKTREIHE] ends with '%Price' Ergebnis 4: Product Price, Current_Year Price Beispiel 5: [PRODUKTREIHE] ends with literal '%Price' Ergebnis 5: %Price Stellt fest, ob "Zeichenfolge1" dem Muster von "Zeichenfolge2" entspricht, wobei das Zeichen "Zeichen" optional als Escapezeichen in der Musterzeichenfolge verwendet wird. Zeichenfolge1 LIKE Zeichenfolge2 [ ESCAPE Zeichen ] Beispiel: [PRODUKTREIHE] like 'G%' Ergebnis: Alle Produktreihen, die mit 'G' beginnen. Beispiel: [PRODUKTREIHE] like '%Ga%' escape 'a' Ergebnis: Alle Produktreihen, die mit 'G%' enden. Wird zusammen mit Auswertungsausdrücken verwendet, um den Bereich der Aggregation in der Abfrage zu definieren. Aggregatfunktion ( Ausdruck for Ausdruck{ ; Ausdruck } ) Wird zusammen mit Auswertungsausdrücken verwendet, um den Bereich zu definieren, der auf Grundlage eines Subsets gruppierter Spalten in der Abfrage angepasst werden soll. Entspricht der for-Klausel. Aggregatfunktion ( Ausdruck for ANY Ausdruck{ ; Ausdruck } ) Wird zusammen mit Auswertungsausdrücken verwendet, um einen Bereich zu definieren, der alle gruppierten Spalten in der Abfrage umfassen soll. Siehe auch for-Klausel. Aggregatfunktion ( Ausdruck for ALL Ausdruck{ ; Ausdruck } ) Wird zusammen mit Auswertungsausdrücken verwendet, um einen Bereich zu definieren, der die gesamte Abfrage umfassen soll. Siehe auch for-Klausel. Diese Funktion finden Sie im Package 'AUF Data Warehouse (Analyse)' im Beispielbericht 'Kundenzufriedenheit und -retouren'. Aggregatfunktion ( Ausdruck for report ) Wird zusammen mit then- und else-Konstrukten verwendet. 'If' definiert eine Bedingung. Wenn die if-Bedingung erfüllt ist, wird der then-Ausdruck verwendet. Wenn die if-Bedingung nicht erfüllt ist, wird der else-Ausdruck verwendet. Diese Funktion finden Sie im Package 'AUF Data Warehouse (Analyse)' im Beispielbericht 'Die besten 10 Einzelhändler 2005'. if ( Bedingung ) then ( Ausdruck ) else ( Ausdruck ) Stellt fest, ob 'Ausdruck1' in einer angegebenen Liste von Ausdrücken vorhanden ist. Ausdruck1 in ( Ausdruck_Liste ) Stellt fest, ob 'Ausdruck1' in einer angegebenen Liste mit konstanten Werten bzw. Bereichen vorhanden ist. Ausdruck1 in_range { Konstante : Konstante [ ; Konstante : Konstante ] } Beispiel: [Code] in_range { 5 } Ergebnis: Entspricht [Code] = 5. Beispiel: [Code] in_range { 5: } Ergebnis: Entspricht [Code] >= 5. Beispiel: [Code] in_range { :5 } Ergebnis: Entspricht [Code] <= 5. Beispiel: [Code] in_range { 5:10 } Ergebnis: Entspricht ( [Code] >= 5 und [Code] <= 10 ). Beispiel: [Code] in_range { :5;10;20: } Ergebnis: Entspricht ( [Code] <= 5 oder [Code] = 10 oder [Code] >= 20 ). Stellt fest, ob 'Wert' in den Daten nicht definiert ist. Wert is missing Stellt fest, ob 'Wert' in den Daten nicht definiert ist. Wert is null Stellt fest, ob 'Wert' in den Daten definiert ist. Wert is not missing Stellt fest, ob 'Wert' in den Daten definiert ist. Wert is not null Stellt fest, ob "Zeichenfolge1" dem Muster von "Zeichenfolge2" entspricht, wobei das Zeichen "Zeichen" optional als Escapezeichen in der Musterzeichenfolge verwendet wird. Diese Syntax unterstützt beide Metazeichen: das Prozentzeichen (%) stellt null, ein oder mehrere Zeichen dar, das Unterstrichzeichen (_) stellt ein beliebiges Zeichen dar. Zeichenfolge1 LIKE Zeichenfolge2 [ ESCAPE Zeichen ] Beispiel 1: [PRODUKTREIHE] like 'G%' Ergebnis 1: Alle Produktreihen, die mit 'G' beginnen. Beispiel 2: [PRODUKTREIHE] like '%Ga%' escape 'a' Ergebnis 2: Alle Produktreihen, die mit 'G%' enden. Beispiel 3: [PRODUKTREIHE] like 'C_R_' Ergebnis 3: Alle Produktreihen mit den Namen CARS oder CARD. Beispiel: lookup ( [Land]) in ( 'Kanada'--> ( [Listenpreis] * 0,60); 'Australien'--> ( [Listenpreis] * 0,80 ) ) default ( [Listenpreis] ) Sucht und ersetzt Daten mit einem von Ihnen angegebenen Wert. Das Case-Konstrukt sollte hier bevorzugt verwendet werden. lookup ( Name ) in ( Wert1 --> Wert2 ) default ( Ausdruck ) Gibt WAHR zurück, wenn 'Argument' falsch ist, oder gibt FALSCH zurück, wenn 'Argument' wahr ist. NOT-Argument Gibt WAHR zurück, wenn entweder 'Argument1' oder 'Argument2' wahr ist. Argument1 or Argument2 Führt vor dem Anwenden des Auswertungsfilters eine Auswertungsberechnung durch. Auswertungsfunktion ([Ausdruck] prefilter) Beispiel: total ( [Menge] for report prefilter ) summaryFilter: total( [Menge] for [Produktnr.] ) > 50000 Ergebnis: Summiert die Mengen in einem Bericht, bevor der Auswertungsfilter angewendet wird. 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 Zählt die Anzahl von Zeilen, die von der Abfrage ausgegeben werden. Wird zusammen mit Count() verwendet. count ( ROWS ) Zählt die Anzahl von Zeilen, die von der Abfrage ausgegeben werden. Wird zusammen mit Count() verwendet. count ( ROWS  [ Ausdruck ]) Stellt fest, ob 'Zeichenfolge1' mit 'Zeichenfolge2' beginnt. Diese Syntax unterstützt beide Metazeichen: das Prozentzeichen (%) stellt null, ein oder mehrere Zeichen dar, das Unterstrichzeichen (_) stellt ein beliebiges Zeichen dar. Das optionale Schlüsselwort LITERAL gibt an, wie '%' und '_' inerpretiert werden. Ist das Schlüsselwort LITERAL vorhanden, werden '%' und '_' nicht als Metazeichen behandelt (Beispiel 3 und 5). Ist das Schlüsselwort LITERAL nicht vorhanden, werden '%' und '_' als Metazeichen behandelt (Beispiel 1, 2 und 4). Zeichenfolge1 starts with [LITERAL] Zeichenfolge2 Beispiel 1: [PRODUKTREIHE] starts with 'Golf' Ergebnis 1: Golf Equipment Beispiel 2: [PRODUKTREIHE] starts with 'Outdoor%' Ergebnis 2: Outdoor Equipment Beispiel 3: [PRODUKTREIHE] starts with literal 'Golf%' Ergebnis 3: Golf% Beispiel 4: [PRODUKTREIHE] starts with 'Current_Year%' Ergebnis 4: Current Year Price, Current Year Price%, Current_Year Price% Beispiel 5: [PRODUKTREIHE] starts with literal 'Current_Year%' Ergebnis 5: Current_Year% Wird zusammen mit if- oder case-Konstrukten verwendet. Wenn die if-Bedingung oder der when-Ausdruck erfüllt sind, wird der then-Ausdruck verwendet. Diese Funktion finden Sie im Package 'AUF Data Warehouse (Analyse)' im Beispielbericht 'Die besten 10 Einzelhändler 2005'. if ( Bedingung ) then ...; oder case Ausdruck when Ausdruck then .... end Wird mit dem case-Konstrukt verwendet. Sie können Bedingungen definieren, die eintreten, wenn der WHEN-Ausdruck wahr ist. case [Ausdruck] when ... end
Auswertungen Diese Liste enthält vordefinierte Funktionen, die entweder einen einzelnen Auswertungswert für eine Gruppe verwandter Werte oder jeweils einen unterschiedlichen Wert für jede Instanz einer Gruppe verwandter Werte zurückgeben. Gibt einen berechneten Wert mithilfe der entsprechenden Aggregatfunktion auf Grundlage des Aggregationstyps des Ausdrucks zurück. Diese Funktion finden Sie im Package 'AUF Data Warehouse (Analyse)' im Beispielbericht 'Budget verglichen mit Istwerten'. aggregate ( Ausdruck [ auto ] ) aggregate ( Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) aggregate ( Ausdruck for report ) Gibt den durchschnittlichen Wert der ausgewählten Datenelemente zurück. 'Distinct' ist ein alternativer Ausdruck, der mit früheren Versionen des Produkts kompatibel ist. average ( [ distinct ] Ausdruck [ auto ] ) average ( [ distinct ] Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) average ( [ distinct ] Ausdruck for report ) Beispiel: average ( Umsatz ) Ergebnis: Gibt den Durchschnitt aller Umsatzwerte zurück. Gibt die Anzahl der ausgewählten Datenelemente unter Ausschluss von Nullwerten zurück. 'Distinct' ist ein alternativer Ausdruck, der mit früheren Versionen des Produkts kompatibel ist. 'All' wird nur im DQM-Modus unterstützt und vermeidet die Annahme der doppelten Zählung eines Datenelements einer Dimensionstabelle. count ( [ all | distinct ] Ausdruck [ auto ] ) count ( [ all | distinct ] Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) count ( [ all | distinct ] Ausdruck for report ) Beispiel: count ( Umsatz ) Ergebnis: Gibt die Gesamtzahl aller Einträge unter 'Umsatz' zurück. Gibt den Maximalwert der ausgewählten Datenelemente zurück. 'Distinct' ist ein alternativer Ausdruck, der mit früheren Versionen des Produkts kompatibel ist. maximum ( [ distinct ] Ausdruck [ auto ] ) maximum ( [ distinct ] Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) maximum ( [ distinct ] Ausdruck for report ) Beispiel: maximum ( Umsatz ) Ergebnis: Gibt den Maximalwert aller Umsatzwerte zurück. Gibt den Medianwert der gewählten Datenelemente zurück. median ( Ausdruck [ auto ] ) median ( Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) median ( Ausdruck for report ) Gibt den Minimalwert der ausgewählten Datenelemente zurück. 'Distinct' ist ein alternativer Ausdruck, der mit früheren Versionen des Produkts kompatibel ist. minimum ( [ distinct ] Ausdruck [ auto ] ) minimum ( [ distinct ] Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) minimum ( [ distinct ] Ausdruck for report ) Beispiel: minimum ( Umsatz ) Ergebnis: Gibt den Minimalwert aller Umsatzwerte zurück. Gibt einen dynamischen Zeilenmittelwert für einen bestimmten Satz von Werten über eine bestimmte Anzahl von Zeilen zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. moving-average ( numerischer_Ausdruck ; numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) moving-average (  numerischer_Ausdruck ; numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: moving-average ( Menge ; 3 ) Ergebnis: Gibt für jede Zeile die Menge und einen dynamischen Mittelwert der aktuellen Zeile und der beiden vorherigen Zeilen an. Qty Moving-Average (Qty, 3) ------ ------------------------------------ 200 200 700 450 400 433.3333 200 433.3333 200 266.6667 500 300.0000 Gibt eine dynamische Zeilensumme für einen bestimmten Satz von Werten über eine bestimmte Anzahl von Zeilen zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. moving-total ( numerischer_Ausdruck ; numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) moving-total (  numerischer_Ausdruck ; numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: moving-total ( Menge ; 3 ) Ergebnis: Gibt für jede Zeile die Menge und eine dynamische Summe der aktuellen Zeile und der beiden vorherigen Zeilen an. Qty Moving-Total (Qty, 3) ------ -------------------------------- 200 200 700 900 400 1300 200 1300 200 800 500 900 Gibt den Prozentsatz des Gesamtwerts für die ausgewählten Datenelemente zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. Diese Funktion finden Sie im interaktiven Beispielbericht "Prozentsatzberechnung (nach Jahr)". percentage ( numerischer_Ausdruck [ at Ausdruck  { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) percentage (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: percentage ( Umsatz 98 ) Ergebnis: Gibt den Prozentsatz des Gesamtumsatzes für 1998 zurück, der den einzelnen Vertriebsbeauftragten zugeordnet ist. Employee Sales 98 Percentage --------- --------- ------------- Gibbons 60646 7.11% Flertjan 62523 7.35% Cornel 22396 2.63% Gibt einen Wert zwischen null und hundert zurück, der den Prozentsatz eines Anteils angibt, der gleich oder kleiner als die ausgewählten Datenelemente ist. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. percentile ( numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) percentile (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: percentile ( Umsatz 98 ) Ergebnis: Gibt für jede Zeile den Prozentsatz der Zeilen an, die kleiner als oder gleich dem Mengenwert dieser Zeile sind. 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 Gibt den Rang eines Werts innerhalb eines von Ihnen angegebenen Bereichs zurück. Es werden Ganzzahlen zurückgegeben, die einen beliebigen Rangordnungsbereich wie zum Beispiel 1 (höchster Wert) bis 100 (niedrigster Wert) darstellen. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. quantile ( numerischer_Ausdruck ; numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) quantile (  numerischer_Ausdruck ; numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: quantile ( Menge ; 4 ) Ergebnis: Gibt die Menge, den Rang des Mengenwerts und den Mengenwert aufgeteilt in 4 Quantilgruppen (Quartile) zurück. 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 Gibt den Rang eines Werts als Ganzzahl von 1 (höchster Wert) bis 4 (niedrigster Wert) relativ zu einer Gruppe von Werten zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. quartile ( numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) quartile (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: quartile ( Menge ) Ergebnis: Gibt die Menge und das Quartil des Mengenwerts als Ganzzahl von 1 (höchster Wert) bis 4 (niedrigster Wert) zurück. Qty Quartile (Qty) ------ --------------------- 450 1 400 1 350 2 300 2 250 3 200 3 150 4 100 4 Gibt den Rangwert der ausgewählten Datenelemente zurück. Die Sortierfolge ist optional; standardmäßig wird eine absteigende Sortierfolge (DESC) verwendet. Wenn zwei oder mehr Zeilen auf dem gleichen Rang platziert werden, entsteht in der Reihenfolge der Rangwerte eine Lücke (auch als Olympische Rangordnung bekannt). Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. 'Distinct' ist ein alternativer Ausdruck, der mit früheren Versionen des Produkts kompatibel ist. Nullwerte werden zuletzt aufgeführt. Diese Funktion finden Sie im Package 'AUF Data Warehouse (Analyse)' im Beispielbericht 'Die besten 10 Einzelhändler 2005'. rank ( Ausdruck [ ASC|DESC ] { ; Ausdruck [ ASC|DESC ] } [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) rank ( [ distinct ] Ausdruck [ ASC|DESC ] { ; Ausdruck [ ASC|DESC ] } [ <for-option>] [ prefilter ] ) <for-option> ::= for Ausdruck{ ; Ausdruck }|for report|auto Beispiel: rank ( Umsatz 98 ) Ergebnis: Gibt für jede Zeile den Rangwert des Umsatzes für 1998 zurück, der den einzelnen Vertriebsbeauftragten zugeordnet ist. Einige Zahlen werden übersprungen, wenn zwei Zeilen jeweils denselben Platz belegen. Employee Sales 98 Rank --------- --------- ------------ Gibbons 60000 1 Flertjan 50000 2 Cornel 50000 2 Smith 48000 4 Gibt den laufenden Mittelwert für Zeilen (einschließlich der aktuellen Zeile) für einen Satz von Werten zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. running-average ( numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) running-average (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: running-average ( Menge ) Ergebnis: Gibt für jede Zeile die Menge und einen laufenden Mittelwert der aktuellen Zeile und der vorherigen Zeilen zurück. 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 Gibt die laufende Anzahl für Zeilen (einschließlich der aktuellen Zeile) für einen Satz von Werten zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. running-count ( numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) running-count (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: running-count ( Menge ) Ergebnis: Gibt für jede Zeile die Menge und eine laufende Anzahl für die Position der aktuellen Zeile zurück. 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 Gibt eine laufende Differenz für Zeilen (einschließlich der aktuellen Zeile) für einen Satz von Werten zurück, die als Differenz zwischen dem Wert der aktuellen Zeile und dem Wert der vorhergehenden Zeile berechnet wird. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. running-difference ( numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) running-difference (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: running-difference ( Menge ) Ergebnis: Gibt für jede Zeile die Menge und eine laufende Differenz zwischen dem Wert der aktuellen und der vorherigen Zeile zurück. Name Qty Running-Difference for name ------- ------ --------------------------- Smith 7 NULL Smith 3 -4 Smith 6 3 Smith 4 -2 Wong 3 -1 Wong 5 2 Gibt das laufende Maximum für Zeilen (einschließlich der aktuellen Zeile) für einen Satz von Werten zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. running-maximum ( numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) running-maximum (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: running-maximum ( Menge ) Ergebnis: Gibt für jede Zeile die Menge und ein laufendes Maximum der aktuellen Zeile und der vorherigen Zeilen zurück. 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 Gibt das laufende Minimum für Zeilen (einschließlich der aktuellen Zeile) für einen Satz von Werten zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. running-minimum ( numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) running-minimum (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: running-minimum ( Menge ) Ergebnis: Gibt für jede Zeile die Menge und ein laufendes Minimum der aktuellen Zeile und der vorherigen Zeilen zurück. 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 Gibt eine laufende Summe für Zeilen (einschließlich der aktuellen Zeile) für einen Satz von Werten zurück. Das Argument '<for-option>' definiert den Bereich der Funktion. Die Option 'at' definiert die Ebene der Aggregation und kann nur im Zusammenhang mit relationalen Datenquellen verwendet werden. running-total ( numerischer_Ausdruck [ at Ausdruck { ; Ausdruck } ] [ <for-option> ] [ prefilter ] ) running-total (  numerischer_Ausdruck [ <for-option> ] [ prefilter ] ) <for-option> ::= for Ausdruck { ; Ausdruck }|for report|auto Beispiel: running-total ( Menge ) Ergebnis: Gibt für jede Zeile die Menge und eine laufende Summe der aktuellen Zeile und der vorherigen Zeilen zurück. 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 Gibt die Standardabweichung der ausgewählten Datenelemente zurück. standard-deviation ( Ausdruck [ auto ] ) standard-deviation ( Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) standard-deviation ( Ausdruck for report ) Beispiel: standard-deviation ( ProduktKosten ) Ergebnis: Gibt einen Wert zurück, der die Abweichung zwischen Produktkosten und mittleren Produktkosten angibt. Berechnet die Standardabweichung für die Datenwerte und gibt die Quadratwurzel der Datenwerte-Varianz zurück. standard-deviation-pop ( Ausdruck [ auto ] ) standard-deviation-pop ( Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) standard-deviation-pop ( Ausdruck for report ) Beispiel: standard-deviation-pop ( ProduktKosten ) Ergebnis: Gibt einen Wert für die Quadratwurzel der Datenwerte-Varianz zurück. Berechnet die Standardabweichung für Stichproben und gibt die Quadratwurzel der Datenwerte-Varianz zurück. standard-deviation-samp (  Ausdruck [ auto ] ) standard-deviation-samp (  Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) standard-deviation-samp (  Ausdruck for report ) Beispiel: standard-deviation-samp ( ProduktKosten ) Ergebnis: Gibt einen Wert für die Quadratwurzel der Stichprobenvarianz zurück. Gibt den Rang eines Wertes als Hoch, Mittel oder Niedrig relativ zu einer Gruppe von Werten zurück. tertile ( Ausdruck [ auto ] ) tertile ( Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) tertile ( Ausdruck for report ) Beispiel: tertile ( Menge ) Ergebnis: Gibt die Menge, das Quantil des Mengenwerts aufgeteilt in Tertile sowie die Mengenwerte aufgeteilt in Tertile zurück. Qty Quantile (Qty, 3) Tertile (Qty) ------ ------------------------ ------------------ 800 1 H 700 1 H 500 2 M 400 2 M 200 3 L 200 3 L Gibt den Gesamtwert der ausgewählten Datenelemente zurück. 'Distinct' ist ein alternativer Ausdruck, der mit früheren Versionen des Produkts kompatibel ist. Diese Funktion finden Sie im Package 'AUF Data Warehouse (Analyse)' im Beispielbericht 'Budget verglichen mit Istwerten'. total ( [ distinct ] Ausdruck [ auto ] ) total ( [ distinct ] Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) total ( [ distinct ] Ausdruck for report ) Beispiel: total ( Umsatz ) Ergebnis: Gibt die Summe aller Umsatzwerte zurück. Statistische Funktionen Diese Liste enthält vordefinierte statistische Auswertungsfunktionen. Gibt den Varianzwert der ausgewählten Datenelemente zurück. variance ( Ausdruck [ auto ] ) variance ( Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) variance ( Ausdruck for report ) Beispiel: variance ( Produktkosten ) Ergebnis: Gibt einen Wert zurück, der angibt, wie stark die Produktkosten von den mittleren Produktkosten abweichen. Gibt die Datenwerte-Varianz eines Datensatzes mit Zahlen nach dem Entfernen der Nullen in diesem Datensatz zurück. variance-pop ( Ausdruck [ auto ] ) variance-pop ( Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) variance-pop ( Ausdruck for report ) Beispiel: variance-pop ( Menge ) Ergebnis: Gibt für jede Zeile die Datenwerte-Varianz eines Datensatzes mit Zahlen nach dem Entfernen der Nullen in diesem Datensatz zurück. Gibt die Stichprobenvarianz eines Datensatzes mit Zahlen nach dem Entfernen der Nullen in diesem Datensatz zurück. variance-samp (  Ausdruck [ auto ] ) variance-samp (  Ausdruck for [ all|any ] Ausdruck { ; Ausdruck } ) variance-samp (  Ausdruck for report ) Beispiel: variance-samp ( Menge ) Ergebnis: Gibt für jede Zeile die Stichprobenvarianz eines Datensatzes mit Zahlen nach dem Entfernen der Nullen in diesem Datensatz zurück. corr ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2  [ auto ] ) corr ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) corr ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Gibt den Koeffizienten der Korrelation für eine Gruppe von Zahlenpaaren zurück. Dies wird wie folgt berechnet: COVAR_POP(numerischer_Ausdruck1; numerischer_Ausdruck2) / (STDDEV_POP(numerischer_Ausdruck1) * STDDEV_POP(numerischer_Ausdruck2)) Beispiel: corr ( Kosten ;  Gewinnspanne  for report) Ergebnis: Der Koeffizient der Korrelation zwischen Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) covariance-pop ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) covariance-pop ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Liefert die Datenkovarianz einer Gruppe von Zahlenpaaren. Beispiel: covariance-pop ( Kosten ;  Gewinnspanne  for report) Ergebnis: Die Datenkovarianz zwischen Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) covariance-samp ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) covariance-samp ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Liefert die Stichprobenkovarianz einer Gruppe von Zahlenpaaren. Beispiel: covariance-samp ( Kosten ;  Gewinnspanne  for report) Ergebnis: Die Stichprobenkovarianz zwischen Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-average-x ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-average-x ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Gibt den Durchschnitt der unabhängigen Variablen (numerischer_Ausdruck2) der Regressionslinie zurück. Beispiel: regression-average-x ( Kosten ;  Gewinnspanne  for report) Ergebnis: Der Durchschnitt der Gewinnspanne der Regressionslinie für Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-average-y ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-average-y ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Gibt den Durchschnitt der abhängigen Variablen (numerischer_Ausdruck1) der Regressionslinie zurück. Beispiel: regression-average-y ( Kosten ;  Gewinnspanne  for report) Ergebnis: Der Durchschnitt der Kosten der Regressionslinie für Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-count ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-count ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Gibt die Anzahl von Zahlen ungleich null zurück, die zur Anpassung an die Regressionslinie verwendet werden. Beispiel: regression-count ( Kosten ;  Gewinnspanne  for report) Ergebnis: Die Anzahl von Zahlen ungleich null, die zur Anpassung an die Regressionslinie für Kosten und Gewinnspanne verwendet werden. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-intercept ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-intercept ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Gibt den Y-Achsenabschnitt der Regressionslinie zurück. Dies wird wie folgt berechnet: AVG(numerischer_Ausdruck1) - REGR_SLOPE(numerischer_Ausdruck1; numerischer_Ausdruck2) * AVG(numerischer_Ausdruck2) Beipsiel: regression-intercept ( Kosten ;  Gewinnspanne  for report) Ergebnis: Y-Achsenabschnitt der Regressionslinie für Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-r2 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-r2 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Gibt den Bestimmtheitskoeffizienten (auch als 'R im Quadrat' oder 'Anpassungsgenauigkeit' bezeichnet) der Regressionslinie zurück. Dieser Wert wird auf der Basis der folgenden Bedinungen berechnet: IF VAR_POP(numerischer_Ausdruck2) = 0 THEN NULL IF VAR_POP(numerischer_Ausdruck1) = 0 AND VAR_POP(numerischer_Ausdruck2) <> 0 THEN 1 IF VAR_POP(numerischer_Ausdruck1) > 0 and VAR_POP(numerischer_Ausdruck2) <> 0 THEN POWER(CORR (numerischer_Ausdruck1; numerischer_Ausdruck2)) Beispiel: regression-r2 ( Kosten ;  Gewinnspanne  for report) Ergebnis: Bestimmtheitskoeffizient der Regressionslinie für Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-slope ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-slope ( numerischer_Ausdruck1 ;  numeric_Ausdruck2 for report ) Gibt die Neigung der Regressionslinie zurück. Dies wird wie folgt berechnet: COVAR_POP(numerischer_Ausdruck1;numerischer_Ausdruck2) / VAR_POP(numerischer_Ausdruck2) Beispiel: regression-slope ( Kosten ;  Gewinnspanne ) Ergebnis: Neigung der Regressionslinie für Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-sxx ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-sxx ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Gibt die folgende Berechnung nach der Eliminierung von NULL-Paaren zurück: REGR_COUNT(numerischer_Ausdruck1; numerischer_Ausdruck2) * VAR_POP(numerischer_Ausdruck2) Beipsiel: regression-sxx ( Kosten ;  Gewinnspanne  for report) Ergebnis: SXX-Berechnung der Regressionslinie für Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-sxy ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-sxy ( numerischer_Ausdruck1 ;  numeric_Ausdruck2 for report ) Gibt die folgende Berechnung nach der Eliminierung von NULL-Paaren zurück: REGR_COUNT(numerischer_Ausdruck1; numerischer_Ausdruck2) * COVAR_POP(numerischer_Ausdruck1; numerischer_Ausdruck2) Beispiel: regression-sxy ( Kosten ;  Gewinnspanne  for report) Ergebnis: SXY-Berechnung der Regressionslinie für Kosten und Gewinnspanne. 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 ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 ) regression-syy ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for [ all|any ] Ausdruck { ; Ausdruck } ) regression-syy ( numerischer_Ausdruck1 ;  numerischer_Ausdruck2 for report ) Gibt die folgende Berechnung nach der Eliminierung von NULL-Paaren zurück: REGR_COUNT(numerischer_Ausdruck1; numerischer_Ausdruck2) * VAR_POP(numerischer_Ausdruck1) Beispiel: regression-syy ( Kosten ;  Gewinnspanne  for report) Ergebnis: SYY-Berechnung der Regressionslinie für Kosten und Gewinnspanne. 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 Mitgliedsauswertungen Diese Liste enthält vordefinierte Funktionen, die entweder einen einzelnen Auswertungswert für einen Satz von Mitgliedern oder jeweils einen unterschiedlichen Wert für jedes Mitglied in einem Mitgliedssatz zurückgeben.
Fehler In Ihrem Ausdruck liegt am hervorgehobenen Token ein Fehler vor.
Konstrukte Diese Liste enthält Konstrukte und Vorlagen, die zum Erstellen eines Ausdrucks verwendet werden können. In einer Vorlage werden mehrere Funktionen zu einer Gruppe zusammengefasst. Beispielsweise enthält die Vorlage 'CASE - Suche' die Funktionen 'case', 'when', 'else' und 'end'. case - Suche Dieses Konstrukt ist die Vorlage für 'CASE - Suche' und enthält die Funktionen 'CASE', 'WHEN', 'ELSE' und 'END'. CASE WHEN [Land] = 'Kanada' THEN ([Listenpreis] * 0,60) WHEN [Ländercode] > 100 THEN [Listenpreis] * 0,80 ELSE [Listenpreis] END case - Einfach Dieses Konstrukt ist die Vorlage für 'CASE - Einfach' und enthält die Funktionen 'CASE', 'WHEN', 'ELSE' und 'END'. CASE [Land] WHEN 'Kanada' THEN ([Listenpreis] * 0,60) WHEN 'Australien' THEN [Listenpreis] * 0,80 ELSE [Listenpreis] END if then else Dieses Konstrukt ist die Vorlage für eine 'if...then...else'-Anweisung. Das Konstrukt finden Sie im Package 'AUF Data Warehouse (Analyse)' im Beispielbericht 'Die besten 10 Einzelhändler 2005'. IF ([Land] = 'Kanada') THEN ([Listenpreis] * 0,60) ELSE ([Listenpreis]) in_range Dies ist die Vorlage für einen in_range-Ausdruck ('Im Bereich'). [Code] IN_RANGE { :30 ; 40; 50; 999: } Beispiel: [Code] IN_RANGE { 5 } Ergebnis: Entspricht [Code] = 5. Beispiel: [Code] IN_RANGE { 5: } Ergebnis: Entspricht [Code] >= 5. Beispiel: [Code] IN_RANGE { :5 } Ergebnis: Entspricht [Code] <= 5. Beispiel: [Code] IN_RANGE { 5:10 } Ergebnis: Entspricht ( [Code] >= 5 und [Code] <= 10 ). Beispiel: [Code] IN_RANGE { :5;10;20: } Ergebnis: Entspricht ( [Code] <= 5 oder [Code] = 10 oder [Code] >= 20 ).
Vergleichselemente für Perioden Diese Liste enthält Vergleichselemente für den Vergleich von Periodenausdrücken. contains Gibt 'true' zurück, wenn 'Periode_Ausdruck1' contains 'Periode_Ausdruck2' wahr ist, d. h., wenn die erste Periode den Datums-/Zeitwert oder alle Werte in der zweiten Periode enthält. Periode_Ausdruck1 contains ( Periode_Ausdruck2 | Datum_Uhrzeit_Ausdruck ) Periode( 1989-11-01; 1991-05-19 ) contains Periode ( 1991-05-19; 1991-06-04 ) Ergebnis: false Periode ( 1989-11-01; 1991-05-19 ) contains Periode ( 1990-05-19; 1991-04-04 ) Ergebnis: true Periode ( 1989-11-01; 1991-05-19 ) contains 1991-04-04 Ergebnis: true equals Gibt 'true' zurück, wenn 'Periode_Ausdruck1' und 'Periode_Ausdruck2' dieselben Werte für Start und Ende der Periode aufweisen. Periode_Ausdruck1 equals Periode_Ausdruck2 Periode( 1989-11-01; 1991-05-19 ) equals Periode( 1989-11-01; 1991-05-19 ) Ergebnis: true immediately precedes Gibt 'true' zurück, wenn 'Periode_Ausdruck1' 'Periode_Ausdruck2' unmittelbar vorangeht, d. h., wenn der Endwert der ersten Periode mit dem Startwert der zweiten Periode übereinstimmt. Periode_Ausdruck1 immediately precedes Periode_Ausdruck2 Periode( 1989-11-01; 1991-05-19 ) immediately precedes Periode ( 1991-05-19; 1991-06-04 ) Ergebnis: true Periode( 1989-11-01; 1991-05-18 ) immediately precedes Periode ( 1991-05-19; 1991-06-04 ) Ergebnis: false immediately succeeds Gibt 'true' zurück, wenn 'Periode_Ausdruck1' 'Periode_Ausdruck2' unmittelbar folgt, d. h., wenn der Startwert der ersten Periode mit dem Endwert der zweiten Periode übereinstimmt. Periode_Ausdruck1 immediately succeeds Periode_Ausdruck2 Periode( 1991-05-19; 1994-01-10 ) immediately succeeds Periode( 1991-01-19; 1991-05-19 ) Ergebnis: true Periode( 1991-05-19; 1994-01-10 ) immediately succeeds Periode( 1991-01-20; 1991-05-18 ) Ergebnis: false overlaps Gibt 'true' zurück, wenn 'Periode_Ausdruck1' sich mit 'Periode_Ausdruck2' überschneidet, d. h., wenn sie mindestens einen gemeinsamen Wert aufweisen. Periode_Ausdruck1 overlaps Periode_Ausdruck2 Periode( 1991-05-19; 1994-01-10 ) overlaps Periode( 1993-01-19; 1995-05-19 ) Ergebnis: true precedes Gibt 'true' zurück, wenn 'Periode_Ausdruck1' 'Periode_Ausdruck2' vorangeht, d. h., wenn alle in der ersten Periode enthaltenen Werte kleiner oder gleich dem Startwert der zweiten Periode sind. Periode_Ausdruck1 precedes Periode_Ausdruck2 Periode( 1989-11-01; 1991-05-19 ) precedes Periode ( 1991-05-19; 1991-06-04 ) Ergebnis: true Periode( 1989-11-01; 1991-05-18 ) precedes Periode ( 1991-05-19; 1991-06-04 ) Ergebnis: true succeeds Gibt 'true' zurück, wenn 'Periode_Ausdruck1' 'Periode_Ausdruck2' folgt, d. h., wenn alle in der ersten Periode enthaltenen Werte größer oder gleich dem Endwert der zweiten Periode sind. Periode_Ausdruck1 succeeds Periode_Ausdruck2 Periode( 1991-05-19; 1994-01-10 ) succeeds Periode( 1991-01-19; 1991-05-19 ) Ergebnis: true Periode( 1991-05-20; 1994-01-10 ) succeeds Periode( 1991-01-20; 1991-05-19 ) Ergebnis: true
Geschäftsdatum/-Uhrzeitfunktionen Diese Liste enthält Funktionen für Geschäftsdaten, die Datum- und Uhrzeitberechnungen durchführen. _add_seconds ( Uhrzeit_Ausdruck; Ganzzahl_Ausdruck ) Gibt den Uhrzeit- bzw. Datum/Uhrzeit-Wert abhängig vom Format von 'Uhrzeit_Ausdruck' zurück, der sich aus der Addition von 'Ganzzahl_Ausdruck' Sekunden zu 'Uhrzeit_Ausdruck' ergibt. Beispiel: _add_seconds ( 13:04:59 ; 1 ) Ergebnis: 13:05:00 Beispiel: _add_seconds ( 2002-04-30 12:10:10,000; 1 ) Ergebnis: 2002-04-30 12:10:11,000 Beispiel: _add_seconds ( 2002-04-30 00:00:00,000; 1/100 ) Beachten Sie, dass das zweite Argument keine Ganzzahl ist. Dies wird von einigen Datenbanktechnologien unterstützt und inkrementiert den Uhrzeitteil. Ergebnis: 2002-04-30 00:00:00,010 _add_minutes ( Uhrzeit_Ausdruck; Ganzzahl_Ausdruck ) Gibt den Uhrzeit- bzw. Datum/Uhrzeit-Wert abhängig vom Format von 'Uhrzeit_Ausdruck' zurück, der sich aus der Addition von 'Ganzzahl_Ausdruck' Minuten zu 'Uhrzeit_Ausdruck' ergibt. Beispiel: _add_minutes ( 13:59:00 ; 1 ) Ergebnis: 14:00:00 Beispiel: _add_minutes ( 2002-04-30 12:59:10,000; 1 ) Ergebnis: 2002-04-30 13:00:10,000 Beispiel: _add_minutes ( 2002-04-30 00:00:00,000; 1/60 ) Beachten Sie, dass das zweite Argument keine Ganzzahl ist. Dies wird von einigen Datenbanktechnologien unterstützt und inkrementiert den Uhrzeitteil. Ergebnis: 2002-04-30 00:00:01,000 _add_hours ( Uhrzeit_Ausdruck; Ganzzahl_Ausdruck ) Gibt den Uhrzeit- bzw. Datum/Uhrzeit-Wert abhängig vom Format von 'Uhrzeit_Ausdruck' zurück, der sich aus der Addition von 'Ganzzahl_Ausdruck' Stunden zu 'Uhrzeit_Ausdruck' ergibt. Beispiel: _add_hours ( 13:59:00 ; 1 ) Ergebnis: 14:59:00 Beispiel: _add_hours ( 2002-04-30 12:10:10,000; 1 ) Ergebnis: 2002-04-30 13:10:10,000 Beispiel: _add_hours ( 2002-04-30 00:00:00,000; 1/60 ) Beachten Sie, dass das zweite Argument keine Ganzzahl ist. Dies wird von einigen Datenbanktechnologien unterstützt und inkrementiert den Uhrzeitteil. Ergebnis: 2002-04-30 00:01:00,000 _add_days ( Datum_Ausdruck; Ganzzahl_Ausdruck ) Gibt den Datums- bzw. Datum/Uhrzeit-Wert abhängig vom Format von 'Datum_Ausdruck' zurück, der sich aus der Addition von 'Ganzzahl_Ausdruck' Tagen zu 'Datum_Ausdruck' ergibt. Beispiel: _add_days ( 2002-04-30 ; 1 ) Ergebnis: 2002-05-01 Beispiel: _add_days ( 2002-04-30 12:10:10,000; 1 ) Ergebnis: 2002-05-01 12:10:10,000 Beispiel: _add_days ( 2002-04-30 00:00:00,000; 1/24 ) Beachten Sie, dass das zweite Argument keine Ganzzahl ist. Dies wird von einigen Datenbanktechnologien unterstützt und inkrementiert den Uhrzeitteil. Ergebnis: 30.04.02 01:00:00,000 _add_months ( Datum_Ausdruck; Ganzzahl_Ausdruck ) Fügt 'Ganzzahl_Ausdruck' Monate zu 'Datum_Ausdruck' hinzu. Wenn der sich daraus ergebene Monat weniger Tage aufweist als die Tag-des-Monats-Komponente, wird der letzte Tag des sich ergebenden Monats zurückgegeben. In allen anderen Fällen weist der zurückgegebene Wert dieselbe Tag-des-Monats-Komponente auf wie 'Datum_Ausdruck'. Beispiel: _add_months ( 2012-04-15 ; 3 ) Ergebnis: 2012-07-15 Das Ergebnis ist nicht der letzte Tag des sich ergebenden Monats. Beispiel: _add_months ( 2012-02-29 ; 1 ) Ergebnis: 2012-03-29 Verwenden Sie die Funktion _last_of_month, um den letzten Tag des Monats zurückzugeben. Beispiel: _last_of_month ( _add_months ( 2012-02-29 ; 1 ) ) Ergebnis: 2012-03-31 Der Tag wird auf den letzten Tag des sich ergebenden Monats korrigiert. Beispiel: _add_months ( 2012-01-31 ; 1 ) Ergebnis: 2012-02-29 Zu einer Zeitmarke hinzufügen. Beispiel: _add_months ( 2002-04-30 12:10:10,000 ; 1 ) Ergebnis: 2002-05-30 12:10:10,000 _add_years ( Datum_Ausdruck; Ganzzahl_Ausdruck ) Fügt 'Ganzzahl_Ausdruck' Jahre zu 'Datum_Ausdruck' hinzu. Wenn 'Datum_Ausdruck' der 29. Febuar ist und das sich ergebende Jahr kein Schaltjahr, wird der sich ergebende Tag auf den 28. Februar gesetzt. In allen anderen Fällen weist der zurückgegebene Wert denselben Tag und Monat auf wie 'Datum_Ausdruck'. Beispiel: _add_years ( 2012-04-15 ; 1 ) Ergebnis: 2013-04-15 Für Jahre, bei denen es sich nicht um Schaltjahre handelt, wird der 29. Februar angepasst. Beispiel: _add_years ( 2012-02-29 ; 1 ) Ergebnis: 2013-02-28 Zu einer Zeitmarke hinzufügen. Beispiel: _add_years ( 2002-04-30 12:10:10,000 ; 1 ) Ergebnis: 2003-04-30 12:10:10,000 _age ( Datum_Ausdruck ) Gibt eine Zahl zurück, die sich durch Subtrahieren von 'Datum_Ausdruck' vom heutigen Datum ergibt. Der zurückgegebene Wert hat das Format JJJJMMTT, wobei JJJJ die Anzahl der Jahre, MM die Anzahl der Monate und TT die Anzahl der Tage darstellt. Beispiel: _age ( 1990-04-30 ) (wenn das heutige Datum 2003-02-05 lautet) Ergebnis: 120906, also 12 Jahre, 9 Monate und 6 Tage. _date_to_int ( Datum_Ausdruck ) Gibt die Ganzzahldarstellung von "Datum_Ausdruck" zurück. Der zurückgegebene Wert hat das Format JJJJMMTT, wobei JJJJ die Anzahl der Jahre, MM die Anzahl der Monate und TT die Anzahl der Tage darstellt. Beispiel: _date_to_int ( 2003-01-01 ) Ergebnis: 20030101 _day_of_week ( Datum_Ausdruck; Ganzzahl ) Gibt den Wochentag (1 bis 7) zurück, wobei 1 der erste Tag der Woche ist, wie im zweiten Parameter angegeben (1 bis 7, wobei 1 für Montag und 7 für Sonntag steht). Beachten Sie, dass nach ISO 8601 Standard eine Woche am Montag als Tag 1 beginnt. Beispiel: _day_of_week ( 2003-01-01 ; 1 ) Ergebnis: 3 _day_of_year ( Datum_Ausdruck ) Gibt den Tag des Jahres (1 bis 366) in 'Datum_Ausdruck' zurück. Auch als Julianischer Tag bezeichnet. Beispiel: _day_of_year ( 2003-03-01 ) Ergebnis: 61 _days_between ( Datum_Ausdruck1 ; Datum_Ausdruck2 ) Gibt eine positive oder negative Zahl zurück, welche die Anzahl der Tage von 'Datum_Ausdruck1' bis 'Datum_Ausdruck2' darstellt. Bei 'Datum_Ausdruck1' < 'Datum_Ausdruck2' ist das Ergebnis eine negative Zahl. Beispiel: _days_between ( 2002-06-21 , 2002-04-30 ) Ergebnis: 52 Beispiel: _days_between ( 2002-04-30 ; 2002-06-21 ) Ergebnis: -52 _days_to_end_of_month ( Datum_Ausdruck ) Gibt eine Zahl zurück, welche für die Anzahl von Tagen steht, die in dem Monat verbleiben, der von 'Datum_Ausdruck' dargestellt wird. Beispiel: _days_to_end_of_month ( 2002-04-20 14:30:22,123 ) Ergebnis: 10 _first_of_month ( Datum_Ausdruck ) Gibt einen Datums- oder Datum/Uhrzeit-Wert abhängig vom Argument zurück, der sich ergibt, wenn 'Datum_Ausdruck' in ein Datum mit identischem Jahr und Monat, jedoch mit auf 1 eingestelltem Tag konvertiert wird. Beispiel: _first_of_month ( 2002-04-20 ) Ergebnis: 2002-04-01 Beispiel: _first_of_month ( 2002-04-20 12:10:10,000 ) Ergebnis: 2002-04-01 12:10:10,000 _last_of_month ( Datum_Ausdruck ) Gibt einen Datums- oder Datum/Uhrzeit-Wert abhängig vom Argument zurück, der den letzten Tag des von 'Datum_Ausdruck' dargestellten Monats repräsentiert. Beispiel: _last_of_month ( 2002-01-14 ) Ergebnis: 2002-01-31 Beispiel: _last_of_month ( 2002-01-14 12:10:10,000 ) Ergebnis: 2002-01-31 12:10:10,000 _make_timestamp ( Ganzzahl_Ausdruck1; Ganzzahl_Ausdruck2; Ganzzahl_Ausdruck3 ) Liefert eine Zeitmarke, die aus 'Ganzzahl_Ausdruck1' (das Jahr), 'Ganzzahl_Ausdruck2' (der Monat) und 'Ganzzahl_Ausdruck3' (der Tag) besteht. Der Uhrzeitteil lautet standardmäßig 00:00:00,000. Beispiel: _make_timestamp ( 2002 ; 01 ; 14 ) Ergebnis: 2002-01-14 00:00:00,000 _months_between ( Datum_Ausdruck1; Datum_Ausdruck2 ) Gibt eine positive oder negative Ganzzahl zurück, welche die Anzahl der Monate von 'Datum_Ausdruck1' bis 'Datum_Ausdruck2' darstellt. Wenn "Datum_Ausdruck1" vor "Datum_Ausdruck2" liegt, wird eine negative Zahl zurückgegeben. Beispiel: _months_between ( 2002-04-03 ; 2002-01-30 ) Ergebnis: 2 Beispiel: _months_between ( 2002-01-30 , 2002-04-03 ) Ergebnis: -2 _shift_timezone ( Zeitmarke_Wert ; Quellenzeitzone ; Zielzeitzone ) _shift_timezone ( Zeitmarke_mit_Zeitzonenwert ; Zielzeitzone ) Versetzt einen Zeitmarkenwert von einer Zeitzone in eine andere Zeitzone. Diese Funktion berücksichtigt gegebenenfalls die Sommerzeit. Wenn das erste Argument den Typ "Zeitmarke" aufweist, stellen das zweite und dritte Argument die Quellen- bzw. die Zielzeitzone dar. Wenn das erste Argument den Typ "Zeitmarke mit Zeitzone" aufweist, ist die Quellenzeitzone bereits im ersten Argument impliziert, sodass das zweite Argument die Zielzeitzone darstellt. Der Datentyp des ersten Arguments bestimmt auch den Datentyp des Rückgabewerts. Das zweite und das dritte Argument weisen den Typ "Zeichenfolge" auf und stellen Zeitzonenkennungen dar. Eine Liste dieser Kennungen ist im Folgenden aufgeführt. Hinweis: Die Verwendung dieser Funktion bewirkt eine lokale Verarbeitung. Beispiel: _shift_timezone( 2013-06-30 12:00:00 ; 'America/New_York' ; 'GMT' ) Ergebnis: 2013-06-30 16:00:00 Beispiel: _shift_timezone( 2013-11-30 12:00:00-05:00 ; 'America/Vancouver' ) Ergebnis: 2013-11-30 09:00:00-08:00 Zonenkennungen: 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 Eine angepassten Zeitzonenkennung kann ebenfalls verwendet werden; das Format lautet GMT(+|-)HH:MM. Beispiel: GMT-06:30 oder GMT+02:00. _week_of_year ( Datum_Ausdruck ) Gibt die Zahl der Woche des Jahres von 'Datum_Ausdruck' nach ISO 8601 Standard zurück. Woche 1 des Jahres ist die erste Woche des Jahres, die einen Donnerstag enthält und die gleichbedeutend mit der ersten Woche ist, die den 4. Januar enthält. Eine Woche beginnt am Montag (Tag 1) und endet am Sonntag (Tag 7). Beispiel: _week_of_year ( 2003-01-01 ) Ergebnis: 1 _years_between ( Datum_Ausdruck1; Datum_Ausdruck2 ) Gibt eine positive oder negative Ganzzahl zurück, welche die Anzahl der Jahre von 'Datum_Ausdruck1' bis 'Datum_Ausdruck2' darstellt. Bei 'Datum_Ausdruck1' < 'Datum_Ausdruck2' wird ein negativer Wert zurückgegeben. Beispiel: _years_between ( 2003-01-30 ; 2001-04-03 ) Ergebnis: 1 Beispiel: _years_between ( 2001-04-03 , 2003-01-30 ) Ergebnis: -1 _ymdint_between ( Datum_Ausdruck1 ; Datum_Ausdruck2 ) Gibt eine Zahl zurück, welche die Differenz zwischen 'Datum_Ausdruck1' und 'Datum_Ausdruck2' darstellt. Der zurückgegebene Wert hat das Format JJJJMMTT, wobei JJJJ die Anzahl der Jahre, MM die Anzahl der Monate und TT die Anzahl der Tage darstellt. Beispiel: _ymdint_between ( 1990-04-30 ; 2003-02-05 ) Ergebnis: 120905, also 12 Jahre, 9 Monate und 5 Tage. _year ( Datum_Ausdruck ) Gibt den Wert des Jahresfelds in "Datum_Ausdruck" zurück. Beispiel: _year ( 2003-03-01 ) Ergebnis: 2003 _month ( Datum_Ausdruck ) Gibt den Wert des Monatsfelds in "Datum_Ausdruck" zurück. Beispiel: _month ( 2003-03-01 ) Ergebnis: 3 _day ( Datum_Ausdruck ) Gibt den Wert des Tagesfelds in "Datum_Ausdruck" zurück. Beispiel: _day ( 2003-03-01 ) Ergebnis: 1 _hour ( Datum_Ausdruck ) Gibt den Wert des Stundenfelds in "Datum_Ausdruck" zurück. Beispiel: _hour ( 2002-01-31 12:10:10,254 ) Ergebnis: 12 _minute ( Datum_Ausdruck ) Gibt den Wert des Minutenfelds in "Datum_Ausdruck" zurück. Beispiel: _minute ( 2002-01-31 12:10:10,254 ) Ergebnis: 10 _second ( Datum_Ausdruck ) Gibt den Wert des Sekundenfelds in "Datum_Ausdruck" zurück. Beispiel: _second ( 2002-01-31 12:10:10,254 ) Ergebnis: 10,254 _timezone_hour ( Zeitmarke_mit_Zeitzonenwert ) _timezone_hour ( Uhrzeit_mit_Zeitzonenwert ) Gibt den Wert des Stundenfelds für die Zeitzone im Ausdruck zurück. Es muss sich um einen Ausdruck des Typs 'Zeitmarke mit Zeitzone' oder 'Uhrzeit mit Zeitzone' handeln. Beispiel: _timezone_hour ( 2002-01-31 12:10:10,254-05:30 ) Ergebnis. -5 _timezone_minute ( Zeitmarke_mit_Zeitzonenwert ) _timezone_minute ( Uhrzeit_mit_Zeitzonenwert ) Gibt den Wert des Minutenfelds für die Zeitzone im Ausdruck zurück. Es muss sich um einen Ausdruck des Typs 'Zeitmarke mit Zeitzone' oder 'Uhrzeit mit Zeitzone' handeln. Beispiel: _timezone_minute ( 2002-01-31 12:10:10,254-05:30 ) Ergebnis: -30 _start_of_day ([ Datum_Ausdruck ]) Gibt den Beginn von "Datum_Ausdruck" oder den Beginn des heutigen Tags als Zeitmarke zurück. Beipsiel: _start_of_day ( 2014-11-23 12:10:10.254 ) Ergebnis: 2014-11-23 00:00:00 Beispiel: _start_of_day () Ergebnis: 2016-01-01 00:00:00 _end_of_day ([ Datum_Ausdruck ]) Gibt das Ende von "Datum_Ausdruck" oder das Ende des heutigen Tags als Zeitmarke zurück. Beispiel: _end_of_day ( 2014-11-23 12:10:10.254 ) Ergebnis: 2014-11-23 23:59:59 Beispiel: _end_of_day () Ergebnis: 2016-01-01 23:59:59 _unix_timestamp ( Datum_Ausdruck ) Gibt die Anzahl der Sekunden seit 1970-01-01 00:00:00-00 für 'Datum_Ausdruck' zurück. Beispiel: _unix_timestamp ( 2014-11-23 ) Ergebnis: 1416718800 _from_unixtime ( Ganzzahl_Ausdruck ) Gibt die durch 'Ganzzahl_Ausdruck' angegebene UNIX-Zeit als Zeitmarke mit Zeitzone zurück. Beispiel: _from_unixtime (1417807335) Ergebnis: 2014-12-05 19:22:15+00:00
Makrofunktionen Die folgende Liste enthält Funktionen, die in einem Makro verwendet werden können. Ein Makro kann eine oder mehrere Makrofunktionen enthalten. Ein Makro wird am Beginn und am Ende mit einem Nummernkreuz (#) abgetrennt. Alle Einträge zwischen diesen Nummernkreuzen werden als Makroausdrücke behandelt und zur Laufzeit ausgeführt. Für Makrofunktionen, die als Argumente Ausdrücke vom Datentyp "Zeitmarke mit Zeitzone" akzeptieren, ist das gültige Format 'jjjj-mm-tt hh:mm:ss[.ff]+hh:mm', wobei die Sekundenbruchteile optional sind und mit bis zu neun Stellen dargestellt werden können. Anstatt eines Leerzeichens zur Trennung des Uhrzeitteils vom Datumsteil wird auch das Zeichen 'T' akzeptiert. Außerdem wird anstatt der Zeitzonenangabe '+hh:mm' auch das Zeichen 'Z' akzeptiert und intern als '+00:00' verarbeitet. Makrofunktionen, die Ausdrücke vom Datentyp "Zeitmarke mit Zeitzone" zurückgeben, geben standardmäßig neun Stellen für die Sekundenbruchteile zurück. Mit der Makrofunktion 'timestampMask ()' kann die Ausgabe gegebenenfalls abgeschnitten werden. Gibt die Zeitmarke mit Zeitzone (als eine Zeichenfolge) zurück, die sich aus der Addition von 'Ganzzahl_Ausdruck' Sekunden zu 'Zeichenfolge_Ausdruck' ergibt, wobei 'Zeichenfolge_Ausdruck' eine Zeitmarke mit Zeitzone darstellt. _add_seconds ( Zeichenfolge_Ausdruck ; Ganzzahl_Ausdruck ) Beispiel: # _add_seconds ( '2005-11-01 12:00:00,000-05:00' ; -1 ) # Ergebnis: 2005-11-01 11:59:59,000-05:00 Beispiel: # _add_seconds ( $current_timestamp ; 1 ) # Ergebnis: 2005-11-01 12:00:01,000000000-05:00 Beispiel: # timestampMask ( _add_seconds ( $current_timestamp ; 1 ) ; 'hh:mm:ss' ) # Ergebnis: 12:00:01 Gibt die Zeitmarke mit Zeitzone (als eine Zeichenfolge) zurück, die sich aus der Addition von 'Ganzzahl_Ausdruck' Minuten zu 'Zeichenfolge_Ausdruck' ergibt, wobei 'Zeichenfolge_Ausdruck' eine Zeitmarke mit Zeitzone darstellt. _add_minutes ( Zeichenfolge_Ausdruck ; Ganzzahl_Ausdruck ) Beispiel: # _add_minutes ( '2005-11-01 12:00:00,000-05:00' ; -1 ) # Ergebnis: 2005-11-01 11:59:00,000-05:00 Beispiel: # _add_minutes ( $current_timestamp ; 1 ) # Ergebnis: 2005-11-01 12:01:00,000000000-05:00 Beispiel: # timestampMask ( _add_minutes ( $current_timestamp ; 1 ) ; 'hh:mm:ss' ) # Ergebnis: 12:01:00 Gibt die Zeitmarke mit Zeitzone (als eine Zeichenfolge) zurück, die sich aus der Addition von 'Ganzzahl_Ausdruck' Stunden zu 'Zeichenfolge_Ausdruck' ergibt, wobei 'Zeichenfolge_Ausdruck' eine Zeitmarke mit Zeitzone darstellt. _add_hours ( Zeichenfolge_Ausdruck ; Ganzzahl_Ausdruck ) Beispiel: # _add_hours ( '2005-11-01 12:00:00,000-05:00' ; -1 ) # Ergebnis: 2005-11-01 13:00:00,000-05:00 Beispiel: # _add_hours ( $current_timestamp ; 1 ) # Ergebnis: 2005-11-01 13:00:00,000000000-05:00 Beispiel: # timestampMask ( _add_hours ( $current_timestamp ; 1 ) ; 'hh:mm:ss' ) # Ergebnis: 13:00:00 Gibt die Zeitmarke mit der Zeitzone (als Zeichenfolge) zurück, die das Ergebnis des Hinzufügens von "Ganzzahl_Ausdruck" Tagen zu "Zeichenfolge_Ausdruck" ist. Dabei stellt "Zeichenfolge_Ausdruck" eine Zeitmarke mit einer Zeitzone dar. Wenn das erste Argument ein Datum ist, das als Zeichenfolge im Format jjjj-mm-tt angegeben wird, ist der Rückgabewert eine als Datum formatierte Zeichenfolge. _add_days ( Zeichenfolge_Ausdruck ; Ganzzahl_Ausdruck ) Beispiel: # _add_days ( '2005-11-01 12:00:00,000-05:00' ; -1 ) # Ergebnis: 2005-10-31 12:00:00,000000000-05:00 Beispiel: # _add_days ( $current_timestamp ; 1 ) # Ergebnis: 2005-11-02 12:00:00,000000000-05:00 Beispiel: # timestampMask ( _add_days ( $current_timestamp ; 1 ) ; 'yyyy-mm-dd' ) # Ergebnis: 2005-11-02 Beispiel: # _add_days( '2019-11-14' , 3 ) # Ergebnis: 2019-11-17 Gibt die Zeitmarke mit der Zeitzone (als Zeichenfolge) zurück, die das Ergebnis des Hinzufügens von "Ganzzahl_Ausdruck" Monaten zu "Zeichenfolge_Ausdruck" ist. Dabei stellt "Zeichenfolge_Ausdruck" eine Zeitmarke mit einer Zeitzone dar. Wenn das erste Argument ein Datum ist, das als Zeichenfolge im Format jjjj-mm-tt angegeben wird, ist der Rückgabewert eine als Datum formatierte Zeichenfolge. _add_months ( Zeichenfolge_Ausdruck ; Ganzzahl_Ausdruck ) Beispiel: # _add_months ( '2005-11-01 12:00:00,000-05:00' ; -1 ) # Ergebnis: 2005-10-01 12:00:00,000000000-05:00 Beispiel: # _add_months ( $current_timestamp ; 1 ) # Ergebnis: 2005-12-01 12:00:00,000000000-05:00 Beispiel: # timestampMask ( _add_months ( $current_timestamp ; 1 ) ; 'yyyy-mm-dd' ) # Ergebnis: 2005-12-01 Beispiel: # _add_months( '2019-11-14' , -1 ) # Ergebnis: 2019-10-14 Gibt die Zeitmarke mit der Zeitzone (als Zeichenfolge) zurück, die das Ergebnis des Hinzufügens von "Ganzzahl_Ausdruck" Jahren zu "Zeichenfolge_Ausdruck" ist. Dabei stellt "Zeichenfolge_Ausdruck" eine Zeitmarke mit einer Zeitzone dar. Wenn das erste Argument ein Datum ist, das als Zeichenfolge im Format jjjj-mm-tt angegeben wird, ist der Rückgabewert eine als Datum formatierte Zeichenfolge. _add_years ( Zeichenfolge_Ausdruck ; Ganzzahl_Ausdruck ) Beispiel: # _add_years ( '2005-11-01 12:00:00,000-05:00' ; -1 ) # Ergebnis: 2004-11-01 12:00:00,000000000-05:00 Beispiel: # _add_years ( $current_timestamp ; 1 ) # Ergebnis: 2006-11-01 12:00:00,000000000-05:00 Beispiel: # timestampMask ( _add_years ( $current_timestamp ; 1 ) ; 'yyyy-mm-dd' ) # Ergebnis: 2006-11-01 Beispiel: # _add_years( '2019-11-14' , -2 ) # Ergebnis: 2017-11-14 _first_of_month ( Zeichenfolge_Ausdruck ) Gibt eine Zeitmarke mit Zeitzone (als eine Zeichenfolge) zurück, der sich ergibt, indem der Wert für den Tag in 'Zeichenfolge_Ausdruck' in 1 konvertiert wird. 'Zeichenfolge_Ausdruck' ist ein Zeitmarke mit Zeitzone. Beispiel: # _first_of_month ( '2005-11-11 12:00:00,000-05:00' ) # Ergebnis: 2005-11-01 12:00:00,000000000-05:00 Beispiel: # timestampMask ( _first_of_month ( '2005-11-11 12:00:00,000-05:00' ) ; 'yyyymmdd' ) # Ergebnis: 20051101 _last_of_month ( Zeichenfolge_Ausdruck ) Gibt eine Zeitmarke mit Zeitzone (als eine Zeichenfolge) zurück, bei dem es sich um den letzten Tag des Monats handelt, der durch 'Zeichenfolge_Ausdruck' dargestellt wird. 'Zeichenfolge_Ausdruck' ist eine Zeitmarke mit Zeitzone. Beispiel: # _last_of_month ( '2005-11-11 12:00:00,000-05:00' ) # Ergebnis: 2005-11-30 12:00:00,000000000-05:00 Beispiel: # timestampMask ( _last_of_month ( '2005-11-11 12:00:00,000-05:00' ) ; 'yyyy-mm-dd' ) # Ergebnis: 2005-11-30 modelj ( 'ID' [ , 'Modellsuchpfad' [ , 'Optionen' ] ] ) Gibt einen Teil des Metadatenmodells im JSON-Format zurück. Wenn der 'Modellsuchpfad' nicht angegeben wird, wird das aktuelle Modell verwendet. Für das Argument 'Optionen' kann 'cleanup' angegeben werden. Hierdurch werden einige Teile des Ergebnisses in feste Werte geändert (zu Testzwecken nützlich). sq ( modelj ( '[VertriebAUF].[Land].[Land]' ) Fasst 'Zeichenfolge_Ausdruck' in eckige Klammern ein. sb ( Zeichenfolge_Ausdruck ) Beispiel: # sb ( 'abc' ) # Ergebnis: [abc] Fasst 'Zeichenfolge_Ausdruck' in Hochkommas ein. sq ( Zeichenfolge_Ausdruck ) Beispiel: # sq ( 'zero' ) # Ergebnis: 'null' Fasst 'Zeichenfolge_Ausdruck' in Anführungszeichen ein. dq ( Zeichenfolge_Ausdruck ) Beispiel: # dq ( 'zero' ) # Ergebnis: "null" Verwendet die Identitätsinformationen des momentan authentifizierten Benutzers, um Werte in der angegebenen Parameterübersicht zu suchen. Jeder einzelne Bestandteil der Benutzeridentität (Benutzerkontoname, Gruppennamen, Rollennamen) wird als Schlüssel für diese Übersicht verwendet. Die eindeutige Liste mit Werten, die aus der Parameterübersicht abgerufen wird, wird anschließend als Zeichenfolge zurückgegeben, in der jeder Wert in Hochkommas eingefasst und mehrfache Werte durch ein Komma getrennt sind. CSVIdentityName ( %parameter_map_name [ ; Trennzeichen_Zeichenfolge ] ) Beispiel: #CSVIdentityName ( %security_clearance_level_map ) # Ergebnis: 'Ebene_500' ; 'Ebene_501' ; 'Ebene_700' Gibt die einzelnen Bestandteile der Benutzeridentität (Benutzerkontoname, Gruppennamen, Rollennamen) als Liste mit Zeichenfolgen zurück. Die eindeutige Liste mit Werten wird als Zeichenfolge wiedergegeben, in der jeder Wert in Hochkommas eingefasst und mehrfache Werte mit einem Semikolon abgetrennt sind. CSVIdentityNameList ( [ Trennzeichen_Zeichenfolge ] ) Beispiel: # CSVIdentityNameList ( ) # Ergebnis: 'Jeder' ; 'Berichtsadministratoren' ; 'Query-Benutzer' Gibt den Cognos® Access Manager-Passport zurück. CAMPassport ( ) Beispiel: # CAMPassport ( ) # Ergebnis: 111:98812d62-4fd4-037b-4354-26414cf7ebef:3677162321 Gibt die einzelnen Bestandteile der Cognos® Access Manager-ID (CAMID) des Benutzers, z. B. Benutzerkonotname, Gruppennamen oder Rollennamen, als Liste mit kommagetrennten Werten zurück. CAMIDList ( [ Trennzeichen_Zeichenfolge ] ) Beispiel: #CAMIDList ( ) # Ergebnis: CAMID ( "::Jeder" ) ; CAMID ( ":Autoren" ) ; CAMID ( ":Abfragebenutzer" ) ; CAMID ( ":Empfänger" ) ; CAMID ( ":Metriken-Autoren ) Gibt ein Array der Cognos® Access Manager-IDs (CAMIDs) des Benutzers auf Grundlage des Identitätstyps zurück (Konto, Gruppe oder Rolle). 'CAMIDListForType' kann mit den Makrofunktionen 'csv' oder 'join' verwendet werden. CAMIDListForType ( Identitätstyp ) Beispiel: [qs].[Benutzer_Rolle] in ( # csv ( CAMIDListForType ( 'role' ) ) # ) Ergebnis: [qs].[Benutzer_Rolle] in ( 'CAMID ( "::Systemadministratoren" ) ' ; 'CAMID ( ":Autoren" )' ) Verkettet zwei Zeichenfolgen. Wert1 + Wert2 Beispiel: # '{ ' + $runLocale + ' }' # Ergebnis: {de-de} Entfernt die führenden Zeichen vom ersten Argument. Das optionale zweite Argument gibt die zu entfernenden Zeichen an. Standardmäßig werden mit dieser Funktion Leerzeichen (d. h. Leerschritt, Tabulatorschritt, Zeilenumbruch und Zeilenvorschub) entfernt. lstrip ( Zeichenfolge_Ausdruck [ ; Gruppe_von_Zeichen ] ) Beispiel: # sq( lstrip ( ' abc ' ) ) # Ergebnis: 'abc ' Beispiel: # lstrip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Ergebnis: 53.2100 Gibt den Parameterwert von "Parametername" zurück, falls dieser definiert ist. Der Wert von "Standardtext" wird zurückgegeben, wenn "Parametername" nicht vorhanden ist. Wenn für "Datentyp" der Wert "Zeichenfolge" festgelegt wird, wird der Ergebniswert in einfache Anführungszeichen eingeschlossen. Die Verwendung dieser Funktion bewirkt keine Ausnahmebedingung aufgrund eines fehlenden Parameters. ParamValue ( Parametername [ , Standardtext [, Datentyp ] ] ) Beispiel: # ParamValue ( 'p_country' ) # Ergebnis: 'Kanada' - p_country wird festgelegt Ergebnis: null - p_country ist kein bekannter Parameter Ergebnis: null - p_country wird in einer optionalen Eingabeaufforderung verwendet und nicht festgelegt Beispiel: # ParamValue ( 'p_country' , 'Niederlande' ) # Ergebnis: 'Kanada' - p_country wird festgelegt Ergebnis: 'Niederlande' - p_country ist kein bekannter Parameter Ergebnis: 'Niederlande' - p_country wird in einer optionalen Eingabeaufforderung verwendet und nicht festgelegt Beispiel: # ParamValue ( 'p_country', ' cast ( null as varchar(20)) ' , 'token' ) # Ergebnis: 'Kanada' - p_country wird festgelegt Ergebnis: cast ( null as varchar(20)) - p_country ist kein bekannter Parameter Ergebnis: cast ( null as varchar(20)) - p_country wird in einer optionalen Eingabeaufforderung verwendet und nicht festgelegt Fordert den Benutzer zur Eingabe eines einzelnen Werts oder Mitglieds auf. Nur "Eingabeaufforderungs_Name" ist erforderlich. Wenn der Datentyp nicht definiert ist, wird standardmäßig 'string' verwendet. Die Eingabeaufforderung ist optional, wenn "Standardtext" festgelegt ist. "Text" wird, wenn angegeben, dem Wert vorangestellt. "QueryItem" kann angegeben werden, um die Eigenschaften für die Eingabeaufforderungsdaten von "queryItem" zu nutzen. "Nachfolgender_Text" wird, wenn angegeben, an den Wert angehängt. Wenn der Datentyp 'memberuniquename' lautet, wird eine Eingabeaufforderung zur Einzelauswahl von Mitgliedern erstellt. Es empfiehlt sich, einen Standardwert als drittes Argument anzugeben. Der Standardwert muss ein gültiger eindeutiger Mitgliedsname sein; es kann sich auch um einen Aliasnamen handeln, der auf einen eindeutigen Mitgliedsnamen verweist, wie z. B. in Report Studio. prompt ( Eingabeaufforderungs_Name ; Datentyp ; Standardtext ; Text ; Abfrageelement ; Nachfolgender_Text ) Beispiel: select . . . where LAND_MEHRSPRACHIGER LÄNDERCODE > #prompt ( 'Start-Ländercode' ; 'integer' ; '10' ) # Ergebnis: select . . . where LAND_MEHRSPRACHIGER LÄNDERCODE > 10 Beispiel: [VertriebAUF!].[LAND].[LAND] = # prompt ( 'countryPrompt' ; 'string' ; '''Kanada''' ) # Ergebnis: [VertriebAuf].[LAND].[LAND] = 'Kanada' Beispiel: set ( #prompt ('eigenes_Produkt'; 'memberuniquename'; '[Campingausrüstung]'; ''; '[Umsatz].[Produkt].[Produkt].[Produktreihe]')#) Ergebnis: set([Umsatz].[Produkt].[Produkt].[Produktreihe]-> [alle].[1]) Der Parameter "Standardtext" muss so angegeben werden, dass er im Kontext des Makros vollkommen korrekt ist, da für diesen Wert keine weitere Formatierung erfolgt. Die Standardzeichenfolge '''Kanada''' in Beispiel 2 wird als Zeichenfolge mit Hochkommas angegeben, wobei die inneren Hochkommas durch doppelte Anführungszeichen umschlossen werden, was zu jeweils drei Anführungszeichen führt. Im Ergebnis wird die Zeichenfolge korrekt mit Hochkommas im Ausdruck dargestellt. Als allgemeine Regel für den Zeichenfolgedatentyp gilt, dass der Parameter "Standardtext" immer auf diese Weise angegeben werden sollte (außer im Kontext eines Parameters für eine gespeicherte Prozedur). Wenn der Parameter "Standardtext" vom Typ 'date' oder 'datetime' ist, sollte im Zusammenhang mit SQL ein spezielles Format verwendet werden. Beispiele für diese Formate sind: 'DATE ''2001-12-25''' und 'DATETIME ''2001-12-25 12:00:00'''. In allen anderen Zusammenhängen können Sie date/datetime ohne Schlüsselwort und geschützte Hochkommas verwenden (z. B. '2001-12-25'). Fordert den Benutzer zur Eingabe von einem oder mehreren Werten oder Mitgliedern auf. Nur "Eingabeaufforderungs_Name" ist erforderlich. Wenn der Datentyp nicht definiert ist, wird standardmäßig 'string' verwendet. Die Eingabeaufforderung ist optional, wenn "Standardtext" festgelegt ist. "Text" wird, wenn angegeben, der Werteliste vorangestellt. "QueryItem" kann angegeben werden, um die Eigenschaften für die Eingabeaufforderungsdaten von "queryItem" zu nutzen. "Nachfolgender_Text" wird, wenn angegeben, an die Werteliste angehängt. Wenn der Datentyp 'memberuniquename' lautet, wird eine Eingabeaufforderung zur Mehrfachauswahl von Mitgliedern erstellt. Es empfiehlt sich, einen Standardwert als drittes Argument anzugeben. Der Standardwert muss ein gültiger eindeutiger Mitgliedsname sein; es kann sich auch um einen Aliasnamen handeln, der auf einen eindeutigen Mitgliedsnamen verweist, wie z. B. in Report Studio. promptmany ( Eingabeaufforderungs_Name ; Datentyp ; Standardtext ; Text ; Abfrageelement ; Nachfolgender_Text ) Beispiel: select . . . where LAND_MEHRSPRACHIGER LÄNDERCODE in ( # promptmany ( 'Ländername' ) # ) Ergebnis: select . . . where LAND_MEHRSPRACHIGER LÄNDERCODE in ( 'Kanada' ; 'Niederlande' ; 'Russland' ) Beispiel: select . . . from gosales.gosales.dbo.COUNTRY_MULTILINGUAL COUNTRY_MULTILINGUAL ; gosales.gosales.dbo.COUNTRY XX where COUNTRY_MULTILINGUAL.COUNTRY_CODE = XX.COUNTRY_CODE # promptmany ( 'Selected CountryCodes' ; 'integer' ; ' ' ; ' and COUNTRY_MULTILINGUAL.COUNTRY_CODE in ( ' ; '' ; ' ) ' ) # Ergebnis: select . . from gosales.gosales.dbo.COUNTRY_MULTILINGUAL COUNTRY_MULTILINGUAL ; gosales.gosales.dbo.COUNTRY XX where COUNTRY_MULTILINGUAL.COUNTRY_CODE = XX.COUNTRY_CODE and COUNTRY_MULTILINGUAL.COUNTRY_CODE in ( 'Kanada' ; 'Niederlande' ; 'Russland' ) Beispiel: set ( #promptmany ('eigenes_Produkt'; 'memberuniquename'; '[Campingausrüstung]'; ''; '[Umsatz].[Produkt].[Produkt].[Produktreihe]')#) Ergebnis: set([Umsatz].[Produkt].[Produkt].[Produktreihe]-> [alle].[1]); [Umsatz].[Produkt].[Produkt].[Produktreihe]-> [alle].[2]) Abfrage für eine einzelne Spalte ausführen und den Wert in der ersten (einzigen) Zeile zurückgeben. Das Ergebnis ist nicht formatiert; sicherstellen, dass der Aufruf bei Bedarf in sq ( ) eingeschlossen ist. queryValue ( Wertausdruck [ , Filterausdruck ] ) Beispiel: # sq ( queryValue ( 'Kalender.NameDesWochentags' , 'Kalender.Datum = 2018-06-06' ) ) # Ergebnis: 'Mittwoch' Baut aus der Liste der Parameter ein Array auf. array ( Zeichenfolge_Ausdruck|Array_Ausdruck { ; Zeichenfolge_Ausdruck|Array_Ausdruck } ) Beispiel: # csv ( array ( 'a1' ; Array ( 'x1' ; 'x2' ) ; 'a2' ) ) # Ergebnis: 'a1' ; 'x1' ; 'x2' ; 'a2' Erstellt aus den Elementen des Arrays eine Zeichenfolge mit kommagetrennten Werten. Wahlweise können die Zeichenfolgen für Trennzeichen und Anführungszeichen festgelegt werden. Das Standardtrennzeichen ist ein Semikolon ( ; ) und das Standardanführungszeichen ist ein einfaches Anführungszeichen ( ' ). csv ( Array_Ausdruck [ ; Trennzeichen_Zeichenfolge[ ; Anführungszeichen_Zeichenfolge ] ] ) Beispiel: # sq ( csv ( array ( 'a1' , 'a2' ) ) ) # Ergebnis: 'a1' ; 'a2' Ruft einen Eintrag aus der IBM® Cognos®-Konfigurationsdatei ab. Das Flag zum Erzwingen der Entschlüsselung ist optional und es sind folgende Werte zulässig: 'true' , '1', 1 , 'false', '0', 0. Der Standardwert ist 'false'. In Ausnahmefällen muss für das Flag zum Erzwingen der Entschlüsselung der Wert 'true' festgelegt werden. Wenn für das Flag zum Erzwingen der Entschlüsselung der Wert 'true' festgelegt wird, wird für die Einträge, die in IBM® Cognos® Configuration über die erweiterten Eigenschaften konfiguriert sind, der Klartextwert des Konfigurationseintrags zurückgegeben. Für Einträge, die in den erweiterten Eigenschaften nicht angegeben sind, wird eine leere Zeichenfolge zurückgegeben, unabhängig davon, ob verschlüsselte Informationen vorhanden sind. Der Eintrag in den erweiterten Eigenschaften lautet 'qs.getConfigurationEntry.1' und stellt eine durch Semikolon getrennte Liste mit Namen dar. Standardmäßig ist diese Namensliste leer; Aufrufe dieser Funktion, bei denen für das Flag der Wert 'true' festgelegt ist, geben eine leere Zeichenfolge zurück. getConfigurationEntry ( Eintrag_Zeichenfolge ;  Entschlüsselung_erzwingen_Flag ) Beispiel: # getConfigurationEntry ( 'serverLocale'  ) # Ergebnis: en Gibt einen Eintrag von einer Ressourcendatei zurück. Das erste Argument ist die Ressourcen-ID, die in der Ressourcendatei gefunden wird. Das optionale zweite Argument ist der Ressourcendateiname ohne das Ländereinstellungssuffix (z. B 'mfwa4j' für die Nachrichtendatei 'mfwa4j_en.properties'). Die Standardressourcendatei ist 'xqejavamsgs'. Das optionale dritte Argument ist die Ländereinstellung, standardmäßig 'en'. getResourceString ( Ressourcen-ID_Zeichenfolge [, Ressourcendatei_Zeichenfolge [ , Ländereinstellung_Zeichenfolge ] ] ) Beispiel: # getResourceString ( 'XQE_BIN_binLow' ) # Ergebnis: XQE-BIN-0001 weniger als %1 Beispiel: # getResourceString ( 'MFW_UT_INTERNAL_ERROR' , 'mfw4j' , 'en' ) # Ergebnis: MFW-UT-1002 Es ist ein internes Problem aufgetreten. Wenden Sie sich an den zuständigen Administrator. Sucht nach und liefert Elemente eines Arrays, die mit dem in 'Muster_Zeichenfolge' festgelegten Muster übereinstimmen. Es werden nur die folgenden Metazeichen unterstützt: ^ (Wortanfang), $ (Wortende), ! (Verneinung - nur als erstes Zeichen unterstützt ). grep ( Muster_Zeichenfolge ; Array_Ausdruck ) Beispiel: # sq ( csv ( grep ( 's' , array ( 'as', 'an', 'arts' ) ) ) ) # Ergebnis: 'as'; 'arts' Beispiel: # sq ( csv ( grep ( '^g' , array ( 'group', 'golf' ) ) ) ) # Ergebnis: 'group', 'golf' Beispiel: # sq ( csv ( grep ( 's$' , array ( 'oranges', 'mangoes' ) ) ) ) # Ergebnis: 'oranges', 'mangoes' Beispiel: # sq ( csv ( grep ( '!o' , array ( 'oranges', 'apples' ) ) ) ) # Ergebnis: 'apples' Offset in 'str' suchen, in der 'substr' enthalten ist. Der Wert -1 wird zurückgegeben, wenn 'substr' nicht gefunden wird. Die optionale Angabe von 'offset' als Ausgangspunkt der Suche ist möglich. Das erste Argument 'str' kann auch ein Array-Ausdruck sein, in diesem Fall wird die Funktion für jedes Array-Element angewendet und das Funktionsergebnis ist ein Array mit Werten. index ( str , substr [ , offset ] ) # index ( 'The black horse jumped over the black sheep.', 'black' ) # Ergebnis: 4 # index ( 'The black horse jumped over the black sheep.', 'black', 10 ) # Ergebnis: 32 # index ( 'The black horse jumped over the black sheep.', 'green' ) # Ergebnis: -1 # sq ( join ( ' | ', index ( array ('black' , 'red', 'green' ) , 'e' ) ) ) # Ergebnis: -1 | 1 | 2 Verknüpft die Elemente eines Arrays mithilfe von 'Trennzeichen_Zeichenfolge'. join ( Trennzeichen_Zeichenfolge ; Array_Ausdruck ) Beispiel: # sq ( join ( ' | | ' ; array ( 'as'; 'an'; 'arts' ) ) ) # Ergebnis: 'as | | an | | arts' Berechnet die Anzahl der Zeichen in einem Zeichenfolgeausdruck. Falls es sich beim Argument um einen Array-Ausdruck handelt, ist das Ergebnis ein Array mit Werten, wobei jeder Eintrag die Anzahl der Zeichen in den einzelnen Elemente des Array-Ausdrucks angibt. length ( Zeichenfolge_Ausdruck | Array_Ausdruck ) length ( 'abcdef' ) Ergebnis: 6 join ( '--', length ( array ( 'abcdef' , 'xyz' ) ) ) Ergebnis: 6--3 Letztes Offset in 'str' suchen, in der 'substr' enthalten ist. Diese Funktion wird als Umkehrindex bezeichnet, die Suche beginnt sozusagen am Ende der Zeichenfolge. Der Wert -1 wird zurückgegeben, wenn 'substr' nicht gefunden wird. Die optionale Angabe von 'offset' als Endpunkt der Suche ist möglich. Das erste Argument 'str' kann ein Array-Ausdruck sein, in diesem Fall wird die Funktion für jedes Array-Element angewendet und das Funktionsergebnis ist ein Array mit Werten. rindex ( str , substr [ , offset ] ) # rindex ( 'The black horse jumped over the black sheep.', 'black' ) # Ergebnis: 32 # rindex ( 'The black horse jumped over the black sheep.', 'black', 10 ) # Ergebnis: 4 # rindex ( 'The black horse jumped over the black sheep.', 'green' ) # Ergebnis: -1 # sq ( join ( ' | ', rindex ( array ('black' , 'red', 'green' ) , 'e' ) ) ) # Ergebnis: -1 | 1 | 3 Entfernt die abschließenden Zeichen vom ersten Argument. Das optionale zweite Argument gibt die zu entfernenden Zeichen an. Standardmäßig werden mit dieser Funktion Leerzeichen (d. h. Leerschritt, Tabulatorschritt, Zeilenumbruch und Zeilenvorschub) entfernt. rstrip ( Zeichenfolge_Ausdruck [ ; Gruppe_von_Zeichen ] ) Beispiel: # sq( rstrip ( ' abc ' ) ) # Ergebnis: ' abc' Beispiel: # rstrip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Ergebnis: 0053.21 Sortiert die Elemente des Arrays alphabetisch. Duplikate werden beibehalten. sort ( Array_Ausdruck ) Beispiel: # csv ( sort ( array ( 's3'; 'a'; 'x' ) ) ) # Ergebnis: 'a'; 's3'; 'x' Teilt eine Zeichenfolge oder die Zeichenfolgenelemente eines Arrays in einzelne Elemente. split ( Muster_Zeichenfolge; Zeichenfolge_Ausdruck|Array_Ausdruck ) Beispiel: # sq ( csv ( split ( '::', 'ab=c::de=f::gh=i' ) ) ) # Ergebnis: 'ab=c' ; 'de=f'; 'gh=i' Beispiel: # sq ( csv ( split ( '=' , split ( '::', 'ab=c::de=f::gh=i' ) ) ) ) # Ergebnis: 'ab' ; 'c' ; 'de' ; 'f' ; 'gh' ; 'i' Entfernt die führenden und abschließenden Zeichen vom ersten Argument. Das optionale zweite Argument gibt die zu entfernenden Zeichen an. Standardmäßig werden mit dieser Funktion Leerzeichen (d. h. Leerschritt, Tabulatorschritt, Zeilenumbruch und Zeilenvorschub) entfernt. strip ( Zeichenfolge_Ausdruck [ ; Gruppe von Zeichen ] ) Beispiel: # sq( strip ( ' abc ' ) ) # Ergebnis: 'abc' Beispiel: # strip ( ' 0053.2100 ' ; '0 \t\r\n' ) # Ergebnis: 53.21 Sucht nach einem Muster in einer Zeichenfolge oder in den Zeichenfolgenelementen eines Array und ersetzt das erste Vorkommen von 'Muster_Zeichenfolge' mit 'Ersetzungswert_Zeichenfolge'. Es werden nur die folgenden Metazeichen unterstützt: ^ (Wortanfang), $ (Wortende) substitute ( Muster_Zeichenfolge; Ersetzungswert_Zeichenfolge; Zeichenfolge_Ausdruck|Array_Ausdruck ) Beispiel: #sq ( substitute ( '^cn='; '***'; 'cn=help' ) )# Ergebnis: '***help' Beispiel: # csv ( substitute ( '^cn='; '***'; array ( 'cn=help' ; 'acn=5' ) ) ) # Ergebnis: '***help' ; 'acn=5' Beispiel: # csv ( substitute ( 'cn='; ''; array ( 'cn=help' ; 'acn=5' ) ) ) # Ergebnis: 'help' ; 'a5' Beispiel: #sq ( substitute ( 'help$', '***', 'cn=help' ) )# Ergebnis: 'cn=***' Extrahiert einen Teil von 'Zeichenfolge_Ausdruck' beginnend mit 'Start_Offset'. Sie können angeben, dass die Anzahl von 'Länge' Zeichen extrahiert werden soll. Wenn 'Länge' nicht angegeben wird, werden die Zeichen bis zum Ende von 'Zeichenfolge_Ausdruck' zurückgegeben. Das erste Argument kann auch ein Array-Ausdruck sein, in diesem Fall wird die Funktion für jedes Array-Element angewendet und das Funktionsergebnis ist ein Array mit Zeichenfolgen. substr ( Zeichenfolge_Ausdruck , Start_Offset [ , Länge ] ) substr ( 'The horse is black.', 0, 3 ) Ergebnis: The substr ( 'The horse is black.', 4 ) Ergebnis: horse is black. substr ( 'The horse is black', index ('The horse is black.' , 'green' ) ) Ergebnis: The horse is black. join ( ' | ', substr ( array ('black' , 'red', 'green' ) , 2, 2 ) ) Ergebnis: ac | d | en substr ('over the moon', -2, 4) Fehler: Das zweite Argument der Funktion 'substr' muss größer oder gleich -1 sein . Gibt 'Zeichenfolge_Ausdruck1', eine Zeitmarke mit Zeitzone, abgeschnitten auf das durch 'Zeichenfolge_Ausdruck2' vorgegebene Format zurück. Für das Format in 'Zeichenfolge_Ausdruck2' sind folgende Werte möglich: 'jjjj', 'mm', 'tt', 'jjjj-mm', 'jjjjmm', 'jjjj-mm-tt', 'jjjjmmtt', 'jjjj-mm-tt hh:mm:ss', 'jjjj-mm-tt hh:mm:ss+hh:mm', 'jjjj-mm-tt hh:mm:ss.ff3', 'jjjj-mm-tt hh:mm:ss.ff3+hh:mm', 'jjjj-mm-ttThh:mm:ss', 'jjjj-mm-ttThh:mm:ss+hh:mm', 'jjjj-mm-ttThh:mm:ss.ff3+hh:mm' oder 'jjjj-mm-zzThh:mm:ss.ff3+hh:mm'. Makrofunktionen, die eine Zeichenfolgendarstellung einer Zeitmarke mit Zeitzone zurückgeben, besitzen für die Sekundenbruchteile standardmäßig eine Genauigkeit von neun Stellen. Mit den Formatoptionen können Sie die Anzahl auf drei oder null Stellen abschneiden. timestampMask ( Zeichenfolge_Ausdruck1 ; Zeichenfolge_Ausdruck2 ) Beispiel: # timestampMask ( $current_timestamp ; 'yyyy-dd-mm' ) # Ergebnis: 2005-11-01 Beispiel: # timestampMask (  '2005-11-01 12:00:00,000-05:00' ; 'yyyy-mm-dd hh:mm:ss+hh:mm' ) # Ergebnis: 2005-11-01 12:00:00-05:00 Beispiel: # timestampMask (  '2005-11-01 12:00:00,123456789-05:00' ; 'yyyy-mm-ddThh:mm:ss+hh:mm.ff3+hh:mm' ) # Ergebnis: 2005-11-01T12:00:00,123-05:00 Gibt die Zeichenfolgendarstellung einer Zeitmarke mit Zeitzone zurück, die sich aus der Anpassung von 'Zeichenfolge_Ausdruck' an die Zeitzone des Betriebssystems ergibt. Mit der Makrofunktion timestampMask () können Sie die Ausgabe abschneiden. toLocal ( Zeichenfolge_Ausdruck ) Beispiel: # toLocal ( '2005-11-01 17:00:00,000-00:00' ) #, wobei die lokale Zeitzone des BS -05:00 ist Ergebnis: 2005-11-01 12:00:00,000000000-05:00 Beispiel: # timestampMask ( toLocal ( '2005-11-01 17:00:00,000-00:00' ) ; 'jjjj-mm-tt hh:mm:ss+hh:mm' ) #, wobei die lokale Zeitzone des BS -05:00 ist Ergebnis: 2005-11-01 12:00:00-05:00 Beispiel: # toLocal ( '2005-11-01 13:30:00,000-03:30' ) #, wobei die lokale Zeitzone des BS -05:00 ist Ergebnis: 2005-11-01 12:00:00,000000000-05:00 Gibt die Zeichenfolge "Zeichenfolge_Ausdruck" zurück, wobei alle Zeichen anhand der Regeln der Ländereinstellung "Ländereinstellung_Zeichenfolge" in Kleinbuchstaben umgesetzt werden. Wird keine Ländereinstellung angegeben, wird 'en' verwendet. tolower ( Zeichenfolge_Ausdruck [ ; Ländereinstellung_Zeichenfolge ] ) Beispiel: # tolower ( 'ABC' ) # Ergebnis: abc Beispiel: # tolower ( 'ABC' ; 'fr' ) # Ergebnis: abc Gibt die Zeichenfolge "Zeichenfolge_Ausdruck" zurück, wobei alle Zeichen anhand der Regeln der Ländereinstellung "Ländereinstellung_Zeichenfolge" in Großbuchstaben umgesetzt werden. Wird "Ländereinstellung_Zeichenfolge" nicht angegeben, wird 'en' verwendet. toupper ( Zeichenfolge_Ausdruck [ ; Ländereinstellung_Zeichenfolge ] ) Beispiel: # toupper ( 'abc' ) # Ergebnis: ABC Beispiel: # toupper ( 'abc' ; 'fr' ) # Ergebnis: ABC Gibt die Zeichenfolgendarstellung einer Zeitmarke mit Zeitzone zurück, die sich aus der Anpassung von "Zeichenfolge_Ausdruck" an die UTC-Zeitzone (auch als GMT-Zeit bezeichnet) ergibt. Mit der Makrofunktion timestampMask () können Sie die Ausgabe abschneiden. toUTC ( Zeichenfolge_Ausdruck ) Beispiel: # toUTC ( '2005-11-01 12:00:00,000-05:00' ) # Ergebnis: 2005-11-01 17:00:00,000000000-00:00 Beispiel: # timestampMask( toUTC ( '2005-11-01 12:00:00,000-05:00' ) ; 'yyyy-mm-dd hh:mm:ss.ff3+hh:mm' ) # Ergebnis: 2005-11-01 17:00:00,000-00:00 Beispiel: # toUTC ( $current_timestamp ) # Ergebnis: 2005-11-01 17:00:00,000000000-00:00 Entfernt doppelte Einträge aus dem Array. Die Reihenfolge der Elemente wird beibehalten. unique ( Array_Ausdruck ) # csv ( unique ( array ( 's3'; 'a'; 's3'; 'x' ) ) ) # Ergebnis: 's3'; 'a'; 'x' Die URL verschlüsselt das weitergeleitete Argument. Diese Funktion ist nützlich beim Festlegen von XML-Verbindungszeichenfolgen. urlencode ( prompt ( 'Benutzerwert' ) ) urlencode ( prompt ( 'beliebiger_Wert' ) ) %27testValue%27 case - Einfach Dieses Makrokonstrukt ist die Vorlage für eine einfache case-Funktion und enthält die Funktionen case, when, then, else und end. Dieses Makrokonstrukt wird nur im DQM-Modus unterstützt. CASE <ausdruck> WHEN <literal> THEN <ausdruck> [ELSE <ausdruck>] END Beispiel: #CASE prompt('pDateRange';'token') WHEN 'Aktuelle Woche' THEN '[PR Aktuelle Woche]' ELSE '[PR Vorherige Woche]' END# Ergebnis: [PR Aktuelle Woche]
Blockfunktionen Diese Liste enthält Funktionen, die zum Zugriff auf Mitglieder eines Satzes dienen (im Allgemeinen für Analysis Studio). Gibt die ersten Mitglieder zurück, die im Satz gefunden werden (bis zu 'numerischer_Ausdruck_Maximum' + 'numerischer_Ausdruck_Überlauf'). Wenn 'numerischer_Ausdruck_Maximum' + 'numerischer_Ausdruck_Überlauf' überschritten wird, dann wird nur die maximale Anzahl von Mitgliedern zurückgegeben. Bei einem Satz, der nur wenige Mitglieder mehr als durch 'numerischer_Ausdruck_Maximum' angegeben enthält, ermöglicht 'numerischer_Ausdruck_Überlauf', dass der kleine Satz zusätzlicher Mitglieder mit aufgenommen wird. Wenn der Satz mehr als die durch den Überlauf zugelassenen Mitglieder enthält, wird nur die durch 'numerischer_Ausdruck_Maximum' angegebene Anzahl von Mitgliedern zurückgegeben. _firstFromSet ( Satz_Ausdruck ; numerischer_Ausdruck_Maximum ; numerischer_Ausdruck_Überlauf ) _firstFromSet ( [abenteuer_und_freizeit].[Produkte].[Produkte].[Produktreihe] ; 2 ; 8 ) Ergebnis: Gibt die fünf Mitglieder im Satz 'Produktreihe' zurück. Die beiden ersten Mitglieder werden innerhalb des Maximums und die folgenden drei Mitglieder als Überlauf zurückgegeben. Campingausrüstung Golfausrüstung Bergsteigerausrüstung Outdoor-Schutzausrüstung Accessoires _firstFromSet ( [abenteuer_und_freizeit].[Produkte].[Produkte].[Produktreihe] ; 2 ; 2 ) Ergebnis: Campingausrüstung, Golfausrüstung Gibt den Datensatz zurück, der 'Mitglied_Ausdruck' enthält, wenn die Größe von 'Satz_Ausdruck' größer ist als 'numerischer_Ausdruck', d. h., ein neues Mitglied wird erzeugt, wenn die Anzahl der Mitglieder in 'Satz_Ausdruck' größer ist als durch 'numerischer_Ausdruck' angegeben. _remainderSet ( Mitglied_Ausdruck; Satz_Ausdruck ; numerischer_Ausdruck ) _remainderSet ( member ( aggregate ( currentMeasure within set [abenteuer_und_freizeit].[Produkte].[Produkte].[Produktreihe] ) ; 'Product Aggregate' ; 'Product Aggregate' ; [abenteuer_und_freizeit].[Produkte].[Produkte] ) ; [abenteuer_und_freizeit].[Produkte].[Produkte].[Produktreihe] ; 1 ) Ergebnis: Absatzmenge für 'Product Aggregate'