> For the complete documentation index, see [llms.txt](https://docs.solutioo.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.solutioo.de/datanorm-item-import/einleitung/unterstuetzte-datanorm-versionen.md).

# Unterstützte DATANORM-Versionen

## Überblick

<table><thead><tr><th width="200">Version</th><th width="150">Import</th><th width="150">Export</th><th>Hinweis</th></tr></thead><tbody><tr><td><strong>DATANORM 4.0</strong></td><td>ja</td><td>ja</td><td>Artikeldaten verteilen sich auf A- und B-Satz, die zusammengehören.</td></tr><tr><td><strong>DATANORM 5.0</strong></td><td>ja</td><td>ja</td><td>Alle Artikelangaben stehen im A-Satz. Empfohlene Version.</td></tr></tbody></table>

## Automatische Erkennung

Die Version wird beim Einlesen aus dem **Vorlaufsatz** (V-Satz) der Datei bestimmt. Sie müssen sie also nicht angeben.

Die App erkennt die Version an der **Form** der ersten Zeile, die mit `V` beginnt:

<table><thead><tr><th width="200">Version</th><th>Erkennung</th></tr></thead><tbody><tr><td><strong>DATANORM 4</strong></td><td>Der V-Satz enthält <strong>kein</strong> Semikolon. Er ist fest 128 Zeichen lang.</td></tr><tr><td><strong>DATANORM 5</strong></td><td>Der V-Satz ist semikolongetrennt und beginnt mit <code>V;050;</code>.</td></tr></tbody></table>

{% hint style="info" %}
Die Einstellung **Standard-DATANORM-Version** in der Einrichtung gilt nur für den **Export**. Für den Import ist immer die Angabe in der Datei maßgeblich.
{% endhint %}

## Der Vorlaufsatz (V-Satz)

Die erste Datenzeile einer gültigen Datei muss ein V-Satz sein. Fehlt er, wertet die App die Datei als DATANORM 5 und warnt, dass das Ergebnis bei einer V4-Datei falsch sein kann.

### DATANORM 4 — fest 128 Zeichen, ohne Semikolon

Der V4-Vorlaufsatz ist **keine** semikolongetrennte Zeile. Die Felder sitzen auf festen Positionen. Genau so schreibt der Export die Zeile, und genau so liest der Import Datum und Währung.

<table><thead><tr><th width="140">Position</th><th width="90">Länge</th><th>Inhalt</th></tr></thead><tbody><tr><td>1</td><td>1</td><td><code>V</code></td></tr><tr><td>2</td><td>1</td><td>Leerzeichen</td></tr><tr><td>3–8</td><td>6</td><td>Erstellungsdatum <code>TTMMJJ</code></td></tr><tr><td>9–48</td><td>40</td><td>Info 1, üblicherweise Lieferant oder Dateiname</td></tr><tr><td>49–88</td><td>40</td><td>Info 2</td></tr><tr><td>89–123</td><td>35</td><td>Info 3 / Reserve</td></tr><tr><td>124–125</td><td>2</td><td>Versionsnummer <code>04</code></td></tr><tr><td>126–128</td><td>3</td><td>Währung, zum Beispiel <code>EUR</code></td></tr></tbody></table>

Exakter Vorlaufsatz aus der Beispiellieferung (128 Zeichen, endet mit `04EUR`):

```
V 290126Wannentechnik                                                                                                      04EUR
```

Eine Datei mit A-Sätzen hängt die Artikelzeilen **danach** an. In DATANORM 4 gehören A- und B-Satz zusammen; die Artikelzeilen selbst sind semikolongetrennt:

```
V 290126Wannentechnik                                                                                                      04EUR
A;A;0020001000002;40;Raumsparwanne Nevada links 170x75x43 cm; pergamon   ;1;0;ST;67700;001;001;T1;
B;A;0020001000002;Nevada-l-pe;;;0;;;4250879415061;;Badewannen;;1;;;
```

Das ist die erste Zeile der Beispiellieferung (Katalog Wannentechnik).

{% hint style="warning" %}
Steht im V-Satz ein Semikolon — etwa weil die Zeile wie ein V5-Satz aufgebaut ist — erkennt die App **DATANORM 5**. Ein V4-Vorlaufsatz darf kein `;` enthalten.
{% endhint %}

### DATANORM 5 — semikolongetrennt

Zum Vergleich der V5-Vorlaufsatz aus derselben Demo-Lieferung:

```
V;050;;20260724;EUR;Solutioo Demo Lieferant;;;;;
```

Felder: Satzart, Versionsnummer `050`, Datenkennzeichen, Datum `JJJJMMTT`, Währung, Beschreibung.

## Der wichtigste Unterschied

In DATANORM 4 beschreibt ein Artikel sich über zwei Zeilen: den A-Satz mit Bezeichnung, Preis und Einheit und den B-Satz mit Zusatzangaben wie EAN, Matchcode, Katalogseite oder Kupfergewicht. Beide gehören zur selben Artikelnummer.

Die App führt A- und B-Satz zu **einem** Staging-Datensatz zusammen. Eine Datei mit 4.637 Artikeln erzeugt daher 4.637 Zeilen im Staging, nicht 9.274.

In DATANORM 5 stehen diese Angaben bereits im A-Satz, ein B-Satz existiert nicht.

Die vollständige Gegenüberstellung finden Sie unter Unterschiede DATANORM 4 und 5.

## Dateien und Namenskonventionen

DATANORM-Lieferungen bestehen meist aus mehreren Dateien mit sprechender Endung:

<table><thead><tr><th width="260">Datei</th><th>Inhalt</th></tr></thead><tbody><tr><td><code>DATANORM.001</code>, <code>DATANORM.002</code> …</td><td>Artikeldaten. Bei großen Katalogen fortlaufend numeriert.</td></tr><tr><td><code>DATPREIS.001</code></td><td>Reine Preisänderung zu bereits gelieferten Artikeln.</td></tr><tr><td><code>*.RAB</code></td><td>Rabattgruppen.</td></tr><tr><td><code>*.WRG</code></td><td>Warengruppen.</td></tr></tbody></table>

{% hint style="warning" %}
Lesen Sie eine Preisänderungsdatei erst ein, **nachdem** die zugehörigen Artikel importiert sind. Andernfalls finden die Preissätze keinen Artikel, dem sie zugeordnet werden können.
{% endhint %}

## Zeichensatz

DATANORM-Dateien sind traditionell DOS-kodiert (Codepage 437/850). Die App liest sie entsprechend ein, damit Umlaute in Artikelbezeichnungen korrekt ankommen. Öffnen und speichern Sie eine Datei nicht mit einem Editor in UTF-8, bevor Sie sie importieren – dabei gehen Umlaute verloren.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.solutioo.de/datanorm-item-import/einleitung/unterstuetzte-datanorm-versionen.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
