/* REXX */ PARSE UPPER ARG tr_vsam . x = OUTTRAP('ztrap.','*','NOCONCAT') ADDRESS TSO "LISTCAT ENTRIES('"tr_vsam"') DATA ALL" x = OUTTRAP('OFF') zrc = RC SELECT WHEN zrc = 0 THEN NOP WHEN zrc = 4 THEN DO SAY tr_vsam 'Cluster not found.' SIGNAL Done END OTHERWISE DO x = 1 TO ztrap.0; SAY ztrap.x; END x SIGNAL Done END /* SELECT */ zhdr = '' zmsg1 = '' zmsg2 = '' volsers = '' DO x = 1 TO ztrap.0 IF POS('CLUSTER',ztrap.x) > 0 THEN DO PARSE VAR ztrap.x . 'CLUSTER' v_dsn . v_dsn = STRIP(v_dsn,'L','-') END IF POS('KEYLEN',ztrap.x) > 0 THEN DO PARSE VAR ztrap.x . 'KEYLEN' keylen . keylen = STRIP(keylen,'L','-') END IF POS('RKP',ztrap.x) > 0 THEN DO PARSE VAR ztrap.x . 'RKP' rkp . rkp = STRIP(rkp,'L','-') END IF POS('AVGLRECL',ztrap.x) > 0 THEN DO PARSE VAR ztrap.x . 'AVGLRECL' avglrecl . avglrecl = STRIP(avglrecl,'L','-') END IF POS('CISIZE',ztrap.x) > 0 THEN DO PARSE VAR ztrap.x . 'CISIZE' cisize . cisize = STRIP(cisize,'L','-') END IF POS('MAXLRECL',ztrap.x) > 0 THEN DO PARSE VAR ztrap.x . 'MAXLRECL' maxlrecl . maxlrecl = STRIP(maxlrecl,'L','-') END IF POS('VOLSER',ztrap.x) > 0 THEN DO PARSE VAR ztrap.x . 'VOLSER' volser . volser = STRIP(volser,'L','-') volsers = volsers volser END IF WORDPOS('INDEXED',ztrap.x) > 0 THEN v_type = 'KSDS' IF WORDPOS('NONINDEXED',ztrap.x) > 0 THEN v_type = 'ESDS' IF WORDPOS('NUMBERED',ztrap.x) > 0 THEN v_type = 'RRDS' END x volsers = STRIP(volsers,'B',' ') zhdr = '--AVGLRECL-MAXLRECL-CISIZE-TYPE' zmsg1 = ' ' LEFT(avglrecl,8) LEFT(maxlrecl,8) LEFT(cisize,6) v_type IF v_type = 'KSDS' THEN DO zhdr = zhdr'-KEYLEN-KEYOFF' zmsg1 = zmsg1 LEFT(keylen,6) LEFT(rkp,6) END zmsg2 = '--VOLUMES--' SAY v_dsn SAY zhdr SAY zmsg1 SAY zmsg2 SAY ' ' volsers Done: EXIT zrc