Datum und Uhrzeit

Lerne, wie du Datums- und Zeitwerte erstellst, Dauern misst, Datumsbestandteile extrahierst und Zeiträume für Auswertungen in Ninox Skripten aufbaust.

Datums- und Zeitwerte steuern Zeitpläne, Fristen, Protokolle und Berichte in Ninox. In diesem Kapitel lernst du, wie du Datumswerte erstellst, Zeitspannen misst, Datumsbestandteile extrahierst und Werte für Auswertungen in Dashboards und Automatisierungen aufbaust.

In diesem Kapitel lernst du:

  • aktuelle und feste Datums- oder Zeitwerte zu erstellen

  • Datums- und Zeitausgaben zu formatieren

  • verstrichene Zeit zu messen und Zeitversätze hinzuzufügen

  • Bestandteile wie Jahr, Monat, Wochentag oder Quartal zu extrahieren

  • aus Datumswerten Werte für Auswertungen und Geschäftslogik abzuleiten

Funktion (A-Z)
Aufgabe

age()

Gibt das Alter in Jahren ab einem Datum zurück

date()

Erstellt ein bestimmtes Datum

datetime()

Erstellt ein bestimmtes Datum mit Uhrzeit

day()

Gibt den Tag des Monats zurück

days()

Gibt die Anzahl der Tage zwischen zwei Datumswerten zurück

duration()

Gibt die Zeitspanne zwischen zwei Datums- oder Zeitwerten zurück

endof()

Gibt das Ende eines Zeitraums wie eines Monats zurück

format()

Gibt einen Datums- oder Zeitwert als Text aus

month()

Gibt die Monatsnummer zurück

now()

Gibt das aktuelle Datum und die aktuelle Uhrzeit zurück

quarter()

Gibt die Quartalsnummer zurück

time()

Erstellt einen bestimmten Zeitwert

timeinterval()

Erstellt einen Zeitversatz wie 2 Stunden

timestamp()

Konvertiert einen Wert in einen UTC-basierten Zeitstempel

today()

Gibt das aktuelle Datum zurück

week()

Gibt die Wochennummer zurück

weekday()

Gibt die Wochentagsnummer zurück

workdays()

Gibt die Arbeitstage zwischen zwei Datumswerten zurück

year()

Gibt die Jahreszahl zurück

yearmonth()

Erstellt einen Jahr-Monat-Wert für Auswertungen

yearquarter()

Erstellt einen Jahr-Quartal-Wert für Auswertungen

yearweek()

Erstellt einen Jahr-Woche-Wert für Auswertungen

Datums- und Zeitwerte erstellen

Nutze diese Funktionen, wenn du einen echten Datums- oder Zeitwert brauchst. Sie sind nützlich für Zeitstempel, Fälligkeitsdaten, Zeitpläne und Protokolle.

Heutiges Datum mit today() abrufen

Nutze today(), wenn nur das Datum wichtig ist.

Nutze es, wenn du:

  • mit einer Frist vergleichen willst

  • das heutige Datum direkt oder als Basis für weitere Berechnungen nutzen willst

today() gibt das aktuelle Datum ohne Uhrzeit zurück.

Schauen wir uns einige Beispiele an:

Prüft, ob ein Datensatz überfällig ist.

Erstellt das Datum sieben Tage ab heute.

Gibt das aktuelle Jahr aus dem heutigen Datum zurück.

Aktuelles Datum und aktuelle Uhrzeit mit now() abrufen

Nutze now(), wenn der genaue Zeitpunkt wichtig ist.

Nutze es, wenn du:

  • die Erstellung eines Datensatzes mit einem Zeitstempel versehen willst

  • verstrichene Stunden oder Minuten messen willst

  • Datumsberechnungen aus dem aktuellen Zeitstempel ableiten willst

now() gibt den exakten aktuellen Zeitstempel in dem Moment zurück, in dem die Funktion ausgeführt wird.

Schauen wir uns einige Beispiele an:

Speichert den aktuellen Zeitstempel in einem Feld.

Erstellt einen Datumswert für sieben Tage ab heute.

Feste Werte mit date(), time() und datetime() erstellen

Nutze date(), um ein Datum zu erstellen oder einen zeitbasierten Wert in ein Datum zu konvertieren. Nutze time(), um einen festen Zeitwert zu erstellen. Nutze datetime(), um aus Zahlenwerten, einem Datum und einer Zeit oder Unix-Zeit in Millisekunden einen lokalen Zeitstempel zu erstellen.

Nutze sie, wenn du:

  • ein Fälligkeitsdatum aus Jahr, Monat und Tag erstellen willst

  • einen zeitbezogenen Wert in eine Uhrzeit umwandeln willst

  • eine Uhrzeit für einen Termin festlegen willst

date(any) date(year, month, day) time() time(any) time(hour, minute) time(hour, minute, second) time(hour, minute, second, millisecond) datetime(milliseconds) datetime(year, month, day) datetime(year, month, day, hour) datetime(year, month, day, hour, minute) datetime(year, month, day, hour, minute, second) datetime(year, month, day, hour, minute, second, millisecond) datetime(date, time)

  • any (für date(any)): ein Datum, Datetime oder numerischer Zeitstempel in Millisekunden

  • year: der Jahreswert

  • month: die Monatsnummer

  • day: der Tag des Monats

  • hour: der Stundenwert im 24-Stunden-Format

  • minute: der Minutenwert

  • second: der Sekundenwert

  • millisecond: der Millisekundenwert

  • any (für time(any)): ein Datum, Datetime, Terminrand, Zeitwert oder numerischer Zeitstempel in Millisekunden

  • date: der Datumsanteil

  • time: der Zeitanteil

Wenn du eine Zahl an date(any) übergibst, behandelt Ninox sie als Unix-Zeit in Millisekunden. Wenn du den Zeitanteil in datetime() weglässt, nutzt Ninox 00:00. Wenn du eine Zahl an time(any) übergibst, behandelt Ninox sie als Unix-Zeit in Millisekunden.

Schauen wir uns einige Beispiele an:

Erstellt das Datum 31. Dezember 2026.

Gibt den Datumsanteil aus dem Datums-/Uhrzeitfeld appointment zurück.

Gibt den 31. Juli 2026 zurück. Nutze 0 als Tag, um den letzten Tag des vorherigen Monats zu erhalten.

Konvertiert den Unix-Zeitstempel in Millisekunden in einen Datumswert.

Gibt die aktuelle lokale Uhrzeit zurück.

Gibt den Zeitanteil vom Ende des Felds appointment zurück.

Erstellt den Zeitwert 14:30.

Erstellt einen Zeitwert mit Sekunden.

Erstellt einen Zeitwert mit Millisekunden.

Erstellt einen lokalen Zeitstempel für den 22. April 2026 um 00:00 Uhr.

Erstellt einen lokalen Zeitstempel für den 22. April 2026 um 9:00 Uhr.

Erstellt einen lokalen Zeitstempel für den 22. April 2026 um 9:30 Uhr.

Erstellt denselben Zeitstempel wie oben mit 45 Sekunden.

Kombiniert das Datum aus dem Feld Date und die Uhrzeit aus dem Feld Time zu einem Zeitstempel.

Konvertiert einen Unix-Zeitstempel in Millisekunden in einen lokalen Zeitstempel.

Tipps:

  • Nutze date(year, month, 0), um den letzten Tag des vorherigen Monats zu erhalten.

  • Nutze datetime(date, time), wenn Datum und Uhrzeit in getrennten Feldern gespeichert sind.

Werte mit timestamp() in UTC-basierte Zeitstempel konvertieren

Nutze timestamp(any), um einen zeitbezogenen Wert in einen UTC-basierten Zeitstempel zu konvertieren.

Nutze es, wenn du:

  • ein Datum oder Datetime in einen UTC-basierten Zeitstempel umwandeln willst

timestamp(any)

  • any: ein zeitbezogener Wert oder eine Zahl, die Unix-Zeit in Millisekunden darstellt

Wenn die Eingabe keinen Zeitanteil hat, nutzt Ninox 00:00 in Bezug auf deine lokale Zeitzone.

Schauen wir uns einige Beispiele an:

Konvertiert Unix-Millisekunden in einen UTC-basierten Zeitstempel.

Gibt die numerische Unix-Zeit in Millisekunden für den Wert 'Date + Time' zurück.

Konvertiert einen Millisekundenwert in einen Zeitstempel.

Tipps:

  • Nutze number(timestamp(...)), wenn du den Unix-Wert in Millisekunden brauchst.

  • Nutze now(), wenn du den aktuellen lokalen Zeitstempel brauchst.

Datums- und Zeitausgaben formatieren

Nutze format(), wenn du ein Datum, eine Uhrzeit, einen Zeitstempel oder einen Termin als gut lesbaren Text ausgeben willst.

Das ist nützlich für:

  • Print-Layouts

  • exportierte Werte

format(value, string)

  • value: der Wert, den du formatieren willst

  • string: das gewünschte Ausgabeformat als Text

Beispiele:

Gibt einen Wert wie 2026-04-22 zurück.

Gibt einen Wert wie Wednesday, 23 April 2026 zurück.

Gibt einen Wert wie 14:30 zurück.

Gibt einen Wert wie 02:30 pm zurück.

Du kannst auch einen Sprachcode als drittes Argument übergeben:

Damit erhältst du das formatierte Datum auf Französisch.

Häufige Angaben für das Ausgabeformat

Nutze diese Angaben im Ausgabeformat:

Formatcode
Beschreibung
Beispiel

YY

Jahr mit 2 Ziffern

21

YYYY

Jahr mit 4 Ziffern

2021

M

Monat mit 1 oder 2 Ziffern

1 ... 12

Mo

Monat als Ordnungszahl

1st ... 12th

MM

Monat mit 2 Ziffern

01 ... 12

MMM

Monatsname mit 3 Buchstaben

Feb

MMMM

Vollständiger Monatsname

February

D

Tag des Monats mit 1 oder 2 Ziffern

1 ... 31

Do

Tag des Monats als Ordnungszahl

1st ... 31st

DD

Tag des Monats mit 2 Ziffern

01 ... 31

d

Wochentagsnummer

0 ... 6

do

Wochentagsnummer als Ordnungszahl

0th ... 6th

dd

Wochentagsname mit 2 Buchstaben

Mo ... Su

ddd

Wochentagsname mit 3 Buchstaben

Mon ... Sun

dddd

Vollständiger Wochentagsname

Friday

w oder W

Kalenderwoche

1 ... 53

Q

Quartal

1 ... 4

l

Kurzes numerisches Datum

6/15/2021

L

Numerisches Datum mit führenden Nullen

06/15/2021

h

Stunde im 12-Stunden-Format mit 1 oder 2 Ziffern

1 ... 12

hh

Stunde im 12-Stunden-Format mit 2 Ziffern

01 ... 12

H

Stunde im 24-Stunden-Format mit 1 oder 2 Ziffern

0 ... 23

HH

Stunde im 24-Stunden-Format mit 2 Ziffern

00 ... 23

a

am oder pm

11:30 pm

m

Minute mit 1 oder 2 Ziffern

0 ... 59

mm

Minute mit 2 Ziffern

00 ... 59

s

Sekunde mit 1 oder 2 Ziffern

0 ... 59

ss

Sekunde mit 2 Ziffern

00 ... 59

x

Unix-Zeit in Millisekunden

1617873118285

X

Unix-Zeit in Sekunden

1617873118

Z

Zeitzonenversatz zu UTC

-04:00:00

Tipps:

  • Kombiniere die Angaben, um dein eigenes Ausgabeformat zu erstellen.

  • Nutze HH:mm für die 24-Stunden-Uhrzeit.

  • Nutze hh:mm a für die 12-Stunden-Uhrzeit.

  • Nutze YYYY-MM-DD, wenn du ein stabiles, sortierbares Datumsformat brauchst.

  • Teste formatierte Ausgaben mit echten Werten, bevor du sie in Exporten oder Integrationen nutzt.

Zeitspannen und Zeitversätze messen

Nutze duration(), um Zeitspannen zu messen. Nutze timeinterval(), um einen Versatz zu erstellen, den du zu einem Datum oder einer Uhrzeit addieren kannst.

Verstrichene Zeit mit duration() messen

Nutze duration(), um eine Zeitspanne aus einem Termin oder zwischen zwei Datums- und Zeitwerten zu berechnen.

Nutze es, wenn du:

  • die Laufzeit einer Aufgabe verfolgen willst

  • die Länge eines Termins aus Start und Ende ermitteln willst

duration(appointment) duration(end, start)

  • appointment: der Termin, für den Ninox die Dauer zurückgibt

  • end: der spätere Wert

  • start: der frühere Wert

Wenn das Ergebnis länger als 24 Stunden ist, zeigt Ninox zusätzlich Tage an.

Schauen wir uns einige Beispiele an:

Gibt die Zeitspanne zwischen zwei datetime-Feldern "End" und "Start" zurück.

Gibt die Dauer des appointment-Felds "Holiday" zurück.

Gibt die verstrichene Zeit seit der Erstellung des Datensatzes zurück.

Gibt eine Dauer von zwei Tagen zurück.

Tage zwischen zwei Datumswerten mit days() zählen

Nutze days(), um die Anzahl der Kalendertage zwischen zwei Datumswerten zurückzugeben.

Nutze es, wenn du:

  • prüfen willst, wie viele Tage bis zu einer Frist bleiben

  • einen Datumsbereich in vollen Kalendertagen messen willst

days(date, date)

  • erstes date: das Startdatum

  • zweites date: das Enddatum

Du kannst alle Werttypen nutzen, die ein Datum enthalten.

Schauen wir uns einige Beispiele an:

Gibt die Anzahl der Tage zwischen den beiden angegebenen Datumswerten zurück.

Wenn date1 07/02/2026 und date2 12/31/2026 ist, lautet das Ergebnis 183.

Tipps:

  • Nutze days(), wenn du einfache Kalendertage brauchst.

  • Nutze workdays(), wenn Wochenenden nicht zählen sollen.

  • Nutze duration(), wenn du eine Zeitspanne und nicht nur eine Tagesanzahl brauchst.

Arbeitstage mit workdays() zählen

Nutze workdays(), um Arbeitstage zwischen zwei Datumswerten zu zählen.

Nutze es, wenn du:

  • Zeitpläne erstellen willst

  • Lieferfenster verfolgen willst

workdays(date, date)

  • erstes date: das Startdatum

  • zweites date: das Enddatum

workdays() zählt Montag bis Freitag als Arbeitstage.

Feiertage werden nicht berücksichtigt.

Wenn du von einem Termin ausgehst, übergib start(appointment) und endof(appointment).

Schauen wir uns einige Beispiele an:

Gibt 14 zurück.

Zählt Arbeitstage über den Terminzeitraum hinweg.

Zeitintervalle mit timeinterval() erstellen

Nutze timeinterval(), um eine wiederverwendbare Dauer zu erstellen oder einen zeitbezogenen Wert in eine Dauer zu konvertieren.

Nutze es, wenn du:

  • Millisekunden in eine Dauer umwandeln willst

  • einen Zeitwert in eine Dauer umwandeln willst

timeinterval(number)

  • number: ein Zeitwert oder eine Zahl

Wenn die Eingabe eine Zahl ist, behandelt Ninox sie als Dauer in Millisekunden.

Anders als duration() beschreibt timeinterval() eine Dauer für sich. Es misst nicht die Spanne zwischen zwei Datumswerten.

Schauen wir uns einige Beispiele an:

Konvertiert 60000 Millisekunden in eine Dauer von einer Minute.

Konvertiert den Zeitwert 01:30 in eine Dauer von 1 Stunde und 30 Minuten.

Erstellt ein datetime zwei Stunden ab jetzt.

Tipps:

  • Nutze duration() für gemessene Zeitspannen.

  • Nutze timeinterval() für geplante Dauern.

Datumsbestandteile extrahieren

Nutze diese Funktionen, um ein Datum in kleinere Teile zu zerlegen. Sie sind nützlich für Gruppierung, Filterung und Berichte.

Jahr, Monat und Tag mit year(), month() und day() abrufen

Nutze diese Funktionen, wenn du nur einen Teil eines Datums oder Zeitstempels brauchst.

year(date) year(appointment) year(timestamp) month(date) month(appointment) month(timestamp) day(appointment) day(date) day(timestamp)

  • date: das Datum, aus dem Ninox den angeforderten Teil zurückgibt

  • appointment: ein Terminwert, aus dem Ninox Jahr, Monat oder Tag vom Startdatum zurückgibt

  • timestamp: ein Zeitstempel, aus dem Ninox den angeforderten Datumsbestandteil zurückgibt

Schauen wir uns einige Beispiele an:

Gibt das aktuelle Jahr zurück.

Gibt das Jahr vom Ende des Felds appointment zurück.

Gibt die aktuelle Monatsnummer zurück.

Addiert drei zur aktuellen Monatsnummer.

Gibt die Monatsnummer vom Startdatum des Felds appointment zurück.

Gibt die Monatsnummer aus dem aktuellen Zeitstempel zurück.

Gibt den Tag des Monats aus dem Feld "Date" zurück.

Gibt den Tag aus einem Unix-Zeitstempel zurück.

Tipp:

  • Wenn du bei einem Termin das Enddatum brauchst, umschließe ihn mit endof().

Wochentag, Woche und Quartal mit weekday(), week() und quarter() abrufen

Nutze diese Funktionen, wenn Kalenderzeiträume wichtig sind.

weekday(date) weekday(timestamp) weekday(appointment) week(date) week(timestamp) week(appointment) quarter(date)

  • date: das Datum, aus dem Ninox den angeforderten Kalenderwert zurückgibt

  • timestamp: ein Zeitstempel, aus dem Ninox Wochentag oder Kalenderwoche zurückgibt

  • appointment: ein Termin, aus dem Ninox Wochentag oder Kalenderwoche des Startdatums zurückgibt

weekday() gibt eine Zahl von 0 bis 6 zurück, wobei Montag = 0 und Sonntag = 6 ist.

weekday() berücksichtigt keine Feiertage.

quarter() gibt eine Zahl von 1 bis 4 zurück. Wenn du einen Termin nutzt, wähle zuerst, ob du das Start- oder Enddatum brauchst.

Schauen wir uns einige Beispiele an:

Gibt die Wochentagsnummer für heute zurück.

Gibt 2 zurück, weil der 22. April 2026 ein Mittwoch ist.

Prüft, ob ein Datum auf ein Wochenende oder einen Arbeitstag fällt.

Gibt die aktuelle Wochennummer zurück.

Gibt die Kalenderwoche aus dem aktuellen Zeitstempel zurück.

Gibt die Kalenderwoche vom Startdatum des Felds appointment zurück.

Gibt die aktuelle Quartalsnummer zurück.

Gibt die Quartalsnummer aus dem Feld date zurück.

Gibt die Quartalsnummer vom Start des Felds appointment zurück.

Gibt die Quartalsnummer vom Ende des Felds appointment zurück.

Mit endof() zum Ende eines Zeitraums springen

Nutze endof(), um das Ende eines Termins oder das Ende eines Kalenderzeitraums zurückzugeben.

Nutze es, wenn du:

  • den Endzeitstempel eines Termins brauchst

  • Erinnerungen nahe an einer Frist auslösen willst

endof(appointment)

  • appointment: das Terminfeld oder Ergebnis, aus dem Ninox den Endzeitstempel zurückgibt

Schauen wir uns einige Beispiele an:

Gibt den Endzeitstempel des Felds appointment zurück.

Formatiert das Ende des Terminfelds "Holiday" als gut lesbaren Text.

Werte für Auswertungen und geschäftsrelevante Berechnungen erstellen

Nutze diese Funktionen, wenn du kompakte Gruppierungsschlüssel oder geschäftsfreundliche Datumsberechnungen brauchst.

Werte für Auswertungen mit yearmonth(), yearweek() und yearquarter() erstellen

Nutze diese Funktionen, um Datensätze über einen Zeitraum in einem Wert zu gruppieren.

Nutze sie, wenn du:

  • Rechnungen nach Monat gruppieren willst

  • wöchentliche Diagramme erstellen willst

  • Ergebnisse nach Quartal zusammenfassen willst

yearmonth(appointment) yearmonth(date) yearmonth(timestamp) yearweek(appointment) yearweek(date) yearweek(timestamp) yearquarter(appointment) yearquarter(date) yearquarter(datetime) yearquarter(timestamp)

  • appointment: ein Termin, aus dem Ninox den Wert für Auswertungen vom Startdatum erstellt

  • date: das Datum, aus dem Ninox den Wert für Auswertungen erstellt

  • timestamp: ein Zeitstempel, aus dem Ninox den Wert für Auswertungen erstellt

yearmonth() gibt einen String im Format YYYY/MM zurück.

yearweek() gibt einen String im Format YYYY WW zurück.

yearquarter() gibt einen String im Format YYYY Qn zurück.

Wenn du einen Termin nutzt und das Enddatum brauchst, umschließe ihn mit endof().

Schauen wir uns einige Beispiele an:

Gibt einen kombinierten Jahr-Monat-Schlüssel für das aktuelle Datum zurück.

Gibt einen Wert wie 2021/06 vom Startdatum des Felds "Appointment" zurück.

Gibt Jahr und Monat vom Ende des Felds "Appointment" zurück.

Gibt einen kombinierten Jahr-Woche-Schlüssel für das aktuelle Datum zurück.

Gibt einen Wert wie 2021 23 vom Startdatum des Felds appointment zurück.

Gibt Jahr und Woche vom Ende des Felds appointment zurück.

Gibt einen kombinierten Jahr-Quartal-Schlüssel für das aktuelle Datum zurück.

Gibt einen Wert wie 2021 Q2 vom Startdatum des Felds appointment zurück.

Gibt Jahr und Quartal vom Ende des Felds appointment zurück.

Alter mit age() berechnen

Nutze age(date), um die Anzahl voller Jahre zwischen einem Datum und dem aktuellen Datum zurückzugeben.

Nutze es, wenn du:

  • das Alter einer Person anzeigen willst

Für diese Berechnung wird immer das aktuelle Datum genutzt.

age(date)

  • date: das Bezugsdatum, von dem Ninox die Anzahl voller Jahre berechnet

Schauen wir uns einige Beispiele an:

Gibt das Alter in vollen Jahren aus dem Datum in date_of_birth zurück.

Gibt die Anzahl voller Jahre seit dem 12. April 1976 auf Basis des heutigen Datums zurück.

Häufige Anwendungsfälle für Datum und Uhrzeit

Diese kurzen Beispiele zeigen häufige Aufgaben mit Datum und Uhrzeit in Ninox.

Überfällige Datensätze markieren

Vergleicht das aktuelle Datum mit einem Fälligkeitsdatum.

SLA-Zeit seit der Erstellung messen

Misst die verstrichene Zeit seit der Erstellung des Datensatzes.

Zuletzt aktualisiert

War das hilfreich?