PDA

View Full Version : savsys



HenningSpandau
09-05-11, 09:29
Hallo an alle,
folgendes CL (Ausschnitt) habe ich laufen:
PGM -------------------------
DCL VAR(&TAPE) TYPE(*CHAR) LEN(10) VALUE('TAP01')
ENDSBS SBS(*ALL) OPTION(*IMMED) BCHTIMLMT(300)
MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))

DLYJOB DLY(1200)
SAVSYS DEV(&TAPE) ENDOPT(*LEAVE)
MONMSG MSGID(CPF3785) EXEC(GOTO CMDLBL(DLY))
MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(STRSBS))
---------------------------------

Beim vorletzten Lauf kam die Meldung, dass aktive Daten auf dem Band sind, woraus ich schließe, dass der SAVSYS angelaufen ist.
Beim letzten Lauf war immer der CPF3785, so dass der SAVSYS garnicht erst anlief.

Wiese werden die Subsystem nicht beendet. Das CL lief auf der Jobwartschlange im QCTL.

Bitte um Hilfe
Henning

Pikachu
09-05-11, 09:47
Vielleicht war ein Gruppenjob aktiv. Wie man die Subsysteme richtig beendet, steht im Quelltext des von IBM gelieferten Programms QMNSRBND (Quelltext abrufbar mit RTVCLSRC).

HenningSpandau
09-05-11, 09:57
Hallo Pikachu,
danke für die schnelle Antwort. Ich schaue mir das mit den Gruppenjobs an.

Danke
Henning

Andreas Herzfeldt
09-05-11, 12:00
Hallo Henning, ich hatte das gleiche Symptom mit dem ENDSBS *ALL. Beende doch vor dem ENDSBS *ALL per ENDSBS mit *IMMED alle laufenden Subsysteme und starte den ENDSBS_ALL zweimal mit MONMSG Abfrage :

ENDSBS SBS(*ALL) OPTION(*IMMED) ENDSBSOPT(*NOJOBLOG) BCHTIMLMT(300)
MONMSG MSGID(CPF0000)
DLYJOB DLY(300)

ENDSBS_A1:
ENDSBS SBS(*ALL) OPTION(*IMMED) ENDSBSOPT(*NOJOBLOG) BCHTIMLMT(300)
MONMSG MSGID(CPF1035) EXEC(DO)
DLYJOB DLY(60)
GOTO CMDLBL(ENDSBS_A1)
ENDDO
MONMSG MSGID(CPF1001 CPF1032 CPF1033 CPF1034
CPF1036 CPF1037 CPF1038 CPF1052 CPF1053
CPF1054 CPF1055 CPF1056 CPF1081 CPF1091
CPF18C3) EXEC(GOTO CMDLBL(ENDSBS_OK))

ENDSBS_OK: DLYJOB DLY(10)

MFG

Andreas

HenningSpandau
16-05-11, 08:35
Hallo Henning, ich hatte das gleiche Symptom mit dem ENDSBS *ALL. Beende doch vor dem ENDSBS *ALL per ENDSBS mit *IMMED alle laufenden Subsysteme und starte den ENDSBS_ALL zweimal mit MONMSG Abfrage :

ENDSBS SBS(*ALL) OPTION(*IMMED) ENDSBSOPT(*NOJOBLOG) BCHTIMLMT(300)
MONMSG MSGID(CPF0000)
DLYJOB DLY(300)

ENDSBS_A1:
ENDSBS SBS(*ALL) OPTION(*IMMED) ENDSBSOPT(*NOJOBLOG) BCHTIMLMT(300)
MONMSG MSGID(CPF1035) EXEC(DO)
DLYJOB DLY(60)
GOTO CMDLBL(ENDSBS_A1)
ENDDO
MONMSG MSGID(CPF1001 CPF1032 CPF1033 CPF1034
CPF1036 CPF1037 CPF1038 CPF1052 CPF1053
CPF1054 CPF1055 CPF1056 CPF1081 CPF1091
CPF18C3) EXEC(GOTO CMDLBL(ENDSBS_OK))

ENDSBS_OK: DLYJOB DLY(10)

MFG

Andreas

Hallo Andreas,
nun lief meine Sicherung bis einschließlich SAV. Wobei das QSYSPRT übergelaufen ist.
habe nun den Job ohne *print laufen.

Ich hatte eine pwrdwnsys *immed unter go power, der hat leider nicht gezogen.

Kannst Du mir sagen, warum nicht.

Danke
Henning

Andreas Herzfeldt
16-05-11, 08:40
Hallo Henning, um das überlaufen des QSYSPRT zu vermeiden,
würde ich einen CHGPRTF FILE(QSYSPRT) MAXRCDS(*NOMAX)
durchführen. Das GO POWER kann m.E. nicht funktionieren, da das System im eingeschränkten Zustand steht, bau doch in das Sicherungsprogramm einen PWRDWNSYS mit Restart oder STRSBS QCTL ein.

Andreas

HenningSpandau
16-05-11, 08:54
Hallo Andreas,

die Idee mit pwrdwnsys im CL ist super.

Danke
Henning