--- title: "edifact/eancom DTM to number parsing(format a, value b, part c, [exception handling d, force empty e])" slug: "edifact-eancom-dtm-to-number-parsing-format-a-value-b-part-c" status: "new" updated: 2026-10-16T14:45:04Z published: 2026-10-16T14:45:04Z canonical: "docs.lobstersoftware.com/edifact-eancom-dtm-to-number-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 number parsing(format a, value b, part c, [exception handling d, force empty e]) Liest die im Wert `b` eines EDIFACT- oder EANCOM-*DTM*-Segments kodierte Zahl aus und gibt sie als ganze Zahl zurück. Der DTM-Formatcode `a` (Datenelement 2379) legt fest, wie der Wert `b` interpretiert wird. Beispiel: In `DTM+2:30:804'` ist der Wert `30` und der Formatcode `804` – also eine Menge von 30 Tagen. Nur bestimmte Formatcodes liefern eine Zahl. Sie lassen sich in drei Gruppen einteilen: - `801–814` – reine Mengenangaben, z. B. eine Anzahl von Tagen. - `107–110` – die Nummer eines Tages, einer Woche oder eines Monats innerhalb eines Jahres bzw. Monats. - `6–9` – ein Kalenderdatum mit einer angehängten Zahl. Zurückgegeben wird nur diese Zahl; der Datumsteil lässt sich mit der Funktion [edifact/eancom DTM to timestamp parsing](/v1/docs/edifact-eancom-dtm-to-timestamp-parsing-format-a-value-b-part-c) ermitteln. Für die Verarbeitung gelten folgende Regeln: - Das Ergebnis ist eine ganze Zahl. Führende Nullen werden ignoriert, ein Vorzeichen (`+` oder `-`) ist zulässig. - Der Zahlenteil wird nicht gegen einen Wertebereich geprüft. - Führende und nachfolgende Leerzeichen im Formatcode `a` werden entfernt; die Groß-/Kleinschreibung spielt keine Rolle. - Der Wert `b` wird unverändert verwendet und darf keine Leerzeichen enthalten. ## Parameter | Parameter | Beschreibung | | --- | --- | | `a` | DTM-Formatcode (Datenelement 2379), z. B. `804`, `107`, `8`. Siehe Abschnitt [Formatcodes](/v1/docs/edifact-eancom-dtm-to-number-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. Ohne Wirkung, da kein Formatcode mit Zahl einen Zeitraum beschreibt. Default: `from` | | `d` | (optional) Fehlerbehandlung, wenn `b` nicht mit dem Formatcode `a` verarbeitet werden kann. - `error` – Abbruch mit Fehlermeldung. - `empty` – Das Ergebnis ist ein leerer Wert (technisch ein leerer Zeitstempel mit gesetztem [Empty Flag](/v1/docs/intro-concepts-empty-flag)). - `now` – Das Ergebnis ist das aktuelle Datum mit Uhrzeit (ein Zeitstempel, keine Zahl). Default: `error` | | `e` | (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 Formatcodes, die ein Datum, eine Uhrzeit oder einen Zeitraum ohne Zahlenkomponente darstellen (z. B. `102`, `203`, `718`), werden zurückgewiesen. Für diese Formatcodes ist die Funktion [edifact/eancom DTM to timestamp parsing](/v1/docs/edifact-eancom-dtm-to-timestamp-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/). ## Beispiele Die Parameter `c`, `d` und `e` sind leer, sofern nicht anders angegeben. | Parameter a | Parameter b | Ergebnis | | --- | --- | --- | | 6 | 2015022 (Monatshälfte) | 2 (zweite Hälfte des Februar 2015) | | 6 | 2015023 (Monatshälfte) | 3, der Bereich wird nicht geprüft | | 7 | 2024031 (Woche des Monats) | 1 (erste Woche des März 2024) | | 8 | 202403021 (Schicht des Tages) | 1 (Schicht 1 am 2. März 2024) | | 9 | 2024030205 (Zeitabschnitt des Tages) | 5 (Zeitabschnitt 05 am 2. März 2024) | | 107 | 366 (Nummer des Tages im Jahr) | 366 | | 108 | 53 (Nummer der Woche im Jahr) | 53 | | 110 | 31 (Nummer des Tages im Monat) | 31 | | 801 | 120215 (Anzahl der Jahre) | 120215 | | 801 | 007 (Anzahl der Jahre) | 7 | | 801 | -12 (Anzahl der Jahre) | -12 | | 804 | 30 (Anzahl der Tage) | 30 | | 813 | 7 (Wochentag, Montag = 1) | 7 | ### Fehlerbehandlung | Parameter a | Parameter b | Parameter d | Parameter e | Ergebnis | | --- | --- | --- | --- | --- | | 8 | 20240302 (Schicht des Tages) | | | Abbruch mit Fehler, die Schicht-Ziffer fehlt. | | 102 | 20240301 | | | Abbruch mit Fehler *unable to parse '20240301' with format code '102'*, da der Code ein Datum darstellt. | | 102 | 20240301 | empty | | Leerer Wert (leerer Zeitstempel mit gesetztem Empty Flag). | | 801 | 12A (Anzahl der Jahre) | | | Abbruch mit Fehler *unable to parse '12A' with format code '801'*. | | 801 | (leer) | | | Abbruch mit Fehler *unable to parse '' with format code '801'* (leerer Wert). | | 801 | 2147483648 (Anzahl der Jahre) | | | Abbruch mit Fehler, der Wert überschreitet den Integer-Bereich. | | 801 | ABC (Anzahl der Jahre) | now | | Aktuelles Datum mit Uhrzeit. | | 801 | | | true | Leerer Wert, `b` wird nicht verarbeitet. | 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)