Hallo Forum,
in einem Workflow bekomme ich in einer Spalte in der Regel zwei unterschiedliche Werte. ("A" und "B")
Nun kommt es aber auch vor, dass für einen der beiden Werte keine Daten vorhanden sind. (Dann gibt es nur "A")
Kann ich prüfen, ob "B" fehlt und dann eine Pseudozeile erzeugen?
Gruß Matthias
Gelöst! Gehe zu Lösung.
Hallo Matthias,
auch hier gibt es wieder viele Wege zum Ziel, gerne zeige ich dir meine Lieblingsvariante. Unsere Daten sehen dabei wie folgt aus:
Filter + Union (+ Sort zur Verdeutlichung)
Alternativ gibt es natürlich auch Möglichkeiten mit dem Generate Rows Tool vorzugehen, aber in so einfachen Fällen verzichte ich gerne darauf.
Viele Grüße
Alex
Hallo Alex,
danke für die schnelle Antwort. Leider passt mein Problem nicht zur Lösung ;-)
so kommen die Daten in der Regel an. Es gibt Ort "A" und "B"
Nun kann es aber auch vorkommen, dass es nur Ort "A" gibt.
In diesem Fall möchte ich eine Zeile erzeugen mit Ort "B". Die fehlenden Werte sollen mit "0" aufgefüllt werden.
Aus soll werden
Gruß Matthias
Moin,
danke für das Beispiel! Das macht es deutlich leichter es zu verstehen wie du es meintest.
Spontan fallen mir direkt einige Lösungen ein, aber die folgende gefällt mir besonders gut:
Mein oberer Input ist genau wie dein Haupt-Input im Beispiel. Der untere ist lediglich B 0 0 mit den gleichen Spaltennamen. Das Join ist nun ganz normal konfiguriert und soll auf dem Ort joinen jedoch entfernen wir hier direkt ALLE Spalten vom rechten Join-Eingang.
Die Krux ist nun tatsächlich ALLE Ausgänge mit einem Union zu verknüpfen.
Scenario 1: Es gibt bereits ein B im Hauptdatensatz
Hier würden nun unsere A-Werte (und alle anderen nicht B Werte) im linken Ausgang landen - in unserem Beispiel sind das 2.
Die B-Werte würden joinen - jedoch alle Spalten aus dem rechten Input ignorieren und dadurch unverändert wieder herauslaufen.
Im rechten Ausgang würde nicths landen, da das B gejoined werden konnte.
Scenario 2: Es gibt keine B-Werte im Hauptdatensatz
Genau wie zuvor landen alle nicht B-Werte aus dem Hauptdatenstrom im linken Join-Ausgang, in diesem Fall 2.
Im mittleren landet diesmal nichts, da es kein B im Datensatz gibt.
Im rechten landet nun die eine Zeile aus dem rechten Input, da diese nicht gejoined werden konnte.
Alternativ könnte man natürlich auch Varianten mit Filter + Count + Formel + Filter + Union machen (kann ich gerne noch genauer ausführen bei Interesse).
Viele Grüße
Alex
Danke Alex,
manchmal kann es so einfach sein...
Schöne Grüße
Matthias