Yes, we have, by using REXX and SMTP.
Via OPC we have scheduled job BLC1DXMB and BLC1DXME (which is dependent on
BLC1DXMB):
//BLC1DXMB JOB (WY0130ASHK3O,7),'UICM/15',
// CLASS=0,GROUP=XXXXXXXX,USER=XXXXXXXX,MSGCLASS=P
/*JOBPARM SYSAFF=E9
//*
//STEP0030 EXEC PGM=IKJEFT01
//SYSPRINT DD DSN=SYSTOR.TSM.QUERY.SCHEDULE,DISP=OLD
//*YSPRINT DD SYSOUT=Z
//SYSTSPRT DD SYSOUT=Z
//SYSTCPD DD DSN=SYSTCP.CONFIGS(TCPDATA),DISP=SHR
//DSCOPT DD DSN=SYSADM.SAMPLIB(ANSSMPOP),DISP=SHR
//DSCLANG DD DSN=SYS1.ADSM.SANSMSG(ANSMENU),DISP=SHR
//SYSTSIN DD *
PROFILE PROMPT
DSMADMC -ID=BATCH -PASSWORD=BATCH -
QUERY EVENT * * BEGINDATE=TODAY-1 BEGINTIME=18:00:00 -
ENDDATE=TODAY ENDTIME=08:00:00 EXCEPTIONSONLY=YES
//BLC1DXME JOB (WY0130ASHK3O,7),'UICM/15',
// CLASS=0,GROUP=XXXXXXXX,USER=XXXXXXXX,MSGCLASS=P
/*JOBPARM SYSAFF=E9
//*
//*******************************************************
//* ADSM Q EVENT DS 'SYSTOR.TSM.QUERY.SCHEDULE'
//* REXX PROCESSING OF MISSED SCHED DATA
//*******************************************************
//*
//PREPARE EXEC PGM=IKJEFT01,DYNAMNBR=10
//SYSPROC DD DSN=SYSTOR.A.REXXEXEC,DISP=SHR
//INFILE DD DSN=SYSTOR.TSM.QUERY.SCHEDULE,DISP=SHR
//F2#OUT DD DSN=&&MAIL,
//*2#OUT DD DSN=SNRRU0.TESTGDG(+1),
// DISP=(NEW,PASS),
//* DISP=(NEW,CATLG),
// DCB=BLKSIZE=133,
// SPACE=(TRK,(30,10),RLSE)
//SYSTSPRT DD SYSOUT=Z
//SYSTSIN DD *
TSMSCHED
//*
//MAIL EXEC PGM=IKJEFT01
//SYSTSPRT DD SYSOUT=*
//NOTE DD DSN=&&MAIL,DISP=SHR
//*OTE DD DSN=SNRRU0.TESTGDG(+1),DISP=SHR
//SYSTSIN DD *
XMIT SNIMVS01.TCPSTNB1 DDNAME(NOTE) NOLOG
//*
systor.a.rexxexec(tsmsched):
/*--REXX----*/
trace r
$cmd1='HELO SNIMVS01'
$cmd2='MAIL FROM:<Ruud.R.vanRuler AT is.shell DOT com>'
$cmd3='RCPT To:<ntbas2 AT mail.shell DOT net>'
$cmd4='Data'
$cmd5='FROM: STORMAN AT is.shell DOT com'
$cmd6='To: ntbas2 AT mail.shell DOT net'
$cmd7= ' '
queue $cmd1
queue $cmd2
queue $cmd3
queue $cmd4
queue $cmd5
queue $cmd6
queue $cmd7
execio 7 diskw f2#out
"EXECIO * DISKR infile (STEM RECORD. FINIS"
do i=1 to record.0
parse var record.i sched . datum tijd .
uid = ''
if sched = 'Scheduled'
then do
i = i + 3
parse var record.i name . node .
if substr(name,1,4) = 'Node'
then do
if node = 'RIJSAP10' then iterate
if node = 'RYSAP330' then iterate
if node = 'LDMS0026' then iterate
if node = 'ROTORA4' then iterate
i = i + 1
parse var record.i status value .
if node = 'RIJU08' then uid = 'WYN862'
if node = 'RIJU10' then uid = 'WYN862'
if node = 'ZTMSAP36' then uid = 'SNWHOS ;SNM755'
if node = 'ZTMDRS33' then uid = 'SNWHOS ;SNM755'
$cmd8='ZCZC'
$cmd9='ID' uid
$cmd10='REF'
$cmd11='ADSM Backup Schedule in Error: 'node
$cmd12= node value 'on' datum tijd
$cmd13='NNNN'
newstack
queue $cmd8
queue $cmd9
queue $cmd10
queue $cmd11
queue $cmd12
queue $cmd13
execio 6 diskw f2#out
delstack
end
end
end
/*queue '*'
execio 1 diskw f2#out '(finis'*/
'free f(infile f2#out)'
exit
hope this will help.
Ruud van Ruler, Shell Information Technology International B.V. - ISES/31
Our Central Data Storage Management home page:
http://sww2.shell.com/cdsm/
> Room 1B/G01
> Dokter van Zeelandstraat 1, 2285 BD Leidschendam NL
Tel : +31 (0)70 - 3034644, Fax 4011, Mobile +31 (0)6-55127646
Email Internet: ruud.r.vanruler AT is.shell DOT com
rvanruler AT hotmail DOT com
R.vanRuler
|