ZAPDSCB is a batch program that can be used to change the attributes of any existing DASD dataset. Elements that may be changed with the program are:
DCB characteristics
protection status
expiration date
use count
secondary space allocation amount
It is located in File #163 of the CBT tape and is part of a collection of batch programs and TSO commands contributed by Dave Phillips of Ouiedo, FL. He includes this caution in the comments of the program's source:
"... care must be taken using this program - it is about as dangerous as SUPERZAP."
I have extracted the installation jobstream which is a single job to assemble and link-edit ZAPDSCB to an authorized load library. My only changes were those noted as required by the author - specified missing JOB card parameters, changed SOUT PROC parameter from '$' to '*', substituted SYS1.SMPMTS for SYS1.MODGEN library, changed assembler from IEV90 to IEUASM, and changed the target load library to SYS2.LINKLIB. In order to resolve assembly (really JCL errors) I reordered the MACLIB concatenation order and increased the space allocations for the assembler work datasets. The resulting jobstream - zapdscb$.jcl - is contained in the archive zapdscb.tgz [MD5: E087B86622E8AFE76F861CEE88A9FF25]. Download the archive and extract the jobstream (WinZip on Windows/?? or tar on Linux). Submit the jobstream to assemble and link the single load module for ZAPDSCB into SYS2.LINKLIB. If you don't have SYS2.LINKLIB defined, you will need to modify the jobstream to specify a different target load library.
ZAPDSCB can be executed using this jobstream:
//ZAPDSCB JOB (001),'ZAPDSCB',CLASS=A,MSGCLASS=A //ZAPDSCB EXEC PGM=ZAPDSCB //SNAP DD SYSOUT=A SNAP DUMP WHEN I/O ERROR //SYSUDUMP DD SYSOUT=A ABEND DUMP OTHER ERRORS //ZAP0001 DD DSN=... //ZAP0002 DD DSN=... //
ZAPDSCB updates the DSCB's for any datasets allocated with a DD Name beginning with ZAP. The parameters that can be changed by coding them as DD parameters are:
ZAPDSCB uses no files for control or messages; all diagnostics produced are routed to the MVS system console.
I hope that you have found my instructions useful. If you have questions that I can answer to help expand upon my explanations and examples shown here, please don't hesitate to send them to me:
This page was last updated on January 17, 2015 .