MODIFY_UC_OBJECT
Script-Funktion: Ändert das Attribut eines aktivierten Objektes.
Syntax
MODIFY_UC_OBJECT (RUN#, Attribute, Value)
Syntax |
Beschreibung/Format |
---|---|
RunID |
Laufende Nummer (RunID) des aktivierten Objektes Hinweis zur Verwendung des Attributs EARLIEST_STARTTIME: Bei der Verwendung dieses Attributes ist nicht die RunID der Aufgabe, sondern jene des Workflows, in dem sich die Aufgabe befindet, anzugeben. |
Attribute |
Attribut, welches geändert werden soll. |
Value |
Wert, der für das Attribut gesetzt wird. |
Rückgabewert |
---|
"0" - Die Änderung des Attributes war erfolgreich. Für das Attribut IGNORE_SYNC gilt: Für das Attribut PRIORITY gelten: Für das Attribut RELEASE gelten: Für das Attribut RESPONSE gelten: Für das Attribut GR_MAX_PAR_JOBS gilt: Für die Attribute GOIMM, EARLIEST_STARTTIME und REMOVE_DEPENDENCY gilt folgendes: Für das Attribut GAP gilt: |
Die Attribute der in der folgenden Tabelle aufgeführten aktivierten Objekte können geändert werden. Die neuen Werte gelten nur für die aktuelle Ausführung der Aufgabe und werden nicht im Objekt gespeichert.
Objekttyp |
Attribut |
Wert |
---|---|---|
CALL |
RESPONSE Reaktion auf einer Benachrichtigung |
"OK" = Benachrichtigung (Meldung) quittieren "YES" = Benachrichtigung (Rückfrage) mit "Ja" beantworten. "ACCEPT" = Benachrichtigung (Alarmierung) akzeptieren |
JOBG | GR_MAX_PAR_JOBS Maximale Anzahl parallel laufender Aufgaben in einer Gruppe |
1 bis 999 parallel laufende Aufgaben. |
JOBP | RELEASE Freigabe eines blockierten Workflows |
Laufende Nummer (RunID) der im Workflow blockierten Aufgabe. |
|
Für die folgenden drei Attribute muss sich die zu ändernde Aufgabe im Zustand "Warten auf Vorbedingung" befinden. |
|
|
GOIMM |
Name der Aufgabe. Diese darf im Workflow nur einmal vorkommen. |
|
EARLIEST_STARTTIME |
Geben Sie entweder eine früheste Startzeit oder das Schlüsselwort "OFF" an. In beiden Fällen benötigt die Script-Funktion auch den Namen der Aufgabe. Syntax für den Parameter Wert: Name der Aufgabe, [Zeitformat;]Zeit Die Startzeit wird der Aufgabe zugewiesen bzw. ersetzt eine bereits gesetzte. Die Script-Funktion erwartet das Zeitformat "HHMMSS", wenn Sie kein spezielles definieren. Das Schlüsselwort "OFF" entfernt eine vorhandene früheste Startzeit. |
|
REMOVE_DEPENDENCY |
Die Aufgabe ignoriert den erwarteten ereignisgesteuerten Endstatus (Registerkarte Zeit & Abhängigkeiten) des angegebenen Vorgängers. Das hat zur Folge, dass die Verarbeitung bei der Aufgabe fortgesetzt wird, sofern alle anderen Vorgänger schon beendet wurden. Syntax für den Parameter Wert: Name der Aufgabe [, Name des Vorgängers ] Wenn Sie keinen bestimmten Vorgänger angeben, werden alle Vorgänger ignoriert und die Aufgabe startet sofort. |
CALL, JOBF, JOBP, JOBS, JSCH, SCRI |
PRIORITÄT |
Erlaubte Werte: 0 bis 255 |
Workflow-Aufgaben | IGNORE_CONDITIONS | Startet sofort eine Workflow-Aufgabe, die sich im Status "Warten auf Pre-Conditions" befindet. Der Parameter Wert ist dabei nicht anzugeben. Siehe Tabs Pre-Condition und Post-Condition. |
Workflow-Aufgaben | CHECK_CONDITIONS | Prüfung der Bedingungen/Anweisungen einer Workflow-Aufgabe, die sich im Status "Warten auf Pre-Conditions" befindet, von vorne beginnen. Der Parameter Wert ist dabei nicht anzugeben. |
CALL, EVNT, JOBF, JOBG, JOBP, JOBQ,JOBS, JSCH, SCRI | IGNORE_QUEUE |
Startet eine Aufgabe sofort, die sich auf Grund unzureichender Queue-Slots in einem Wartezustand befindet. Der Parameter Wert ist dabei nicht anzugeben. |
Alle ausführbaren Objekte |
IGNORE_SYNC |
Die Sync-Einstellungen werden ignoriert. Der Wert spielt dabei keine Rolle, dennoch ist dieser Parameter anzugeben. Beispiel MODIFY_UC_OBJECT( &RUNNR#, IGNORE_SYNC, "") |
Periodische Aufgaben |
GAP |
Ändert bei einer periodischen Aufgabe den zeitlichen Abstand zwischen den Durchführungen. Wert in Minuten. |
Alle ausführbaren Objekte |
SET_EXPRESS |
Startet sofort eine Aufgabe, die sich im Zustand "Warten auf Ressource" befindet (JOBS, JOBF und JOBD). Erlaubte Werte: "ON" und "OFF" |
Sie können eine Aufgabe nur dann mit dieser Script-Funktion ändern, wenn sie schon generiert ist, sich aber noch in einem Wartezustand befindet. Sie darf nicht die Option Zur Laufzeit generieren gesetzt haben. Verwenden Sie die Script-Anweisung :PUT_ATT, wenn eine Aufgabe bereits zum Generierungszeitpunkt verändert werden soll.
Tipp: Verwenden Sie die Script-Anweisung :ON_ERROR, um Maßnahmen zu definieren, die im Fehlerfall ergriffen werden sollen. Weitere Informationen finden Sie unter Script-Sprachmittel zur Fehlerbehandlung.
Das Script-Statement bewirkt, dass alle offenen Transaktionen des Scripts in die AE-Datenbank geschrieben werden. Weitere Informationen finden Sie unter Script-Verarbeitung.
Beispiele
Das erste Beispiel zeigt, wie eine Benachrichtigung (Rückfrage) quittiert wird. Die laufende Nummer (RunID) muss dafür vorher ermittelt und in der Script-Variablen "&RUNNR#" gespeichert worden sein.
:SET &RUNNR# = ACTIVATE_UC_OBJECT("Nightshift")
!...
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#,
RESPONSE, OK)
Im zweiten Beispiel wird eine Gruppe aktiviert und die RUN# in einer Script-Variablen gespeichert. Die Anzahl der parallel laufenden Aufgaben in der Gruppe wird auf "1" gesetzt. Vorgemerkte Aufgaben können danach nur seriell verarbeitet werden.
:SET &RUNNR# = ACTIVATE_UC_OBJECT("GRP7")
:SET &MODOBJ# = MODIFY_UC_OBJECT( &RUNNR#,
GR_MAX_PAR_JOBS, 1)
Die folgenden Beispiele zeigen Änderungen einer Aufgabe, die in einem Workflow läuft:
!The job "MM.CLOSING" should start
immediately.
:SET &RUNNR# = GET_UC_OBJECT_NR(MM.DAY)
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#, GOIMM, "MM.CLOSING")
!The job "MM.CLOSING" should not
run earlier than 3pm.
:SET &RUNNR# = GET_UC_OBJECT_NR(MM.DAY)
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#, EARLIEST_STARTTIME,
"MM.CLOSING","150000")
!The job "MM.CLOSING" should ignore
the earliest start time.
:SET &RUNNR# = GET_UC_OBJECT_NR(MM.DAY)
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#, EARLIEST_STARTTIME,
"MM.CLOSING",
OFF)
!The job "MM.CLOSING" should ignore
the dependency to the predecessor "MM.DAY_END".
:SET &RUNNR# = GET_UC_OBJECT_NR(MAWI.TAG)
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#, REMOVE_DEPENDENCY,
"MM.CLOSING",
"MM.DAY_END")
Siehe auch: