2. 1. 17 Ereignis
SYNTAX
Ein Ereignis beschreibt eine für den Scheduler nicht weiter
trennbare
Operation. Das Ereignis kann aus einer Folge von Elementarereignissen
bestehen,
die in den Einträgen der Logliste
erfasst werden. Der Tcl-Befehl evCmd erlaubt Operationen
mit einem
Ereignis-Objekt. Der Befehl lastev referenziert immer das
zuletzt
durch den Scheduler ausgeführte Ereignis. Er hat die allgemeine
Form:
evCmd option ?arg arg ...?
lastev ?option? ?arg arg ...?
option und args bestimmen das exakte
Verhalten des Befehls. Die folgenden Befehle sind für
Ereignis-Objekte definiert:
OBJEKTPARAMETER
| evCmd
type ?value? |
|
Abfrage oder Modifikation des Ereignistyps. value
setzt
den Typ des Ereignisses. Möglich sind die Typen:
|
start -
|
Simulationsstart |
|
stop -
|
Simulationsende (der Zeithorizont ist erreicht oder es
können
keine Ereignisse mehr generiert werden) |
|
transf -
|
Jobtransfer |
|
ready -
|
Station beendet Bearbeitung eines Jobs |
|
forward -
|
Ein Job in einer Station wird weitergabebereit |
|
failure -
|
Station fällt aus |
|
repair -
|
Station wird repariert |
|
turnon -
|
Station wird eingeschaltet |
|
turnoff -
|
Station wird ausgeschaltet |
|
block -
|
Station wird blockiert |
|
unblock -
|
Blockierung der Station wird aufgehoben |
|
create -
|
In einer Station wird ein Job wird erzeugt (Quelle) |
|
kill -
|
In einer Station wird ein Job vernichtet (Senke) |
|
supply -
|
In einer Station ein Job wird bereitgestellt |
|
clock -
|
Taktereignis |
|
| |
| evCmd
date ?time? |
|
Abfrage oder Setzen des Ereigniszeitpunktes. Voreinstellung
ist Inf. |
| |
| evCmd
delta |
|
Gibt den Zeitsprung wieder (Typ: time), der durch
das Ereignis ausgelöst wird oder wurde. Voreinstellung ist Inf. |
| |
| evCmd
executed |
|
Gibt an, ob das Ereignis durch den Scheduler bereits
ausgeführt
wurde (Typ: boolean). Voreinstellung: 0 |
| |
|
evCmd executable |
|
Gibt an, ob das Ereignis durch den Scheduler ausführbar
ist
(Typ: boolean). Voreinstellung: 0 |
| |
| evCmd
execute |
|
Lässt das konfigurierte Ereignis durch den Scheduler
ausführen.
Das Ereignis muss ausführbar
sein,
sonst erfolgt eine Fehlermeldung. |
| |
| evCmd
station ?stationCmd? |
|
Abfrage oder Setzen der Station, die das Ereignis
ausgelöst
hat (machineCmd oder queueCmd, nur bei script-Ereignissen
methodCmd). Bei Transferereignissen handelt es sich um die
abgebende
Station. |
| |
| evCmd
tostation |
|
Nach Ausführung können die Zielstationen eines
Transfer-Ereignisses abgefragt werden. Die Rückgabe erfolgt als
Liste und wird nicht aus dem Ereignis selbst, sondern aus den durch den
Job des Ereignisses belegten Stationen ermittelt, die dem im Ereignis
angegebenen Zielarbeitsgang (totech und topass)
entsprechen. Diese Abfrage ist besonders zur Ermittlung der
Zielstationen eines Transfers im Zusammenhang mit lastev zu
sehen. |
| |
| evCmd
job ?jobCmd? |
|
Abfrage oder Setzen des Jobs, der bei diesem Ereignis
betroffen
ist. Bei Transferereignis der bewegte Job, bei ready- und forward-Ereignissen
der fertig gewordene Job, bei supply, create und kill
der bereitgestellte, erzeugte bzw. der gesenkte Job. |
| |
| evCmd
tech ?techCmd? |
|
Abfrage oder Setzen der aktuellen Technologie des vom
Ereignis
betroffenen Jobs (bei transf-Ereignissen die Technologie des
Arbeitsgangs, der verlassen wird). |
| |
| evCmd
pass ?index? |
|
Abfrage oder Setzen des Arbeitsgangindices des vom Ereignis
betroffenen
Jobs (bei transf-Ereignissen der Arbeitsgang, der verlassen
wird).
Die Parameter station, job, tech und pass kennzeichnen
eine Verknüpfung von Job und Station eindeutig, da ein Job nur
einmal
in ein und demselben Arbeitsgang platziert sein darf. |
| |
| evCmd
totech ?techCmd? |
|
Nur bei transf-Ereignissen: Abfrage oder Setzen der
Technologie des Arbeitsgangs, den der betroffene Job als
Hauptarbeitsgang betritt. |
| |
| evCmd
topass ?index? |
|
Nur bei transf-Ereignissen: Abfrage oder Setzen des
Arbeitsgangindices des Arbeitsgangs, den der betroffene Job als
Hauptarbeitsgang betritt. |
| |
| lastev |
|
Ohne Angabe von Optionen gibt lastev den
Objektbefehl evCmd
des zuletzt ausgeführten Ereignisses zurück. Wurde noch kein
Ereignis
ausgeführt oder das Ereignis gelöscht gibt lastev
nichts
zurück ({}), ebenso für jede andere Option, die lastev
übergeben
wird.
Der Befehl hat nur dann Zugriff auf alle Informationen eines
Ereignisses, wenn dieses bereits abgeschlossen ist und sollte daher
nicht innerhalb von Ereignis-Routinen verwendet werden. |
simcron MODELLER 3.4
Copyright © 2025 simcron
27.02.2025
|