Liebe Alteryx-Community,
bis jetzt konnte ich in diesem Forum viele Fragen anhand der schon vorliegenden Einträge erfolgreich beantworten. Von mir schon einmal ein sehr großes Lob.
Bei dem folgenden Sachverhalt bin leider schon anhand der Idee für die richtigen Schlagwörter für die Suche gescheitert. Aus diesem Grund versuche ich einmal hier.
Ausgangsdaten:
Kunden-ID | Status | Datum |
A | aktiv | 01.10.2019 |
A | inaktiv | 08.01.2020 |
A | aktiv | 01.10.2020 |
A | aktiv | 10.01.2021 |
A | inaktiv | 10.09.2021 |
Zieldaten:
Kunden-ID | Status | Datum |
A | aktiv | 01.10.2019 |
A | inaktiv | 08.01.2020 |
A | aktiv | 10.01.2021 |
A | inaktiv | 10.09.2021 |
Wie bekomme mit Hilfe von Alteryx die gezeigten Ausgangsdaten in die gezeigten Zieldaten?
Ich habe bis auf das "Sortieren-Tool" und eventuell das "Zusammenfassen-Tool" leider keine Idee bis jetzt.
Kann mir dabei jemand einen oder zwei Tipps geben?
Mit freundlichen Grüßen
Hallo Marcus,
kannst Du bitte kurz die Logik erläutern, was in der Zieltabelle stehen soll?
Nach welchen Kriterien soll der mittlere Eintrag (vom 01.10.2020) wegfallen?
Gruß Matthias
Hallo Matthias,
selbstverständlich kann ich versuchen die Logik dahinter zu erklären.
- Der "Kunde A" ist durch Abschluss einer Vertrages am 01.10.2019 neu angelegt und als "aktiv" gekennzeichnet.
- Am 08.01.2020 beschließt der "Kunde A" den Vertrag ruhen zu lassen ohne diesen Vertrag zu kündigen und bekommt aus diesem Grund den Status "inaktiv".
- Am 01.10.2020 möchte der Kunde den Vertrag nicht mehr ruhend stellen und bekommt ab dann den Status "aktiv".
- Am 10.01.2021 wird ein weitere Vertrag abgeschlossen. Eine Statusänderung erfolge hier nicht, da "Kunde A" ein Bestandkunde mit dem Status "aktiv" ist. Diese Datensatz könnte also gekürzt werden.
- Am 10.09.2021 möchte der Kunde alle bestehenden Verträge wieder ruhend stellen und erhält dafür den Status "inaktiv".
In diesem Zusammenhang ist mir leider aufgefallen, dass die ursprüngliche Zieltabelle falsch ist. Dies war mein Fehler. Die Zieldaten sollten eigentlich eine chronologische Darstellung der Status des Kunden A aufzeigen.
korrigierte Zieldaten:
Kunden-ID | Status | Datum |
A | aktiv | 01.10.2019 |
A | inaktiv | 08.01.2020 |
A | aktiv | 01.10.2020 |
A | inaktiv | 10.09.2021 |
Grüße Marcus
Hallo Marcus,
eine mögliche Lösung findest Du im Anhang.
Kurze Erklärung:
- sortieren nach Datum aufsteigend
- Mit dem multi-row-formula-tool je Zeile den Status mit dem Status der vorhergehenden Zeile vergleichen und die Gleichheit bzw. Ungleichheit in einer Helper-Spalte eintragen.
- Filtern der Helperspalte, so dass das gewünschte Ergebnis erhalten bleibt.
- im select tool die Helperspalte abwählen.
Ich hoffe, dass das Ergebnis der gewünschten Logik entspricht und du etwas damit anfangen kannst.
Schöne Grüße
Matthias
Hallo @MarcusHopf,
willkommen in der Community! Es freut uns dich hier begrüßen zu dürfen :-)
Die Lösung von Matthias ( @akku ) sollte in deinem Fall perfekt funktionieren und ich würde es tatsächlich auch genauso lösen. Ich möchte an dieser Stelle nur eines anmerken für den Fall das noch andere über den Post stolpern.
Es gibt einen kleinen Fehler in dem Workflow, dieser hängt gar nicht mit der Logik zusammen, sondern damit, dass das Datum nicht als Datum formatiert war, sondern als Text. Dadurch sieht es nach dem Sort so aus:
und der erste 1.10 landet vor dem 8.1.
Formatieren wir das Datum im Text-Input leicht anders (im Alteryx Format), so sieht es nach dem Sort auch richtig aus.
An der Logik des Workflows ändert sich rein gar nichts, so dass du die Vorlage von Matthias übernehmen kannst. Sollte das Datum bei dir jedoch auch als Text formatiert sein, dann melde dich gerne nochmal und Matthias (oder ich) helfen dir gerne diese mit Tools wie dem DateTime-Tool in das richtige Format zu bringen.
Viele Grüße & allen ein schönes Wochenende!
Alex