Beispiel 1 - Der erste Flow

Ausgangssituation

Sie haben sich erstmalig in Synesty Studio eingeloggt und möchten erste Schritte kennen lernen. 
Im folgenden Beispiel wollen wir einen einfachen Flow erstellen, welche eine CSV-Datei von einer URL lädt, einige Spalten anpasst (z.B. Preis) und die fertige Datei per E-Mail verschickt. Dabei lernen Sie die Grundlagen wie sie die Inputs- und Outputs der Steps miteinander "verdrahten".

Der zu erstellende Flow sieht am Ende so aus:

Ziel

Sie lernen wie man einen einfachen Flow erstellt, ausführt und automatisiert.

Beispiel

Loggen Sie sich ein.Auf dem Dashboard klicken unter Schnellstart auf Flow erstellen.

und erstellen Sie einen leeren Flow.

Damit ist ihr erster Flow erstellt und sie befinden sich in der Flow-Ansicht.

Fügen Sie folgende Steps über den Step hinzufügen Button zu ihrem Flow hinzu. Suchen sie nach dem Wort "URL" und wählen UrlDownload.

Fügen Sie einen weiteren Step hinzu. Diesmal suchen Sie den SpreadsheetCSVReader.

Step-Vorschläge nutzen

Alternativ können Sie die Steps auch über die Vorschläge hinzufügen, die unter den Steps angezeigt werden. Damit sind Sie in der Regel noch schneller.

Jetzt haben Sie 2 Steps im Flow, die sie jetzt konfigurieren. 
 

Konfiguration Step 1

Klicken Sie in der Flow-Übersicht auf den UrlDownload-Step um die Konfiguration zu öffnen.

Tragen Sie bei host eine URL zu folgender Beispiel-CSV-Datei ein: 
http://demodata.synesty.com/example-articledata.csvopen in new window

Dann klicken sie auf "Speichern". Daraufhin sieht der Flow aus wie folgt:

Steps "verdrahten"

Das graue Icon  bedeutet, dass der 2. Flow einen Output des 1. Flows als Input benutzt. Diese "Verdrahtung" von Step-Outputs- und Step-Inputs ist ein elementares Konzept bei der Erstellung von Flows.
Jeder Step kann Outputs von vorherigen Steps verarbeiten.
In der Step-Konfiguration kann mit dem -Button aus den vorherigen Outputs gewählt werden.

Konfiguration Step 2

Den zweiten Step (SpreadsheetCSVReader) brauchen sie in diesem Beispiel nicht weiter konfigurieren.  Bei anderen Dateien haben Sie aber die Möglichkeit Spaltentrenner, Encoding (UTF-8 / ISO-8859-1 usw.) zu konfigurieren.

Step Vorschau

Jeder Step hat einen Vorschau-Funktion.
Schauen Sie sich jetzt die Vorschau des 2. Steps an, in dem Sie auf das Auge-Symbol () klicken. Dadurch werden alle Steps bis einschließlich diesem ausgeführt und das Ergebnis in einer Vorschau angezeigt.

Sie sehen eine Vorschau der CSV-Datei, die von der oben konfigurierten URL heruntergeladen und geparsed wurde.

Bearbeitung der importierten Datei

Bisher haben wir die Datei heruntergeladen und geparsed (d.h. in eine Form gebracht, dass man sie sinnvoll weiterverarbeiten kann). In vielen Fällen will man die importierte Datei umwandeln oder modifizieren.
Zum Beispiel kann man die Datei in eine neue CSV-Datei umwandeln, welche andere Spalten und neuberechnete Preise enthält. Dies werden wir in folgenden Schritten machen.

Fügen sie nun den Mapper SpreadsheetMapper Step dem Flow hinzu:

Der Mapper ist der wichtigste Step. Sie werden ihn vermutlich in jedem Flow brauchen. Immer wenn es darum geht Daten, Spalten irgendwie zu manipulieren, wird dieser Step eingesetzt.

Der Flow besteht nun aus 3 Steps:

Konfiguration Step 3

Klicken Sie dann auf das Zahnradsymbol des neuen Mapper Steps, um die Konfiguration zu starten.

Klicken Sie dann auf den neu erscheinenden Configure Button.

Der Mapping Editor

Sie sehen daraufhin den Transformy Mapping Editor.

Da aktuell noch keine Daten für die Vorschau vorhanden sind klicken Sie auf den großen Knopf "Daten aus vorherigen Steps holen". Dadurch werden alle vorherigen Steps ausgeführt. D.h. in unserem Beispiel, dass die CSV-Datei von der URL heruntergeladen wird, dann mit dem SpreadsheetCSVReader Step geparsed wird und die Daten schließlich in diesem Step landen, so dass wir eine Vorschau für die jetzt folgende Konfiguration anzeigen können.

Was nun?
Dieser Transformy Mapping Editor ist das mächtigste Werkzeug zur Manipulation von Daten aller Art, was sie in Synesty Studio finden. Sie können es sich vorstellen wie die Funktionen, die sie aus Tabellenkalkulationsprogrammen wie z.B. MS Excel kennen, mit der Möglichkeit, dies über Synesty Studio zu automatisieren. Die Möglichkeiten sind sehr vielfältig und erschließen sind am Anfang vielleicht nicht sofort. Deshalb beschränken wir uns in diesem Beispiel auf wenige Dinge.

Beispiel: Preise manipulieren

Nehmen wir an, wir wollen den Preis in Abhängigkeit des Warenbestands in der Spalte stock verändern. Und zwar so, dass bei stock > 100 ein Rabatt von 50% auf den Preis gegeben wird, ansonsten der normale Preis genommen wird.

Zur Veranschaulichung benennen wir die description Spalte in priceBefore um und wählen als Quelle auch price. Schieben sie sich die Spalten über die Pfeilsymbole so, dass priceBefore, price und stock nebeneinander erscheinen.

Öffnen Sie die Funktionen der Spalte price, durch Klick auf das WENN-DANN Generator Symbol.

Wählen Sie das Tab Bedingung generieren. Füllen Sie das Formular so aus, wie im folgenden Screenshot.

Hinweis: Kopieren Sie folgenden Ausdruck in das Feld bei DANN und wählen Sie dabei Wert aus Spalte.

price?number * 0.50

Durch Klick auf Bedingung erstellen, sollte nun folgender Inhalt im Wert-Feld der Spalte price sein.

<#if (stock?number > 100)>${price?number * 0.50}<#else>${price}</#if>

Dies liest sich wie folgt: Wenn stock größer als 100, DANN multipliziere den die price-Wert mit 0.50, ANSONSTEN nimmt den Wert der bereits in price steht.

Drücken Sie jetzt auf den Button Vorschau anzeigen.

  1. Hier wurde das Skript für die WENN-DANN-Bedingung eingetragen. Es enthält WENN-DANN-SONST Logik in Freemarker Syntaxopen in new window
  2. Drücken Sie diesen Knopf, um sich eine Vorschau der aktuellen Änderungen anzuzeigen
  3. Hier sehen Sie daraufhin das Ergebnis. Sie sehen, dass in den umrahmten Spalten der Preis halbiert ist, weil der stock > 100 ist

Rundung auf 2 Dezimalstellen

Wie Sie vielleicht bemerkt haben, haben die manipulierten Spalten jetzt 3 Stellen nach dem Komma. Um wieder auf 2 Stellen zu runden, können Sie dazu die Runden Funktionopen in new window nutzen:

Beispiel CSV-Datei herunterladen

Bei großen Dateien kann es praktisch sein sich ein Beispiel zu laden, um diese z.B. mit Excel oder einem Texteditor zu prüfen. Das geht ganz einfach, wie im folgenden Screenshot:

Um alle Einstellungen zu speichern drücken Sie auf  , um zur Flow-Ansicht zurück zu gelangen.

CSV-Datei erstellen

Da der Output des Mappers ein sog. Spreadsheet ist, müssen wir daraus erst noch eine echte physische CSV-Datei machen.
Im vorletzten Schritt erstellen wir aus dem SPREADSHEET eine physische CSV-Datei. Diese kann man anschließend auf einen Server kopieren oder diese per E-Mail zu verschicken.

Fügen sie dazu den Step CSVWriter dem Flow hinzu. Der Flow sieht dann aus wie folgt:

Konfiguration Step 4

Konfigurieren Sie den neuen Step jetzt noch und geben Sie unter filename einen gutklingenden Dateinamen ein z.B. meineCSVDatei.csv und klicken Speichern.

Etwas mit der Datei machen: FTP-Upload

Im letzten Schritt wird die zuvor erstellte CSV-Datei auf einen FTP-Server hochgeladen. Fügen Sie dazu den Step FTPUpload hinzu.

Konfiguration Step 5

Konfigurieren Sie den FTP-Upload durch Eingabe der Zugangsdaten für ihren FTP-Server.

Der fertige Flow

Der Flow sollte am Ende des Beispiels wie folgt aussehen:

Führen Sie den Flow jetzt komplett aus, durch Klick auf den  Button. Dadurch wird der Flow im Hintergrund sofort komplett ausgeführt. 
Nach erfolgreicher Ausführung sollte eine neue Datei auf ihrem FTP-Server liegen.

Planen / Scheduling: Wenn Sie diesen Flow automatisieren wollen (z.B. 1 x pro Tag), gehen Sie wieder in die Flow-Ansicht und klicken auf den Planen Button . Damit können Sie die Startzeit und das Interval bestimmen. Durch Setzen des Status auf aktiv, und anschließenden Klick auf Update schalten Sie den Flow scharf. 

Damit haben Sie ihren ersten Flow erstellt und automatisiert.

Den Status vergangener Flows können Sie über das Event Log einsehen.

Zusammenfassung

Sie haben in diesem Beispiel die wichtigsten Aspekte bei der Arbeit mit Flows und Steps kennengelernt. Sie haben eine CSV-Datei über eine URL importiert, diese aufbereitet und modifiziert und das fertige Ergebnis auf einen FTP-Server hochgeladen.
Sie können darauf aufbauend den Flow anpassen. Zum Beispiel können Sie anstatt des FTP-Uploads auch Dropbox oder E-Mail-Versand benutzen. Die Möglichkeiten sind sehr vielfältig und es kommt immer darauf an, was genau Sie machen wollen.