27.04.2013 Views

MVS Jan 2005.p65 - CBT Tape

MVS Jan 2005.p65 - CBT Tape

MVS Jan 2005.p65 - CBT Tape

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

name of the dataset where the expanded listing was stored so<br />

they can view it by other means.<br />

NDVRLIST REXX<br />

/* rexx comment *** start standard header<br />

NDVRLIST Scan Endevor list library and expand listing to human readable<br />

rexx comment *** end standard header */<br />

parse upper arg sys subsys mem<br />

ds = "ENDEVOR.PROD."sys"."subsys".LIST("mem")" /* name dataset/member */<br />

"ALLOC DD(X@X) DA('"ds"') SHR REUSE"<br />

"EXECIO * DISKR X@X (STEM LINE. FINIS"<br />

"FREE DD(X@X)"<br />

do i = 1 to line.Ø<br />

pass = Ø<br />

do until pos("FD"x,line.i) = Ø & pos("FC"x,line.i) = Ø<br />

pass = pass + 1<br />

fdpos = pos("FD"x,line.i)<br />

fcpos = pos("FC"x,line.i)<br />

select<br />

when fcpos > Ø then do /* expand characters */<br />

fccount = x2d(c2x(substr(line.i,fcpos+1,1)))<br />

fcdata = substr(line.i,fcpos+2,1)<br />

line.i = delstr(line.i,fcpos,3)<br />

line.i = insert(fcdata,line.i,fcpos-1,fccount,fcdata)<br />

end<br />

when fdpos > Ø then do /* expand blanks */<br />

fdcount = x2d(c2x(substr(line.i,fdpos+1,1)))<br />

line.i = delstr(line.i,fdpos,2)<br />

line.i = insert(" ",line.i,fdpos-1,fdcount," ")<br />

end<br />

otherwise nop /* leave the line as is */<br />

end /* select */<br />

end /* do until */<br />

end i<br />

tmp = userid()".D"date(J)".T"time(S)<br />

"ALLOC DD(C1PRINT) DA('"Tmp".LIST')",<br />

"REUSE NEW SPACE(1Ø,5) CYL ",<br />

"RELEASE UNIT(VIO) LRECL(133) BLKSIZE(2793Ø) RECFM(F B A)"<br />

"EXECIO" line.Ø "DISKW C1PRINT (STEM LINE. FINIS"<br />

dsn="'"Tmp".LIST'"<br />

x = listdsi(dsn)<br />

"FREE DD(C1PRINT)"<br />

if sysused = Ø then do<br />

say "Program "pgm" not found in ENDEVOR.PROD."sys"."subsys".LIST" ,<br />

", please try again..."<br />

return 12<br />

18 © 2005. Xephon USA telephone (214) 340 5690, fax (214) 341 7081.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!