Crashkurs 101
10 Module
5 Wochen

Zyklen, Excel-Dateien importieren

Zum Kopieren anklicken

Verwendung von Zyklen in Geschäftsprozessen. Lesen von Daten aus Excel-Dateien.


Um den weiteren Prozess zu verstehen, ist es notwendig, ein wenig in die Theorie abzuschweifen und das Prinzip der Zyklen zu verstehen. Bisher gingen alle unsere Prozesse nur vorwärts. Sie konnten eine bestimmte Abzweigung wählen (auf der If-Else und Switch Blöcken), aber wir wussten mit Sicherheit, dass jeder Block nur einmal ausgeführt werden würde; es würde kein Zurück geben.

Zyklen

Zyklen bieten die Möglichkeit, einen bestimmten Abschnitt mehrfach zu wiederholen. Der Prozess wird so erstellt, dass die ausgewählte Blockfolge immer wieder ausgeführt wird. Bis die Bedingung für das Beenden der Schleife erfüllt ist.

AppMaster gibt Ihnen die Möglichkeit, drei verschiedene Arten von Zyklen zu verwenden. Das Prinzip ihrer Arbeit ist absolut dasselbe. Die Bedingung für den Abbruch der Schleife ist das einzige, was sie voneinander unterscheidet.

  • Loop. Der einfachste aller Zyklen. Sein Times (Integer) Parameter legt einen festen Wert fest, wie oft die angegebene Schleife ausgeführt werden soll.
  • While loop. Eine Schleife, die so lange ausgeführt wird, bis eine bestimmte Bedingung erfüllt ist. Diese Bedingung wird im Parameter Condition (Boolean) Parameter angegeben. Zu Beginn jeder Schleife wird der Wert Condition überprüft; wenn er True ist, wird die Schleife ausgeführt; wenn er False ist, wird die Schleife beendet. Der Limit (Integer) Parameter legt die Grenze für die Anzahl der Wiederholungen der Schleife fest, um sicherzustellen, dass die Schleife nicht ewig läuft. Wenn er erreicht ist, wird die Schleife beendet, unabhängig vom Wert von Condition.
  • For each loop. Schleife für die Arbeit mit Arrays. Sie nimmt ein Array als Eingabe und ermöglicht es Ihnen, eine bestimmte Operation an jedem Arrayelement durchzuführen. Die Schleife wird so oft durchlaufen, wie Elemente im Array vorhanden sind.

Jeder Zyklus hat zwei Ausgabeströme.

  • Loop Body. Der Schleifenkörper selbst. Der Vorgang, der die erforderliche Anzahl von Malen wiederholt wird.
  • Completed. Der Thread, der ausgeführt wird, wenn die Schleife endet. Legt fest, was als nächstes zu tun ist, nachdem die Schleife beendet ist. Übrigens kann jeder Zyklus auf Befehl beendet werden, ohne dass die Anfangsbedingungen erfüllt sein müssen. Dazu müssen Sie nur den Break Loop Block an der richtigen Stelle verwenden. Er übergibt den Stream sofort an Completed.

Read XLSX File

Für die Analyse der xlsx-Datei werden wir den Read XLSX File Block. Sein Funktionsprinzip ist fast identisch mit dem For each loop Block. Er stellt die Tabellendatei als ein Array von Zeichenketten dar. Und jede Zeile wiederum ist ebenfalls ein Array, aber bereits ein Array von Spalten der jeweiligen Zeile.


Die xlsx-Datei selbst wird in ähnlicher Form dargestellt. Die erste Spalte enthält den Namen des Abschnitts, und die zweite Spalte enthält die Informationen, die dieser Abschnitt enthält. Dabei wissen wir im Voraus nicht, in welche Zeile die Informationen überhaupt geschrieben werden; sie können an jeder beliebigen Stelle erscheinen. In diesem Beispiel steht der Lebenslauf in der zweiten Zeile und die Anmeldung in der achten, aber die Zeilen und die Reihenfolge, in der sie geschrieben werden, können beliebig sein.

Der Geschäftsprozess beginnt mit dem Empfang einer Datei als Eingabeparameter. Bitte beachten Sie, dass nur der Dateityp, d. h. die Datei-ID, übertragen wird und nicht die gesamte Datei. Wir übergeben dieselbe Datei an den Read XLSX File Block.


Each rowDer Dateityp , ist in diesem Fall ein Analogon von Loop Body. Das bedeutet, dass die Schleife so oft ausgeführt wird, wie es Zeilen in der xlsx-Datei gibt. Gleichzeitig erhalten wir in jedem Zyklus die Information, welche Zeile gerade verarbeitet wird (Row number), und welche Spalten in dieser Zeile enthalten sind (Row columns).

Unsere Aufgabe ist es, die erste Zelle jeder Zeile zu überprüfen. Wir erwarten, dass wir eine Zelle finden, in der "Login" oder "Bio" steht. Auf diese Weise wissen wir, dass wir eine Spalte mit den erforderlichen Informationen gefunden haben.

Dazu benötigen wir einen Array Element Block mit einem Index von 0. Auf diese Weise erhalten wir den Inhalt der ersten Zelle der Zeichenkette. Danach verwenden wir den Switch Block, um die gewünschte Übereinstimmung zu finden (Login, Bio).

Wenn keine solche Übereinstimmung gefunden wird, geht die Schleife zur nächsten Iteration über und überprüft die nächste Zeile. Wenn dies der Fall ist, gehen wir davon aus, dass die zweite Zelle dieser Zeile die benötigten Informationen enthält, und verwenden den Array Element Block erneut (aber mit Index 1), um diese Informationen zu erhalten.

Es bleibt nur noch, diese Informationen zu speichern. Denn wenn Sie das nicht sofort tun, geht der Zyklus einfach weiter, und die erhaltenen Daten gehen verloren.

Variablen

Die beste Lösung in dieser Situation wäre die Verwendung von Variablen. Ihr Sinn liegt darin, dass bestimmte Werte nicht sofort von einem Block zum anderen übertragen werden, sondern im Speicher abgelegt und bei Bedarf verwendet werden.

Hierfür gibt es zwei Blöcke:

  • Variable Block. Es kann eine beliebige Zahl, eine Zeichenkette oder sogar ein Array von Objekten sein. Es ist wichtig zu verstehen, dass dieser Block selbst nichts tut; er hat keine Eingabeparameter. Er dient nur dazu, die Tatsache anzukündigen, dass ein Platz im Speicher für das Schreiben eines Wertes zugewiesen wurde, mit der Möglichkeit, später wieder darauf zuzugreifen und diesen Wert herauszufinden.
  • Der Set Variable Block ist dazu gedacht, einen neuen Wert in eine Variable zu schreiben.

In unserem Fall werden wir zwei Variablen vom Typ String und schreiben die gefundenen Werte in sie hinein, einmal in Login und in die zweite Bio. Am Ende der Schleife müssen wir nur noch den Wert dieser Variablen an den Endblock übergeben.


Nun ist es an der Zeit, einen Endpunkt für den fertigen Geschäftsprozess zu erstellen und ihn damit für die Nutzung auf dem Frontend der Webanwendung verfügbar zu machen.


Endgültiges Ergebnis

Als Ergebnis sollte der Geschäftsprozess so aussehen:


Die Erstellung der Anwendung ist damit abgeschlossen. Kehren wir zum Frontend-Geschäftsprozess zurück und schließen ihn ab. Wir brauchen:

  • Übergeben Sie das xlsx-Dateimodell zum Speichern an den Server.
  • Erweitern Sie das Ergebnis und ermitteln Sie die Datei-ID.
  • Übergeben Sie diese ID an den zuvor erstellten Endpunkt POST /xlsx-data/
  • Verwenden Sie die empfangenen Daten, um sie in den entsprechenden Feldern anzuzeigen (und auch, um den Parameter Disable zurückzusetzen, wodurch die Möglichkeit zur Bearbeitung eröffnet wird).

Wenn alles richtig gemacht wurde, sollte die endgültige Version nach dem Laden von Informationen aus Dateien wie folgt aussehen.

Was this article helpful?
Suchen Sie immer noch nach einer Antwort?