Zum Hauptinhalt springen
csv2zugferd

docs

CSV-Modi – rows, columns-suffix und columns-prefix

csv2zugferd unterstützt drei CSV-Modi: rows (eine Rechnung pro Zeile), columns-suffix und columns-prefix für spaltenbasierte Rechnungspositionen.

csv2zugferd unterstützt mehrere CSV-Strukturen.

rows
#

Im rows-Modus steht jede Rechnungsposition in einer eigenen Zeile. Gemeinsame Rechnungsdaten werden wiederholt oder gruppiert.

Geeignet für:

  • ERP-Exporte mit einer Position pro Zeile
  • Rechnungen mit variabler Positionsanzahl
  • gut prüfbare tabellarische Daten

columns mit suffix
#

Im Columns-Suffix-Modus stehen Positionen in nummerierten Spalten:

PRODUCT_NAME_0;PRODUCT_QUANTITY_0;PRODUCT_PRICE_0;PRODUCT_NAME_1;PRODUCT_QUANTITY_1;PRODUCT_PRICE_1

Typische Konfiguration:

lineItems:
  mode: "columns"
  columnPattern:
    style: "suffix"
    separator: "_"
    startIndex: 0
    zeroPadding: 0

columns mit prefix
#

Im Columns-Prefix-Modus steht die Nummer vor dem Feldnamen:

1_Menge;1_Preis;1_Beschreibung;2_Menge;2_Preis;2_Beschreibung

Typische Konfiguration:

lineItems:
  mode: "columns"
  columnPattern:
    style: "prefix"
    prefix: ""
    separator: "_"
    startIndex: 1
    zeroPadding: 0

Globale Rechnungsfelder im columns-Modus
#

Im columns-Modus können Positionsfelder nummeriert sein, während andere Werte global einmal pro Rechnung vorliegen.

Beispiel:

fields:
  name:
    column: "PRODUCT_NAME"
  billedQuantity:
    column: "PRODUCT_QUANTITY"
  netUnitPrice:
    column: "PRODUCT_PRICE"
  taxPercent:
    column: "INVOICE_TAX"

Dabei wird PRODUCT_NAME_0 als Positionsspalte gelesen, INVOICE_TAX dagegen als globale Einzelspalte für alle Positionen derselben Rechnung.

Diese Modi sind praktisch, wenn ein CRM oder eine Tabellenkalkulation eine Rechnung vollständig in einer Zeile exportiert.