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
Format: Script-Literal, Zahl oder Script-Variable

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.
Format: AE-Name oder Script-Variable

Value

Wert, der für das Attribut gesetzt wird.
Format: AE-Name, Script-Literal, Zahl oder Script-Variable


Rückgabewert

"0" - Die Änderung des Attributes war erfolgreich.
"20342" - Das Attribut wird nicht unterstützt.

Für das Attribut IGNORE_SYNC gilt:
"11191" - Die RunID wurde nicht gefunden.

Für das Attribut PRIORITY gelten:
"20591" - Die RunID wurde nicht gefunden.
"20587" - Der Wert liegt nicht zwischen 0 und 255.

Für das Attribut RELEASE gelten:
"11016" - Der zu ändernde Workflow existiert nicht.
"11510" - Der Workflow ist nicht aktiv.
"20540" - Die RunID wurde nicht gefunden.

Für das Attribut RESPONSE gelten:
"20539" - Die Benachrichtigung mit der angegebenen RUN# existiert nicht.
„20538" - Der Wert ist nicht korrekt.
"11151" - Der Wert für das Attribut RESPONSE trifft nicht für den Benachrichtigungstyp (Alarm, Anfrage, Meldung) zu.
"11060" - Die Kombination Benachrichtigung/Wert wird nicht unterstützt.
"11061" - Die Benachrichtigung wurde schon von einem anderen Benutzer akzeptiert.
"11062" - Das Bestätigen der Benachrichtigung kommt von einem Benutzer, der nicht im Benachrichtigungs-Objekt vorhanden ist.
"11064" - Die Ablehnung der Benachrichtigung kommt von einem Benutzer, der nicht im Benachrichtigungs-Objekt vorhanden ist.
"20859" - Die Reaktion auf die Benachrichtigung kommt von einem Benutzer, der inaktiv im Benachrichtigungs-Objekt vorhanden ist.

Für das Attribut GR_MAX_PAR_JOBS gilt:
"11121" - RUN# wurde nicht gefunden.
"20460" - Der Wert liegt nicht zwischen 1 und 999.

Für die Attribute GOIMM, EARLIEST_STARTTIME und REMOVE_DEPENDENCY gilt folgendes:
"20378" - Der Workflow konnte nicht gefunden werden.
"20840" - Die Aufgabe erscheint mehr als einmal im Workflow.
"20841" - Die angegebene Aufgabe ist im Workflow nicht vorhanden.

Für das Attribut GAP gilt:
20534 - Der Wert „0“ darf nicht eingegeben werden
20591 - RUN# wurde nicht gefunden.
20860 - Dies ist keine wiederkehrende Aufgabe
20861 - Die Option "Mit einer Lücke von...." wurde in der wiederkehrenden Aufgabe nicht ausgewählt.

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.
"NO" = Benachrichtigung (Rückfrage) mit "Nein" beantworten.

"ACCEPT" = Benachrichtigung (Alarmierung) akzeptieren
"REJECT" = Benachrichtigung (Alarmierung) ablehnen
"DONE" = Benachrichtigung (Alarmierung) erledigen

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
Die Aufgabe eines Workflows wird sofort gestartet

Name der Aufgabe. Diese darf im Workflow nur einmal vorkommen.

 

EARLIEST_STARTTIME
Änderung der frühesten Startzeit einer Aufgabe in einem Workflow

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
oder
Name der Aufgabe,
OFF

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
Entfernen der Abhängigkeit zum direkten Vorgänger

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
Aufgaben 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: