Zum Hauptinhalt springen

Einführung

Skripte im iCL Designer bieten eine Vielzahl von Möglichkeiten, Inhalte voneinander abhängig zu machen und miteinander zu verknüpfen.

Sie sind in der Lage, die Sichtbarkeit zu ändern, Berechnungen durchzuführen oder Fragen und Antworten zu erweitern.

Gleichzeitig sind Skripte sehr zugänglich, da Sie keine Programmierkenntnisse haben müssen, um sie zu verwenden. Dies wird durch die Verwendung von Blockly erreicht, einem Editor, mit dem Sie Skripte definieren können, ähnlich wie beim Zusammensetzen eines Puzzles.

Wann werden Skripte verwendet?

Es gibt eine breite Palette von Anwendungsfällen für Blockly-Skripte. Sie werden häufig verwendet, um dynamische Antworten zu erstellen oder um die Sichtbarkeit bestimmter Arbeitsmappenbereiche auf der Grundlage von Eingaben zu ändern.

Ein weiteres Einsatzgebiet für Skripte sind Inhaltselemente, die Daten aus früheren Prüfungen erhalten sowie bestehende Daten aktualisieren oder neue Datensätze erstellen können.

Skripte werden auch verwendet, um Daten oder Listen einzuschränken, zu filtern oder zu sortieren, Berechnungen durchzuführen oder Datums- und Zeitwerte für die Arbeit bereitzustellen.

Blockly Skript UI

Alle Skripte werden in einem separaten Fenster erstellt - dem Blockly-Editor. Standardmäßig befindet er sich am unteren Rand der Benutzeroberfläche.

Sie können den Blockly-Editor im Eigenschaftsfenster bei jedem Puzzle-Icon Blockly Script Area durch Anklicken aufrufen.

Nun kann ein Skript erstellt werden

  1. mit einem der bereitgestellten Blöcke
    The fallback content to display on prerendering
  2. oder den Wert eines anderen Feldes verwenden, indem Sie dessen Link-Griff (das Puzzleteil, das am äußeren Rand eines Frage- oder Antwort-Knotens erscheint, wenn Sie ihn überfahren) in den Blockly-Editor ziehen und dort ablegen
    The fallback content to display on prerendering
Der Link-Griff

Wenn Sie einen Frage- oder Antwort-Knoten in der Mindmap überfahren, erscheint am äußeren Rand des Knotens ein Link-Griff (ein Puzzleteil). Ziehen Sie diesen Griff in den Blockly-Editor, um einen Verweis auf den Wert dieses Feldes einzufügen. Ein einfacher Klick auf den Griff zeigt nur einen kurzen Hinweis zur Verwendung an — es wird nichts eingefügt.

Der Unterschied ist der folgende: Wenn Sie nur einen konstanten Wert in Ihrem Skript verwenden, wie im ersten Fall (1), wird dieses Skript einmal ausgewertet (wenn das Feld, zu dem es gehört, erstellt wird). Danach wird es sich nicht mehr ändern. Daher erzeugt das erste Skript einen Standardwert, den der Benutzer später überschreiben kann.

Wenn Sie jedoch den Wert eines anderen Feldes in Ihrem Skript verwenden, wie in Fall (2), ist Ihr Skript jetzt von diesem Feld abhängig. Das bedeutet, dass Ihr Skript jedes Mal, wenn sich diese anderen Felder ändern (z. B. weil der Benutzer einen anderen Wert eingibt), neu ausgewertet wird.

Beim Erstellen eines neuen Skripts wird der Editor rot umrandet, was darauf hinweist, dass dem Skript etwas fehlt oder es unverbundene Elemente im Skriptbereich hat. Dies wird beim Erstellen oder Ändern von Skripten häufig vorkommen. Solange ein roter Rand vorhanden ist, funktioniert das Skript nicht und kann daher nicht gespeichert werden.

Sie können den Editor jederzeit schließen, indem Sie auf das X oben rechts im Fenster klicken. Wenn beim Schließen des Blockly-Fensters immer noch ein Skript-Fehler auftritt, erscheint eine Abfrage, ob Sie das Fenster schließen wollen und die aktuellen ungespeicherten Änderungen dieses Skripts verloren gehen.

Blockly Fenster andocken

Sie können die Position des Blockly-Editors ändern, indem Sie eine Drag&Drop-Aktion auf seiner farbigen Überschrift durchführen. In den Ecken und in der Mitte erscheinen mehrere Pfeile, die Sie ansteuern können, indem Sie das Fenster über den Pfeil halten. Das Fenster wird dann im angegebenen grauen Bereich positioniert.

Hinweis

Die neue Fensterposition wird nach dem Schließen der Arbeitsmappe nicht gespeichert.

Skriptbare Eigenschaften

Sie finden den Blockly-Editor an den folgenden Stellen:

EigenschaftVerwendbar beiZulässige AusgabeZweck
TitelArbeitsmappe / Checkliste / Kapitel / Überschrift / FeldText, ZahlÄndert den Titel dieses Knotens.
ObligatorischesFeldBooleanWenn die Ausgabe true ist, wird dieses Feld obligatorisch. Mit False wird der Pflichtstatus deaktiviert.
ExistiertKapitel / Überschrift / FeldBooleanWenn die Ausgabe True ist, existiert das Feld im iCL Filler. Wenn es nicht existiert, werden alle zugehörigen Skripte und Folgefelder als nicht existent behandelt.
VerstecktKapitel / Überschrift / FeldBooleanWenn die Ausgabe true ist, können Sie dieses Feld nicht sehen, aber der iCL Filler kann trotzdem auf seine Daten und Werte zugreifen.
Nur lesenWenn die Ausgabe true ist, befindet sich das Feld in einem schreibgeschützten Zustand, in dem keine Änderungen vorgenommen werden können. Seien Sie vorsichtig, wenn Sie obligatorische und schreibgeschützte Parameter mischen.
Geskriptete AntwortFeldText Zahl Datum ZeitDieses Skript setzt automatisch die Antwort des Feldes mit oder ohne eine Bedingung/Relation.
Minimum/MaximumKapitel / ÜberschriftZahlÄndert das minimale und maximale Vorkommen dieses Knotens.
AbfrageKapitel / Überschrift / Feld (Datenbindung)-Erzeugt eine Verbindung zwischen zwei Inhaltstypen basierend auf einem übereinstimmenden Eintrag.
Ordnen nachKapitel / Überschrift-Ändert die Reihenfolge dieses wiederholten Abschnitts.
FilterInhaltstyp / Feld (Inhaltselement)-Setzt einen Filter für die geladenen Inhaltselemente dieses Feldes, um Daten einzuschränken/begrenzen/zu filtern.
ZuordnungFeld (Inhaltselement)abhängig vom ZuordnungstypEine Zuordnung speichert Daten zum Hinzufügen/Ändern von Inhaltselementdaten für Inhaltstypen.
ListeFeld (Datenbindung)Listeliefert Antworten basierend auf einer Liste von Daten
Skriptauswertung

Um ein Verständnis dafür zu bekommen, wann und warum solche Skripte ausgewertet werden, siehe hier.

Verfügbare Blöcke

Textblöcke

BlockFunktionErlaubte Typen
Erlaubt übersetzbare und nicht übersetzbare EingabenText, Zahlen, Sonderzeichen
Verbindet mehrere Anzeigeelemente miteinander.Alle
Ermöglicht den Vergleich zweier Texte auf Gleichheit oder Ungleichheit (ob sie gleich sind oder nicht).Text
Ermöglicht das Einfügen eines Sonderzeichens (z.B. neue Zeile)-
Gibt eine Kopie des Textes zurück, bei der die Leerzeichen an einem oder beiden Enden entfernt wurden.Text
Zeigt den angehängten Text in Groß-/Kleinschreibung oder als Titel an.Text
Gibt die Position des ersten/letzten Vorkommens des ersten Textes im zweiten Text zurück. Gibt 0 zurück, wenn der Text nicht gefunden wird.
Gibt den Buchstaben an der angegebenen Position zurück. #1 ist die erste Position.Erste Eingabe: Text, Zweite Eingabe: Zahl
Gibt einen bestimmten Teil des Textes zurück.Erste Eingabe: Text, Zweite und dritte Eingabe: Zahl
URL-kodiert den angegebenen Text, damit er sicher in einer URL oder einem Query-String verwendet werden kann (z. B. wird ein Leerzeichen zu %20).Text
URL-dekodiert den angegebenen Text und wandelt Prozent-Escapes zurück in die ursprünglichen Zeichen um (z. B. wird %20 zu einem Leerzeichen).Text
Erzeugt eine neue eindeutige ID, zum Beispiel 0198f2c1-4a3b-7d2e-9f10-3c5a7b9e2d4f. Es handelt sich um eine UUIDv7 – der vordere Teil ist ein Zeitstempel, neuere IDs sortieren also nach älteren. Hinweis: Bei jeder Auswertung des Skripts wird ein neuer Wert erzeugt – die ID ist also kein stabiler Bezeichner für ein Feld.-

Mathe-Blöcke

BlockFunktionErlaubte Typen
Ermöglicht die Eingabe von Zahlen.Nummer
Erzeugt eine Zahl aus Text.Text
Ermöglicht mathematische Berechnungen - Summe, Minimal- und Maximalwert, Durchschnitt.Zahl, Zahlenfelder
Vergleicht zwei Zahlen miteinander.Zahl
Ermöglicht grundlegende mathematische Berechnungen.Zahl, Zahlenfelder
Ermöglicht Rundungen - kaufmännisch, aufwärts, abwärts.Zahl, Zahlenfelder
Ermöglicht das Runden mit definierten Dezimalstellen - kaufmännisch, aufwärts, abwärts.Zahl, Zahlenfelder
Berechnet die Wurzel aus einer Zahl.Zahl
Berechnet den Rest einer Division.Zahl
Gibt eine Zufallszahl zwischen -2.147.483.648 und 2.147.483.648 zurück.
Gibt eine Zufallszahl zwischen dem angegebenen Mindest- und Höchstwert zurück. Die untere Grenze ist inklusiv, während der Höchstwert exklusiv ist. Das bedeutet zum Beispiel: Wenn Sie ein Mindestwert von 0 und ein Höchstwert von 3 angeben, sind die möglichen Werte: 0,1,2 (3 ist also nicht Teil der Ergebnismenge).Zahl, Zahlenfelder
Gibt ein Array mit der angegebenen Anzahl eindeutiger/nicht eindeutiger Zufallszahlen zwischen dem angegebenen Mindest- und Höchstwert zurück. Die untere Grenze ist inklusiv, während die obere Grenze exklusiv ist. Das bedeutet zum Beispiel: Wenn Sie ein Mindestwert von 2 und ein Höchstwert von 5 angeben, sind die möglichen Werte: 2,3,4 (5 ist also nicht Teil der Ergebnismenge).Zahl, Zahlenfelder

Datum & Zeit Blöcke

BlockFunktionErlaubte Typen
Gibt das aktuelle Datum des Gerätes zurück.Datetime
Ein Datumsfeld, das sich aus den einzelnen Datumskomponenten zusammensetzt.Number
Hängt eine bestimmte Anzahl von Tagen/Monaten/Jahren an ein Datum an.Erste Eingabe: Zahl, Zweite Eingabe: Datum
Gibt entweder das Jahr, den Monat, den Tag oder den Wochentag als Zahl zurück.Datum
Gibt die Kalenderwoche eines Datums als Zahl zurück. Über das Dropdown wird zwischen der europäischen (ISO 8601, Woche beginnt am Montag, Woche 1 enthält den ersten Donnerstag) und der amerikanischen (Woche beginnt am Sonntag, Woche 1 enthält den 1. Januar) Berechnung umgeschaltet.Datum
Vergleicht zwei Datumsfelder und gibt einen booleschen Wert zurück.Date
Gibt den angegebenen Text als formatiertes Datum zurück.Text
Gibt den angegebenen Text als benutzerdefiniert formatiertes Datum zurück.Erste Eingabe: Text, Zweite Eingabe: Text
Berechnet die Dauer zwischen zwei Zeitpunkten.Timepicker
Textfeld als Eingabe für Datumsblöcke/-felder verwenden

Wenn Sie ein Textfeld als Eingabe für einen Datumsblock/ein Datumsfeld verwenden müssen, wird der Text als gültiges Datum interpretiert, wenn er eines der folgenden Datumsformate verwendet:

MM/tt/jjjj HH:mm:ss
MM/tt/jjjj HH:mm
MM/tt/jjjj
jjjj-MM-ddTHH:mm:ssZ

Das letzte Format ist ein internationaler Standard namens "ISO 8601", der auch in der REST-Schnittstelle des iCL Portals verwendet wird.

Logische Blöcke

BlockFunktionErlaubte Typen
Ein Verzweigungsoperator, um verschiedene Fälle logisch abzudecken.Erste Eingabe: boolesch, zweite und dritte Eingabe: alle
Ein Verzweigungsoperator, um verschiedene Fälle logisch abzudecken. Ermöglicht das Hinzufügen zusätzlicher else-if-Verzweigungen.Erste Eingabe: boolean, zweite und dritte Eingabe: all
Ein logischer Wahrheitsoperator für wahr und falsch.-
Ermöglicht mathematische Vergleiche.Boolean
Negiert eine folgende logische Aussage.Boolean
Gibt den Wert null zurück.-
Wenn das Ergebnis des ersten Blocks ein Fehler ist, wird der Wert des zweiten Blocks zurückgegeben, ansonsten das Ergebnis des ersten Blocksany

Listet Blöcke auf

BlockFunktionErlaubte Typen
Filtert in einer Liste nach bestimmten Kriterien.List
Erzeugt eine Liste mit 1 Eintrag, kann erweitert werden.All
Erzeugt eine Liste mit 3 Einträgen, kann reduziert/erweitert werden.All
Filtert die angegebene Liste mit Hilfe des angegebenen logischen Blocks, wobei der logische Block für jedes einzelne Element der Liste verwendet wird.Erste Eingabe: Liste, Zweite Eingabe: boolean
Gibt die Länge einer Liste zurück.List
Nimmt eine Liste oder einen einzelnen Wert. Wenn es sich um einen einzelnen Wert handelt, wird er in eine Liste eingeschlossen. Handelt es sich um eine Liste, die Listen enthält, werden diese entfernt und stattdessen deren Elemente in die Hauptliste verschoben.
Wenn es mit text from list verwendet wird, nimmt es eine Liste und fügt sie mit dem angegebenen Begrenzer zusammen. Wenn es mit list from text verwendet wird, nimmt es einen Text und teilt ihn mit dem angegebenen Begrenzungszeichen auf.
vertauscht die Elemente der angegebenen Liste.List
Gibt eindeutige Elemente der gegebenen Liste zurück.List
Sortiert die Elemente der angegebenen Liste aufsteigend/absteigend.List
Sortiert die Elemente der angegebenen Liste aufsteigend/absteigend nach einem angegebenen Ausdruck.Erste Eingabe: Liste, Zweite Eingabe: Text, Zahl, boolesch, Datum
Prüft, ob irgendein/jedes Element in der Liste den angegebenen booleschen Ausdruck erfüllt. Erste Eingabe: Liste, Zweite Eingabe: boolescher Ausdruck.
Erzeugt eine neue Liste mit den Ergebnissen der Ausführung des angegebenen Ausdrucks auf jedes Element in der angegebenen Liste.Erste Eingabe: list, Zweite Eingabe: all

Regex-Blöcke

BlockFunktionErlaubte Typen
Prüft, ob der Text dem regulären Ausdruck entspricht, und gibt wahr oder falsch zurück.Erste Eingabe: Text, Zweite Eingabe: Muster
Ersetzt jeden Treffer des regulären Ausdrucks durch den Ersatztext. Der Ersatztext kann mit $1, $2, ... auf Gruppierungen verweisen.Erste Eingabe: Text, Zweite Eingabe: Muster, Dritte Eingabe: Text
Gibt den ersten Treffer des regulären Ausdrucks zurück oder nichts, wenn der Text nicht passt.Erste Eingabe: Text, Zweite Eingabe: Muster
Gibt eine Liste mit allen Treffern des regulären Ausdrucks zurück. Über das Aufklappmenü wird ausgewählt, ob der gesamte Treffer oder eine der Gruppierungen gesammelt wird. Gibt nichts zurück (keine leere Liste), wenn es keinen Treffer gibt – das Ergebnis sollte daher geprüft werden, bevor es an einen Listenblock übergeben wird.Erste Eingabe: Text, Zweite Eingabe: Muster
Ein vorgefertigter regulärer Ausdruck für ein gängiges Format, auswählbar über ein Aufklappmenü: natürliche Zahl, Dezimalzahl (mit optionalen oder erforderlichen Nachkommastellen), E-Mail-Adresse, IBAN, URL oder GUID.-
Maskiert alle Sonderzeichen des angegebenen Textes, sodass dieser innerhalb eines regulären Ausdrucks wörtlich gesucht wird. Immer dann verwenden, wenn ein Muster aus einer Antwort oder anderem freien Text zusammengesetzt wird.Text

Arbeiten mit regulären Ausdrücken

Ein regulärer Ausdruck (kurz: Regex) ist eine kleine Mustersprache, mit der beschrieben wird, wie ein Text aussehen muss – zum Beispiel „nur Ziffern“ oder „zwei Buchstaben gefolgt von zwei Ziffern“.

iCL verwendet die JavaScript-Regex-Syntax

Skripte werden von der Skript-Engine des iCL Fillers ausgeführt, die die JavaScript-Syntax (ECMAScript) für reguläre Ausdrücke verwendet – nicht die .NET-Syntax. Zum Erstellen und Testen eines Musters sollte daher ein Tester verwendet werden, der auf ECMAScript/JavaScript eingestellt ist, z. B. regex101.com (links ECMAScript (JavaScript) auswählen) oder RegExr.

.NET-orientierte Tester wie regexstorm.net sollten vermieden werden: Funktionen wie benannte Gruppen, Lookbehind oder \p{...}-Zeichenklassen werden dort anders geschrieben. Ein Muster, das auf einer solchen Seite funktioniert, kann in iCL fehlschlagen oder sich anders verhalten.

Eine gute Einführung und eine vollständige Syntaxreferenz: MDN – Leitfaden zu regulären Ausdrücken und der MDN-Spickzettel.

Die vorgefertigten Muster

Der Muster-Block hat zwei Aufklappmenüs und liest sich wie ein Satz, zum Beispiel Natürliche Zahl – irgendwo im Text.

Das erste Aufklappmenü wählt das Format. Für abweichende Ausdrücke kann stattdessen jederzeit ein einfacher Textblock verwendet werden.

Das zweite legt fest, wie viel des Textes passen muss – und das ist ein wichtiger Unterschied:

  • nur wenn es der gesamte Text ist – der Ausdruck wird verankert (^…$), der vollständige Text muss also dieses Format haben. In Kombination mit entspricht Muster zur Prüfung einer Antwort verwenden.
  • irgendwo im Text – der Ausdruck bleibt unverankert und passt an jeder Position. In Kombination mit erster Treffer von / alle Treffer von verwenden, um einen Wert aus einem längeren Text herauszulösen.

Beim Überfahren des Blocks mit der Maus zeigt der Tooltip den regulären Ausdruck an, der sich aus der aktuellen Auswahl ergibt.

Kein Treffer? Zuerst den Geltungsbereich prüfen

Ein verankertes Muster findet in einem längeren Text niemals etwas: ^\d+$ passt auf den Text 42, findet in Auftrag 42 aber nichts. Wenn erster Treffer von oder alle Treffer von nichts zurückgibt, das zweite Aufklappmenü auf irgendwo im Text umstellen.

EintragAusdruck (irgendwo im Text)Passt auf
Natürliche Zahl\d+Nur Ziffern, ohne Vorzeichen und ohne Nachkommastellen: 0, 42
Dezimalzahl (optional)[+-]?\d+([.,]\d+)?Eine Zahl mit optionalem Vorzeichen und optionalen Nachkommastellen – ganze Zahlen werden ebenfalls akzeptiert: 42, -3.5, 3,5
Dezimalzahl (erforderlich)[+-]?\d+[.,]\d+Dasselbe, aber die Nachkommastellen sind erforderlich: -3.5, 3,542 passt nicht
E-Mail-Adresse[^@\s]+@[^@\s]+\.[^@\s]+Eine pragmatische E-Mail-Prüfung: etwas, ein @, eine Domain mit Punkt, keine Leerzeichen
IBAN[A-Z]{2}\d{2}[A-Z0-9]{11,30}Zwei Großbuchstaben für das Land, zwei Prüfziffern, dann 11–30 Buchstaben oder Ziffern – ohne Leerzeichen geschrieben
URL(https?\|ftp):\/\/[^\s/$.?#].[^\s]*Eine http-, https- oder ftp-Adresse
GUID[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}Eine GUID in der üblichen 8-4-4-4-12-Schreibweise – passt auch auf die IDs des Blocks neue eindeutige ID

Im Modus nur wenn es der gesamte Text ist werden dieselben Einträge in ^…$ eingeschlossen verwendet – aus „Natürliche Zahl“ wird also ^\d+$.

Diese Muster sind bewusst einfach und gut lesbar gehalten und decken nicht jeden Sonderfall des jeweiligen Standards ab. Für eine strengere Prüfung kann ein eigenes Muster verwendet werden.

Beispiel: Werte aus einem längeren Text herauslösen

Mit erster Treffer von, dem Geltungsbereich irgendwo im Text und diesem Text …

Invoice 2024-17: contact office@opti-q.com or visit https://opti-q.com/support .
Transfer 1250,75 EUR to AT611904300234573201 , ref 42, ticket 0198f2c1-4a3b-7d2e-9f10-3c5a7b9e2d4f

… liefert jedes Format den ersten gefundenen Wert:

Muster-EintragErgebnis
Natürliche Zahl2024
Dezimalzahl (erforderlich)1250,75
E-Mail-Adresseoffice@opti-q.com
IBANAT611904300234573201
URLhttps://opti-q.com/support
GUID0198f2c1-4a3b-7d2e-9f10-3c5a7b9e2d4f

Wird erster Treffer von durch alle Treffer von ersetzt, kommt statt des ersten Treffers eine Liste aller Treffer zurück. Im Modus nur wenn es der gesamte Text ist würde keiner dieser Einträge etwas zurückgeben, weil der Text als Ganzes weder eine Zahl noch eine E-Mail-Adresse ist.

Gruppierungen verwenden

Klammern in einem Muster erzeugen eine Gruppierung: einen Teil des Treffers, der separat ausgelesen werden soll. Gruppierungen werden von links nach rechts anhand ihrer öffnenden Klammer nummeriert, beginnend bei 1.

Beispiel: der Text Auftrag A-42 und B-7 mit dem Muster ([A-Z])-(\d+):

Auswahl im AufklappmenüErgebnis
alle TrefferA-42, B-7 – jeweils der vollständige Treffer
Gruppierung 1A, B – nur der von ([A-Z]) erfasste Teil
Gruppierung 242, 7 – nur der von (\d+) erfasste Teil

Statt den gesamten Treffer zu holen und ihn anschließend zu zerlegen, wird also direkt der gewünschte Teil ausgewählt. Existiert die gewählte Gruppierung in einem Treffer nicht, bleibt der entsprechende Eintrag der Liste leer.

Wozu „für die Verwendung in einem Muster maskieren“?

Zeichen wie ., +, (, ), * oder ? haben innerhalb eines regulären Ausdrucks eine Sonderbedeutung. Solange man selbst das Muster schreibt, ist das erwünscht. Zum Problem wird es, sobald das Muster aus etwas zusammengesetzt wird, das ein Benutzer eingegeben hat – eine Antwort, ein Content-Item-Wert, ein Feldname.

Der Block für die Verwendung in einem Muster maskieren setzt vor jedes dieser Zeichen einen Backslash, sodass der Text wörtlich gesucht wird:

Text als MusterDirekt verwendetMit maskieren umschlossen
a.cDer . bedeutet „ein beliebiges Zeichen“ und passt damit auch auf abc und axc – vermutlich nicht das GewünschteWird zu a\.c und passt nur auf den wörtlichen Text a.c
3.5 (mm)Die ( ) werden als Gruppierung gelesen, 3.5 (mm) selbst wird dadurch nicht gefundenWird zu 3\.5 \(mm\) und wird gefunden
1+1+ bedeutet „ein oder mehrere des vorherigen Zeichens“ – das Muster passt damit auf 11, aber nicht auf den eigentlich gesuchten Text 1+1Wird zu 1\+1 und passt auf 1+1
Preis (nettoDie nicht geschlossene ( macht das gesamte Muster ungültig, das Skript schlägt mit einem Fehler fehlWird zu Preis \(netto und wird gefunden

Faustregel: Stammt ein Teil des Musters aus einer Antwort oder einem anderen frei eingegebenen Wert, sollte dieser Teil mit für die Verwendung in einem Muster maskieren umschlossen werden. Ist das Muster vollständig selbst geschrieben, wird der Block nicht benötigt.

Checkliste Feldblöcke

BlockFunktionErlaubte Typen
Vergleicht zwei Werte miteinander. Beachten Sie, dass Sie hier nicht mit Zahlen vergleichen können. Verwenden Sie für den Vergleich einen Text-Block im 'create list with'-Teil oder wechseln Sie zu Mathe-Blöcken, wenn Sie zwei Zahlen vergleichen.
Prüft, ob ein Feld einen Wert oder gar keinen Wert hat.Fields
Ermöglicht das Auflösen aller Eingabefelder, die dem angegebenen Muster entsprechen. Sie können damit alle Eingabefelder auflösen oder nur bestimmte Arten von Eingabefeldern erhalten, z.B. alle Textfelder, alle Zahlenfelder, etc.-
Ermöglicht die Auflösung aller Optionsfelder, die dem angegebenen Muster entsprechen. Sie können damit alle Optionsfelder auflösen oder nur bestimmte Typen von Optionsfeldern erhalten, z.B. alle Checkbox-Felder, alle Dropdown-Felder, usw.-

Benutzereigenschaften Blöcke

BlockFunktionErlaubte Typen
Zeigt die ID des angemeldeten Benutzers an.-
Zeigt den Benutzernamen des angemeldeten Benutzers an.-
Zeigt den Vornamen des angemeldeten Benutzers an.-
Zeigt den Nachnamen des angemeldeten Benutzers an.-
Zeigt die E-Mail-Adresse des angemeldeten Benutzers an.-

Formatierungsblöcke

BlockFunktionErlaubte Typen
Gibt das angegebene Datum als formatierten Text zurück. Bietet eine Dropdown-Liste, um das gewünschte Format auszuwählen.Datum
Gibt die angegebene Zeit als formatierten Text zurück. Bietet eine Dropdown-Liste zur Auswahl des gewünschten Formats.Timepicker
Gibt die angegebene Zahl als formatierten Text zurück. Bietet eine Dropdown-Liste zur Auswahl des gewünschten Formats.Nummer
Gibt das angegebene Objekt (kann eine Zahl/ein Datum/etc. sein) als formatierten Text unter Verwendung des angegebenen Formatstrings zurück. Sie können mehr über Formatstrings in Microsoft Docs oder in unserer Dokumentation nachlesen.Alle

Aufgabenblöcke

BlockFunktionErlaubte Typen
Ermöglicht es, bestimmte Eigenschaften der task der Inspektion zu erhalten. Eigenschaften: Externe ID, Titel, Prüfer, geprüfte(s) Objekt(e), Beschreibung, Start- und Fälligkeitsdatum.-
Gibt true zurück, wenn die Inspektion mit einer Aufgabe gestartet wurde, false sonst.-

Inspektionsblöcke

BlockFunctionAllowed Types
Gibt die Informationen von der laufenden Inspektion an. Eigenschaften: Sprache.-