MPE/IX Patch Analysis Script

The Patch Analysis Script below will compare your current system’s patches to the latest available and provide you with a list of recommended patches to apply. Included with this list will be the text descriptions of each patch so you may review what each one will fix. For an explanation of the script, Click Here.

  • You must be signed on as MANAGER.SYS on the HP3000 in order to execute this script and it is best to run it somewhere other than the console.
  • Copy the script in the window below and paste it into a session window on your HP3000. Be sure your session is at a command prompt before you paste.
  • Please be patient. The script will take several minutes to run. You will see a lot of activity occurring on the terminal screen while this script runs.
  • When finished the script should display (on your terminal) the information needed for our system to review your current operating system patches and make suggestions as to what patches to apply.
  • Select and copy the output from the script (where indicated) and proceed to the Next Screen.

Questions or problems should be directed to support@beechglen.com. All programs, utilities, and command files are supplied as-is. Use them at your own risk. While we have used and tested each utility in our lab there is no guarantee that they will work in all environments. Copy the following script and paste it into a session window on your HP3000.

# NOTE: This script is NOT designed to be :XEQ'd but is designed
# to be copy and pasted by the logged on user at the colon prompt.
# The workfile 'patchwk0' is used to intercept the pasted
# script and its output and by doing so 'hide' the output. If you
# want to :XEQ (execute) this script so as to see the output, just
# remove the first 14 and last 3 lines, all of which are related to
# the copy and paste, hide the output scheme.
if finfo("patchwk0","exists")
continue
purge patchwk0
continue
purge patchwk0,temp
endif
print >>patchwk0
echo PATCHWRK v1.7 HP e3000 MPE/iX 5.5+. Beechglen Development, Inc.
setvar _x_patchwrk_v " [patchwrk v 1.8]"
echo Uses editor,hpswinfo,nmmaint (in pub.sys) and psswinvp.pred.sys
echo and temp file PATCHWK0 and perm files PATCHWK1 thru PATCHWK9.
echo PATCHWK0 and PATCHWK9 are preserved.
echo PATCHWRK typically runs in 2 to 7 minutes. It is now !hptimef.
echo
echo Suggestion: ALTPROC 0;PRI=238 or 253 BEFORE executing this
echo script online so as to not 'hog' the CPU during its execution.
echo
echo Note: This script is case sensitive so alter it carefully.
setvar _x_starthptimef hptimef
setvar _x_starthpcpumsecs hpcpumsecs
setvar _x_oldhpmsgfence hpmsgfence
#Some 5.5 system do not have hpmsgfence 17 option to suppress output.
setvar _x_mpeix_oslevel str(hprelversion,3,2)
if "!_x_mpeix_oslevel" = "60" &
or "!_x_mpeix_oslevel" = "65" &
or "!_x_mpeix_oslevel" = "70" &
or "!_x_mpeix_oslevel" = "75"
setvar hpmsgfence 17
elseif "!_x_mpeix_oslevel" = "55"
setvar hpmsgfence 1
else
echo
echo Sorry, only MPE/iX versions 5.5 through 7.5 can be processed.
echo You are currently running MPE/iX version: !_x_mpeix_oslevel
setvar hpmsgfence _x_oldhpmsgfence
return
endif
if pos("PM","!hpusercapf") = 0 &
or pos("MR","!hpusercapf") = 0 &
or pos("DS","!hpusercapf") = 0 &
or pos("PH","!hpusercapf") = 0 &
or pos("IA","!hpusercapf") = 0 &
or pos("BA","!hpusercapf") = 0
echo You have insufficient capabilties to run psswinvp.pred.sys.
echo Script stopped. Logon as MANAGER.SYS and re-xeq PATCHWRK.
setvar hpmsgfence _x_oldhpmsgfence
return
endif
setvar _x_filein_eof finfo("hpswinfo.pub.sys","eof")
if finfo("patchwk1","exists")
purge patchwk1
endif
echo PATCHWRK: !hptimef, Copy HPSWINFO.PUB.SYS and edit for input...
# Copy vs print? A 'copy' udc could interfere but copy is efficient.
if finfo("hpswinfo.pub.sys","exists")
copy hpswinfo.pub.sys,patchwk1
file patchwk1=patchwk1,old
else
echo *************************************************
echo Your HPSWINFO.PUB.SYS file is missing. PATCHWRK
echo cannot continue without this input file. Ended.
echo *************************************************
return
endif
if finfo("patchwk2","exists")
purge patchwk2
endif
#patchwk2 Using Editor to sanitize input file of 'trouble' chars
build patchwk2;rec=-80,,f,ascii;disc=10
file patchwk2=patchwk2,old
echo make patchwk2 eof non-zero so texting does not fail >*patchwk2
echo t patchwk1 >*patchwk2
echo cq '34 to "^^" in all >>*patchwk2
echo cq '39 to "^" in all >>*patchwk2
echo cq "!" to "!!" in all >>*patchwk2
echo cq ">" to "!>" in all >>*patchwk2
echo cq "<" to "!<" in all >>*patchwk2
echo keep patchwk1,unn >>*patchwk2
run editor.pub.sys <*patchwk2 > $null
if finfo("patchwk3","exists")
purge patchwk3
endif
build patchwk3;rec=-80,,f,ascii;disc=!_x_filein_eof;msg
file patchwk3=patchwk3,old
print patchwk1;page=0 >*patchwk3
# 7.0 (vanilla) has msgfile finfo eof bug; hence the 'mpeix70 stuff
setvar _x_mpeix70eof (finfo("patchwk1","eof"))
setvar _x_mpeix70loop _x_mpeix70eof
if finfo("patchwk9","exists")
purge patchwk9
endif
build patchwk9;rec=-80,,f,ascii;disc=200
file patchwk9=patchwk9,old
setvar _x_filein_pntr 0
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
setvar _x_beg_found ""
setvar _x_id_cnt 0
setvar _x_patchid_previous ""
echo PATCHWRK: !hptimef, Process the HPSWINFO information...
while finfo("patchwk3","eof") <> 0 and _x_mpeix70loop > 0
setvar _x_filein_pntr (_x_filein_pntr + 1)
input _x_filein_rec <*patchwk3
if _x_filein_pntr = 3
setvar _x_filein_rec &
repl("!_x_filein_rec","*"," ")
setvar _x_filein_rec ltrim(rtrim("!_x_filein_rec",' '),' ')
setvar _x_header_info _x_filein_rec
endif
if _x_filein_pntr = 4
setvar _x_filein_rec &
repl("!_x_filein_rec","*"," ")
setvar _x_filein_rec ltrim(rtrim("!_x_filein_rec",' '),' ')
setvar _x_header_info _x_header_info + " & " + _x_filein_rec
setvar _x_header_info &
repl("!_x_header_info"," "," ")
echo *Start copying on THIS line.* >>*patchwk9
echo HPSUSAN = !HPSUSAN !_x_patchwrk_v >>*patchwk9
echo !HPRELVERSION ~ !HPOSVERSION ~ !HPVERSION ~ !HPCPUNAME &
>>*patchwk9
echo ULIMIT ~ !HPUSERLIMIT ~ !HPDATEF >>*patchwk9
echo !_x_header_info >>*patchwk9
endif
if _x_filein_pntr > 100
if _x_beg_found <> "THE REMAIN"
setvar _x_beg_found str("!_x_filein_rec",1,10)
endif
if _x_beg_found = "THE REMAIN"
if pmatch('??????#? ?',str("!_x_filein_rec",1,11))
if str("!_x_filein_rec",1,4) <> " "
setvar _x_patchid str("!_x_filein_rec",1,8)
#the following bypasses AUTOPAT repetitive id listings
if _x_patchid <> _x_patchid_previous
setvar _x_patchid_previous _x_patchid
setvar _x_id_cnt _x_id_cnt + 1
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + _x_patchid + ","
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
else
setvar _x_list_rec _x_list_rec + _x_patchid
echo !_x_list_rec >>*patchwk9
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
endif
endif
endif
endif
if "!_x_mpeix_oslevel" = "70"
setvar _x_mpeix70loop (_x_mpeix70loop - 1)
endif
endwhile
if "!_x_list_rec" <> ""
echo ![rtrim("!_x_list_rec",",")] >>*patchwk9
endif
echo These products may require additional patches: >>*patchwk9
if not finfo ("psswinvp.pred.sys","exists")
echo ***********************************************************
echo PSSWINVP.PRED.SYS not found. Additional software that may
echo require patches cannot be identifed. Reporting is incomplete.
echo ***********************************************************
echo Report is incomplete, PSSWINVP.PRED.SYS not found. >>*patchwk9
#Now save the patch id count and then setup product counter vars to
#zero. When PSSWINVP.PRED.SYS IS found, it establishes these at
#zero and then outputs COMPLETE lines of info (7 products). Any
#incomplete lines (less than 7) remain 'buffered' in the variable
# _x_list_rec and are 'filled out' with NMMAINT discovered products
#or at near scripts end, when all is done, any INCOMPLETE lines
#(less than 7) are output. In this case, there is no PSSWINVP
#program and we need to initialize the counters and
#buffers as is done in the first part of PSSWINVP processing.
setvar _x_patch_id_cnt _x_id_cnt
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
setvar _x_id_cnt 0
else
reset input > $NULL
# OS 7.0 displays a bunch of testing data in psswinvp
# file size need to be larger than was created earlier in script
if finfo("patchwk4","exists")
purge patchwk4
endif
build patchwk4;rec=-80,,f,ascii;disc=15000
file patchwk4=patchwk4,old
echo PATCHWRK: !hptimef, Run PSSWINVP (software rep) for output...
if "!_x_mpeix_oslevel" = "65" &
or "!_x_mpeix_oslevel" = "70"
setvar hpcierr 0
continue
run psswinvp.pred.sys;xl="xl.pred.sys,diagxl.pred.sys">*patchwk4
if hpcierr = 625
purge patchwk4
build patchwk4;rec=-80,,f,ascii;disc=15000
file patchwk4=patchwk4,old
run psswinvp.pred.sys >*patchwk4
endif
elseif "!_x_mpeix_oslevel" = "75"
setvar hpcierr 0
setvar patxllst "LIBPG,LIBPL,LIBGS,STMXL"
setvar patxllst ("!PATXLLST,MPESTM,SOCKET,LIBSTSEC")
setvar patxllst ("!PATXLLST,DIAGXL,SVIPC,LIBIOXL")
run psswinvp.pred.sys;xl="!patxllst" >*patchwk4
if hpcierr = 625
purge patchwk4
build patchwk4;rec=-80,,f,ascii;disc=15000
file patchwk4=patchwk4,old
run psswinvp.pred.sys >*patchwk4
endif
else
setvar hpcierr 0
run psswinvp.pred.sys;xl="xl.pred.sys,xl.diag.sys">*patchwk4
endif
pause 1
echo PATCHWRK: !hptimef, Copy PSSWINVP output and edit for input...
#patchwk5 Using Editor to sanitize input file of 'trouble' chars
if finfo("patchwk5","exists")
purge patchwk5
endif
build patchwk5;rec=-80,,f,ascii;disc=10
file patchwk5=patchwk5,old
echo make patchwk5 eof non-zero so texting does not fail >*patchwk5
echo t patchwk4 >*patchwk5
echo cq '34 to "^^" in all >>*patchwk5
echo cq '39 to "^" in all >>*patchwk5
echo cq "!" to "!!" in all >>*patchwk5
echo cq ">" to "!>" in all >>*patchwk5
echo cq "<" to "!<" in all >>*patchwk5
echo keep patchwk4,unn >>*patchwk5
run editor.pub.sys <*patchwk5 > $null
if finfo("patchwk6","exists")
purge patchwk6
endif
build patchwk6;rec=-80,,f,ascii;disc=15000;msg
file patchwk6=patchwk6,old
print patchwk4;page=0 >*patchwk6
setvar _x_mpeix70eof finfo("patchwk6","eof")
setvar _x_mpeix70loop _x_mpeix70eof
setvar _x_patch_id_cnt _x_id_cnt
setvar _x_filein_pntr 0
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
setvar _x_beg_found 0
setvar _x_end_found 0
setvar _x_id_cnt 0
echo PATCHWRK: !hptimef, Process PSSWINVP (software rep) output...
while finfo("patchwk6","eof") <> 0 and _x_mpeix70loop > 0
setvar _x_filein_pntr (_x_filein_pntr + 1)
input _x_filein_rec <*patchwk6
if _x_beg_found = 0
setvar _x_beg_found pos("Fully inst","!_x_filein_rec")
endif
if _x_end_found = 0
setvar _x_end_found pos("partially ins","!_x_filein_rec")
endif
if _x_beg_found > 0 and _x_end_found = 0
if pmatch('???????@ @',str("!_x_filein_rec",1,11))
if str("!_x_filein_rec",1,4) <> " " &
and str("!_x_filein_rec",1,4) <> "----" &
and str("!_x_filein_rec",1,8) <> "Product#"
setvar _x_id_cnt _x_id_cnt + 1
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec &
+ str("!_x_filein_rec",1,8) +","
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
else
setvar _x_list_rec _x_list_rec + str("!_x_filein_rec",1,8)
echo !_x_list_rec >>*patchwk9
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
endif
endif
if "!_x_mpeix_oslevel" = "70"
setvar _x_mpeix70loop (_x_mpeix70loop - 1)
endif
endwhile
#begin forcing product id's not reported by psswinvp.pred.sys:
setvar _x_id_cnt _x_id_cnt + 1
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "HP50779 ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
else
setvar _x_list_rec _x_list_rec + str("!_x_filein_rec",1,8)
echo !_x_list_rec >>*patchwk9
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
#Scan NMMAINT output to determine what network software products
#exist (since the software inventory report does not list these)
#and add the corresponding software products to the output list.
if finfo("patchwk7","exists")
purge patchwk7
endif
build patchwk7;rec=-80,,f,ascii;disc=2000
file patchwk7=patchwk7,old
echo PATCHWRK: !hptimef, Gather :NMMAINT output and process it...
if not finfo ("nmmaint.pub.sys","exists")
echo ***********************************************************
echo NMMAINT.PUB.SYS not found. Network related patches that may
echo be needed cannot be identifed. Reporting is incomplete.
echo ***********************************************************
echo Report is incomplete, NMMAINT.PUB.SYS not found. >>*patchwk9
else
nmmaint.pub.sys >*patchwk7
if finfo("patchwk8","exists")
purge patchwk8
endif
build patchwk8;rec=-80,,f,ascii;disc=80
file patchwk8=patchwk8,old
setvar _X_B5426AA "Patchwrk initialized to none"
setvar _X_B5427AA "Patchwrk initialized to none"
setvar _X_STEALTH "Patchwrk initialized to none"
setvar _X_HP30291 "Patchwrk initialized to none"
setvar _X_HP30294 "Patchwrk initialized to none"
setvar _X_PBTCOMN "Patchwrk initialized to none"
setvar _X_PSILAPB "Patchwrk initialized to none"
# Use Editor since on all HPe3000's whereas Posix tools may not be.
echo set quiet; >*patchwk8
echo t patchwk7; >>*patchwk8
echo C '34 TO "^^" IN ALL >>*patchwk8
echo C '39 TO "^" IN ALL >>*patchwk8
echo F FIRST; >>*patchwk8
echo F "VG_NL_VERS" >>*patchwk8
echo C 1/17 TO "SETVAR _X_B5426AA '";C 80/80 TO "'"; >>*patchwk8
echo H *; >>*patchwk8
echo F FIRST; >>*patchwk8
echo D 1; >>*patchwk8
echo F "BT_NL_VERS" >>*patchwk8
echo C 1/17 TO "SETVAR _X_B5427AA '";C 80/80 TO "'"; >>*patchwk8
echo H *,APPEND; >>*patchwk8
echo F FIRST; >>*patchwk8
echo D 2; >>*patchwk8
echo F "FDDI_DRIVER_VER" >>*patchwk8
echo C 1/17 TO "SETVAR _X_STEALTH '";C 80/80 TO "'"; >>*patchwk8
echo H *,APPEND; >>*patchwk8
echo F FIRST; >>*patchwk8
echo D 3; >>*patchwk8
echo F "NRJE.NRJE.SYS" >>*patchwk8
echo C 1/17 TO "SETVAR _X_HP30291 '";C 80/80 TO "'"; >>*patchwk8
echo H *,APPEND; >>*patchwk8
echo F FIRST; >>*patchwk8
echo D 4; >>*patchwk8
echo F "APIVERS" >>*patchwk8
echo C 1/17 TO "SETVAR _X_HP30294 '";C 80/80 TO "'"; >>*patchwk8
echo H *,APPEND; >>*patchwk8
echo F FIRST; >>*patchwk8
echo D 5; >>*patchwk8
echo F "PCI_100BT_NL_VERS" >>*patchwk8
echo C 1/17 TO "SETVAR _X_PBTCOMN '";C 80/80 TO "'"; >>*patchwk8
echo H *,APPEND; >>*patchwk8
echo F FIRST; >>*patchwk8
echo D 6; >>*patchwk8
echo F "WANLAPBVERS" >>*patchwk8
echo C 1/17 TO "SETVAR _X_PSILAPB '";C 80/80 TO "'"; >>*patchwk8
echo H *,APPEND; >>*patchwk8
echo F FIRST; >>*patchwk8
echo D */LAST; >>*patchwk8
echo A 1,HOLD,NOW >>*patchwk8
echo keep patchwk7,unn >>*patchwk8
echo EXIT >>*patchwk8
run editor.pub.sys <*patchwk8 > $null
echo PATCHWRK: !hptimef, Id network related software products...
xeq *patchwk7
if str("!_X_B5426AA",1,10) = "VG_NL_VERS" &
and not str("!_X_B5426AA",29,7) = "** NOT "
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "B5426AA ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "B5426AA"
echo !_x_list_rec >>*patchwk9
setvar _x_list_rec ""
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "VGCOMN ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "VGCOMN"
echo !_x_list_rec >>*patchwk9
setvar _x_list_rec ""
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_ids_per_list_rec 0
endif
endif
if str("!_X_B5427AA",1,10) = "BT_NL_VERS" &
and not str("!_X_B5427AA",29,7) = "** NOT "
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "B5427AA ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "B5427AA"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "VGCOMN ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "VGCOMN"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
if str("!_X_STEALTH",1,15) = "FDDI_DRIVER_VER" &
and not str("!_X_STEALTH",29,7) = "** NOT "
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "STEALTH ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "STEALTH"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
if str("!_X_HP30291",1,13) = "NRJE.NRJE.SYS" &
and not str("!_X_HP30291",29,7) = "** NOT "
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "HP30291 ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "HP30291"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "HP30292 ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "HP30292"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "HP30293 ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "HP30293"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
if str("!_X_HP30294",1,7) = "APIVERS" &
and not str("!_X_HP30294",29,7) = "** NOT "
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "HP30294 ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "HP30294"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
if str("!_X_PBTCOMN",1,17) = "PCI_100BT_NL_VERS" &
and not str("!_X_PBTCOMN",29,7) = "** NOT "
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "ACCCOMN ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "ACCCOMN"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "NIOCDM ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "NIOCDM"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "LNKCOMN ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "LNKCOMN"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "PBTCOMN ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "PBTCOMN"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "INDDAT ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "INDDAT"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "VGCOMN ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "VGCOMN"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
if str("!_X_PSILAPB",1,11) = "WANLAPBVERS" &
and not str("!_X_PSILAPB",29,7) = "** NOT "
if _x_ids_per_list_rec < 7
setvar _x_list_rec _x_list_rec + "PSILAPB ,"
setvar _x_ids_per_list_rec _x_ids_per_list_rec + 1
setvar _x_id_cnt _x_id_cnt + 1
else
setvar _x_list_rec _x_list_rec + "PSILAPB"
echo !_x_list_rec >>*patchwk9
setvar _x_id_cnt _x_id_cnt + 1
setvar _x_list_rec ""
setvar _x_ids_per_list_rec 0
endif
endif
if "!_x_list_rec" <> ""
echo ![rtrim("!_x_list_rec",",")] >>*patchwk9
endif
endif
echo *Stop copying HERE.* Total patches=!_x_patch_id_cnt &
Total products=!_x_id_cnt >>*patchwk9
purge patchwk1
purge patchwk2
purge patchwk3
purge patchwk4
purge patchwk5
purge patchwk6
purge patchwk7
purge patchwk8
setvar hpmsgfence _x_oldhpmsgfence
echo *************************************************************
echo PATCHWRK started at !_x_starthptimef and ended at !hptimef
echo and used ![hpcpumsecs - _x_starthpcpumsecs] CPU milliseconds.
echo *************************************************************
reset patchwk1
reset patchwk2
reset patchwk3
reset patchwk4
reset patchwk5
reset patchwk6
reset patchwk7
reset patchwk8
deletevar _x_@
echo Screen will now be cleared and output listed. If the print
echo command does not get executed, please press return to do so.
echo Copy and paste the output into the Beechglen webpage area
echo provided. After this, enter your valid email address info
echo and press submit to start processing. A report should be
echo emailed to you soon thereafter. The report will have the
echo HPSUSAN number reported in the header. (:SHOWVAR HPSUSAN)
pause 15
echo ![chr(27) + "H" + chr(27) + "J"]
print patchwk9;nonum;page=0
:EOD
echo ![chr(27) + "H" + chr(27) + "J"]
xeq patchwk0