Date
Name
Plattform
Language
Kurzbeschreibung
Owner
Link
17.11.2001
DB2RTERM.REXX
OS/390
REXX
DB2 TERM Util Steuerung per REXX
Gernot Ruban
DB2 ist ein Produkt der
IBM Corporation. Bitte Copyright- und Trademark-Hinweise beachten!
/*REXX****************************************************************/
/* DB2RTERM...: Fuehrt den DB2 TERM UTIL Befehl aus. Wird kein */
/* Argument geliefert, wird der Default (UserID.Jobname)*/
/* aus MVS Areas ermittelt und verwendet. */
/*-------------------------------------------------------------------*/
/* CALLED BY..: IKJEFT01 - TSO */
/* ARGUMENTS..: SSID I - DB2 Subsystem ID */
/* UID I - Utility ID (optional) */
/* CALLS......: D2PABND M - Abend U0001 (Non-ISPF) */
/* FILES......: SYSTSPRT O - Infos aus dieser Prozedur */
/*-------------------------------------------------------------------*/
/* FUNCTION...: (s.o.) */
/*-------------------------------------------------------------------*/
/* HISTORY....: 18.12.96/GR - V1R0 */
/*********************************************************************/
x = MSG("OFF")
/********************************************************************/
/* Header ausgeben */
/********************************************************************/
say copies("#",79)
say "# DB2RTERM - DB2 '-TERM UTIL(id)' Command ausfhren",
" "date("O")" "time()" #";
say copies("#",79)
/********************************************************************/
/* Argumente einlesen (Wert nicht zwingend) */
/********************************************************************/
parse upper arg ssid "," uid
say "Argument 'DB2 Subsystem-ID': "ssid
say "Argument 'Util-ID'.........: "uid
if uid = ""
then do
UserID = UserID()
signal on syntax
Jobname = GET_JOBNAME()
If Jobname = "",
! ( Datatype(Jobname) <> "ALPHA",
& Datatype(Jobname) <> "CHAR")
then do
say "Fehler bei der Ermittlung des Jobnamens."
signal error
end
uid = UserID"."Jobname
end
/********************************************************************/
/* DB2 Terminate Utility Befehlen ausfuehren */
/********************************************************************/
x = MSG("ON")
push "END"
push "-TERM UTIL("uid")"
push "-DIS UTIL("uid")"
address TSO "DSN SYSTEM("ssid")"
x = MSG("OFF")
if rc <> 0
then do
say "Fehler bei der Ausfuehrung des DB2 Command Processors."
say "DSN Return Code = "rc
signal error
end
exit 0
SYNTAX:
say "Syntax-Fehler."
ERROR:
say ""
If Sysvar(SYSISPF) = "NOT ACTIVE"
then do
say "Abbruch der REXX Prozedur DB2RTERM mit U0001."
address ATTACH "D2PABND"
exit 0
end
say "Abbruch der REXX Prozedur DB2RTERM mit RC=20."
exit 20
GET_JOBNAME: Procedure
/* ALLE FELDER SIND BESTANDTEIL DES GENERAL USE PRG'ING INTERFACE */
PSATOLD = '21C'X
TCB = C2D(STORAGE(C2X(PSATOLD),4))
TIOT = C2D(STORAGE(D2X(TCB+12),4))
TIOCNJOB = STRIP(STORAGE(D2X(TIOT),8))
TIOCSTEP = STRIP(STORAGE(D2X(TIOT+8),8))
Return TIOCNJOB
© Gernot Ruban