Job Scheduler Erste Seite |
| JavaJavaScriptVBScriptPerl | Javadoc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
Job_chain – Jobkette zur Auftragsverarbeitung
Beispiel in javascriptvar my_job_chain = spooler.create_job_chain(); my_job_chain.name = "Jobkette"; my_job_chain.add_job( "job_100", 100, 200, 999 ); my_job_chain.add_job( "job_200", 200, 1000, 999 ); my_job_chain.add_end_state( 999 ); my_job_chain.add_end_state( 1000 ); spooler.add_job_chain( my_job_chain );
Eine Jobkette (Job_chain) ist eine Kette von Jobs (Jobkettenknoten oder Stellen). Diese Kette wird von Aufträgen ( Jeder Stelle in der Jobkette ist ein Zustand und ein Job zugeordnet. Wenn ein Auftrag der Jobkette hinzugefügt wird, setzt der Scheduler ihn an die seinem Zustand entsprechende Stelle. Der dieser Stelle zugeordnete Job führt den Auftrag aus. Jede Stelle hat außerdem einen Folgezustand und einen Fehlerzustand. Nach der Verarbeitung eines Auftrags durch einen Jobschritt ändert der Scheduler den Zustand des Auftrags. Wenn der Jobschritt (spooler_process) true liefert, stellt der Scheduler den Folgezustand, sonst den Fehlerzustand ein. Der Auftrag rutscht damit an eine andere Stelle der Jobkette, die dem neuen Zustand zugeordnet ist. Das gilt nicht, wenn der Zustand während der Ausführung mit Sie erzeugen eine Jobkette mit Jeder Knoten ist eindeutig einem Zustand zugeordnet. Für jeden Zustand muss genau einmal
add_end_stateFügt der Jobkette einen Endknoten hinzu
Diesem Knoten ist kein Job zugeordnet. Ein Auftrag, der einen Endknoten erreicht, hat die Jobkette durchlaufen und wird vom Scheduler aus ihr entfernt. Parameter
add_jobErweitert die Jobkette um einen Job
Parameter
add_or_replace_orderGibt einen Auftrag in die Jobkette und ersetzt ggfs. einen mit gleicher Kennung
Hat die Jobkette bereits einen Auftrag mit gleicher Kennung, dann wird dieser ersetzt. Genauer: Er wird aus der Jobkette entfernt, und der neue Auftrag wird hinzugefügt. Solange eine Task den vorhandenen Auftrag ausführt, sind im Scheduler zwei Aufträge mit gleicher Kennung vorhanden. Allerdings ist der vorhandene Auftrag aus der Jobkette und aus der Datenbank bereits entfernt. Er ist nur noch für die Task nutzbar und verschwindet nach der Ausführung. In diesem Fall wartet der Scheduler die Ausführung des neuen Auftrags ab, bis die Ausführung des alten Auftrags beendet ist. Siehe Parameter
add_orderGibt einen Auftrag in die Jobkette
Wenn der Auftrag in einer anderen Jobkette enthalten ist, entfernt der Scheduler ihn daraus. Der Auftrag wird in die Auftragswarteschlange des Jobs, der seinem Zustand entspricht, gemäß seiner Priorität eingeordnet. Die Jobkette mit muss Wenn die Jobkette bereits einen Auftrag mit gleicher Parameter
RückgabeOrder nameName der Jobkette
Beispiel in javascriptvar job_chain = spooler.create_job_chain(); job_chain.name = "Jobkette"; Parameter
nodeDer Jobkettenknoten zum angegebenen Zustand
Parameter
RückgabeJob_chain_node order_countAnzahl der Aufträge in der Jobkette
order_queue= node(state).job().order_queue()
Liefert die Auftragswarteschlange des Jobs, der dem angegebenen Zustand zugeordnet ist. Parameter
RückgabeOrder_queue orders_recoverable
Siehe Parameter
removeEntfernt die Jobkette
Wenn gerade Aufträge der Jobkette verarbeitet werden (in Die Aufträge bleiben in der Datenbank erhalten. Wenn später eine Jobkette mit gleichen Namen hinzugefügt wird ( Meldungentitle
Siehe Parameter
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Zuletzt geändert von Joacim Zschimmer, 2008-04-29 |