Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Sv translation
languagede
Info

Im Sinne dieser Referenz gilt: Datum bezieht sich nur auf Jahr, Monate, Tage (und Quartale, Wochen) und deren Kombinationen. Zeit bezieht sich auf Stunden, Minuten und Sekunden und deren Kombinationen. Für die Kombination von Datum und Uhrzeit verwenden wir strikt datetime.

Tip

Siehe Datums- und Uhrzeitfunktionen, die von Transformations-Scripting übernommen wurden.

Datumsstrings

Die Parameter für die Datumszeichenfolge werden absolut (dd.MM.yyyy, yyyy-MM-dd oder entsprechend den Domäneneinstellungen) oder relativ (Zeitvariablen) von Operatoren eingegeben:

date +|- n[d|w|m|q|y]

wobei

  • Datum ist Datum im Format dd.MM.yyyy oder yyyy-MM-dd oder eines der folgenden Jahre: aktuelles Jahr, aktueller Monat, aktuelles Quartal, aktuelle Woche, tatsächlicher Tag, jetzt
  • n steht für die Anzahl von:
  • d Tage, w Wochen, m Monate, q Quartale oder y Jahre.

ExamplesBeispiele:

Code Block
'2011-01-01 + 1q - 2m + 1d' means Jan 1, 2011 + 1 quartal - two months + 1 day, that represents Feb 2, 2011
'actualYear + 1m + 1d' , (used on 8 Mar, 2011) means 1 Feb, 2011 + 1 month + 1 day, that represents 2 Feb, 2011 as well

Eine andere Methode zum Erstellen der Datumszeichenfolgen ist wie folgt:

Code Block
date(day: dd, month: MM, year: YYYY)
date(d: dd, m: MM, y: YYYY)
date(week: w, year: YYYY)
date(quarter: q, year: YYYY)

Datetime Kontext ändern

Was ist der Datetime-Kontext? Betrachten Sie folgendes Beispiel:

 

01/2011

02/2011

03/2011

Formelindikator

1000

1200

1300

Die Formel wird für jede Spalte ausgewertet - in diesem Beispiel werden in Spalten Werte für bestimmte Monate ausgewertet. Während der Auswertung des Werts 1000 war der Datums- / Zeit-Kontext 01/2011, dann während der Verarbeitung des Wertes 1200 der Kontext 02/2011 usw.

Funktion

Beschreibung

Object dateAt(String dateString, { expression })

Ändert den Kontext des ausgewerteten Ausdrucks in dateString date. Beispiel:

Code Block
dateAt('2011-01-01', {
i1 = M_NAME_1
i2 = M_NAME_2
if (i1 > i2) {
  return i1;
}
return i2;
});

Object dateInterval(String from, String to, { expression })

Ändert den Datumskontext des Ausdrucks und wertet ihn im angegebenen Intervall aggregiert von - bis aus. Beispiel:

Code Block
dateInterval('2011-01-01', '2011-12-31' {
i1 = M_NAME_1
i2 = M_NAME_2
if (i1 > i2) {
  return i1;
}
return i2;
});

Die Werte für die Indikatoren M_NAME_1 und M_NAME_2 werden für den gesamten Zeitraum zusammengefasst.

Object timeAt(String timeString, { expression })

Ändert den Kontext des ausgewerteten Ausdrucks in timeString-Datum. Beispiel:

Code Block
timeAt('13:33:23', {
i1 = M_NAME_1
i2 = M_NAME_2
if (i1 > i2) {
  return i1;
}
return i2;
});

Object timeInterval(String from, String to, { expression })

Ändert den Zeitkontext des Ausdrucks und wertet ihn im angegebenen Intervall aggregiert von - bis aus. Beispiel:

Code Block
timeInterval('00:00:01', '23:59:59' {
i1 = M_NAME_1
i2 = M_NAME_2
if (i1 > i2) {
  return i1;
}
return i2;
});

Die Werte für die Indikatoren M_NAME_1 und M_NAME_2 werden für den gesamten Zeitraum zusammengefasst.

Object dateAt (String date, String period) { expression })

Ändert den Kontext des ausgewerteten Ausdrucks in date String-Daten - aggregiert nach der definierten Periode {DAY, D, WOCHE, W, MONAT, M, JAHR, Y}.

Object dateInterval (String from, String to, String period ) { expression })

Ändert den Datumskontext des Ausdrucks und wertet ihn im angegebenen Intervall aggregiert von - bis aus. Die Aggregation nach der definierten Periode {DAY, D, WOCHE, W, MONAT, M, JAHR, Y} wird ebenfalls durchgeführt.

Object minus(String date, period, int)

 Zieht den angegebenen Zeitraum (Jahre, Monate, Wochen, Tage) vom festgelegten Datumswert ab.

Code Block
minus(date(firstValue('L_DATE')), 'days', 20) //subtracts 20 days from the date value


Object minus(String time, period, int)

Addiert die Menge des angegebenen Zeitraums (Jahre, Monate, Wochen, Tage) zum definierten Datumswert.

Code Block
minus(time(firstValue('L_TIME')), 'minutes', 30) //subtracts 30 minutes from the time value
Object plus(String date, period, int)

 Addiert die Menge des angegebenen Zeitraums (Jahre, Monate, Wochen, Tage) zum definierten Datumswert.

Code Block
plus(date(firstValue('L_DATE')), 'days', 20) //adds 20 days to the date value


Object plus(String time, period, int)

Fügt die Anzahl der angegebenen Zeiträume (Stunden, Minuten, Sekunden) zum definierten Datumswert hinzu.

Code Block
plus(time(firstValue('L_TIME')), 'seconds', 50) //adds 50 seconds to the time value

Object timeAt (String time, String period) { expression })

Ändert den Kontext des ausgewerteten Ausdrucks in timeString time - aggregiert nach der definierten Periode {HOUR, H, MINUTE, SECOND}.

Object timeInterval (String from, String to, period) { expression })

Ändert den Zeitkontext des Ausdrucks und wertet ihn im angegebenen Intervall aggregiert von - bis aus. Die Aggregation um den definierten Zeitraum {HOUR, H, MINUTE, SECOND} wird ebenfalls durchgeführt.

Object withoutDateTime() { expression })

Wertet den Ausdruck ohne Datumszeitintervall aus.

Veraltete Funktionen

Warning

Diese Funktionen können in weiteren Veröffentlichungen entfernt werden

Funktion

Beschreibung

Object value(String dateString, String indicator)

Loads the indicator's value at specified dateLädt den Wert des Indikators zum angegebenen Datum.

Object value(String dateString, int drill_down_level)

Loads the indicator's value at specified date aggregated for N previous levelsLädt den Wert des Indikators zu einem bestimmten Datum, aggregiert für N frühere Stufen.

Object value(String dateFrom, String dateTo, String indicator)

Loads cumulative indicator's value for specified date intervalLädt den Wert des kumulierten Indikators für das angegebene Datumsintervall.

Object value(String dateFrom, String dateTo, String indicator, int dril_down_level)

Loads cumulative indicator's value for specified date interval aggregated for N previous levels.

Advanced functions

 

Lädt den Wert des kumulativen Indikators für ein bestimmtes Datums-Intervall, das für N vorherige Ebenen aggregiert wurde.

Erweiterte Funktionen

 
Funktion

Beschreibung

Function

Description

Number cumulateFromDate(String startDate, String indicator)

This function gradually adds the current value to the cumulated value. ExampleDiese Funktion addiert schrittweise den aktuellen Wert zum kumulierten Wert. Beispiel:

Section
Column

 

01/2011

02/2011

03/2011

M_NAME_1

1000

1200

1300

cumulateFromDate('2011-01-01', 'M_NAME_1')

1000

2200

3500

Number cumulateFromTime(String startTime, String indicator)

This function gradually adds the current value to the cumulated value. ExampleDiese Funktion addiert schrittweise den aktuellen Wert zum kumulierten Wert. Beispiel:

Section
Column

 

00:01

00:02

00:03

M_NAME_1

1000

1200

1300

cumulateFromTime('00:01', 'M_NAME_1')

1000

2200

3500

prev(String indicatorCode)

Value of the passed indicator calculated for previous date or time value (e.g. previous month, day, hourWert des bestandenen Indikators, der für den vorherigen Datums- oder Zeitwert berechnet wurde (z.B. Vormonat, Tag, Stunde,....). ExampleBeispiel:

Section
Column

 

01/2011

02/2011

03/2011

M_NAME_1

1000

1200

1300

prev('M_NAME_1')

 

1000

1200

Number prev(String indicatorCode, int prevLevelAgg)

Value of the passed indicator calculated for previous date or time value (e.g. previous month, day, hourWert des bestandenen Indikators, der für den vorherigen Datums- oder Zeitwert berechnet wurde (z.B. Vormonat, Tag, Stunde,....). Parameter prevLevelAgg represents number of previous levels which should be aggregatedDer Parameter prevLevelAgg stellt die Anzahl der vorherigen Ebenen dar, die aggregiert werden sollen.

Number next(String indicatorCode)

Value of the passed indicator calculated for next date or time value (e.g. previous month, day, hour, Wert des übergebenen Indikators, der für den nächsten Datums- oder Zeitwert berechnet wurde (z.B. Vormonat, Tag, Stunde,....). ExampleBeispiel:

Section
Column

 

01/2011

02/2011

03/2011

M_NAME_1

1000

1200

1300

next('M_NAME_1')

1200

1300

 

Number next(String indicatorCode, int prevLevelAgg)

Value of the passed indicator calculated for next date or time value (e.g. previous month, day, hour, Wert des übergebenen Indikators, der für den nächsten Datums- oder Zeitwert berechnet wurde (z.B. Vormonat, Tag, Stunde,....). Parameter prevLevelAgg represents number of previous levels which should be aggregatedDer Parameter prevLevelAgg stellt die Anzahl der vorherigen Ebenen dar, die aggregiert werden sollen.

int daysBetween(DateTime dateFrom, DateTime dateTo)

Function calculates number of days between provided datesDie Funktion berechnet die Anzahl der Tage zwischen den angegebenen Daten.

int daysBetween(DateTime dateFrom, DateTime dateTo, int[])

Die Funktion berechnet die Anzahl der Tage zwischen den angegebenen Daten und schließt ausgewählte Tage der Woche aus. Der Wochentag wird mit einer Zahl bezeichnet: 1 ist Montag, 7 ist Sonntag.


Das folgende Beispiel zeigt, wie Samstage und Sonntage von der Berechnung ausgeschlossen werden können

Function calculates number of days between provided dates and excludes selected day(s) of the week. Day of the week is referenced by number: 1 is Monday, 7 is Sunday.

Following example shows, how Saturdays and Sundays can be excluded from the calculation:

Code Block
daysBetween(date(firstValue('L_DATE_FROM'),date(firstValue('L_DATE_TO'), 6,7)


int daysBetween(LocalDate dateFrom, LocalDate dateTo)

Function calculates number of days between provided datesDie Funktion berechnet die Anzahl der Tage zwischen den angegebenen Daten.

int monthsBetween(DateTime dateFrom, DateTime dateTo)

Function calculates number of months between provided datesDie Funktion berechnet die Anzahl der Monate zwischen den angegebenen Daten.

int monthsBetween(LocalDate dateFrom, LocalDate dateTo)

Function calculates number of months between provided datesDie Funktion berechnet die Anzahl der Monate zwischen den angegebenen Daten.

int yearsBetween(DateTime dateFrom, DateTime dateTo)

Function calculates number of years between provided datesDie Funktion berechnet die Anzahl der Jahre zwischen den angegebenen Daten.

int yearsBetween(LocalDate dateFrom, LocalDate dateTo)

Function calculates number of years between provided dates.

Die Funktion berechnet die Anzahl der Jahre zwischen den angegebenen Daten.

Um den gesamten Kontext des ausgewerteten Ausdrucks zu ändern, können Sie folgende Funktionen verwendenFor changing the whole context of the evaluated expression, you can use following functions:

Number prev(String period, { expression })

Changes the context of the expression to desired previous date period. The value of the period parameter is one of: DAY, WEEK, MONTH, QUARTER, YEAR. ExampleÄndert den Kontext des Ausdrucks in den gewünschten vorherigen Datumsbereich. Der Wert des Periodenparameters ist einer von: TAG, WOCHE, MONAT, QUARTAL, JAHR. Beispiel:

Section
Column

 

01/2011

02/2011

03/2011

M_NAME_1

1000

1200

1300

prev(MONTH) { M_NAME_1 } 

 

1000

1200

Number next(String period, { expression })

Changes the context of the expression to desired next date period. The value of the period parameter is one of: DAY, WEEK, MONTH, QUARTER, YEAR

Ändert den Kontext des Ausdrucks auf die gewünschte nächste Datumsperiode. Der Wert des Periodenparameters ist einer von: TAG, WOCHE, MONAT, MONAT, QUARTAL, JAHR

Das folgende Beispiel arbeitet mit Werten, die für ein Jahr vor dem eigentlichen Tabellen-/Diagrammdatumseintrag geladen werdenThe following example works with values, which are loaded for one year before the actual table/chart datetime entry:

Code Block
return prev(YEAR) {
  M_NAME_1 / M_NAME_2 * 100
}
Info

You may simply enter only the first letter of time unit (in case of time context changing formulas) instead of their full names Sie können einfach nur den ersten Buchstaben der Zeiteinheit (bei zeitkontextabhängigen Formeln) anstelle ihres vollständigen Namens (Y,Q,M,W,D) , for example eingeben, z.B. prev(Y){}.

Nested expressions

Verschachtelte Ausdrücke

Datums- und Zeitfunktionen können kombiniert werden (falls zutreffend), z.B: Wert von M_INDICATOR am 8. Dezember Date and time functions can be combined (if applicable), eg.: Value of M_INDICATOR at 8th December 2010, 9:04:02AM02 Uhr:

Code Block
dateAt ('2010-12-08') { timeAt('09:04:02') { M_INDICATOR } }

Next Steps

Nächste Schritte