Skripte im Transferplan
Die meisten Zuweisungen kommen mit einer Feldquelle oder einem festen Wert aus. Ein Skript ist der Griff für den Rest: wenn ein Wert berechnet, verkettet, umgeformt oder nachgeschlagen werden muss, bevor er ins Zielfeld darf. Diese Anleitung zeigt, wann sich das lohnt, wie der Skript-Dialog arbeitet und wie ein durchgerechnetes Beispiel aussieht. Das Umschalten einer Zuweisung auf Zuweisung über Skript steht unter Transferplan anpassen.
Voraussetzungen
- Eine Zuweisung, die sich auf Skript umstellen lässt. Welche das sind, zeigt die Zeile selbst über ihre Umschalter.
- Grundkenntnisse in JavaScript helfen, sind aber für die Beispiele dieser Seite nicht nötig.
Wann ein Skript sinnvoll ist
Ein Skript lohnt sich, wenn zwischen Quelle und Ziel eine Regel steht:
- Verketten und Zerlegen: zwei Spalten zu einer Bezeichnung zusammensetzen, oder aus einer Artikelnummer einen Teil herausschneiden, etwa
ArtNr.substring(0, 4). - Bedingen: je Zeile entscheiden, was gilt, etwa
return IsVariant == 0 ? Ean : null;, das die EAN nur am Einzelartikel setzt und sie sonst leert. - Nachschlagen: einen anderen Datensatz finden, etwa
FindProductWithMapping(GroupId)für das Elternprodukt einer Variante.
Und wann nicht: Wenn eine Feldquelle denselben Wert liefert, ist sie die bessere Wahl. Jedes Skript ist Konfiguration, die gelesen und gewartet werden will, und was es tut, sieht man der Planzeile nicht an. Der Filter und die Bedingung aus Übertragungsumfang einschränken sind übrigens dieselbe Technik, nur mit Ja oder Nein als Ergebnis.
Schritt für Schritt
Dialog öffnen. Stellen Sie die Zuweisung auf Zuweisung über Skript und klicken Sie Bearbeiten. Der Dialog hat drei Teile: oben die Liste der Variablen und Funktionen mit Beispielwerten, darunter den Editor, und neben dem Editor die Fläche, in der Simulieren sein Ergebnis zeigt.
Die Liste lesen, bevor Sie schreiben. Sie ist zugleich die Typreferenz Ihres Datensatzes und die Funktionsreferenz dieses Zielfelds: Jede Quellspalte steht dort mit ihrem Typ, und darunter stehen die Funktionen, die genau diese Zuweisung anbietet. Was dort nicht steht, gibt es an dieser Stelle nicht. Die verfügbaren Funktionen unterscheiden sich je Zielfeld.

Schreiben und simulieren. Das Skript ist JavaScript, und sein
returnliefert den Wert des Zielfelds. Simulieren führt es sofort mit den Beispielwerten aus der Liste aus. Ein Tippfehler fällt hier auf, nicht erst in der Ausführung.Übernehmen und speichern. Der Editor übernimmt seinen Inhalt, wenn Sie das Feld verlassen. Klicken Sie also erst aus dem Editor heraus und schließen Sie dann den Dialog, bevor Sie die Aufgabe speichern.
Beispiel: Kategorien als Tags in den Shop
Ein Fall, in dem ein Skript eine ganze Aufgabe ersetzen kann. Beim Shopify-Produktupload nimmt die Zeile Tags als Skriptquelle die Produktkategorien: je Kategorie ein Objekt mit Name, Parent, Root, dem Pfad Path und der Funktion FormatPath(trenner). Zwei Varianten:
// die Namen aller Kategorien des Produkts, durch Komma getrennt
return ProductCategories.map(c => c.Name).join(', ');
// oder der vollständige Pfad der ersten Kategorie
return ProductCategories.length ? ProductCategories[0].FormatPath(' > ') : '';
Der Gewinn steht im Shop: Eine automatische Kollektion in Shopify kann sich ihre Produkte über eine Tag-Bedingung selbst zusammenstellen, und die Pflege der Kollektionen über eine eigene Aufgabe entfällt. Die Abwägung dazu steht bei der Aufgabe Produkte Hochladen des Shopify-Kanals.
Ergebnis prüfen
Simulieren prüft die Logik, die Ausführung prüft die Wirklichkeit: Starten Sie die Aufgabe und sehen Sie in der Nachverfolgung den übertragenen Inhalt an. Dort steht das Zielfeld mit dem Wert, den Ihr Skript geliefert hat, an echten Datensätzen statt an Beispielwerten.
Häufige Stolpersteine
- Der Editor übernimmt beim Verlassen des Feldes. Wer im Editor tippt und sofort speichert, speichert den alten Stand, und die Oberfläche meldet trotzdem Erfolg. Erst herausklicken, dann speichern wie in Schritt 4.
- Ein Skript, das Text liefert, kann keinen Verweis setzen. Felder, die auf ein Einstellungsobjekt zeigen, etwa ein Bestellstatus, nehmen nur ein Objekt an. Ein zurückgegebener Text leert den Verweis. Statt des Skripts aus Schritt 3 ist für solche Felder der feste Wert mit Auswahlliste der Weg, je Ausprägung ein eigener Datensatz, siehe Transferplan anpassen.
- Eine eigene Variable darf nicht wie eine Quellspalte heißen.
var color = …neben einer Spaltecoloraus der Liste in Schritt 2 überdeckt die Spalte, und das Skript arbeitet still mit einem leeren Wert weiter. - Standard Wiederherstellen ist der Notausgang. Die Schaltfläche setzt das Skript auf die mitgelieferte Vorgabe zurück. Ein Experiment in Schritt 3 kostet damit nichts Bleibendes.
Weiterführend
- Transferplan anpassen: das Umschalten der Zuweisungsarten und der bedingte Datensatz
- Übertragungsumfang einschränken: Skripte, die Ja oder Nein liefern
- Transferpläne: wo Skripte im Modell sitzen
- Varianten anlegen: die Skripte, die Haupt- und Variantenartikel verbinden