Mithilfe der Schrittüberprüfung können Sie ermitteln, ob der Task-Benutzer die richtige Anzahl von Features in einem Schritt bearbeitet, erstellt oder ausgewählt hat. Anhand der Schrittüberprüfung kann auch festgestellt werden, ob die Attribute und die Feature-Geometrie die angegebenen Bedingungen erfüllen.
Durch Hinzufügen von Überprüfungsaktionen zu einem Schritt kann verhindert werden, dass die Ausführung eines Tasks fehlschlägt. Wenn ein Task beispielsweise das Werkzeug Zusammenführen verwendet, um Features zusammenzuführen und zu attributieren, können Sie anhand von Schrittüberprüfungsaktionen Folgendes überprüfen:
- Überprüfen Sie vor der Ausführung des Werkzeugs Zusammenführen, ob zwei oder mehr Features ausgewählt wurden.
- Überprüfen Sie nach Abschluss des Werkzeugs Zusammenführen, ob die Zusammenführung erfolgreich durchgeführt wurde, indem Sie ermitteln, ob ein Feature ausgewählt ist.
- Überprüfen Sie für den nächsten Schritt, ob der richtige Attributwert für das ausgewählte Feature beim Abschließen eines Schrittes bereitgestellt wird.
Sie können Schrittüberprüfungsaktionen konfigurieren, die ausgeführt werden, bevor der Schritt einen Befehl ausführt und wenn der Schritt abgeschlossen wird. Beispiele:
- Bevor ein Schritt ein Geoverarbeitungswerkzeug ausführt, kann mittels Schrittüberprüfung ermittelt werden, ob die richtigen Features ausgewählt wurden.
- Bevor ein Schritt abgeschlossen und mit dem nächsten Schritt fortgefahren wird, kann mithilfe der Schrittüberprüfung festgestellt werden, ob die richtige Anzahl von Features mit den richtigen Attributen erstellt wurde.
Ausdruckstypen für die Schrittüberprüfung
Sie können die Structured Query Language (SQL) oder Arcade verwenden, um Schrittüberprüfungsausdrücke zu erstellen.
Structured Query Language (SQL)
SQL-Ausdrücke enthalten Kombinationen aus Operatoren und mathematischen Funktionen, mit denen Attribute abgefragt und logische Anweisungen ausgewertet werden.
Bei der Schrittüberprüfung mit einem SQL-Ausdruck wird geprüft, ob die Anzahl der im Schritt erstellten, geänderten oder ausgewählten Features oder Datensätze die angegebene Bedingung erfüllt. Zum Beispiel kann mit einem SQL-Überprüfungsausdruck abgefragt und überprüft werden, ob die Anzahl der im Schritt erstellten Features größer als eine angegebene Anzahl ist.
Wenn der Schrittüberprüfungsausdruck ergibt, dass die angegebene Bedingung nicht erfüllt wird, kann eine Fehlermeldung angezeigt werden, und der Task geht nicht in den nächsten Schritt über.
Arcade
In Arcade-Ausdrücken werden mehrzeilige Skripte mit Operatoren, mathematischen Funktionen und räumlichen Abfragen verwendet, um komplexere Auswertungen zu erstellen. Mit Arcade-Ausdrücken können sowohl die Daten abgefragt als auch räumliche und topologische Beziehungen zwischen Features ausgewertet werden. Mit einem Arcade-Schrittüberprüfungsausdruck kann beispielsweise überprüft werden, ob sich die Geometrie neuer Features, die in dem Schritt erstellt wurden, mit der Geometrie anderer Features schneidet.
Arcade-Überprüfungsausdrücke müssen "true" oder "false" zurückgeben. Ausdrücke müssen "true" zurückgeben, wenn alle Bedingungen im Ausdruck erfüllt wurden, und "false", wenn mindestens eine Bedingung im Ausdruck nicht erfüllt wurde. Wenn der Schrittausdruck "false" zurückgibt, kann eine Fehlermeldung angezeigt werden, und der Task geht nicht in den nächsten Schritt über.
Arcade-Überprüfungsausdrücke verwenden das Arcade-Profil des Tasks. Ein Arcade-Profil ist ein Kontext, in dem ein Arcade-Ausdruck ausgewertet und verstanden wird. Ein Arcade-Profil erfordert spezifische Eingaben und Ausgaben. Der Rückgabetyp des Arcade-Profils des Tasks ist immer ein boolescher Wert (true oder false).
Vorteile der Verwendung von Arcade-Ausdrücken
Arcade-Ausdrücke haben folgende Vorteile gegenüber SQL-Ausdrücken:
- Mit Arcade-Ausdrücken können sowohl die Attribute als auch die räumlichen Beziehungen zwischen Features abgefragt und ausgewertet werden.
- Arcade-Ausdrücke werden nicht als Teil des Datenbankschemas gespeichert. Sie können unabhängig von den Daten erstellt werden.
- Arcade-Ausdrücke können komplexer sein (in Form von mehrzeiligen Skripten).
Hinzufügen von Schrittüberprüfungen
Zum Hinzufügen von Schrittüberprüfungsaktionen befolgen Sie diese Schritte:
- Blenden Sie im Bereich Tasks den Task ein, und wählen Sie den Schritt aus, den Sie konfigurieren möchten.
- Klicken Sie im Bereich Task-Designer auf die Registerkarte Aktionen.
- Klicken Sie auf das Dropdown-Menü Aktion hinzufügen unter Vor Ausführung des Befehls oder Beim Beenden des Schrittes, und wählen Sie Überprüfung aus.
Tipp:
Sie können mehrere Überprüfungen für einen einzelnen Schritt konfigurieren.
- Wählen Sie die Features aus, die über die Dropdown-Liste Anzahl der Features oder Datensätze überprüfen in überprüft werden sollen.
Features können auch über eine gespeicherte Auswahl überprüft werden.
- Wählen Sie die Attributtabelle der Features aus, die über die Dropdown-Liste in Tabelle überprüft werden sollen.
- Wählen Sie den Ausdruckstyp aus der Dropdown-Liste Ausdruckstyp aus.
Sie können mit SQL oder Arcade Überprüfungsausdrücke erstellen.
- Führen Sie bei Verwendung von SQL folgende Teilschritte aus:
- Wählen Sie die Überprüfungsbedingung aus der Dropdown-Liste erfüllt die Bedingung aus.
- Legen Sie fest, ob eine Filterüberprüfung für die Attribute der Features angewendet werden soll, indem Sie auf Filterauswahl per Ausdruck klicken.
Sie können einen Filterausdruck verwenden, um zu überprüfen, ob die Attribute der überprüften Features eine angegebene Bedingung erfüllen. Stellen Sie beispielsweise sicher, dass das Feld "AssetNumber" in den ausgewählten Gebäudegrundriss-Features nicht NULL ist.
- Geben Sie eine Fehlermeldung ein, die angezeigt werden soll, wenn die Überprüfungsbedingungen unter Fortsetzung des Schritts verhindern und diese Fehlermeldung anzeigen nicht erfüllt sind.
- Klicken Sie auf Fertig, um die Überprüfungsaktion hinzuzufügen.
- Führen Sie bei Verwendung von Arcade die folgenden Teilschritte aus:
- Verwenden Sie die Feature-Class-Felder und Arcade-Funktionen, um einen Auswertungsausdruck zu erstellen.
Der Ausdruck muss "true" oder "false" zurückgeben.
Der folgende Arcade-Ausdruck gibt "true" zurück, wenn das Feld Name des ausgewerteten Features nicht NULL ist: Return !IsEmpty($feature.Name.
- Geben Sie eine Fehlermeldung unter Fortsetzung des Schritts verhindern und diese Fehlermeldung anzeigen ein, die angezeigt werden soll, wenn der Arcade-Ausdruck "false" zurückgibt.
- Klicken Sie auf Fertig, um die Überprüfungsaktion hinzuzufügen.
- Verwenden Sie die Feature-Class-Felder und Arcade-Funktionen, um einen Auswertungsausdruck zu erstellen.