Produkte aus Datei importieren

Diese Anleitung richtet eine Aufgabe ein, die Ihre Artikeldatei einliest und daraus Produkte macht, und zwar wiederholbar: Dieselbe Datei ein zweites Mal eingelesen ändert nichts, eine geänderte aktualisiert genau die betroffenen Zeilen. Das ist der Normalweg für Lieferantendaten, denn die kommen als Datei, in wechselnder Qualität, und selten in dem Aufbau, den man sich wünschen würde. Der Weg führt über den benutzerdefinierten Kanal, der CSV, XLS, XML und JSON liest.

Vorausgesetzt wird das Grundverständnis aus den Konzepten: was eine Aufgabe ist und was ein Transferplan tut.

Voraussetzungen

  • Ein benutzerdefinierter Kanal mit der Aufgabe Produkte Importieren.
  • Eine Beispieldatei, die den späteren Lieferungen entspricht: mit Spaltennamen und mit einer Spalte, die jede Zeile dauerhaft eindeutig kennzeichnet.

Schritt für Schritt

  1. Datenformat anlegen und die Feldliste ableiten. Das Datenformat beschreibt den Aufbau Ihrer Datei, und Sie tippen ihn nicht ab: Öffnen Sie den Kanal und im Bereich Datenformate das Format, und ziehen Sie die Beispieldatei auf den Ablagebereich Hochladen. TRADElube liest die Datei und übernimmt Spalten und Datentypen. Bei gesetztem Spalten aus Kopfzeile findet es die Spalten später über ihre Namen wieder, die Reihenfolge in der Datei ist dann gleichgültig.

Dialog des Datenformats Artikelliste CSV mit dem Ablagebereich Hochladen und der abgeleiteten Feldliste samt Datentypen

Prüfen Sie die erkannten Datentypen, bevor Sie weiterbauen. Kennungen gehören auf Text, auch wenn sie wie Zahlen aussehen: Eine EAN oder eine Postleitzahl als Ganzzahl verliert ihre führende Null, eine Angabe mit Einheit wie „0,75 l" als Dezimalzahl ihre Einheit. Der Datentyp entscheidet außerdem, was Sie später überhaupt zuweisen können. Die Quellenauswahl einer Zuweisung zeigt nur Spalten, deren Typ zum Zielfeld passt. Eine Spalte, die Sie dort vermissen, ist fast immer eine mit unpassend erkanntem Typ.

  1. Den Plan anlegen und den Aufbau setzen. Öffnen Sie die Aufgabe und den Bereich Transferplan. Den ersten Plan legen Sie über Hinzufügen an. Im Abschnitt Aufbau setzen Sie über Hinzufügen einen Datensatz auf Ihr Datenformat. Von seinen Zuweisungen ist eine entscheidend: die Zuordnung. Sie ist der Schlüssel, unter dem sich TRADElube jede Zeile merkt, und über sie erkennt jede spätere Ausführung die Zeile wieder.

Abschnitt Aufbau des Importplans mit dem Datensatz Artikelliste CSV, der Zuordnung auf die Spalte GroupId und der Gruppierung

Wählen Sie als Zuordnung die Spalte, die sich nie ändert, etwa eine Datensatzkennung Ihres Lieferanten oder die EAN. Die Artikelnummer ist nur dann ein guter Schlüssel, wenn sie garantiert stabil bleibt. Der Grund steht unter Kanalzuordnungen: Ändert sich der Schlüsselwert einer Zeile, hält die nächste Ausführung sie für neu und legt ein zweites Produkt an, statt das vorhandene zu aktualisieren.

Die Zuordnung steht mit der ersten erfolgreichen Ausführung fest. Zeigt sie später auf eine andere Spalte, erkennt TRADElube keine einzige Zeile wieder und legt Ihr Sortiment ein zweites Mal an. Sprechen Sie uns an, bevor Sie den Schlüssel tauschen: Die vorhandenen Kanalzuordnungen müssen mit ihm zusammen umgestellt werden.

  1. Die Abschnitte füllen. Neben dem Aufbau trägt der Plan je Datenart einen Abschnitt: Allgemein für Produktnummer, Aktiv und den Herstellerverweis, Beschreibungen mit einem Datensatz je Sprachfassung, dazu Preise, Lagerbestände, Kategorien, Medien und Eigenschaften. Das Grundmuster ist überall gleich: Kontrollkästchen der Zuweisung setzen, Quelle wählen, fertig. Ein Kategoriepfad aus der Datei legt den Kategoriebaum beim Import gleich mit an, und Bilder holt TRADElube über eine Spalte mit der Bildadresse. Füllen Sie nur, was Ihre Datei hergibt. Ein Abschnitt ohne Quelle bleibt leer, und das ist die richtige Einstellung. Was die drei Zuweisungsarten können und wann sich ein Skript lohnt, steht unter Transferplan anpassen und Skripte im Transferplan.

    Beim Herstellerverweis entscheidet Ihre Datei, welcher der drei Wege passt. Betrifft eine Lieferantendatei nur einen Hersteller, legen Sie ihn einmal von Hand an und weisen ihn Als Fixer Wert zu. Führt die Datei einen Herstellernamen je Zeile, holt ihn eine Zuweisung über Skript mit FindOrCreateManufacturerWithName und legt fehlende Hersteller beim Import gleich mit an. Kommen die Hersteller ohnehin als eigene Datei, laufen sie vorab über die Aufgabe Hersteller Importieren, und der Verweis findet sie dann über ihre Kanalzuordnung.

  2. Varianten, falls Ihre Datei welche führt. Der übliche Fall ist eine Zeile je Variante ohne eigene Zeile für den Hauptartikel. Dann entsteht der Hauptartikel aus der Gruppierung, und ein zweiter Plan hängt die Varianten an. Der Aufbau steht Schritt für Schritt unter Varianten anlegen und wird hier nicht wiederholt.

  3. Aufgabe starten. Die Aufgabe starten Sie über Ausführen. Für jedes Datenformat der Aufgabe fragt vorher ein Dialog nach der Datei. Ohne Datei startet die Aufgabe nicht. Für diesen Handbetrieb brauchen Sie keinen Endpunkt. Soll TRADElube die Datei stattdessen regelmäßig selbst abholen, etwa von einem FTP-Server des Lieferanten, hinterlegen Sie am Endpunkt der Aufgabe eine Datenquelle und stellen das Feld Leistung auf einen Takt. Der Weg dahin steht unter Datenquellen einrichten.

Der Dialog beim Ausführen der Importaufgabe mit der Upload-Schaltfläche für die Artikelliste und abgeschaltetem Ausführen

Ergebnis prüfen

Der schnellste Überblick steht in der Nachverfolgung: Haken Sie die Statusfilter Erstellt und Geändert dazu und grenzen Sie über das Feld Filter auf den Namen der Aufgabe ein. Je gelesener Zeile steht dort eine Übertragung, und drei Prüfungen sagen Ihnen, ob der Import trägt:

  • Die Zahlen stimmen. Die Zahl der Übertragungen passt zur Zeilenzahl der Datei. Mit Gruppierung kommen die Hauptartikel dazu.
  • Fehlerhafte Zeilen sind erklärbar. Jede steht mit ihrer Meldung da, siehe Fehlermeldungen verstehen. Der Rest der Ausführung ist davon unberührt.
  • Die zweite Ausführung ist still. Dieselbe Datei noch einmal eingelesen meldet keine Änderungen. Genau das belegt, dass die Zuordnung trägt: Jede Zeile wurde wiedererkannt statt neu angelegt.

Stichproben sehen Sie sich am Produkt selbst an, einschließlich der Sprachreiter, Preise und Bilder.

Häufige Stolpersteine

  • Die Artikelnummer als Zuordnung. Nummeriert Ihr Lieferant um, legt die nächste Ausführung zu jeder geänderten Nummer ein zweites Produkt an. Der sichere Schlüssel in Schritt 2 ist eine Spalte, die niemand je anfasst.
  • Eine umbenannte Spalte ist eine gelöschte und eine neue. TRADElube findet Spalten über ihren Namen. Nach dem erneuten Ableiten in Schritt 1 zeigt der Dialog die Änderungen je Kontrollkästchen, und Zuweisungen auf die alte Spalte stehen danach leer. Halten Sie Spaltennamen stabil. Eine neue Spalte tragen Sie im Datenformat über Neu einzeln nach, statt die Liste neu abzuleiten.
  • „Erfolgreich" mit „Keine gemachten Änderungen". Kein Widerspruch: Bei unveränderter Datei und unverändertem Plan gibt es für die Ausführung aus Schritt 5 nichts zu tun. Nach einer Änderung am Transferplan läuft die nächste Ausführung dagegen von selbst vollständig durch.
  • Text in einer Zahlenspalte. Ein „auf Anfrage" im Preisfeld scheitert an genau dieser Zeile mit einem Konvertierungsfehler. Den Typ setzt das Datenformat aus Schritt 1. Die übrigen Zeilen laufen durch, und die Nachverfolgung nennt die fehlerhafte.
  • Die Löschkästchen der Konfiguration. Unbenutzte Einträge Deaktivieren und das Löschkästchen daneben beziehen sich auf alles, was in der gelesenen Datei fehlt. Bei einer Teilliste wirkt das wie eine Abmeldung des halben Sortiments. Die Einzelheiten stehen bei der Aufgabe Produkte Importieren (Benutzerdefiniert).

Weiterführend