Zeilen im Spreadsheet sortieren

Hallo zusammen,


ich möchte gern die Zeilen in einem Spreadsheet sortieren. Das Ausgangsspreadsheet enthält ungefähr folgende Infos:


image


Nun möchte ich, dass je SKU immer zuerst die Zeile "Taschenbuch" steht. Wenn es kein Taschenbuch gibt, soll "Hardcover" an erster Stelle stehen. Die Reihenfolge der weitere Zeilen ist dann erstmal uninteressant. Wenn kein Taschenbuch oder Hardcover vorhanden ist, kann die Reihenfolge unangetastet bleiben.


Hintergrund: Ich möchte die Zeilen gruppieren und dann nur die oberste Zeile als Ergebniszeile anzeigen, um das dann weiterverarbeiten zu können.


Danke im Voraus für eure Hilfe!


Viele Grüße

Lisa


Viele Grüße

Lisa


Hallo Lisa,


vorab Sortieren könnte sicherlich auch funktionieren ist aber - ressourcentechnisch - "teuer" (d.h. benötigt beim Flowdurchlauf relativ viel Zeit).
Ggf. könnte man aber u.U. auch anders zum Ziel kommen.


Hier ein Vorschlag bei dem ich davon ausgehe das du gerade im gruppierten Spreadsheet bist.

1. Du fügst in die Zeile "Produktformat" ein Script ein, welches aus dem Begriff "Taschenbuch" eine "1" macht, aus dem Begriff "Hardcover" eine "2" und ansonsten immer eine "3".
Also grob:

<#if Produktformat == "Taschenbuch">1<#elseif Produktformat == "Hardcover">2<#else>3</#if>


Edit: Du kannst natürlich auch anstatt dem Skript ein MappingSet verwenden (ungemappte Werte würden angewandt auf das obige Skript dann fest auf "3" gemappt).

2. Du nutzt bei der Aggregatfunktion "kleinster Wert"
____
3. Diesen Wert kannst du dann in einem Mapper nach dem Mapper mit den gruppierten Werten nutzen.



Hilft dir das weiter?

Viele Grüße,
Benjamin

Hi Benjamin,


das ist super und sehr hilfreich!

Scheint auf den ersten Blick zu funktionieren. Werde nächste Woche damit noch etwas rumprobieren.


Vielen Dank!


Lisa

Hi Benjamin,


ich hab jetzt nochmal rumprobiert, aber so ganz funktioniert das leider noch nicht, wenn in der Tabelle noch weitere Spalten vorhanden sind.


Ausgangstabelle (die Varianten-ID bestimmt, welche Produkte zusammengehören):


image



Nach dem Gruppieren und anwenden der Aggregatfunktion:


image


Das Problem ist, dass ja nur die "Hilfsspalte Produktformat" nach dem kleinsten Wert aggregiert wird. Alle anderen Spalten bleiben unangetastet. Verstehst du, was ich meine?


Vielleicht nochmal zur Erklärung, warum ich das überhaupt brauche:
Ich will für den Shopify Import die Main Varianten erkennen. Wenn es ein Taschenbuch gibt, soll dieses die Main Variante sein. Wenn es keins gibt, soll Hardcover die Main Variante sein. Wenn es weder Taschenbuch, noch Hardcover gibt, soll eines der anderen Produktformate die Main Variante sein.


Alle anderen Produktformate / Varianten werden anschließend mittels AddVariantToProduct hochgeladen.


Hast du eine Idee, wie ich das umsetzen kann?

Viele Grüße

Lisa

Hallo Lisa,

ich mache so etwas immer, indem ich eine Hilfsspalte zusammenfüge und dann danach sortieren lasse. Als Erweiterung einer Idee von weiter oben wäre es in Deinem Fall etwa ${SKU}_<#if Produktformat == "Taschenbuch">1<#elseif Produktformat == "Hardcover">2<#else>3</#if>_${Produktformat}. Im nächsten Mapper sortierst Du dann nach der Hilfsspalte. Probier mal, ob das Gruppieren im selben Mapper funktioniert, ansonsten schließt Du noch einen Mapper an und gruppierst dort.


Gruß, Micha

podcomm e-commerce management