Seitenhierarchie

Suche

Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Diese Seite ist innerhalb der Dokumentation umgezogen worden. Die aktuelle Seite finden Sie hier:

Link zur neuen Seite "Mit Listen arbeiten und Zeitsteuerung Pro"

Im letzten Tutorial (Anrufe zeitgesteuert mit dem Modulsystem verteilen) haben wir aufgezeigt, wie ein Modul mit einer Zeitsteuerung versehen werden kann. In der Konfiguration des Modules ist es somit möglich einen Zeitraum zu definieren, welcher im Modul abgeprüft wird. Oft reicht es jedoch nicht nur einen Zeitraum anzugeben, sondern es sollen in einer Konfiguration mehrere Zeiträume verarbeitet werden können. Hierfür bietet das Modulsystem die Möglichkeit mit Listen zu arbeiten. Die passenden Komponenten hierzu finden sich in der GUI als Eingabeelemente (z.B TextList oder NumberList) und im Development-Bereich bei den Komponenten (z.B. CreateList, Add oder auch foreach).

 

Bevor wir nun unsere Zeitsteuerung mit Listenfunktionen erweitern, behandeln wir erst einmal den grundlegenden Aufbau und die Möglichkeiten von Listen im Allgemeinen.

Beschreibung der Listen Komponenten

Listen sind Sammlungen von einzelnen Elementen, welche in einer indizierten Liste gespeichert werden. Man kann sich dies wie eine zweispaltige Tabelle vorstellen, die in der ersten Spalte die Zeilennummer und in der zweiten Spalte die Daten enthält.

Exemplarische Aufbau einer TextList:

Index Inhalt als Text
0Text 0
1Text 1
2Text 2
3Text 3

Bearbeitungsmöglichkeiten von Listen

Zum Erstellen, Bearbeiten und Auslesen einer Liste, stellt der Module Designer mehrere Komponenten bereit.

Erstellen:

  • CreateList - Erstellt on-the-fly eine leere Liste
  • TextList - Ermöglicht eine Liste von Texten in der GUI des Moduls
  • NumberList - Ermöglicht eine Liste von Nummern in der GUI des Moduls

...

  • Add - Fügt einen neuen Eintrag am Ende der Liste hinzu
  • Remove - Entfernt einen bestimmten Eintrag in einer Liste
  • Sort - Sortiert eine Liste neu
  • Reverse - Kehrt alle Elemente einer Liste um

...

  • Get - Auslesen eines Elementes, welches sich an einer bestimmten Position der Liste befindet
  • Size - Gibt die Anzahl der Elemente (Zeilen) einer Liste zurück
  • Contains - Prüft, ob die Liste einen bestimmten Wert enthält

Durchlaufen von Listen mit einer Programmschleife

Bei der Verwendung von Listen besteht schnell der Bedarf, dass mehrere Elemente einer Liste mit den immer gleichen Komponenten bearbeitet, ausgelesen oder verglichen werden sollen. Für diesen Fall existiert im Module Designer die Komponente foreach (List). Dieser Komponente kann eine Liste übergeben werden welche dann Zeile für Zeile ausgelesen wird und jeder Eintrag mit individuellen Komponenten verarbeitet werden kann. Die gewünschten Komponenten müssen hierzu unter dieser Komponente eingerückt platziert werden. Falls in der foreach-Schleife eine Überprüfung stattfindet, welche weitere Durchläufe unnötig macht, kann sie mit break beendet werden. Innerhalb der Einrückung stehen automatisch die Variablen foreach_index und foreach_entry zur Verfügung, welche den aktuellen Index (Zeile) und den Wert dieser Zeile enthalten.

Ablaufdiagramm des Beispielmoduls

Image Removed

Anleitung zur Erstellung des Beispielmoduls

Zur Umsetzung unseres Beispieles verwenden wir die Komponenten CurrentDateTime, MatchDateTimeInterval, GetCaller und CallPhoneNumber.

Hinweis: Einige der Komponenten findet ihr erst, wenn im Modul Designer der Expert mode im Bereich Components aktiviert ist. Die Beschreibung zu GetCaller und CallPhoneNumber findet ihr unter Anrufe mit dem Modulsystem verteilen (CallPhoneNumber). Die Beschreibung zu CurrentDateTime und MatchDateTimeInterval findet ihr unter Anrufe zeitgesteuert mit dem Modulsystem verteilen.

 

 

...