Excel → Pimcore: Klassen anlegen & Daten importieren

Excel → Pimcore: Create classes & import data

Aus einer Excel‑Vorlage erzeugen wir Pimcore‑Klassen (Layout, Felder, Tabs) und lesen Daten aus -daten‑Sheets direkt ein – inklusive Published‑Flag und Typ‑Handling.

Eine Excel für alles

Pro Klasse ein Sheet, plus optionales -daten‑Sheet. Keine Mehrfachkonfiguration.

Layout & Tabs

Tabs/Groups aus Spalten Tab und Gruppe werden automatisch angelegt.

Feld‑Typen

Unterstützt u. a. Input, Select, QuantityValue (Units werden bei Bedarf angelegt).

Datenimport

Zeilen aus -daten werden als Objekte angelegt/aktualisiert. Folder & Key aus Spalten.

Sauberes Update

Bei Duplikaten wird das bestehende Objekt geladen und Werte aktualisiert (inkl. Published).

Ablauf

  1. Excel‑Template unter var/config/pimcore_class_definition_template.xlsx vorbereiten.
  2. Pro Klasse ein Sheet (ohne Suffix) – Felder, Typen, Tabs, Gruppen definieren.
  3. Optional: Sheet <Klasse>-daten mit Spalten Folder, Key und Feldern.
  4. Command ausführen: bin/console custom:import-classes.
  5. Klassen werden angelegt/aktualisiert, Daten importiert, Objekte veröffentlicht.

Spaltenübersicht (Klassen‑Sheet)

| name | title | mandatory | noteditable | visibleGrid | visibleSearch | type | groupName | tabName | default | unit | tooltip |
|------|-------|-----------|-------------|-------------|---------------|------|-----------|---------|---------|------|---------|
| sku  | SKU   | true      | false       | true        | true          | Input| Base      | Main    |         |      |         |
| weight| Weight | false   | false       | true        | true          | QuantityValue | Specs | Main |  | kg | Shipping weight |

Spaltenübersicht (Daten‑Sheet)

| Folder | Key   | sku  | weight |
|--------|-------|------|--------|
| /prod  | P-01  | 1001 | 4,8    |

Booleans: true/false; Dezimalwerte mit Komma werden automatisch in Float konvertiert.

CLI‑Command

bin/console custom:import-classes

Liest die Excel‑Datei, erzeugt/aktualisiert Klassen und importiert Daten aus allen -daten‑Sheets.

Besonderheiten

  • QuantityValue: Default‑Unit wird angelegt, falls sie fehlt.
  • Duplicate full path: Bestehendes Objekt wird geladen und aktualisiert.
  • Alle Objekte werden auf published=true gesetzt.

Welche Pimcore‑Versionen?

Getestet mit Pimcore 11/12.

Kann ich erst Klassen, später Daten importieren?

Ja. Die -daten‑Sheets sind optional.

Unterstützt ihr weitere Feldtypen?

Ja – gern erweitern wir die Vorlage für Relationen, Localized Fields u. v. m.

Kann ich das in CI/CD nutzen?

Ja, der Command ist idempotent und skriptfähig.