PDA

View Full Version : WRKJOBSCDE stündlich starten



Herbie
07-12-04, 12:26
Hallo

Ich muss jede Stunde ein Programm aufrufen , geht so was mit dem WRKJOBSCDE ohne das ich 24 Einträge hinzufügen.

Wäre nett wenn jemand eine Idee hätte

BenderD
07-12-04, 13:00
Hallo,

da gibt es viele Wege, die nach Rom führen:
- einmal am Tag einen Job per Schedule ausführen, der 24 Jobs submitted
- einen Job ausführen, der immer den nächsten submitted
- einen Job, der immer bis zur nächsten Stunde wartet, wenn er fertig ist
...
Die Entscheidung hängt von der genauen Anforderung ab:
- was ist, wenn der Job mal länger als eine Stunde dauert
- was ist, wenn so ein Job hängen bleibt
- was soll sein, wenn einer dieser Jobs abbricht
- was passiert, wenn zwei von den Dingern parallel laufen
um nur ein paar Ideen zu skizzieren.

mfg

Dieter Bender

Hallo

Ich muss jede Stunde ein Programm aufrufen , geht so was mit dem WRKJOBSCDE ohne das ich 24 Einträge hinzufügen.

Wäre nett wenn jemand eine Idee hätte

malzusrex
07-12-04, 13:11
Erstelle Dir einen Eintrag im JobScdE (in meinem Bsp: TESTPGM)
Rufe Dein Proggie nicht direkt auf, sondern zB in folgenden CL



pgm

dcl &Stunde *dec ( 2 0 )
dcl &St *char 2
dcl &NeueZeit *char 10

rtvsysval qhour &St
chgvar &Stunde (&St)
chgvar &Stunde (&Stunde + 1 )
if (&Stunde *eq 24 ) then(do)
chgvar &Stunde 0
enddo
chgvar &St (&Stunde)
chgvar &NeueZeit ( &St *CAT ':15:00' )

call /* HIER DEIN PROGGIE */

chgjobscde TESTPGM scdtime(&NeueZeit)
endpgm


in diesem Fall würde er immer 15 min nach der vollen Stunde dein programm starten und dan jobplanungseintrag einen Stunde vorsetzen

gruß
ronald

Herbie
07-12-04, 15:13
Vielen Dank

Es ist immer wieder toll, wie hier in diesem Forum einem geholfen wird.

holgerscherer
07-12-04, 18:35
Hallo

Ich muss jede Stunde ein Programm aufrufen , geht so was mit dem WRKJOBSCDE ohne das ich 24 Einträge hinzufügen.


Wie wärs mit nem CL:

PGM
DLYJOB RSMTIME('01:00:00')
VONVORNE: SBMJOB CMD(CALL PGM(BLABLA))
DLYJOB DLY(3600)
GOTO CMDLBL(VONVORNE)
ENDPGM

Okok, sehr banal, und nicht gerade Fehlersicher ;-)

-h

sim
08-12-04, 06:37
Oder evtl direkt im RPG ?

z.Bsp wenn schon ein Planungseintrag vorhanden ist.....:


// Eintrag ändern mit neuem Datum / Zeit
SystemRc = system ('CHGJOBSCDE JOB(EMKPFAUTO) ENTRYNBR(' +
%editc(EntryNumber:'X') + ') +
SCDDATE(''' + %char(NxtSbmDate) + ''') +
SCDDAY(*NONE) +
SCDTIME(''' + %char(ScdTime) + ''')');

Joe
09-12-04, 10:36
Hallo.

Lege einmalig einen Eintrag an: ADDJOBSCDE
mit Häufigkeit *ONCE und Startdatum/Zeit.

Dieser Eintrag startet zu gegebener Zeit Deinen Job
der als letzte Anweisung einen ADDJOBSCDE
mit Aktueller Zeit + 1 Stunde ausführt. s.oben.

Gruss Joe