Excel Exporter für Pimcore – Partner-Templates automatisch füllen

Excel Exporter for Pimcore – Auto-fill partner templates

Schluss mit Copy & Paste: Amazon & Händler-Vorlagen werden direkt aus Ihren Pimcore-Daten gefüllt – schnell, fehlerfrei, wiederholbar.

Warum das wichtig ist

Bis zu 90% schneller

Vorlagen werden automatisch befüllt. Keine manuelle Pflege mehr – egal ob 10 oder 10.000 Zeilen.

Fehlerfrei & konsistent

Alle Felder kommen aus einer Quelle: Pimcore. Identische Ergebnisse – bei jedem Lauf.

Wiederholbar

Templates einmal definieren, beliebig oft erzeugen. Ideal für Partner-Updates & saisonale Listen.

Why it matters

Up to 90% faster

Templates are filled automatically. No manual work – whether 10 or 10,000 rows.

Error-free & consistent

All fields come from a single source: Pimcore. Identical results on every run.

Repeatable

Define once, generate anytime. Perfect for partner updates & seasonal lists.

Excel-Vorlagen mit Platzhaltern

Platzhalter wie {{ Produktnummer }} oder {{ loc:Name }} direkt im Sheet. Zeilen-Offset frei wählbar (z. B. Start in Zeile 4).

Multi-Sheet & Sheet-Mapping

Mehrere Blätter in einer Datei füllen (z. B. Produkte, Bilder, Preise). Jedes Sheet hat eigene Platzhalter und Startzeilen.

Append-Modus (Listen)

Alle Datensätze werden untereinander in dieselbe Tabelle geschrieben – ideal für Partnerlisten & Exporte.

Pivot-Listen (Attribut/Wert)

Aus Spalten werden Zeilen: Produktnummer, Attribut, Wert. Perfekt für BI-Pipelines & universelle Mappings.

Expressions

Berechnungen in Zellen: {{ func:(Preis * 1.19) }} oder {{ func:(concat(Name,' ',Variante)) }}. Aktivierbar mit --expr.

Praxisbeispiel: Amazon Flatfile

Amazon erwartet vordefinierte Excel-Sheets mit festen Spalten. Unser Modul befüllt die Vorlage automatisch – exakt nach Ihren Pimcore-Daten.

Template – Kopfzeile & Platzhalter

Sheet "Produkte", Zeile 1:
SKU;Title;Brand;Price;Weight

Zeile 4 (Start):
{{ Produktnummer }};{{ loc:Webtitel }};{{ Marke }};{{ Preis }};{{ Gewicht }}

Startzeile frei wählbar – z. B. oberhalb Platz für Hinweise & Formatierungen.

Generierung – Beispiel

# Windows
php bin/console exporter:xlsx produktexport.json C:\out\amazon.xlsx ^
  --xlsx-template C:\tpl\amazon-flatfile.xlsx ^
  --xlsx-sheet Produkte --xlsx-append --expr

# Linux/Mac
php bin/console exporter:xlsx produktexport.json /out/amazon.xlsx \
  --xlsx-template /tpl/amazon-flatfile.xlsx \
  --xlsx-sheet Produkte --xlsx-append --expr

Ergebnis: Upload-fertige Amazon-Datei – ohne manuelles Kopieren.

Real-world: Amazon flatfile

Amazon requires predefined Excel sheets. Our module fills your template automatically – precisely from Pimcore data.

Template – header & placeholders

Sheet "Products", row 1:
SKU;Title;Brand;Price;Weight

Row 4 (start):
{{ productNumber }};{{ loc:WebTitle }};{{ brand }};{{ price }};{{ weight }}

Start row is flexible – keep notes & formatting above if needed.

Generation – example

# Windows
php bin/console exporter:xlsx productexport.json C:\out\amazon.xlsx ^
  --xlsx-template C:\tpl\amazon-flatfile.xlsx ^
  --xlsx-sheet Products --xlsx-append --expr

# Linux/Mac
php bin/console exporter:xlsx productexport.json /out/amazon.xlsx \
  --xlsx-template /tpl/amazon-flatfile.xlsx \
  --xlsx-sheet Products --xlsx-append --expr

Result: an Amazon-ready file – no manual copy & paste.

Beispiel-Aufrufe

1) Append-Modus (eine Liste)

php bin/console exporter:xlsx products.json out.xlsx \
  --xlsx-template tpl/report.xlsx \
  --xlsx-sheet Daten --xlsx-append --expr --list-sep "|"

2) One-Pager pro Datensatz (Sheet-Duplikation)

php bin/console exporter:xlsx product_one.json out.xlsx \
  --xlsx-template tpl/onepager.xlsx \
  --xlsx-sheet Daten

3) Pivot-Liste (Attribute → Zeilen)

php bin/console exporter:xlsx products.json pivot.xlsx \
  --xlsx-template tpl/pivot.xlsx \
  --xlsx-pivot "Produktnummer,Preis,Gewicht,Name" \
  --xlsx-pivot-sheet Pivot

4) Multi-Sheet befüllen

php bin/console exporter:xlsx products.json out.xlsx \
  --xlsx-template tpl/multisheet.xlsx \
  --xlsx-sheets "Produkte:4,Preise:2,Bilder:6" \
  --xlsx-append

--xlsx-sheets definiert Startzeilen je Sheet (hier: Produkte ab Zeile 4, Preise ab 2, Bilder ab 6).

Wichtige Optionen

  • --xlsx-template <file.xlsx> – Excel-Vorlage mit Platzhaltern.
  • --xlsx-sheet <Name> – einzelnes Sheet in der Vorlage (Append oder Duplikation).
  • --xlsx-sheets "Sheet:StartRow,..." – mehrere Sheets mit Startzeilen (Append).
  • --xlsx-append – Datensätze untereinander in dasselbe Sheet schreiben.
  • --xlsx-pivot "<Felder>" – Pivot-Export (Spalten → Zeilen) mit Attributauswahl.
  • --xlsx-pivot-sheet <Name> – Ziel-Sheet für Pivot.
  • --expr – Expressions in Zellen aktivieren, z. B. {{ func:(Preis*1.19) }}.
  • --list-sep "|" – Trenner für Mehrfachwerte aus Pimcore (Standard: |).

Platzhalter – Beispiele

{{ Produktnummer }}
{{ loc:Name }}
{{ func:(Preis * 1.19) }}
{{ func:(concat(Name, ' ', Variante)) }}

Beliebige Felder aus dem Export-Profil können verwendet werden (inkl. lokalisierter Felder mit loc:).

Unterstützt ihr mehrere Partner-Templates?

Ja. Legen Sie für jeden Partner eine Vorlage an (Multi-Sheet möglich) und generieren Sie alle Dateien in einem Lauf.

Yes. Create a template per partner (multi-sheet possible) and generate all files in one go.

Starten die Daten auch in Zeile 4?

Ja. Startzeilen sind pro Sheet frei definierbar – ideal für Kopfbereiche mit Hinweisen/Formaten.

Yes. Per-sheet start rows are supported – ideal for headers/notes/formatting.