Kopieren von Dateien
In diesem Tutorial erfahren Sie, wie Sie einen Auftrag erstellen, der Dateien, die einem bestimmten Muster entsprechen, aus einem Ordner in einen anderen kopieren. Angenommen, die Verkaufsabteilung erhält einige Bücherbestellungen und muss einige der Dateien an die Buchhaltungsabteilung weiterleiten. Dazu erstellen wir einen geplanten Auftrag, der nur die JSON-Dateien mit dem Präfix BookList in den Ordner der Buchhaltung kopiert.
Aktuell enthält der Ordner der Verkaufsabteilung die folgenden Dateien:
Authors.xml
Authors.xsd
BookCatalog.xlsx
BookList.csv
BookListBiography.json
BookListChildren.json
BookListClassics.json
BookListCrimeMystery.json
BookListFantasy.json
BookListHorror.json
BookListHumor.json
BookListSciFi.json
BookOrder.txt
BookOrder.xml
BookOrder.xsd
Books.json
Books.schema.json
FileList.txt
Notes.txt
ORDERS.EDI
Diese Liste enthält für dieses Tutorial erstellte Beispieldateien. Diese Dateien dienen nur zu Demonstrationszwecken. Verwenden Sie bitte Ihre eigenen Dateien, um die in diesem Tutorial beschriebenen Funktionalitäten zu testen.
Das Grundkonzept ist unten beschrieben:
1.Wir erstellen im Container /public/Examples einen neuen Auftrag.
2.Anschließend fügen wir einen For-Each-Schritt hinzu, der durch eine Sequenz von Dateien iteriert und diese aus dem Quellordner in den Zielordner kopiert.
3.Anschließend konfigurieren wir einen Timer, der den Auftrag nach einem bestimmten Zeitplan startet.
4.Außerdem wählen wir vorhandene Passwort-Anmeldeinformationen aus, mit denen der Auftrag gestartet wird.
5.Nachdem wir die Auftragskonfiguration gespeichert haben, sehen wir den Status des Auftrags auf der Startseite. Nachdem der Auftrag erfolgreich ausgeführt wurde, werden die kopierten Dateien im Zielordner angezeigt.
Implementierung
In diesem Unterabschnitt wird Schritt für Schritt beschrieben, wie Sie den obigen Auftrag erstellen. Die Implementierung dieses Szenarios sehen Sie auch in der GIF-Datei am unteren Rand des Kapitels.
Schritt 1: Erstellung eines Auftrags
Um einen Auftrag zu erstellen, gehen Sie folgendermaßen vor:
1.Melden Sie sich bei FlowForce Server an.
2.Navigieren Sie zu einem Container, für den Sie die Berechtigung zur Erstellung neuer Aufträge haben. Zu Testzwecken verwenden wir den Container /public/Examples. Falls dieser Container noch nicht existiert, erstellen Sie ihn mit dem Befehl Erstellen | Container erstellen.
3.Erstellen Sie im Container /public/Examples einen neuen Auftrag, indem Sie auf Erstellen | Auftrag erstellen klicken.
4.Geben Sie einen Namen für den Auftrag (z.B. Beispielauftrag) und optional eine Auftragsbeschreibung ein.
Der Auftrag in unserem Beispiel hat den Namen CopyFiles und enthält die folgende Beschreibung: "Copies files from Sales to Accounting."
Schritt 2: Hinzufügen eines For-Each-Schritts
Mit Hilfe von For-Each-Schritten können Sie durch eine Sequenz (z.B. eine Liste von Dateien in einem Verzeichnis) iterieren. Ein For-Each-Block, der aus mehreren Schritten bestehen kann, wird so lange ausgeführt, bis alle Elemente der Schleife verarbeitet wurden. Um einen For-Each-Schritt zu konfigurieren, gehen Sie folgendermaßen vor:
1.Klicken Sie im Abschnitt Ausführungsschritte auf Neuer For-Each-Schritt, woraufhin ein For-Each-Block angezeigt wird.
2.Ins Textfeld "Sequenz" geben wir den folgenden Ausdruck ein:
list-files('C:\Test\FlowForceServer\CopyFiles\Sales\BookList*.json')
Die Funktion file-system listet JSON-Dateien mit dem Präfix BookList aus dem Ordner Sales auf. Das Zeichen * bedeutet, dass hinter dem Präfix BookList beliebige Zeichen stehen können. Alle anderen Dateien im Ordner werden ignoriert.
3.Im nächsten Schritt wird innerhalb des For-Each-Blocks ein Ausführungsschritt hinzugefügt: Klicken Sie innerhalb des Blocks auf das Plus-Zeichen und wählen Sie aus der Liste Neuer Ausführungsschritt aus.
4.Geben Sie ins Feld Funktion ausführen die Funktion /system/filesystem/copy ein..
5.Setzen Sie den Parameter Quelle auf {item} - dies bezieht sich auf den im Feld For Each definierten Wert. Der Wert im Feld For Each bedeutet, dass für jedes Element in der Sequenz eine bestimmte Aktion ausgeführt wird. In unserem Beispiel wird jede Datei, die dem Muster im Feld Sequenz entspricht, in den Ordner Accounting kopiert.
6.Setzen Sie den Parameter Ziel auf den folgenden Pfad: C:\Test\FlowForceServer\CopyFiles\Accounting - dies ist der Pfad zum Zielverzeichnis, in das die Dateien kopiert werden.
7.Aktivieren Sie die Option Überschreiben, sodass FlowForce Server die bereits im Zielordner vorhandenen Dateien überschreibt.
Im For-Each-Schritt wird somit die Liste der Dateien im Ordner Sales in einer Schleife verarbeitet und es werden nur die JSON-Dateien mit dem Präfix BookList kopiert. Falls der Ordner Accounting Dateien enthält, deren Namen mit dem der kopierten Dateien übereinstimmen, werden die Zieldateien überschrieben.
Schritt 3: Konfigurieren eines Timers
Da der Auftrag nach einem bestimmten Zeitplan ausgeführt werden soll, müssen Sie einen Timer zum Starten des Auftrags definieren. Um einen Timer hinzuzufügen, gehen Sie folgendermaßen vor:
1.Navigieren Sie zum Abschnitt Trigger und wählen Sie Neuer Timer.
2.Setzen Sie die Option Ausführen auf täglich.
3.Definieren Sie im Parameter Start das Datum und die Uhrzeit für den Start.
4.Stellen Sie sicher, dass das Kontrollkästchen Aktiviert ausgewählt ist.
Schritt 4: Auswählen der Anmeldeinformationen
Bei der Erstellung eines Auftrags in FlowForce Server müssen die Anmeldeinformationen für das Benutzerkonto, von dem aus der Auftrag ausgeführt werden muss, angegeben werden.
Wir wählen im Abschnitt Anmeldeinformationen Passwort-Anmeldeinformationen aus, die wir bereits vor Beginn des Tutorials definiert haben. Dabei handelt es sich um ein Standalone-Objekt, das in jedem beliebige Auftrag verwendet werden kann. Standalone-Anmeldeinformationen sind deshalb praktisch, weil Sie diese zentral an einer Stelle ändern können, wobei sich diese Änderung auf alle Aufträge auswirkt, in denen diese referenziert werden.
Alternativ dazu können Sie lokale Anmeldeinformationen definieren, indem Sie Ihren Benutzernamen und Ihr Passwort eingeben.
Nähere Informationen zu Anmeldeinformationstypen sowie eine Anleitung, wie Sie diese erstellen, finden Sie unter Anmeldeinformationen.
Schritt 5: Speichern des Auftrags und Überwachung des Auftrags auf der Startseite
Klicken Sie am unteren Rand der Konfigurationsseite auf die Schaltfläche Speichern. Klicken Sie auf das Register "Startseite", um zur Startseite zu gelangen. Auf der Startseite wird der neu konfigurierte Auftrag im Abschnitt Aktive Timer angezeigt. Sobald der Auftrag vom Timer gestartet wird, wird er eventuell kurze Zeit im Abschnitt Laufende Aufträge angezeigt. Nähere Informationen zum Überwachen des Auftragsstatus und zum Anzeigen von Statistiken finden Sie unter Auftragsinfo auf der Startseite und Auftragsstatus.
Ergebnis des Auftrags
Nach erfolgreicher Ausführung wurden alle JSON-Dateien mit dem Präfix BookList in den Ordner Accounting kopiert:
BookListBiography.json
BookListChildren.json
BookListClassics.json
BookListCrimeMystery.json
BookListFantasy.json
BookListHorror.json
BookListHumor.json
BookListSciFi.json
Wenn die Auftragsausführung fehlgeschlagen ist, überprüfen Sie das FlowForce Server Auftrags-Log, um die Fehler zu finden.
Im GIF angezeigte Implementierung
Klicken Sie auf die GIF-Datei unten, um eine kurze Demo der in diesem Tutorial beschriebenen Schritte zu sehen. Beachten Sie, dass nur Schritt 2, 3 und 5 im GIF gezeigt werden. Eine Darstellung von Schritt 1 und 4 finden Sie im Hello World-Tutorial.