Community beta
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 

Alteryx Designer - Wissensdatenbank

Klare Antworten von Designer-Experten.
Willkommen in unserer neuen deutschen Community - Beta-Version! Wir werden in den nächsten Wochen kontinuierlich daran arbeiten, sie zu verbessern und danken Ihnen schon jetzt für Ihre Geduld und Zusammenarbeit. Teilen Sie gerne Ihre ersten Eindrücke im Forum.
Hallo liebe Usergroup,   eine unserer Alteryx User hat mich vor ein paar Tagen um Unterstützung bei einem Use Case gebeten, leider hat die Person derzeit Probleme Posts in der Community zu verfassen, weshalb ich kurz den Use Case schildere und dann auch direkt danach die Lösung poste, da ich glaube, dass dies für einige Usere interessant sein könnte.   Generell ist der Anwendungsfall recht einfach, es geht darum, in einer Datentabelle Sonderzeichen (wie zum Beispiel Umlaute, aber auch Dinge wie Buchstaben mit Akzenten, etc) mit normalen Buchstaben zu ersetzen, also zum Beispiel aus "ü" wird "ue" und aus "é" oder "è" wird beides mal "e". Das ganze muss für Sonderzeichen aus verschiedensten Sprachen funktionieren.   Nun ist dieser Anwendungsfall mit einer Look-Up Tabelle und einem Find & Replace Tool in Alteryx relativ simpel zu lösen, wenn es daraum geht, nur in einer Spalte die Buchstaben zu ersetzen. Interessanter wird das ganze aber, wenn man gleichzeitig die Special Characters in mehreren Spalten ersetzen möchte. Was gäbe es da für Möglichkeiten?   Ein Batch Macro welches ein Find & Replace auf eine Spalte macht und man einfach eine Liste an Spalten als "Control Parameter" reingibt? Gute Idee, würde aber nicht funktionieren, dass das Batch Macro zeilenweise arbeitet und man somit für 1 Zeile bei der in 2 Spalten Ersetzungen durchgeführt werden sollen, als Ergebnis 2 Zeilen erhalten würde, wo in der 1. Zeile die Ersetzung für die 1. Spalte durchgeführt wurde und in der 2. Zeile die Ersetzung für die 2. Spalte. Das wäre also nicht des Rätsels Lösung.   Vielleicht könnte man stattdessen die Spalten der Look-Up Tabelle (was effektiv 2 wären, nämlich das wonach Alteryx suchen und das was Alteryx dann als Replace nutzen soll) über das "Append Fields" Tool an die eigentliche Datentabelle anhängen um danach mit einem "Multi-Field Formula" Tool eine Replace Formel zu schreiben? Das würde am Ende funktionieren, wäre aber bei bereits leicht größeren Datenmengen nicht mehr praktikabel, weil das Append Fields Tool dann extrem viele neue Zeilen generieren würde (für jede ursprüngliche Datenzeile würde eine Anzahl an neuen Zeilen in Höhe der Gesamtzeilen der Look-Up Tabelle erstellt werden), das ganze wäre als dann leider nicht performant und die Nutzung wäre so nicht möglich.   Was bleibt stattdessen?   Nun ja, Alteryx hat auch für diesen Fall tatsächlich ein eigenes Werkzeug, das "Dynamic Replace" Werkzeug aus der "Developer" Kategorie. Für dieses Werkzeug brauch ich am Ende 2 Datenquellen, einmal die Daten die ersetzt werden sollen und einmal ein Datensatz der am Ende auf diese Art aufbereitet sein muss:   Dieser Datensatz muss dann den Wert beinhalten, den ich in der anderen Datenquelle finden möchte (also zum Beispiel ein Umlaut wie “ä” oder in meinem Fall den Wert “123” oder “C”. Zusätzlich muss er den Replace-Wert enthalten, also den Eintrag womit ich den jeweiligen „Find-Wert“ ersetzen möchte (in meinem Fall hier „AAA“ und „Z“), die Spaltennamen (in der Spalte „FieldName“), sowie eine Spalte „Expression“, welche die wirkliche Replace-Formel (die sonst in einem Formel Werkzeug stehen würde) beinhaltet. Zusätzlich wird am Ende noch eine Spalte „BooleanExpression“ mit einem Eintrag von „-1“ benötigt, die dem Dynamic Replace Werkzeug mitteilt, dass die Expression kein Bool-Wert ist. Der Datensatz selbst wird in meinem Beispiel-Workflow mit Alteryx Werkzeugen aus der ursprünglichen Look-Up Tabelle (welche nur die „Find“ und die „Replace“ Spalten beinhaltete) erstellt. Jetzt wäre das am Ende schon die Lösung, das Dynamic Replace Tool kann also aus einer Look-Up Tabelle über eine Formel auf einem Schlag Werte aller oder (mit ein bisschen Konfiguration)   bestimmter Spalten ersetzen oder abändern. Generell kommt aber, wenn man es so ausführt, ein weiteres, neues Problem zum Tragen, das Dynamic Replace wird am Ende nur die erste „wahre“ Regel ausführen. In meinem Beispiel oben bedeutet das, dass das Werkzeug nur die Regel für den „Find-Wert“ „123“ ausführt, aber das für den „Find-Wert“ „C“ ignoriert, so ist es leider generell bei diesem Werkzeug. Hier kommt jetzt aber Alteryx Makro Stärke zum Tragen und was wir benötigen, ist unseren Prozess als „Iterative Macro“ in Alteryx. Es würde jetzt zu weit gehen, das Iterative Macro im Detail zu erklären, aber hier 2-3 Links zu Ressourcen diesbezüglich: https://community.alteryx.com/t5/Live-Training/Live-Training-Build-Your-First-Iterative-Macro/m-p/55565#M82 https://community.alteryx.com/t5/Live-Training/Live-Training-Santa-s-First-Iterative-Macro/m-p/92237#M191 https://youtu.be/xExR3-rmcDc   Bei meinem Anwendungsfall, habe ich das Iterative Macro schon inkludiert, für jeden der es gerne nutzen möchte, aber noch nie eines selbst erstellt hat. Wichtig ist, dass man aber in diesem Fall sagt, wieviele „Iterationen“ (also „Schleifen“) der Workflow durchlaufen soll und diese Anzahl sollte sich mit der Anzahl an unterschiedlichen Werten des „Find“ Feldes decken. In meinem Fall würden also 2 Iterationen ausreichen (ich habe ja nur „123“ und „C“), wenn ich aber sehr viele Werte Suchen und Ersetzen will, dann muss ich auch dementsprechend viele Iterationen laufen lassen, dies muss man im „Interface Designer“ des Makros einstellen und das geht so: Das Makro mit rechtsclick und dann „Open Macro“ öffnen.   Unter „View“ den „Interface Designer“ öffnen:   Auf die Schraube klicken und dann die „Maximum Number of Iterations“ umstellen auf die Zahl die man benötigt: Den Interface Designer wieder schliessen (nicht zwingend erforderlich) und das Makro wieder abspeichern. Beim nächsten Mal Ausführen des Workflows mit dem eigentlichen Makro laufen dann die eingestellten Iterationen.   Gesamt sieht es dann so aus:           Ich hoffe dies gibt einen kleinen Einblick in Alteryx und es ist für einige in ihrer täglichen Arbeit hilfreich.   Viele Grüße Oliver Solutions Engineer CEE  
Vollständigen Artikel anzeigen
Ein großer Bestandteil des Data Blending ist die Anwendung mathematischer oder transformativer Prozesse auf Teilmengen Ihrer Daten. Oft müssen dazu die Daten isoliert werden, die bestimmte, von Ihnen festgelegte Kriterien erfüllen:   "Ich möchte nur für die Produkte, die weniger als 10 $ kosten, die SKUs markieren." "Kunden im Alter von 25 bis 40 Jahren sollten als Gruppe A, 41-65 als Gruppe B und über 66 als Gruppe C eingestuft werden." "Transaktionen als Wochentag oder Wochenende kategorisieren". "Wenn ein Produkt rot ist, nennen Sie es R. Wenn es blau ist, nennen Sie es B. Wenn es gelb ist, nennen Sie es Y. Wenn es grün ist, nennen Sie es G. Sonst nennen Sie es Sonstige". Klingt eine dieser Situationen vertraut? Wenn ja, dann ist ein guter Ausgangspunkt für die Transformation Ihrer Daten das Tool Formels Bedingte Funktionen (Abbildung 1). Die bedingten Funktionen erstellen Ausdrücke, die es Ihnen erlauben, Prozesse auf Daten anzuwenden, die die von Ihnen festgelegten Bedingungen erfüllen.     Egal, ob Sie aus der Welt von SQL, Excel, R oder einem anderen Datenprogramm kommen, das Ihr Leben schwieriger gemacht hat, als es sein sollte, das Konzept der bedingten Anweisung bleibt das gleiche: Je nachdem, ob die jeweilige Bedingung wahr ist oder nicht, wird ein Prozess oder Ergebnis angewendet. Ansonsten wird ein anderer Prozess oder ein anderes Ergebnis angewendet. Diese Logik kann das Format eines von vier verschiedenen Arten von Ausdrücken annehmen:   1) Eine traditionelle IF-Anweisung Kann ein leistungsfähiges Werkzeug bei der Datenumtransformation sein. Strukturell benötigt Alteryx vier verschiedene Klauseln, um diese Typenlogik auf Ihre Daten anzuwenden:   Wenn (IF) eine Bedingung (nicht) wahr ist dann (THEN) Funktion A anwenden ansonsten (ELSE) Funktion B anwenden Ende der Bedingung (ENDIF)   Am Beispiel der ersten Situation (SKUs und Preise) können wir anhand der IF-Anweisung feststellen, welche Produkte für die weitere Analyse gekennzeichnet werden:         2) A verschachteltete IF-Anweisung Ermöglicht die Festlegung mehrerer Bedingungen, die im Wesentlichen logische Anweisungen miteinander verbinden, wobei wiederholte logische Anweisungen verwendet werden, die einer einzelnen IF-Anweisung ähneln. Obwohl die Dokumentation ein Beispiel mit drei festgelegten Bedingungen zeigt, ist dies keineswegs das Maximum der festlegbaren Kriterien. Solange die richtige Syntax verwendet wird, können noch viele weitere Bedingungen gestellt werden.   Betrachten Sie die zweite Situation (Altersgruppen des Kunden). Durch die Fortsetzung der korrekten Syntax entstehen durch die verschachtelte Anweisung vier Gruppen (A, B, C und Sonstige). Wenn Sie mit verschachtelten Anweisungen arbeiten, können Sie es hilfreich finden, die einzelnen Klauseln jeweils in eine Zeile im Expressions-Feld zu unterteilen, wie im Beispiel unten gezeigt.     3) Obwohl In-line-IF-Anweisungen (IIF) eine ähnliche Logik wie die IF-Anweisungen anwenden und eine Bedingung als "wahr" oder "falsch" bewerten, unterscheiden sie sich syntaktisch. IIF-Ausdrücke benötigen drei Komponenten, die jeweils durch ein Komma getrennt sind: einen Booleschen Ausdruck, um das "Wahr"-Ergebnis und das "Falsch"-Ergebnis zu bewerten. Die Ergebnisse von True und False unterstützen nicht nur Text, sondern auch mathematische Operationen. Im Falle der dritten Situation, in der ein Datensatz nur als eine von zwei Arten (Wochentag oder Wochenende) eingestuft werden kann, kategorisiert eine IIF-Anweisung die Daten effektiv nach einem logischen Test, ob der Wert von nicht "Sa" oder "So" ist. Das "Wahr"-Ergebnis dieser Aussage gibt 'Wochentag' zurück; Das "Falsch"-Ergebnis ist "Wochenende".         4) Die Switch-Funktion des Formula Tool ist ein verstecktes Juwel! Teils Suchen/Ersetzen-Tool, teils verschachtelte IF-Anweisung, teils CASE-Anweisung in SQL ... es ist praktisch! Dieser Ausdruck wertet mehrere Bedingungen aus, um ein bestimmtes Ergebnis zuzuordnen. Wenn keine Bedingung erfüllt ist, wird ein Standardwert (Wert) gesetzt. Die Switch-Funktion bietet einige Vorteile gegenüber ähnlichen Funktionalitäten in Alteryx. Erstens gewährt sie einen Großteil der Flexibilität einer verschachtelten IF-Anweisung, ohne dass wiederholte IFs, THENs, ELSEIFs ... etc. benötigt werden. Zweitens kann sie ähnlich wie ein Suchen/Ersetzen-Tool eingesetzt werden, ohne dass eine zweite Instanz aller zu aufzufindenden und einzusetzenden Daten erstellt werden muss. Ich kann mir zeitaufwändiges und fehleranfälliges Tippen sparen? Ich bin dabei!       Hinweis: Die Arten von Operatoren, die im Ausdruck verwendet werden können, hängen vom Datentyp des Ausgabefeldes ab. des Ausgabefeldes ab. Wenn Sie in eine Zeichenfolge (oder einen anderen Texttyp) schreiben, muss das Ergebnis in Anführungszeichen (einfach oder doppelt) stehen. Gruppe 'A' steht hier z.B. in einfachen Anführungszeichen. Numerische Felder hingegen erfordern keine Zitate rund um das Ergebnis.       *Der angehängte Workflow ist mit Alteryx Designer v10.0 und höher kompatibel. *Der angehängte Workflow ist mit Alteryx Designer v10.0 und höher kompatibel.     #
Vollständigen Artikel anzeigen
Nehmen wir an, dass Ihre Tabellenkalkulation mehrere Blätter mit der gleichen Struktur hat und Sie mehrere Blätter auf einmal in Ihr Modul einlesen möchten. Sie könnten z.B. zuerst ein Eingabe Werkzeug pro Blatt, gefolgt von einem Zusammenführung Werkzeug verwenden wollen, um alle Daten zusammenzuführen. In diesem Fall ist die bevorzugte Alternative, das Dynamische Eingabe Tool. In diesem Beispiel haben wir demographische Daten für 5 Staaten, wobei sich die Daten für je einen Staat auf jedem der fünf Blätter in einer Excel-Datei befinden. In diesem Szenario möchten wir nur die Daten von 3 der fünf Blätter (Alaska, Arizona und Kalifornien) eingeben. Wir können das Texteingabe Tool verwenden, um die Namen der drei Blätter anzugeben, wie Sie im folgenden Bild sehen können. Wir verbinden uns dann mit einem Tool Dynamische Eingabe, das wir konfigurieren, um die Blattnamen zu verwenden, die wir im Tool Texteingabe als das Mittel zur Aktualisierung von „Datei / Tabellenname“ angegeben haben, die vom Tool Dynamische Eingabe importiert wird. Konfiguration des Tools Dynamische Eingabe Navigieren Sie von der Konfiguration des Eingabe-Tools zur Excel-Datei und wählen eines der Blätter oder Tabs aus. Diese Auswahl dient dann als Platzhalter. Klicken Sie auf das Optionsfeld „SQL-Anfrage ändern“ für die Tabelle oder Abfrage und klicken dann auf der rechten Seite des Konfigurationsfensters auf die Dropdown-Schaltfläche „Hinzufügen“ und wählen dann die Option „Spezielle Zeichenfolge ersetzen“. Das neue Modulfenster sollte die folgende Anweisung geben : AUSWAHL * VON 'Alabama$' unter „Zu ersetztender Text:“ und das Feld aus Ihrem Texteingabe-Tool sollte unter „Ersatzfeld:“ bestückt werden. Wenn das Modul läuft, wird der Text 'Alabama$' durch die Tabellennamen ersetzt, die im Texteingabe-Tool angegeben wurden. Wählen Sie nun das Optionsfeld „Eine Liste der Dateien einlesen“ aus. Wählen Sie aus dem Dropdownmen´„Auswahlfeld“ den erstellten Feldnamen aus, der im Tool Texteingabe (in dem die Blattnamen eingegeben wurden) erstellt wurde und setzen die „Aktion“ auf Datei-/Tabellenname ändern. Nach dem Ausführen des Moduls werden Sie feststellen, dass die Datensätze aus den drei verschiedenen Blättern in der Tabellenansicht Ihres Browsers bestückt werden. Bei diesem Prozess ist die Option Nr. 5 „Ausgabedateiname als Feld“ eine ausgezeichnete Möglichkeit, mit der Sie den vollen Dateipfad oder den Dateinamen als Feld für jeden einzelnen Datensatz anhängen können. Auf diese Weise können Sie wunderbar die Daten schnell nach dem Blatt gruppieren und organisieren, aus dem sie stammen.
Vollständigen Artikel anzeigen
Eine Möglichkeit, eine Datei auf mehreren Blättern oder Tabs innerhalb einer Excel-Datei auszugeben, ist die Verwendung des Ausgabedaten. In diesem Beispiel wollen wir mehrere Blätter oder Tabs erstellen. Wir haben einen Tab pro Stadt, so dass alle Kunden in der gleichen Stadt im selben Blatt oder Tab sein werden. Konfigurieren Sie das Ausgabwerkzeug für Datei-/Tabellenname ändern, und wählen Sie das Feld, mit dem Sie Ihre Datei aufteilen können, Feld enthält Dateiname oder Teil des Dateinamens aus dem Dropdown aus. Für diese Übung sollte das Feld City16 sein. Die Ausgabe zeigt ein Blatt oder Tab pro Stadt. Die Ausgabe zeigt ein Blatt oder Tab pro Stadt. 08.12.2015 ZU AKTUALISIEREN: A propos - wenn Sie die Blätter mit dem Alteryx Anzeigen-Tool benennen möchten, damit Sie eine schön formatierte Excel-Ausgabe in Farbe und mit anderer Alteryx Berichtsfunktionalität erhalten, dann können Sie die Funktion „Gruppieren nach“ im Berichterstellungs-Tool sowie vertikale Abschnittsumbrüche im endgültigen Layout-Tool verwenden. Siehe beigefügtes Beispiel (SheetNames.yxmd) in 10,0 erstellt. #
Vollständigen Artikel anzeigen