Wandlung von Zeilen in Spalten in einem Spreadsheet

Hallo zusammen,

ich habe eine eigentlich ganz einfach Frage - zu der ich aber leider keine Antwort finds. Ich befürchte, dass ich einfach nur auf dem Schlauch stehe und ein schneller Tipp hier aus dem Forum mir helfen wird.

Dies ist die Quelle - ich habe in einem Spreadsheet viele Zeilen mit Merkmalen zu ein und dem selben Produkt:

Als Ziel möchte ich gerne die Felder Alkohol, Rebsorte, Farbe, Weinstiel und Geschmackstyp in einer Zeilen stehen haben.

Ich habe aktuell einen Weg gefunden in dem ich mit mehreren aufeinander folgenden Funktionen SpreadsheetAppend Merkmal für Merkmal in die Haupttabelle überführe, was aber meiner Meinung nach garnicht schön gelöst ist.

Gibt es eine Idee aus dem Forum wie ich hier ggf. besser vorgehen kann?

Danke & Gruß,
Patrick.

Hallo,
eventuell geht der Step ColumnCombiner. Du brauchst dann einfach noch eine Tabelle mit allen Ausprägungen, welche Du zusammenfassen möchtest.

Gruß Dirk

Klingt nach Gruppieren nach der ersten Spalte mit der Artikelnummer in Verbindung mit der Aggregatfunktion „Alle Werte auflisten“.

Guten Morgen Dirk, danke für deine Rückmeldung.

In der Tat kannte ich ColumnCombiner noch nicht und habe es gerade ausprobiert:

Hier könnte ich nun immer einen Wert zusätzlich in jeweils eine neue Spalte übertragen. Allerdings kann ich die Spalten nicht neu benennen - dann komme ich da denke ich nicht weiter, oder?

Aber vielleicht habe ich ColumnCombiner ja auch falsch angewendet?

Gruß, Patrick.

Guten Morgen synesty-Sales,

ja, das hatte ich auch überlegt. Würde auch gehen, denke ich. Ich müsste dann aus dem einen Feld in dem die ganzen Werte stehen dann einzelne Spalten machen, denke ich. Da bin ich dann nicht weiter gekommen. Daher die Frage: Wie kann ich aus einem Feld mit mehreren z.B. kommasepariert Werten mehrere Spalten machen?

Haben Sie dazu einen Tipp?

Danke & Gruß, Patrick.

Ah ok, jetzt noch mal richtig gelesen. Das ist doch etwas komplizierter.

Hier mal ein Versuch:

  1. Schreiben sie in eine Hilfsspalte den Attribut-Key und Value durch = getrennt
    Beispiel: Alkoholhaltig=nein

  2. Dann Gruppieren nach Produkt-ID Spalte (Aggregatfunktion Hilfsspalte „Alle Werte auflisten“ und Trenner Semikolon (;))

Das sieht dann ungefähr so aus

  1. Neuen Mapper Step erstellen und in dem das gruppierte Spreadsheet als Input konfigurieren

  2. Dort jetzt pro Attributspalte folgendes machen:

eine Spalte erstellen und darin sich aus dem Feld „Hilfsspalte-Map“ von oben den einzelnen Attribut-Wert in der entsprechenden Spalte herausholen:

${parseMap(hilfsspalte).at("Alkohol")}
${parseMap(hilfsspalte).at("Rebsorte")}
${parseMap(hilfsspalte).at("Farbe")}

usw.

Doku zu parseMap()

Beispiel:

${parseMap("Alkohol=1;Rebsorte=2").at("Alkohol")}

Gibt 1 aus.

image

1 Like

Sorry, falscher Account…

So, jetzt…
Hi Patrick, ich denke, das müßte man am besten über JSON erledigen. Ich habe einen Beispielflow dafür gemacht und angehängt. Im ersten Schritt wird da eine künstliche csv-Datei mit erfundenen Werten erstellt und im Mapper eingelesen - das müßtest Du natürlich auf Deinen Flow anpassen. Konkret müßtest Du in dem Mapper, den Du in Deinem ersten Spreadsheet zeigst, die beiden Spalten mit Attribut und Inhalt so benennen wie bei mir, dann kannst Du alle folgenden Steps von mir übernehmen und außerdem natürlich die Key_Value-Spalte einbauen. Am Ende meiner Steps müßtest Du dann das Ergebnis noch über die ID mit Deinen Ausgangsdaten gruppieren/aggregieren (Spaltenbenennung beachten bei „ID“).
FlowExport-Flow-ZeilenZuSpalten.json (15,0 KB)

Viel Spaß!

Gruß Micha
podcomm e-commerce management