--- title: "edifact/eancom DTM to timestamp parsing(format a, value b, part c, [time zone d, locale e, exception handling f, force empty g])" slug: "edifact-eancom-dtm-to-timestamp-parsing-format-a-value-b-part-c" status: "new" updated: 2026-10-16T14:49:57Z published: 2026-10-16T14:49:57Z canonical: "docs.lobstersoftware.com/edifact-eancom-dtm-to-timestamp-parsing-format-a-value-b-part-c" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.lobstersoftware.com/llms.txt > Use this file to discover all available pages before exploring further. # edifact/eancom DTM to timestamp parsing(format a, value b, part c, [time zone d, locale e, exception handling f, force empty g]) Liest das im Wert `b` eines EDIFACT- oder EANCOM-*DTM*-Segments kodierte Datum mit Uhrzeit aus und gibt es als Zeitstempel zurück. Der DTM-Formatcode `a` (Datenelement 2379) legt fest, wie der Wert `b` interpretiert wird. **Beispiel**: In `DTM+137:20240302:102'` ist der Wert `20240302` und der Formatcode `102`. Bei der Verarbeitung gelten folgende Regeln: - Formatcodes, die einen Zeitraum beschreiben (z. B. `718`), enthalten zwei Datumsangaben. Der Parameter `c` wählt den zurückgegebenen Teil. Bei allen anderen Formatcodes hat `c` keine Wirkung. - Die Zeitzone `d` wird nur für Werte verwendet, die selbst keine Zeitzone enthalten. Enthält der Formatcode eine Zeitzone (z. B. `205`, `304`, `406`), wird die im Wert enthaltene Zeitzone verwendet und `d` ignoriert. - Die Locale `e` betrifft nur Formatcodes, die auf Kalenderwochen beruhen (`103`, `104`, `615`, `616`, `715`, `716`). Ohne Locale gelten die EDIFACT-Regeln: Die Woche beginnt am Montag, und Woche 1 ist die Woche, die den 1. Januar enthält. Mit einer Locale gelten deren Wochenregeln (für `de_DE` die ISO-8601-Regeln, bei denen Woche 1 die erste Woche mit mindestens vier Tagen im neuen Jahr ist). - Zweistellige Jahresangaben (`YY`) werden dem Jahrhundert zugeordnet, das im Bereich von 80 Jahren vor bis 20 Jahren nach dem aktuellen Datum liegt. Im Jahr 2026 bedeutet `99` also 1999 und `12` das Jahr 2012. - Das Vorzeichen der Zeitzone kann im Wert als `+` oder `-` geschrieben werden oder, wie in EDIFACT üblich, als `P` (Plus) und `M` (Minus). - Führende und nachfolgende Leerzeichen in Formatcode `a` und Wert `b` werden entfernt; die Groß-/Kleinschreibung spielt keine Rolle. ## Parameter | Parameter | Beschreibung | | --- | --- | | `a` | DTM-Formatcode (Datenelement 2379), z. B. `102`, `203`, `718`. Siehe Abschnitt [Formatcodes](/v1/docs/edifact-eancom-dtm-to-timestamp-parsing-format-a-value-b-part-c#formatcodes1). | | `b` | Der zu verarbeitende Wert aus dem DTM-Segment. | | `c` | (optional) Teil eines Zeitraums, der zurückgegeben wird. `from`, `1`, `true` oder leer liefern den Anfang, `until`, `2` oder `false` das Ende. Nur relevant für Formatcodes, die einen Zeitraum beschreiben. Default: `from` | | `d` | (optional) Zeitzone für Werte, die keine eigene Zeitzone enthalten. Zulässig sind Zeitzonen-IDs wie `Europe/Berlin`, `America/New_York`, `UTC` oder `GMT+03:30`, ein EDIFACT-Offset wie `+0330`, `P0330`, `-0330`, `M0330`, `+03` oder `M03`, der Wert `SYSTEM` (Zeitzone des Servers) oder ein Datums-/Zeitstempelfeld, dessen Zeitzone dann verwendet wird. Mehrdeutige Abkürzungen wie `CET` sollten vermieden werden. Default: Zeitzone des Servers | | `e` | (optional) Locale für die Regeln der Kalenderwoche, z. B. `de_DE` oder `en_US`. Ohne Angabe gelten die EDIFACT-Wochenregeln (Woche beginnt am Montag, Woche 1 enthält den 1. Januar). Default: EDIFACT-Regeln | | `f` | (optional) Fehlerbehandlung, wenn `b` nicht mit dem Formatcode `a` verarbeitet werden kann. - `error` – Abbruch mit Fehlermeldung. - `empty` – Das Ergebnis ist ein leerer Zeitstempel mit gesetztem [Empty Flag](/v1/docs/intro-concepts-empty-flag). - `now` – Das Ergebnis ist das aktuelle Datum mit Uhrzeit. Default: `error` | | `g` | (optional) Erzwingt einen leeren Wert. Bei `true` gibt die Funktion sofort einen leeren Wert mit gesetztem Empty Flag zurück, ohne `b` zu verarbeiten – z. B. wenn das Quellfeld leer ist. Default: `false` | ## Formatcodes Unterstützt werden Formatcodes für Kalenderdaten, Datum mit Uhrzeit (auch mit Zeitzone), reine Uhrzeiten und Zeiträume. Nicht im Wert enthaltene Bestandteile werden auf ihren niedrigsten Wert gesetzt: eine fehlende Uhrzeit auf `00:00:00`, ein fehlender Tag auf den ersten Tag des Zeitraums, ein fehlendes Jahr auf `1970`. Formatcodes, die keine Datums- oder Zeitangabe, sondern eine Zahl darstellen (`107`–`110` sowie `801`–`814`), werden zurückgewiesen. Für diese Formatcodes ist die Funktion [edifact/eancom DTM to number parsing](/v1/docs/edifact-eancom-dtm-to-number-parsing-format-a-value-b-part-c) vorgesehen. Die vollständige Definition aller Formatcodes finden Sie in der Codeliste des UN/CEFACT-Datenelements 2379: [UN/CEFACT UNCL 2379](https://service.unece.org/trade/uncefact/vocabulary/uncl2379/). EANCOM definiert zusätzlich die folgenden Codes, die nicht in der UN-Codeliste enthalten sind: | Code | Wert | Ergebnis | | --- | --- | --- | | 20E | CCYYMMDDHHMMCCYYMMDDHHMM | Datum und Uhrzeit, wie `719` | | 21E | DDHHMMDDHHMM | Tag und Uhrzeit, im Januar 1970 | | 22E | DHHMMDHHMM | Wochentag und Uhrzeit, wie `720` | ## Beispiele Die Zeitzone des Servers ist in den Beispielen `Europe/Berlin`. Die Zeitzone des Ergebnisses steht in Klammern. Die Parameter `f` und `g` sind leer, sofern nicht anders angegeben. | Parameter a | Parameter b | Parameter c | Parameter d | Parameter e | Ergebnis | | --- | --- | --- | --- | --- | --- | | 2 | 120215 | | UTC | | 2015-02-12 00:00:00.0 (UTC) | | 6 | 2015021 | | | | 2015-02-01 00:00:00.0 (Europe/Berlin) | | 6 | 2015022 | | | | 2015-02-15 00:00:00.0 (Europe/Berlin) | | 7 | 2024031 | | | | 2024-02-26 00:00:00.0 (Europe/Berlin), Montag der Woche, die den 1. März enthält | | 7 | 2024032 | | | | 2024-03-04 00:00:00.0 (Europe/Berlin) | | 10 | 20030201T1234 | | | | 2003-02-01 12:34:00.0 (Europe/Berlin) | | 102 | 20240301 | | | | 2024-03-01 00:00:00.0 (Europe/Berlin) | | 103 | 21023 | | | | 2021-01-06 00:00:00.0 (Europe/Berlin), EDIFACT-Wochenregeln | | 103 | 21023 | | | de_DE | 2021-01-13 00:00:00.0 (Europe/Berlin), ISO-Wochenregeln | | 105 | 24366 | | | | 2024-12-31 00:00:00.0 (Europe/Berlin) | | 203 | 202403021345 | | | | 2024-03-02 13:45:00.0 (Europe/Berlin) | | 204 | 20010203123456 | | UTC | | 2001-02-03 12:34:56.0 (UTC) | | 205 | 202403021345+0300 | | | | 2024-03-02 13:45:00.0 (GMT+03:00) | | 205 | 202403021345P0300 | | | | 2024-03-02 13:45:00.0 (GMT+03:00) | | 205 | 202403310230M0300 | | UTC | | 2024-03-31 02:30:00.0 (GMT-03:00), `d` wird ignoriert | | 301 | 0102031234+03 | | | | 2001-02-03 12:34:00.0 (GMT+03:00) | | 307 | 20010203123456123 | | | | 2001-02-03 12:34:56.123 (Europe/Berlin) | | 401 | 1234 | | | | 1970-01-01 12:34:00.0 (Europe/Berlin) | | 405 | 123456 | | | | 1970-01-01 20:34:56.0 (Europe/Berlin) | | 406 | +0330 | | | | 1970-01-01 00:00:00.0 (GMT+03:30) | | 501 | 12342345 | until | | | 1970-01-01 23:45:00.0 (Europe/Berlin) | | 608 | 20123 | | | | 2012-07-01 00:00:00.0 (Europe/Berlin) | | 613 | 21023 | | | | 2021-02-21 00:00:00.0 (Europe/Berlin) | | 615 | 2102 | | | | 2021-01-04 00:00:00.0 (Europe/Berlin), EDIFACT-Wochenregeln | | 615 | 2102 | | | de_DE | 2021-01-11 00:00:00.0 (Europe/Berlin), ISO-Wochenregeln | | 718 | 2001020319040506 | from | | | 2001-02-03 00:00:00.0 (Europe/Berlin) | | 718 | 2001020319040506 | until | | | 1904-05-06 00:00:00.0 (Europe/Berlin) | | 719 | 202403021345190102032343 | 1 | | | 2024-03-02 13:45:00.0 (Europe/Berlin) | | 719 | 202403021345190102032343 | 2 | | | 1901-02-03 23:43:00.0 (Europe/Berlin) | | 720 | 1234520123 | from | | | 1970-01-05 23:45:00.0 (Europe/Berlin), Montag | | 720 | 1234520123 | until | | | 1970-01-06 01:23:00.0 (Europe/Berlin), Dienstag | ### Fehlerbehandlung | Parameter a | Parameter b | Parameter d | Parameter f | Parameter g | Ergebnis | | --- | --- | --- | --- | --- | --- | | 7 | 2027025 | | | | Abbruch mit Fehler *invalid week value for '2027025' with format code '7': 5* (Februar 2027 hat nur vier Wochen). | | 102 | 20031301 | | | | Abbruch mit Fehler *unable to parse '20031301' with format code '102'* (Monat 13). | | 102 | ABC | | now | | Aktuelles Datum mit Uhrzeit. | | 102 | | | | true | Leerer Wert, `b` wird nicht verarbeitet. | | 203 | 202403310230 | | | | Abbruch mit Fehler, da es 02:30 am 31. März 2024 in `Europe/Berlin` nicht gibt (Umstellung auf Sommerzeit). | | 203 | 202403310230 | UTC | | | 2024-03-31 02:30:00.0 (UTC) | | 801 | 12 | | | | Abbruch mit Fehler *unable to parse '12' with format code '801'*, da der Code eine Zahl darstellt. | | 801 | 12 | | empty | | Leerer Zeitstempel mit gesetztem Empty Flag. | Internationaler EDI-Standard der UN für den elektronischen Datenaustausch. EDIFACT definiert Nachrichtentypen wie ORDERS, INVOIC oder DESADV. ## Related - [Funktionen (GUI)](/phase-3-target-structure-functions.md)