@alexm
Es geht auch ohne den Zwischenschritt mit der Generierung über das Backend. Du musst zum Anlegen von Variantenprodukten 3 Importe machen.
1. Hauptartikel und Varianten anlegen
Mein Profil enthält folgende Felder:
weight
manufacturerNumber
ean
referenceUnit
translations.DEFAULT.packUnit
unitId
purchaseUnit
versionId
parentVersionId
productManufacturerVersionId
translations.DEFAULT.createdAt
id
parentId
productNumber
active
stock
translations.DEFAULT.name
translations.DEFAULT.description
price.DEFAULT.net
price.DEFAULT.gross
taxId
tax.taxRate
tax.name
cover.media.id
cover.media.url
cover.media.translations.DEFAULT.title
cover.media.translations.DEFAULT.alt
manufacturer.id
manufacturer.translations.DEFAULT.name
categories
visibilities.all
Ich möchte hier nur auf die Fett markierten Spalten eingehen.
VersionId, parentVersionID, productManufacturerVersionId ist anscheinend notwendig und enthält immer den selben Wert. Am besten durch Exportieren herausfinden.
Die IDs generiere ich alle vorher und lasse das nicht von Shopware tun. Dafür kannst du bspw. einen Online-Generator wie Free Online GUID Generator nutzen und dir eine Liste anegen, sodass du nicht versehentlich eine ID doppelt nimmst.
Bei allen Varianten kommt in die Spalte ParentID die ID des Hauptproduktes rein.
2. Varianteneigenschaften importieren
Mein Profil enthält folgende Felder:
groupId
translations.DEFAULT.createdAt
productOptions
productProperties
id
colorHexCode
translations.DEFAULT.name
translations.DEFAULT.position
group.id
group.displayType
group.sortingType
group.translations.DEFAULT.name
group.translations.DEFAULT.description
group.translations.DEFAULT.position
media.id
media.url
media.mediaFolderId
media.mediaType
media.translations.DEFAULT.title
media.translations.DEFAULT.alt
Die ist das Standard-Eigenschaften-Profil, was um die Spalten productOptions und productProperties erweitert wurde.
Die Eigenschaft, also die Ausprägung der Variante, muss vorher im System vorhanden sein. Wenn die angelegt sind, kannst du die Eigenschaften mit diesem Profil exportieren.
Um den durch Schritt 1 importierten Varianten jetzt ihre Varianteneigenschaft zu verpassen, fügst du die ID der Variante in die Spalten productOptions und productProperties ein und importierst die Eigenschaften wieder. Den Inhalt der Felder kannst du jedes mal überschreiben, diese fügen scheinbar immer nur hinzu.
3. Variantenkonfiguration importieren
Nimm das Standardprofil “Variantenkonfiguration” und fülle nur die beiden Spalten productID und optionID.
productID enthält die ID des Hauptartikels (Also die ParentID der Varianten) optionID enthält die ID der Eigenschaft. Pro Zeile fügst du dann eine Kombination aus ParentID und Eigenschaften-ID ein. Hast du 3 verschiedene Varianten, sind das dann 3 Zeilen.
ParentID-1|Eigenschaft1
ParentID-1|Eigenschaft2
ParentId-1|Eigenschaft3
Wenn du das dann imprortiert hast, sind deine Varianten korrekt im System und du musst nichts mehr manuell generieren.
Ansonsten muss Stock und createdAt immer leer sein und als Dezimalzeichen verwende ich den Punkt.