PCS `P50©Ø¾˜ÕK¾ÈÚN@@************************* PCS BATCH STREAM **************** @LS'.SYN $E$C=""" .SYN $LDIR=@$CLST  .IF @$DLST,NE,"$DLST" .SYN $CLST=" " .ENDIF% * ' * GET COPY OF DPTCOMM* '6CC IN="@$$DSCD.S$SYSGEN.DXCMO.DCOMM.P.DPTCOMM", 6, OUT="@$$DSCD.S$SYSGEN.DXCMO.DCOMM.B.B",,  REP=Y" * ' * PROCESS LIST OF PROTOCOLS  * '.SYN $P3780=""! .SYN $R="(@$PROT)" .LOOP % @************************************************* LOOP **** @&.SPLIT LIST="@$R",FIRST=$F,REST=$R&* '6* CHECK FOR "2780". REPLACE WITH "3780" FOR DSR. 6* ' .IF @$F ,EQ, "2780"  .SYN $F="3780"  .ENDIF% * '4* SET $Z TO SKIP, TO AVOID PATCHING 3780 TWICE. 4* '.SYN $Z=""# .IF @$F ,EQ, "3780"  .€ IF @$P3780 ,EQ, "1" .SYN $Z="1"   .ENDIF ! .ENDIF% .IF @$Z ,NE, "1" @**************************** BEGIN 3780 CONDITIONAL ******* @* '$* TEST IF MAP FOR PROTOCOL EXIST$* '.SYN $$LU="""<ALACCESS="@$$DSCD.S$SYSGEN.@$CSNAM.DMAP@$F",PROGRAM=NO < .IF "@$$CC",GT,00000:CM R=ME,M="@$$DSCD.S$SYSGEN.@$CSNAM.DMAP@$F NOT FOUND" :&CM R=ME,M="COMM PATCHING ABORTED" & .STOP % .ENDIF% RL LUNO="@$$LU" * '0* XPS PROTOCOL'S PATCH FILE AGAINST LINKMAP 0,* WITH PROTOCOL PATCHES & ISR PATCHES ,* '2XPS LINK="@$$DSCD.S$SYSGEN.@$CSNAM.LINKMAP",22INPUT ="@$$DSCD.S$SYSGEN.DXCMO.D@$F.P.DPT@$F",2.OUTPUT="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.A", .ERROR=DUMY!* '2XPS LINK="@$$DSCD.S$SYSGEN.@$CSNAM.DMAP@$F",2 .6@.INPUT ="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.A", .2OUTPUT="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.DPT@$F",2ERROR=DUMY!* ',DFP="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.A" ,* '2XPS LINK="@$$DSCD.S$SYSGEN.@$CSNAM.DMAP@$F",24INPUT ="@$$DSCD.S$SYSGEN.DXCMO.DCOMM.P.DPTCMON",44OUTPUT="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.DPTCMON", 4ERROR=DUMY!* '@* IF LISTING DEVICE IS PRESENT SEND ALL PATCH LISTINGS TO IT @* ' .IF @$DLST,NE,"$DLST" J#.DATA @$$DSCD.S$SYSGEN.DXCMO.DCOMM.B.B,EXTEND=YES,REPLACE=YES,SUB=YES J2XB IN="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.DPT@$F", 2 LIST=@$DLST!EC'2XB IN="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.DPTCMON",2 LIST=@$DLST!EC'".SYN D@$F="""""",DSR@$F="""""""$.SYN DCMON="""""",DSRCMON=""""""$.EOD& .ELSE % *  SEND EACHÀ& FILE TO UNIQUE ENTRY UNDER $CLST &* 'J#.DATA @$$DSCD.S$SYSGEN.DXCMO.DCOMM.B.B,EXTEND=YES,REPLACE=YES,SUB=YES J2XB IN="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.DPT@$F", 2 LIST="@$CLST.DPT@$F" EC'2XB IN="@$$DSCD.S$SYSGEN.DXCMO.D@$F.B.DPTCMON",2 LIST="@$CLST.CMN@$F" EC'".SYN D@$F="""""",DSR@$F="""""""$.SYN DCMON="""""",DSRCMON=""""""$.EOD& .ENDIF% @****************************** END 3780 CONDITIONAL ******* @ .ENDIF%  .IF @$F ,EQ, "3780"  .SYN $P3780="1" .ENDIF%  .UNTIL "@$R",EQ,"$R" .REPEAT $ @************************************************ END LOOP * @H".DATA @$$DSCD.S$SYSGEN.DXCMO.DCOMM.B.B,EXTEND=YES,REPLACE=YES,SUB=NOH* '8CM R=ME,M="NUMBER OF BATCHES WITH ERRORS = @$E$PCS" 8LS' .STOP % .EODÀ&* '*  CLEAN UP * '.SYN $F="",$R=""  .SYN $P3780="",$Z=""* '* '* '(* EACH BATCH PROVIDES ITS OWN ERROR(0* NOTIFICATION VIA "CM" & INCREMENTS $E$PCS0(* TO COUNT A BATCH HAVING AN ERROR.(* '2XPS LINK="@$$DSCD.S$SYSGEN.@$CSNAM.LINKMAP", 2. INPUT="@$$DSCD.S$SYSGEN.DXCMO.DCOMM.B.B",.6 OUTPUT="@$$DSCD.S$SYSGEN.DXCMO.DCOMM.B.DPTCOMM", 6 ERROR=DUMY * ',DF P =@$$DSCD.S$SYSGEN.DXCMO.DCOMM.B.B,* '2XB I="@$$DSCD.S$SYSGEN.DXCMO.DCOMM.B.DPTCOMM",2 L="@$LDIR.DPTCOMM" * ' .IF @$DLST,NE,"$DLST" *CC IN="@$LDIR.DPTCOMM",OUT=@$DLST,R=Y * DF PATH="@$LDIR.DPTCOMM" .ENDIF% * ' .IF @$E$PCS,NE,"0"2CM R=ME,M="ERROR OCCURED DURING COMM PATCHING"2 .ELSE % CM R=ME, € M="COMM PATCHING COMPLETE".SYN $PROT=""  .ENDIF%  * CLEAN UP SYNONYMS * '* '".SYN $E$C="",$E$PCS="",KIF="" "..SYN IMAGE="",$CLST="",$$DSCP="",SROOT="" ...SYN $$SYS$="",FILMG="",SFILMG="",ROOT="" .* ' *  PROCESS MEMRES PATCHES  * ' .IF @$INS ,GE, "Y" .SYN $INS="" & CM R=ME,M="BEGIN MEMRES PATCHING"& .IF @$DLST,NE,"$DLST" .XB I="@$$DSCD.S$SYSGEN.@$CSNAM.PATCHFIL", . L=@$DLST  .ELSE $ .XB I="@$$DSCD.S$SYSGEN.@$CSNAM.PATCHFIL", . L="@$LDIR.MEMRES" .ENDIF$ .ENDIF% LS'".SYN $INS="",$DLST="",$LDIR="""&.SYN $$DSC$="",$$DSCD="",$CSNAM=""& .STOP %  .ENDIF% * ' .IF @$E$PCS,NE,"0"2CM R=ME,M="ERROR OCCURED DURING COMM PATCHING"2 .ELSE % CM R=ME,