[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Nov 2009
    Beiträge
    10

    SAv21 im Batch

    Hallo,

    kann ich ein save21 im Batch laufen lassen. Wenn ja, wie startet das System die SBS danach?

    Gruß Seribe

  2. #2
    Registriert seit
    Jul 2001
    Beiträge
    2.713
    Zitat Zitat von Seribe Beitrag anzeigen
    kann ich ein save21 im Batch laufen lassen. Wenn ja, wie startet das System die SBS danach?
    Die Suchfunktion hilft. Ab V5R3 gibt es bei ENDSBS einen netten Parameter BCHTIMLMT

    -h

  3. #3
    Registriert seit
    Aug 2006
    Beiträge
    2.114
    Tja ich habe den Job mal gerade aktiv ausprobiert, und hätte eigentlich erwartet das meine Twinax Konsole DSP01 noch funktioniert.

    Ich muß mir mal anshen wo denn der unterschied zwischen den endsbs *all von der Konsole und einem anschließend go save 21 und dem Batchjob sind.

    So habe ich ja im Fehlerfall sprich ein monmsg vergessen oder sonst irgendwas keine Eingriffsmöglichkeiten.

    GG

  4. #4
    Registriert seit
    Aug 2001
    Beiträge
    101
    Zitat Zitat von Seribe Beitrag anzeigen
    Hallo,

    kann ich ein save21 im Batch laufen lassen. Wenn ja, wie startet das System die SBS danach?

    Gruß Seribe
    Hallo Seribe,

    ENDSBS SBS(*ALL) OPTION(*IMMED) BCHTIMLMT(100)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    /* WARTEN BIS SUBSYSTEME BEENDET SIND */
    DLYJOB DLY(300)

    /* 21ER SICHERUNG */
    SAVSYS DEV(&TAPE) ENDOPT(*LEAVE)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    SAVLIB LIB(*NONSYS) DEV(&TAPE) ENDOPT(*LEAVE) +
    ACCPTH(*YES)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    SAVDLO DLO(*ALL) FLR(*ANY) DEV(&TAPE) ENDOPT(*LEAVE)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    SAV DEV(('/qsys.lib/' *TCAT &TAPE *TCAT +
    '.devd')) OBJ(('/*') ('qsys.lib' *OMIT) +
    ('qdls' *OMIT)) OUTPUT(*print) UPDHST(*YES)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    /* SUBSYSTEME STARTEN */
    STRSBS SBSD(QCTL)

  5. #5
    Registriert seit
    Jul 2005
    Beiträge
    1.053
    Gibt es nicht auch die Möglichkeit mittels Cobol ein Modul zu erstellen und "hinter" einer Funktionsnummer zu plazieren und das Save bei Bebarf über die Systemconsole zu starten

    Gruß AS400.lehrling

  6. #6
    Registriert seit
    Jul 2001
    Beiträge
    2.713
    Zitat Zitat von AS400.lehrling Beitrag anzeigen
    Gibt es nicht auch die Möglichkeit mittels Cobol ein Modul zu erstellen und "hinter" einer Funktionsnummer zu plazieren und das Save bei Bebarf über die Systemconsole zu starten
    Hm? Über die Systemkonsole verwendet man GO SAVE,21 oder eben ein kleines CL im QCTL.

    -h

  7. #7
    dino is offline [professional_User]
    Registriert seit
    May 2006
    Beiträge
    341
    Muß mich als "Standard-User" mal kurz mit einer Frage dazwischendrängen:
    1. Fehlt im CL nicht das "STRSBS:"-Label?
    2. Reicht das Starten nur des QCTL am Ende aus oder müssen andere, z.B. QBATCH, QINTER usw. dazugestartet werden?
    Wäre an dieser Stelle nicht das individuelle Startprogramm besser?

  8. #8
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Zur Frage 1: ja

    Zur Frage 2: Die Subsysteme QBASE und QCTL besitzen einen Autostartjob-Eintrag, welcher das Startprogramm startet, dessen Name im Systemwert QSTRUPPGM hinterlegt ist. Das Standard-Startprogramm ist QSTRUP. Dieses Startprogramm QSTRUP startet dann weitere Subsysteme.

  9. #9
    Registriert seit
    Nov 2009
    Beiträge
    19
    Zitat Zitat von Frank.Sobanek Beitrag anzeigen
    Hallo Seribe,

    ENDSBS SBS(*ALL) OPTION(*IMMED) BCHTIMLMT(100)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    /* WARTEN BIS SUBSYSTEME BEENDET SIND */
    DLYJOB DLY(300)

    /* 21ER SICHERUNG */
    SAVSYS DEV(&TAPE) ENDOPT(*LEAVE)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    SAVLIB LIB(*NONSYS) DEV(&TAPE) ENDOPT(*LEAVE) +
    ACCPTH(*YES)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    SAVDLO DLO(*ALL) FLR(*ANY) DEV(&TAPE) ENDOPT(*LEAVE)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    SAV DEV(('/qsys.lib/' *TCAT &TAPE *TCAT +
    '.devd')) OBJ(('/*') ('qsys.lib' *OMIT) +
    ('qdls' *OMIT)) OUTPUT(*print) UPDHST(*YES)
    MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

    /* SUBSYSTEME STARTEN */
    STRSBS SBSD(QCTL)
    Hallo Frank, hallo an alle,
    ich habe dieses CL mit dlyjob 300 laufen lassen. Es sieht so aus, als würde die Zeit nicht reichen, denn nach dieser Zeit kommt der Fehler "Nicht alle Subsysteme beendet".

    Ich denke, bei SAVSYS sollte wenn ein MONMSG vorliegt wieder vor den Befehl DLYJOB gesprungen werden.
    Ist das richtig?

  10. #10
    Registriert seit
    Jul 2001
    Beiträge
    2.713
    Zitat Zitat von HenningSpandau Beitrag anzeigen
    Hallo Frank, hallo an alle,
    ich habe dieses CL mit dlyjob 300 laufen lassen. Es sieht so aus, als würde die Zeit nicht reichen, denn nach dieser Zeit kommt der Fehler "Nicht alle Subsysteme beendet".

    Ich denke, bei SAVSYS sollte wenn ein MONMSG vorliegt wieder vor den Befehl DLYJOB gesprungen werden.
    Ist das richtig?
    Hallo Henning,
    ich habe auch schon interessante Effekte hier gesehen und deshalb ein zweites ENDSBS *ALL *IMMED eingebaut.
    Das Delay habe ich leicht erhöht, musst Du aber experimentieren. Ab V7R1 macht selbst die IBM eine 10-Minuten-Pause. Es kann auch nicht schaden, vorher ein explizites ENDTCP (und evtl Notes etc) einzubauen.

    -h

  11. #11
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Wie IBM das macht kann man hier ansehen: RTVCLSRC QMNSRBND in eine Quellenteildatei und dann in der abgerufenen Quelle nach ENDSBS und ENDJOB suchen.

  12. #12
    Registriert seit
    Nov 2009
    Beiträge
    19
    Bitte klicken Sie auf eines der 'Direkt antworten'-Symbole unten rechts in den Beiträgen, um unkompliziert direkt in der Themenansicht auf einen Beitrag zu antworten.

Similar Threads

  1. Jobs im Batch langsam ... V5R4 ...
    By bode in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 15-12-06, 09:43
  2. SFL im Batch benutzen
    By kuempi von stein in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 05-12-06, 14:13
  3. Systemsicherung im Batch
    By Frank.Sobanek in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 24-11-06, 07:51
  4. SQL-Source geht interaktiv,aber nicht im Batch
    By deni87991 in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 10-08-06, 08:27
  5. STRPCCMD im Batch
    By Swiatopluk in forum IBM i Hauptforum
    Antworten: 15
    Letzter Beitrag: 09-08-06, 09:15

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •