COPYRIGHT (C) 1984-2007 MERRILL CONSULTANTS DALLAS TEXAS USA

CHANGE 20.20

 
=========================member=CHANGE20================================
 /* COPYRIGHT (C) 1984-2003 MERRILL CONSULTANTS DALLAS TEXAS USA */

         MXG Version 20.20  is dated Feb  7, 2003, thru Change 20.341.
         MXG Version 20.12 was dated Feb  3, 2003, thru Change 20.335.
         MXG Version 20.11 was dated Jan 30, 2003, thru Change 20.330.
         MXG Version 20.10 was dated Jan  3, 2003, thru Change 20.307.
         MXG Version 20.09 was dated Dec 20, 2002, thru Change 20.299.
         MXG Version 20.08 was dated Dec  4, 2002, thru Change 20.280.
         MXG Version 20.07 was dated Nov  4, 2002, thru Change 20.244.
         MXG Version 20.06 was dated Oct  7, 2002, thru Change 20.215.
         MXG Version 20.05 was dated Sep  6, 2002, thru Change 20.186.
First    MXG Version 20.05 was dated Sep  1, 2002, thru Change 20.177.
         MXG Newsletter FORTY-ONE was dated Sep 1, 2002.
         MXG Version 20.04 was dated Aug 12, 2002, thru Change 20.157.
         MXG Version 20.03 was dated Jun 19, 2002, thru Change 20.111.
         MXG Version 20.02 was dated May  8, 2002, thru Change 20.082.
Final    MXG Version 20.01 was dated Apr 11, 2002, thru Change 20.061.
Second   MXG Version 20.01 was dated Apr  9, 2002, thru Change 20.058.
First    MXG Version 20.01 was dated Apr  1, 2002, thru Change 20.046.
Annual   MXG Version 19.19 was dated Feb 14, 2002, thru Change 19.300.
         MXG Newsletter FORTY was dated Feb 14, 2002.

Contents of member CHANGES:

  Member NEWSLTRS (and the Newsletters frame at http://www.mxg.com) now
  contain the current MXG Technical Notes that used to be put in member
  CHANGES between Newsletters.  New Technical Notes are now added (and
  now dated!) in NEWSLTRS/Newsletters with each new MXG Version.

I.    MXG Software Version 20.20 is now available upon request.
II.   Incompatibilities and Installation of MXG 20.20.
III.  Online Documentation of MXG Software.
IV.   Changes Log

=======================================================================

I.   MXG Software Version 20.20 is now available.

    Major enhancements added in MXG 20.20

  ASMTAPES 20.320  ML-27 now robust, low CPU, sees VTS, no XMEM, etc.
                   ML-27 eliminates the cross memory call and 0E0s,
                   changes interval to 0.5 seconds, which captures
                   all VTS allocations and most VTS mounts
  TYPETMO2 20.335  Support for ASG/TMON CICS V2.2 INCOMPATIBLE.
  TYPEXAM  20.315  Support for Velocity Software's ESAMON VM Monitor 3.2
                   and support for TCP and Linux data almost made it.
  TYPE28   20.316  Support for Tivoli Netview NPM 2.7 SMF 28 records.
  TYPE102  20.336  Support for IFCID=247 in T102S2347 dataset.
  TYPEEDGR 20.331  Support for DFSMSrmm Extended Extract 'X' records.
  TYPEESPH 20.318  Support for Cybermation's ESP Product JOBHIST file.
  TYPESYNC 20.309  Support for SYNCSORT for z/OS 1.1 SMF record.
  IMAC6ESS 20.332  Support for more ESS variables (on OUTPUT statement)
  TYPERMFV 20.334  Numerous enhancements/corrections to RMF III support.
  BUILDPDB 20.330  New CSTORE30,ESTORE30 variables in STEPS,SMFINTRV.
  TYPE30   20.330  New CSTORE30,ESTORE30 variables in TYPE30_4,_5,_V.
  TYPE30   20.310  TYPE30TD now has subtypes 2, 3, and 4 output.
  ANAL116  20.313  Example graphs of MQ Series SMF 116 data.
  VGETJESN 20.326  Type 30s with JCTJOBID='INTnnnnn' protected.
  UNIXSAR  20.314  Enhancements to process unix sar command output.
  VMXGFOR  20.327  All %VMXGFOR were removed, to avoid a SAS zap.
  BUILDPDB 20.319  OMVS task filled //SPIN, had TYPETASK='JOB' in error.
  BUILDPDB 20.310  TYPE30TD now has subtypes 2, 3, and 4 output.
  JCLUOWP  20.312  JCL example for ASUMUOW using Views/Pipes corrected.
  UTILBLDP 20.329  Enhancement if BUILDPDB=NO is specified.
  BLDNTPDB 20.323  Some combinations of arguments didn't work right.
  TYPEOPC  20.321  IBM's OPC Log causes INVALID ARGUMENT TO FUNCTION....
  TYPE79   20.325  TYPE792 was incorrectly deaccumulated.
  TYPESRMH 20.317  Security Resource Manager for MVS V2.3 correction.
  Many     20.324  Semi-colons added after each _Edddddd exit statement.

    Versions 20.11 and 20.12 were QA tests, sent to only a few sites.

    Major enhancements added in MXG 20.10

  TYPE7072 20.307  Errors in TYPE72GO (MXG 20.08-20.09 only) corrected.
  TYPENSPY 20.305  Support for NetSpy Version 6 subtypes G,H (COMPAT).
  TYPEIDMS 20.304  Support for IDMS V1500 new subtypes 13, 14, 15.
  TYPECIMS 20.306  No observations in CIMSDBDS after Change 20.138.

    Major enhancements added in MXG 20.09

  VMAC115  20.288  Support for MQSeries V5.3 (COMPATIBLE) new data.
  VMAC116  20.288  Support for MQSeries V5.3 (COMPATIBLE) new data.
  FORMATS  20.291  Support for APAR OW57121 new SMF 99 trace codes.
  TYPE94   20.283  Support for undoc SMF 94 Subtype 2, heuristically.
  REXXWLM  20.289  Support to read Workload Manager's WLM Defs PDS.
                   A very slick REXX exec and SAS step to output the WLM
                   definitions into a SAS dataset.
  TYPEQACS 20.295  AS/400 CPU times merged in optional QACSCPU dataset.
  ANAL94   20.294  VTS activity reports selection SUBREP= parm added.
  TYPE110  20.293  UNKNOWN STID=115 messages should not exist.
  FORMATS  20.292  Mapping of SAS Procedure Name to Product updated.
  TYPENTSM 20.286  MicroSoft added instance names for SMF objects.
  RMFINTRV 20.297  Workloads can use SYSTEM/SYSPLEX as criteria.

    Major enhancements added in MXG 20.08

  TYPEQACS 20.260  Support for AS/400 5.2 Collection Services (INCOMPAT)
  UTILEXCL 20.256  Major UTILEXCL enhancement, MCTSSDCN/DRL DO grouping,
                   so you don't have to rerun UTILEXCL for new APPLIDs.
  TYPENTSM 20.276  Support for NTSMF new objects from MS Exchange 2000
                   SP3, XP Professional, Citrix, DataCore, MSMQ, and
                   changes to PROCESSOR and MQSERIES objects.
  TYPE94   20.265  SMF 94 FC4001 undoc fields caused wrong values.
  TYPEMVCI 20.263  Support for BMC MVCICS 5.6, fix for 5.5 CMRDETL data.
  TYPETMO2 20.253  Support for ASG-Landmark TMON/V2.1  TH01595 (COMPAT)
  TYPETAND 20.250  Support for Tandem G07 new data, fix TANDPROC G06.
  CONFIGV9 20.252  Support for Version 9 TS M0 Production Release.
  AUTOEXEC 20.252  Support for Version 9 TS M0 Production Release.
  TYPE79   20.274  Support for APAR OW56739, RMF 79 subtype 3.
  TYPE7072 20.274  Support for APAR OW56739, RMF 72 subtype 3.
  GRAFWRKX 20.273  Workload Graph examples include MSU used by workload.
  ANALRMFR 20.277  RMF Channel Activity Report CHP= selectivity added.
  TYPE71   20.259  Medium Impact Frames ESFRMExx are now input in order.
  TYPE119  20.267  TSIPxxxx variables wrong in TYPS11905, other fixes.

    Major enhancements added in MXG 20.07

     Status of ASMTAPES:
       ML-26 tests show no improvement; CPU time same as ML-25, even
       when scan excluded VTS devices.  Update: USE ML-27, in 20.20.
     TYPE73 has PCHANBY/PNCHANBY mising with SMF73CMG=0.
     Support for CICS APAR PQ63143 changes to 110-2 stats; only STID=24
       (for CICAUTO) was INCOMPATIBLY changed.
     Support for RMF 74-4 APAR OW55968 (R744SST 4 to 8-byte).
     Support for APAR OW54010 Large Virtual Memory (>2GB).
     Support for Candle Omegamon for CICS V520 User SMF.
     Support for Control-D "SF2" User SMF record.
     Support for Control-D "POD" User SMF record.
     Circumvention for IDMS Version 1500, no new data yet.
     UTILEXCL USERCHAR variable generated wrong INCLUDE post 20.148
     TYPEDB2 Negative DB2SRBTM with DB2 V7 forced back to missing.
     Trending for TYPE23 (SMF Buffer Usage) was wrong.
     Documentation: Don't use TEMP01 with %VMXGSUM.
     Example of RACF Filtering with TYPE80A and MACJBCK=.
     TYPE80A Support for UID/HOME/PROGRAM OMVS/USS RACF fields.

    Major enhancements added in MXG 20.06

     Status of ASMTAPES:
       ML-25 uses lots more CPU time (30 minutes per day versus 30 secs
       with ML-19) and there is no immediate fix.  Update: Use ML-27.
     Support for APAR OW52396 (no change) SMF 74-7 FICON.
     Support for APAR OW56162 new SMF 64 CATALOG UPDATE.
     Support for SMF 94 subtype 2 and subtype 1 new stuff.
     Support for z/OS 1.4 is in MXG 20.06, but MXG 20.03 or later is all
       that is truly REQUIRED for z/OS 1.4.  The minor 1.4 enhancements
       that are now supported (i.e., decoded) by MXG 20.06 have very
       little impact.  See Change 20.101 for why 20.03 is the minimum,
       and see Change 20.205 for the z/OS 1.4 enhancements.

       However, if you're leading edge enough to be install new releases
       of your operating system, then you surely should install the most
       recent MXG Version (20.06, this week), because of likely changes
       to at least one of your other products; the current MXG is always
       more aware of other product's changes than was the prior version.

       And installing a new MXG Version, now, is very easy, and with no
       changes needed to your MXG tailoring, very simple.


       Note that IBM has announced that the next major z/OS release is
       scheduled for March, 2004 (yes, 18 months), to be followed by a
       release in September, 2004, and thereafter major z/OS releases
       will be annually, each Fall.

       But you can still expect to see a new MXG Version available
       practically every month, as we keep up with constant change in
       the other 399 products whose data records are supported by MXG;
       z/OS itself is but one product.

     Support for SMF 120 subtype 7 and 8 WebSphere 4.0.1.
     Support for BMC's Mainview for DB2 THRDHIST file.
     Support for ASG-Landmark TMON/MVS V3 (INCOMPATIBLE).
     Support for CICS Transaction Resource Class new data.
     Support for SAMS:VANTAGE 3.2.0 OBJ=POOLS record.

    Major enhancements added in MXG 20.05

     ASMTAPES: ML-25 corrects CPU loop or 0C4 in ML-24. Now: Use ML-27.
     Support for Oracle and Analysis Server NTSMF objects.
     Revision/enhancement of MSU calculations in RMFINTRV, ASUM70PR and
        ASUMCEC, plus description of important MSU variables and MXG
        recommendation to use MSU instead of MIPS.  Change 20.168.
     Support for EMC's Catalog Solution user SMF record.
     Technical Note in NEWSLETTER FORTY-ONE: CICS-DB2 ACCOUNTING change.

    Major enhancements added in MXG 20.04:

     ASMTAPES: ML-24. Corrects 0E0 logrec, CPU loop. Update: Use ML-27.
     Support for APAR PQ61349 to SMF 103 records.
     Support for APAR OW54007 to SMF 42 records..
     Support for RMF 74 subtype 7 FICON Port data.
     Support for type 90 subtype 32 in TYPE90A member
     Support for multiple CICS user fields in UTILEXCL.
     Support for IMPLEX Version 2.1 has been coded.
     Landmark TMON/CICS datetimes wrong zone if GMTOFF GT 0.
     Landmark TMON/DB2 datetimes wrong zone if GMTOFF GT 0.
     Support for NTSMF 2.4.4, MODULE Object, Disk pct and Averages.
     Support for NTSMF File System Collector. DCOLLECT for NT!
     New ANALDB2K merges package DB2ACCTP data with DB2ACCT data.

    Major enhancements added in MXG 20.03:

     Support for JES "Z2 Mode" (INCOMPATIBLE JESNR): YOU MUST HAVE THIS
       version before you enable Z2 mode in z/OS 1.2 or later!!!!
     ML-23 of MXGTMNT, skips over list of UCB addresses for VTS devices.
     Support for subtype 27/28 of STK HCS/VSM records.
     Support for many new TNG Platforms (SOL, AIX) etc.
     Support for G06/G08 TANDPROC LRECL=442 (INCOMPAT).
     Support for NTSMF Citrix process record.
     Support for AIX PTX (Performance ToolBox) adds objects/variables.
     GRAFWRKX Enhanced "Weighted LPAR Capacity" Graph/Tabular reports.
     ANALRMFR "RMF HTTP Server Report" multiple servers, etc.
     Domain Error in TYPE78, TYPE79 and TYPE91 were corrected.
     PCHANBY missing for TYPE73 Coupling Facility channels.
     Doc: Variable UOWTIME may look wrong, but it's okay.
     Variable MSU72 created in TYPE72/TYPE72GO.
     EXECAPPL, the "execution" APPLID, added to PDB.ASUMUOW.
     UTILEXCL Final (?) cleanup covers all reported optional data.

    Major enhancements added in MXG 20.02:

     Support for z/OS 1.3 (COMPATIBLE, except SMF 42 needs MXG fix).
       Biggest enhancement: new TYPE4221 dataset records every delete
        of a PDS or PDSE member, and who dun it.
     Support for APAR OW52227 (Active Application State) for WLM.
       New state counters are used, changing percent calculations.
     Support for multiple CICS versions with EXCLUDEs added in UTILEXCL.
     Support for unexpected z/VM record with DATABYTE=0, caused STOP.
     Support for IBM Product NPM/IP monitor user SMF record.
     Support for TMON/CICS TCE 2.1 (COMPLETELY INCOMPATIBLE).
     Support for full LRECL and VBS output for RMF III in ASMRMFV.
     SAS Inherit option created wrong label in ANAL94.

    Major enhancements added in MXG 20.01:

     CPU Busy Pct in TYPE70/TYPE70PR/ASUM70PR wrong with WLM IRD.
       There is no correction yet; see text of Change 20.046.
     Additional corrections to UTILEXCL.
     Support for z800 2066 CPU factors for OS/390 R2.8-R2.10.
     Support for Top Secret V5.2, INCOMPATIBLE.
     Support for Mobius RDS InfoPac Subtypes 6 and 7.
     Support for Oracle OSDI format (8.1.7) SMF record INCOMPATIBLE.
     Support for RMF III Enclave Table ENCG3.
     Support for CA TNG Windows 2000 performance cube.
     New ASUMUOWT creates PDB.ASUMUOW from Landmark TMON + DB2ACCT.
     Enhanced UTILBLDP, examples for only RMFINTRV, only JOBS, etc.
     MXG 19.19 corrections:
      - TYPEIMSA Syntax error:  Two %%VMXGTIME should be %VMXGTIME.
      - AS/400 JBCPU/JBTCPU wrong in QAPMJOBM, IBM doc was wrong.
      - VMXGUOW did not increment SPINCNT for ASUMUOW.
      - If you used the new UTILEXCL utility to create your IMACEXCL, it
        causes ASUMUOW to syntax fail; some computed variables weren't.
        Also, some optional segments were not correctly recognized.
        And it is enhanced to report if you have deleted any variables
        are required to create ASUMUOW.
      - DAILYDSN writes to PDB versus DATASETS; four _P should be _L.
      - JCLTEST6 SAS V6 only, temp var SYS000008 name is too long.
      - VMXGSUM with  OPTIONS OBS=0 could cause errors.


  See member NEWSLTRS or the Newsletters frame at www.mxg.com for
  current MXG Technical Notes that used to be in CHANGES.

  MXG QA test are with SAS V8.2 and (archaic) SAS V6.09 on OS/390, and
  SAS V8.2 on Windows 2000, but previous QA tests on Linux RH 7.2 had
  confirmed MXG's unix compatibility, so MXG should execute under SAS
  V8.2 or later on every possible SAS platform!
  MXG has also executed without error under SAS Version 9 beta, on both
  "MVS" and Windows platforms.


  All of these enhancements are described in the Change Log, below.

    Availability dates for the IBM products and MXG version required:

                                       Availability     MXG Version
      Product Name                     Date              Required

      MVS/ESA 4.1                      Oct 26, 1990         8.8
      MVS/ESA 4.2                      Mar 29, 1991         9.9
      MVS/ESA 4.2.2                    Aug 15, 1991         9.9
      MVS/ESA 4.3                      Mar 23, 1993        10.10
      MVS/ESA 5.1.0 - compatibility    Jun 24, 1994        12.02
      MVS/ESA 5.1.0 - Goal Mode        May  3, 1995        13.01
      MVS/ESA 5.2.0                    Jun 15, 1995        13.05
      MVS/ESA 5.2.2                    Oct 19, 1995        13.09
      OS/390  1.1.0                    Feb 22, 1996        14.01
      OS/390  1.2.0                    Sep 30, 1996        14.05
      OS/390  1.3.0 Compatibility Mode Mar 28, 1997        14.14
      OS/390  1.3.0 WLM Goal Mode      Mar 28, 1997        15.02
      OS/390  2.4.0                    Sep 28, 1997        15.06
      OS/390  2.5.0                    Feb 24, 1998        15.06
      OS/390  2.6.0                    Sep 24, 1998        16.04
      OS/390  2.7.0                    Mar 26, 1999        16.09
      OS/390  2.7.0 APAR OW41317       Mar 31, 2000        18.03
      OS/390  2.8.0                    Aug 24, 1999        16.09
      OS/390  2.8.0 FICON/SHARK        Aug 24, 1999        17.08
      OS/390  2.8.0 APAR OW41317       Mar 31, 2000        18.03
      OS/390  2.9.0                    Mar 31, 2000        18.03
      OS/390 2.10.0                    Sep 15, 2000        18.06
      OS/390  PAV                      Oct 24, 2000        18.09
      z/OS    1.1                      Mar 30, 2001        18.11
      z/OS    1.1 on 2064s             Mar 30, 2001        19.01
      z/OS    1.1 with correct MSU     Mar 30, 2001        19.02
      z/OS    1.2                      Oct 31, 2001        19.04
      z/OS    1.1,1.2 APARs to 78      Oct 31, 2001        19.05
      z/OS    1.2, IRD enhancements    Apr 26, 2002        20.01
      z/OS    1.2+ APAR OW52227        Apr 26, 2002        20.02
      z/OS    1.3+ APAR OW52227        Apr 26, 2002        20.02
      z/OS    1.2 JESNR Z2 MODE        Apr 26, 2002        20.03
      z/OS    1.3 JESNR Z2 MODE        Apr 26, 2002        20.03
      z/OS    1.4 Tolerate             Sep 27, 2002        20.03
      z/OS    1.4 Support              Sep 27, 2002        20.06
      CICS/ESA 3.2                     Jun 28, 1991         9.9
      CICS/ESA 3.3                     Mar 28, 1992        10.01
      CICS/ESA 4.1                     Oct 27, 1994        13.09
      CICS/ESA 5.1 aka CICS/TS V1R1    Sep 10, 1996        14.07
      CICS-Transaction Server V1R1     Sep 10, 1996        14.07
      CICS-TS V1R1 with APAR UN98309   Sep 15, 1997        15.06
      CICS-TS V1R2  CICS/TS 1.2        Oct 27, 1997        15.06
      CICS-TS V1R3  CICS/TS 1.3        Mar 15, 1999        17.04
      CICS-TS for Z/OS Version 2.1     Mar 15, 2001        18.11
      CICS-TS for Z/OS Version 2.2     Jan 25, 2002        19.19
         CICSTRAN subtype 1 support only                  *19.19
         CICSTRAN subtype 2 completed                     *19.08
      CRR 1.6                          Jun 24, 1994        12.02
      CRR 1.7                          Apr 25, 1996        14.02
      DB2 2.3.0                        Oct 28, 1991        10.01
      DB2 3.1.0                        Dec 17, 1993        13.02A
      DB2 4.1.0 Tolerate               Nov  7, 1995        13.07
      DB2 4.1.0 Full support           Sep 11, 1996        14.07
      DB2 5.1.0 Tolerate               Jun 27, 1997        14.14
      DB2 5.1.0 Full support           Jun 27, 1997        15.02
      DB2 6.1.0 initial support        Mar 15, 1999        16.09
      DB2 6.1.0 all buffer pools       Mar 15, 1999        18.01
      DB2 6.1.0 parallel DB2           Mar 15, 1999        19.19
      DB2 7.1.0 parallel DB2           Mar 30, 2001        19.19
      DB2 7.1.0 corrections            Mar 30, 2001        20.06
      DFSMS/MVS 1.1                    Mar 13, 1993        11.11
      DFSMS/MVS 1.2                    Jun 24, 1994        12.02
      DFSMS/MVS 1.3                    Dec 29, 1995        13.09
      DFSMS/MVS 1.4                    Sep 28, 1997        15.04
      DFSMS/MVS 1.4 HSM                Sep 23, 1998        16.04
      DFSMS/MVS 1.5                    ??? ??, 1999        16.04
      MQM 1.1.2, 1.1.3, 1.1.4          Apr 25, 1996        14.02
      MQ Series 1.2.0                  May 26, 1998        16.02
      MQ Series 2.1.0                  Oct  2, 1999        17.07
      MQ Series 5.2                    Dec 16, 2000        18.10
      NETVIEW 3.1 type 37              ??? ??, 1996        14.03
      NPM 2.0                          Dec 17, 1993        12.03
      NPM 2.2                          Aug 29, 1994        12.05
      NPM 2.3                          ??? ??, 1996        15.08
      NPM 2.4                          Nov 18, 1998        17.01
      NPM 2.5                          Feb ??, 2000        18.02
      NPM 2.6                          Nov ??, 2001        19.06
      NTSMF 2.4.4                      Aug  9, 2002        20.04
      RMDS 2.1, 2.2                    Dec 12, 1995        12.12
      RMDS 2.3                         Jan 31, 2002        19.11
      TCP/IP 3.1                       Jun 12, 1995        12.12
      TCP/IP 3.4                       Sep 22, 1998        16.04
      DOS/VSE POWER V6.3.0             Dec 19, 1998        16.08
      VM/ESA  2.0                      Dec 23, 1992        10.04
      VM/ESA  2.1                      Jun 27, 1993        12.02
      VM/ESA  2.2                      Nov 22, 1994        12.06
      VM/ESA  2.3                      Jun  1, 1998        16.08
      VM/ESA  2.4                      Mar  1, 2001        19.03
      z/VM    3.1                      Mar  1, 2001        19.03
      z/VM    3.1 DATABYTE=0           May  2, 2002        20.02
      z/VM    4.2 ??                   May  2, 2002        20.02
      IMS     4.1                      Jul  4, 1994        12.02
      IMS     5.1                      Jun  9, 1996        14.05
      IMS     6.1                      ???  ?, 199?        20.01
      IMS     7.1                      ???  ?, 199?        20.01
      AS400 3.7.0                      Nov  1, 1996        15.01
      AS400 4.1.0                      Dec 30, 1996        15.08
      AS400 4.2.0                      Apr 27, 1998        16.02
      AS400 4.4.0                      Sep 27, 1999        17.07
      AS400 4.5.0                      Jul 27, 2000        18.07

    Note: An asterisk before the version number indicates that this
          entry was changed to a later version of MXG being required,
          after it was found that the previous version did not support
          the listed product level, usually the result of an APAR to
          the product that modified the products data records.
          Or a coding error in MXG could be the reason for the change!

    Availability dates for non-IBM products and MXG version required:

                                                        MXG Version
      Product Name                                       Required

      SAS Institute
       MXG executes best under SAS Version 8.2, with 82BA77 HOTFIX for
         MVS-OS/390-z/OS which includes Critical fixes; see NEWSLTRS.
         It has executed succesfully under SAS Version 9 Beta on both
         MVS and Windows platforms.
       See Newsletters for expanded discussion of other versions.
       Read member NEWSLTRS (search 'V8') for SAS Version 8 notes.

      Microsoft
       Windows NT 4.0 and NT 3.51                          14.14
       Windows NT 4.0 Service Pack 2                       15.03
       Windows NT 4.0 Service Pack 5                       16.04
       Windows 2000 Build 2195                             17.10
      Demand Technology
       NTSMF Version 1 Beta                                14.11
       NTSMF Version 2.0                                   15.05
       NTSMF Version 2.1                                   15.06
       NTSMF Version 2.2                                   16.04
       NTSMF Version 2.3                                   17.10
      Landmark
       The Monitor for DB2 Version 2                       13.06
       The Monitor for DB2 Version 3.0                     16.02
       The Monitor for DB2 Version 3.1                     20.04
       The Monitor for CICS/ESA 1.2 -                      12.12
       The Monitor for CICS/ESA 1.3 -                      15.01
       The Monitor for CICS/ESA 2.0 -                      15.06
       The Monitor for CICS/ESA 2.1 -                      20.04
       The Monitor for MVS/ESA 1.3  -                      12.05
       The Monitor for MVS/ESA 1.5  -                      12.05
       The Monitor for MVS/ESA 2.0  -                      15.09
       The Monitor for MVS/ESA 3.0  -                      19.19

      Candle
       Omegamon for CICS V200 User SMF                     12.05
       Omegamon for CICS V300 User SMF                     13.06
       Omegamon for CICS V400 User SMF                     16.02
       Omegamon for CICS V400 type 110 segments            16.02
       Omegamon for CICS V500 User SMF                     18.01
       Omegamon for IMS V110 (ITRF)                        12.12
       Omegamon for IMS V300 (ITRF)                        14.04
       Omegamon for MVS V300                               13.05
       Omegamon for MVS V400                               13.06
       Omegamon for DB2 Version 2.1/2.2                    13.05
       Omegamon for VTAM V160                              12.04A
       Omegamon for VTAM V400                              15.15
       Omegamon for VTAM V500                              18.08
       Omegamon for SMS V100/V110                          12.03
      CA
       ACF2 6.2                                            16.04
       ASTEX 2.1                                           14.04
       NETSPY 4.7                                          14.03
       NETSPY 5.0                                          14.03
       NETSPY 5.2                                          16.05
       NETSPY 5.3                                          18.03
      Boole & Babbage
       IMF 3.1 (for IMS 5.1)                               12.12
       IMF 3.2 (for IMS 6.1 only)                          15.09
       IMF 3.2 (for IMS 5.1 and 6.1+)                      16.04
      Memorex/Telex
       LMS 3.1                                             12.12A
      MXG IMS-Log Not-Officially-Supported
       IMS 7.0  -   ASMIMSL6/TYPEIMSA                     *20.01
       IMS 6.1  -   ASMIMSL6/TYPEIMSA                     *20.01
       IMS 5.1  -   ASMIMSL5/TYPEIMSA                     *19.08
      Amdahl
       APAF 4.1, 4.3                                       16.08


II.   Incompatibilities and Installation of MXG 20.09.


 1. Incompatibilities introduced in MXG 20.09 (since MXG 19.19):

  a- Changes in MXG architecture made between 19.19 and 20.09 that might
     introduce incompatibilities.

     NONE.

 2. Installation and re-installation procedures are described in detail
    in member INSTALL (which also lists common Error/Warning messages a
    new user might encounter), and sample JCL is in member JCLINSTL.

    MXG Definitions with regard to MXG Software Changes:

    COMPATIBLE   A change in a data record which did not alter either
                 the location or the format of all of the previously-
                 kept MXG variables is COMPATIBLE, and you can continue
                 to run the old version of MXG software, which will read
                 the new records without error, but none of any new data
                 fields or any new record subtypes will be created/kept
                 until you install the MXG Version with this change.
                 A change that alters any previously kept variable is
                 INCOMPATIBLE, and requires the new version to be used.

    TOLERATE     In other words, the old MXG Version TOLERATES the new
                 data records, if they are COMPATIBLY changed.

    EXPLOIT      Once you use the new MXG Version to read the changed
                 records, all of the new fields, subtypes, etc, that are
                 described in this change will be created in the MXG
                 datasets, so the new MXG Version EXPLOITS the new data,
                 and you have full support of the new data records.

    INCOMPAT     A change in a data record that causes the current MXG
                 version to fail, visibly or invisibly, with or without
                 error conditions or messages, and the output datasets
                 may contain wrong values and incomplete observations,
                 and/or observations may have been lost.

                 You MUST install the new MXG Version with this change
                 to process data records that have been INCOMPATIBLY
                 changed by their vendor.

    OBSERVATION COUNT CHANGE: xxxxxxxx more/fewer observations.
      This new note will be the last line of new Changes that alter the
      number of observations MXG creates in dataset xxxxxxxx.

III.  Online Documentation of MXG Software.

    MXG Documentation is now described in member DOCUMENT.
    See also member INDEX, but it may be overwhelming.


IV.   Changes Log

--------------------------Changes Log---------------------------------

 You MUST read each Change description to determine if a Change will
 impact your site.  All changes have been made in this MXG Library.

 Member CHANGES always identifies the actual version and release of
 MXG Software that is contained in that library.

 The CHANGES selection on our homepage at http://www.MXG.com
 is always the most current information on MXG Software status,
 and is frequently updated.

 Important changes are also posted to the MXG-L ListServer, which is
 also described by a selection on the homepage.  Please subscribe.

 The actual code implementation of some changes in MXG SOURCLIB may be
 different than described in the change text (which might have printed
 only the critical part of the correction that need be made by users).

 Scan each source member named in any impacting change for any comments
 at the beginning of the member for additional documentation, since the
 documentation of new datasets, variables, validation status, and notes,
 are often found in comments in the source members.



Alphabetical list of important changes after MXG 19.19 now in MXG 20.12:

  Dataset/
  Member   Change    Description

  Many     20.268  Syntax INPUT +(-4) @; replaces M4=-4; INPUT +M4 @;
  Many     20.299  MXG Checked by SAS/ITSV Dictionary Build process.
  Many     20.324  Semi-colons added after each _Edddddd exit statement.
  ADOCxxxx 20.338  All 282 ADOCs updated with all variables, old text.
  ADOCSASU 20.292  Mapping of SAS Procedure Name to Product updated.
  ANAL116  20.313  Example graphs of MQ Series SMF 116 data.
  ANAL94   20.080  Revised to use SMF94VLC rather than SMF94VLS.
  ANAL94   20.294  VTS activity reports selection SUBREP= parm added.
  ANALCICS 20.193  VARIABLE OPERATOR NOT FOUND if OPERATOR excluded.
  ANALCNCR 20.224  KEEPIN= argument no longer used, won't cause failure.
  ANALDB2K 20.128  New member combines DB2ACCTP with DB2ACCT data.
  ANALPROG 20.075  SAS V8 INHERIT option caused wrong label for NRTIMES.
  ANALRACF 20.015  Bogus SAS error; ENTITY was used as array name.
  ANALREG  20.183  Example regression of two variables with DATA step.
  ANALRMFR 20.104  "RMF HTTP Server Report" multiple servers, etc.
  ANALRMFR 20.277  RMF Channel Activity Report CHP= selectivity added.
  ASMRMFV  20.033  Support for RMF III Enclave Table ENCG3.
  ASMRMFV  20.068  RMF III support enhanced and corrected.
  ASMRMFV  20.135  OC4 ABEND in ASMRMFV if CSR table was empty.
  ASMTAPES 20.320  ML-27 now robust, low CPU, sees VTS, no XMEM, etc.
  ASUM42DS 20.124  SORTEDBY= in VMXGSUM required change to ASUM42DS.
  ASUM7072 20.169  Variable LPnLAC (4-hr MSU) added to ASUM70PR/ASUMCEC.
  ASUMDB2A 20.039  Tailoring example for dropped variables from DB2ACCT.
  ASUMUOW  20.086  EXECAPPL, the "execution" APPLID, added to ASUMUOW.
  ASUMUOWT 20.038  Create PDB.ASUMUOW from Landmark TMON/CICS + DB2ACCT.
  ASUMUOWT 20.251  Change 20.221 to VMXGUOW caused ASUMUOWT to fail.
  AUTOEXEC 20.252  Support for Version 9 TS M0 Production Release.
  BLDNTPDB 20.323  Some combinations of arguments didn't work right.
  BUILDPDB 20.310  TYPE30TD now has subtypes 2, 3, and 4 output.
  BUILDPDB 20.319  OMVS task filled //SPIN, had TYPETASK='JOB' in error.
  BUILDPDB 20.330  New CSTORE30,ESTORE30 variables in STEPS,SMFINTRV.
  CONFIGV8 20.019  //USER or directory named "user" causes SAS errors.
  CONFIGV9 20.252  Support for Version 9 TS M0 Production Release.
  DAILYDSN 20.020  DCOLLECT datasets written to PDB instead of DATASETS.
  EXddddd  20.266  EXdddddd members are now one executable statement.
  FORMATS  20.127  IBM MSU Capacity for 7060s only in format table.
  FORMATS  20.194  MSU constants updated for 2064-2xxx family.
  FORMATS  20.291  Support for APAR OW57121 new SMF 99 trace codes.
  FORMATS  20.292  Mapping of SAS Procedure Name to Product updated.
  GRAFWRKX 20.105  Enhanced "Weighted LPAR Capacity" Graph/Tabular
  GRAFWRKX 20.273  Workload Graph examples include MSU used by workload.
  IMAC6ESS 20.332  Support for more ESS variables (on OUTPUT statement)
  IMACESS6 20.090  Unknown ESS keys not skipped if GEPARMNR GT 1.
  JCLTEST6 20.002  SAS V6, VMACTMV2, variable SYS000008 name too long.
  JCLUOWP  20.312  JCL example for ASUMUOW using Views/Pipes corrected.
  JCLUOWV  20.269  VARIABLE TIMESTMP NOT FOUND building ASUMUOW.
  MONTHBLD 20.094  SORTEDBY= added to Monthly PDB datasets
  READDB2  20.270  Enhancement for IFCIDs 202, 230, 230, not in SMF 102.
  REXXWLM  20.289  Support to read Workload Manager's WLM Defs PDS.
  RMFINTRV 20.168  MSU4HRAV corrected, MSU-related variables documented.
  RMFINTRV 20.297  Workloads can use SYSTEM/SYSPLEX as criteria.
  TRND23   20.239  Trending for TYPE23 (SMF Buffer Usage) was wrong.
  TRNDRMFI 20.099  Variable MSU4HRMX was missing in TRNDRMFI.
  TRNDRMFI 20.249  New TRENDOLD= parm lets you use GDGs for TREND.
  TYPE102  20.228  QW0022TS/BT were wrong if your GMTOFFDB was non-zero.
  TYPE102  20.336  Support for IFCID=247 in T102S2347 dataset.
  TYPE103  20.104  TYPE103x HOSTNAME increased to $32
  TYPE103  20.130  Support for APAR PQ61349.
  TYPE108  20.032  Timestamps DOMBTIME/DOMETIME incorrect.
  TYPE110  20.102  CICSJOUR was incorrect for CICS/ESA 4.1, 5.1.
  TYPE110  20.108  Doc: Variable UOWTIME may look wrong, but it's okay.
  TYPE110  20.200  Support for CICS Transaction Resource Class new data.
  TYPE110  20.225  Support for CICS APAR PQ63143 changes to 110-2 stats.
  TYPE110  20.293  UNKNOWN STID=115 messages should not exist.
  TYPE119  20.085  Subtype 3 caused INVALID DATA, now corrected.
  TYPE119  20.267  TSIPxxxx variables wrong in TYPS11905, other fixes.
  TYPE120  20.029  Lower case "f" in DBCS variables changed to blank.
  TYPE120  20.066  Datasets TYP120JC/JI were not sorted to PDB by _S120.
  TYPE120  20.204  Support for SMF 120 subtype 7 and 8 WebSphere 4.0.1.
  TYPE26J2 20.101  Support for JES "Z2 Mode" (INCOMPATIBLE JESNR).
  TYPE26J2 20.149  TIMEBILD now uses correct SYSxxxx for time conversion
  TYPE26J3 20.101  Support for JES "Z2 Mode" (INCOMPATIBLE JESNR).
  TYPE28   20.316  Support for Tivoli Netview NPM 2.7 SMF 28 records.
  TYPE30   20.082  Support for z/OS 1.3 (COMPATIBLE).
  TYPE30   20.101  Support for JES "Z2 Mode" (INCOMPATIBLE JESNR).
  TYPE30   20.197  JOB=JES2 blank READTIME caused INVALID READTIME msg.
  TYPE30   20.310  TYPE30TD now has subtypes 2, 3, and 4 output.
  TYPE30   20.330  New CSTORE30,ESTORE30 variables in TYPE30_4,_5,_V.
  TYPE42   20.082  Support for z/OS 1.3  (MXG Change Required).
  TYPE42   20.129  Support for APAR OW54007.
  TYPE42   20.134  S42DSBUF was incorrect, buffer type wrong.
  TYPE42   20.182  SMF42NRS, JPF,JPE,JNF,JNE documentation wrong.
  TYPE6    20.101  Support for JES "Z2 Mode" (INCOMPATIBLE JESNR).
  TYPE64   20.212  Support for APAR OW56162 new SMF 64 CATALOG UPDATE.
  TYPE70   20.043  Support for z800 2066 CPUs at OS/390 R2.8-2.10.
  TYPE70   20.046  PCTCPUBY etc wrong with WLM IRD controling CPUs.
  TYPE7072 20.089  Variable MSU72 created in TYPE72/TYPE72GO.
  TYPE7072 20.140  Values in SMF70CSF,ESF now correct, IBM doc wrong.
  TYPE7072 20.169  Variable SMF70LAC (4-hr MSU) added to TYPE70PR
  TYPE7072 20.274  Support for APAR OW56739, RMF 72 subtype 3.
  TYPE7072 20.307  Errors in TYPE72GO (MXG 20.08-20.09 only) corrected.
  TYPE71   20.259  Medium Impact Frames ESFRMExx are now input in order.
  TYPE72GO 20.045  Variable VALDSAMP now reset to equal R723CTSA.
  TYPE72GO 20.069  Support for APAR OW52227 (Active Appl State) for WLM.
  TYPE73   20.096  SMF73ACR='CFS' TYPE73 obs had PCHANBY missing.
  TYPE73   20.172  Variables PCHANBY/PNCHANBY/PBUSBY carried forward.
  TYPE73   20.240  PCHANBY/PNCHANBY mising with SMF73CMG=0.
  TYPE74   20.116  Support for type 74 subtype 7 FICON data.
  TYPE74   20.205  Support for z/OS 1.4 (COMPATIBLE), minor change
  TYPE74   20.213  Support for APAR OW52396 (no change) SMF 74-7 FICON.
  TYPE74   20.241  Support for APAR OW55968 (R744SST 4 to 8-byte).
  TYPE78   20.050  Domain Error in 78 IOP corrected.
  TYPE78   20.077  Using TIMEBILD, STARTIME was converted twice.
  TYPE78   20.235  Support for APAR OW54010 Large Virtual Memory (>2GB).
  TYPE79   20.083  Domain Error in 79-12, new CMG data now DIF()'d.
  TYPE79   20.205  Support for z/OS 1.4 (COMPATIBLE), minor change
  TYPE79   20.274  Support for APAR OW56739, RMF 79 subtype 3.
  TYPE79   20.325  TYPE792 was incorrectly deaccumulated.
  TYPE80A  20.010  Support for Top Secret V.2.
  TYPE80A  20.218  Support for UID/HOME/PROGRAM OMVS/USS RACF fields.
  TYPE80A  20.226  Example of RACF Filtering with TYPE80A and MACJBCK=.
  TYPE90A  20.125  Support for type 90 subtype 32 (don't use TYPE90).
  TYPE90A  20.281  VERSN90 is binary in some subtypes, was EBCDIC.
  TYPE91   20.097  Domain Error in SMF91SDI/SDO corrected.
  TYPE94   20.080  SMF94VLS now contains characters, new SMF94VLC.
  TYPE94   20.206  Support for SMF 94 subtype 2 and subtype 1 new stuff.
  TYPE94   20.265  SMF 94 FC4001 undocumented fields caused wrong value.
  TYPE94   20.283  SMF 94 Subtype 2 now heuristically decoded.
  TYPEAIX  20.091  Enhanced AIX PTX (Performance ToolBox) adds obj/vars.
  TYPECIMS 20.138  CIMSDBDS DBDORG='00'X no longer output.
  TYPECIMS 20.306  No observations in CIMSDBDS after Change 20.138.
  TYPECPOD 20.230  Support for Control-D "POD" User SMF record.
  TYPECSF2 20.231  Support for Control-D "SF2" User SMF record.
  TYPEDB2  20.173  QWAXvvvv variables shouldn't be used, but now valid.
  TYPEDB2  20.195  DB2 QWACAWTK/M/N/O/Q ARNK/M/N/O/Q etc missing/wrong.
  TYPEDB2  20.210  DB2 V6 variables QWACARLG & QWACAWLG were missing.
  TYPEDB2  20.222  Negative DB2SRBTM with DB2 V7 forced back to missing.
  TYPEDCOL 20.171  Variable DCDRECFM decodes FBA or VBA Record Formats.
  TYPEEDGR 20.331  Support for DFSMSrmm Extended Extract 'X' records.
  TYPEEMCS 20.165  Support for EMC's Catalog Solution user SMF record.
  TYPEESPH 20.318  Support for Cybermation's ESP Product JOBHIST file.
  TYPEHURN 20.248  Overlooked HU47xxxx and HU49xxxx variable input.
  TYPEIDMS 20.237  Circumvention for IDMS Version 1500, no new data yet.
  TYPEIDMS 20.304  Support for IDMS V1500 new subtypes 13, 14, 15.
  TYPEIMSA 20.021  Syntax error.  Two %%VMXGTIME( should be %VMXGTIME.
  TYPEIPAC 20.014  Support for Mobius RDS InfoPac Subtypes 6 and 7.
  TYPEMPLX 20.141  Support for IMPLEX Version 2.1 has been coded.
  TYPEMVCI 20.263  Support for BMC MVCICS 5.6, fix for 5.5 CMRDETL data.
  TYPENDM  20.211  NDM/Connect Direct writes invalid SMF record.
  TYPENPIP 20.070  Support for new IBM Product NPM/IP monitor SMF.
  TYPENSPY 20.305  Support for NetSpy Version 6 subtypes G,H (COMPAT).
  TYPENTSM 20.100  Support for Citrix process record.
  TYPENTSM 20.132  Support for NTSMF File System Collector. NT DCOLLECT!
  TYPENTSM 20.144  PROCESS object POOLxxxx,HANDLES were wrong.
  TYPENTSM 20.156  Support for NTSMF 2.4.4, MODULE Object, Disk percents
  TYPENTSM 20.176  Support for Oracle and Analysis Server NTSMF objects.
  TYPENTSM 20.276  Support for MS E2K SP3, XP Prof, new vendor objects.
  TYPENTSM 20.286  MicroSoft added instance names for SMF objects.
  TYPEOMCI 20.234  Support for Candle Omegamon for CICS V520 User SMF.
  TYPEOMVT 20.189  Candle OMEGAMON/VTAM Release 5.2.0 IRNUM=27 corrected
  TYPEOPC  20.321  IBM's OPC Log causes INVALID ARGUMENT TO FUNCTION....
  TYPEORAC 20.007  Support for Oracle OSDI format (8.1.7) (INCOMPAT).
  TYPEORAC 20.111  Oracle OSDI Subsystem Name text externalized.
  TYPEQACS 20.004  JBCPU/JBTCPU wrong in QAPMJOBM, IBM doc is wrong.
  TYPEQACS 20.078  AS400 4.5.0 INVALID data, 5.1.0 JBEDBC/JBTDCB fixed.
  TYPEQACS 20.260  Support for AS/400 5.2 Collection Services (INCOMPAT)
  TYPEQACS 20.295  AS/400 CPU times merged in optional QACSCPU dataset.
  TYPERMFV 20.334  Numerous enhancements/corrections to RMF III support.
  TYPESAMS 20.192  Support for SAMS:VANTAGE 3.2.0 OBJ=POOLS record.
  TYPESASU 20.236  Variable SASPROD, SAS Product Name, now kept.
  TYPESRMH 20.317  Security Resource Manager for MVS V2.3 correction.
  TYPESTC  20.088  Support for St. 27/28/29 of STK HCS/VSM records.
  TYPESTC  20.220  STC28TIM in STCVSM28 from STK User SMF was wrong.
  TYPESTC  20.242  STK HSC Subtype 29 INPUT STATEMENT EXCEEDED error.
  TYPESYNC 20.309  Support for SYNCSORT for z/OS 1.1 SMF record.
  TYPETAND 20.106  Support for G06/G08 TANDPROC LRECL=442 (INCOMPAT).
  TYPETAND 20.250  Support for Tandem G07 new data, fix TANDPROC G06.
  TYPETMDB 20.095  TMON/DB2 Timestamps wrong if GMT Offset is nonzero.
  TYPETMDB 20.139  Landmark TMON/DB2 datetimes wrong if GMTOFF GT 0.
  TYPETMDB 20.161  Support of ASG-Landmark TMON/DB2 Version field 3.2.
  TYPETMO2 20.072  Support for TMON/CICS TCE 2.1 (INCOMPATIBLE).
  TYPETMO2 20.140  Landmark TMON/CICS datetimes wrong if GMTOFF GT 0.
  TYPETMO2 20.187  MONITASK variables STORVIOL/ABNDMONI weren't created.
  TYPETMO2 20.253  Support for ASG-Landmark TMON/V2.1  TH01595 (COMPAT)
  TYPETMO2 20.335  Support for ASG/TMON CICS V2.2 INCOMPATIBLE.
  TYPETMVS 20.201  Support for ASG-Landmark TMON/MVS V3 (INCOMPATIBLE).
  TYPETNG  20.028  Support for CA TNG for Windows 2000.
  TYPETNG  20.062  STARTIME in TNG datasets was an hour early.
  TYPETNG  20.092  Support for many new TNG Platforms (SOL, AIX) etc.
  TYPETNG  20.180  TNG Start Hour defaults to zero, externalized.
  TYPETPMX 20.208  TYPETPMX variable SPACE renamed to SPACERQ.
  TYPEVIOP 20.216  INPUT STATEMENT EXCEEDED with VIO PLUS SMF record.
  TYPEVMXA 20.081  z/VM MONWRITE DATABYTE=0 caused MXG to stop reading.
  TYPEXAM  20.315  Support for Velocity Software's ESAMON VM Monitor 3.2
  TYPSMQM  20.188  Example member to read //SMF to create all MQM data.
  TYPSTHST 20.202  Support for BMC's Mainview for DB2 THRDHIST file.
  TYPSTHST 20.245  MACRO _THRDHST should have INFILE THRDHIST, not SMF.
  UNIXSAR  20.314  Enhancements to process unix sar command output.
  UTILBLDP 20.013  Enhancement, examples for only RMFINTRV, JOBS.
  UTILBLDP 20.329  Enhancement if BUILDPDB=NO is specified.
  UTILEXCL 20.008  UTILEXCL caused ASUMUOW to fail, missed IMS data.
  UTILEXCL 20.040  Tests IF SEGLEFT GE CMODLENG now IF SEGLEN GE nn.
  UTILEXCL 20.074  Excluded fields from multiple CICS versions support.
  UTILEXCL 20.084  Final (?) cleanup covers all reported optional data.
  UTILEXCL 20.118  Support for CANPROD2/CANPROD3 optional CICS data.
  UTILEXCL 20.148  Support for multiple CMODNAME,CMODHEAD='USER' fields
  UTILEXCL 20.223  USERCHAR variable generated wrong INCLUDE post 20.148
  UTILEXCL 20.256  Major UTILEXCL enhancement, MCTSSDCN/DRL DO grouping.
  UTILRMFI 20.162  Revised to use identical arguments as %VMXGRMFI.
  VGETDSN  20.035  New utility to get DSNAME, can allocate next GDG.
  VGETJESN 20.190  "Z2" Jnnnnnnn JESNR support protects SMF 6 record.
  VGETJESN 20.326  Type 30s with JCTJOBID='INTnnnnn' protected.
  VMAC115  20.288  Support for MQSeries V5.3 (COMPATIBLE) new data.
  VMAC116  20.288  Support for MQSeries V5.3 (COMPATIBLE) new data.
  VMAC7072 20.272  Zeroed MSU variables from old S/390 are now non-zero.
  VMAC80A  20.257  Message VMAC80A.WARN. MORE DTP... revised, 15 kept.
  VMXGFOR  20.327  All %VMXGFOR were removed, to avoid a SAS zap.
  VMXGINIT 20.278  %UPCASE added by 19.295 was dropped in 20.019
  VMXGINIT 20.296  Macro variables &TRNDIN,&TRNDOUT defined for TREND.
  VMXGRMFI 20.017  OPTIONS OBS=0 could cause errors.
  VMXGRMFI 20.079  Mismatch now reports all INn status variables.
  VMXGSUM  20.017  OPTIONS OBS=0 could cause errors.
  VMXGSUM  20.094  SORTEDBY= added to Output VMXGSUM dataset.
  VMXGSUM  20.142  SORTEDBY= filed if dropped variable only in SUMBY=.
  VMXGSUM  20.238  Documentation: Don't use TEMP01 with %VMXGSUM.
  WEEK70PR 20.199  Typo SAT.TYPE70PR read twice, FRI not read.
  WEEKBLD  20.094  SORTEDBY= added to WEEKLY PDB datasets



Inverse chronological list of all Changes:

NEXTCHANGE: Version 20.

====== Changes thru 20.341 were in MXG 20.20 dated Feb  5, 2003=========

Change 20.341  Support for APAR OW57396 adds two flag fields, SMF22CYS
VMAC22         and SMF22PCY to the TYPE22_A dataset (the APAR calls the
Feb  6, 2003   two fields SNSSDST3 and SSCBDVC4, to describe the reason
               for the state-change interrupt during FlashCopy.
   Thanks to Susan Greenlee, IBM, USA.

Change 20.340  Summarized RMFINTRV data (for example, RMFINTHR from 15
RMFINTRV       minute RMFINTRV data) will have a high value for MSU4HRAV
Feb  6, 2003   in any interval that crosses an IPL.  The interval will
               have a DURATM considerably smaller than your requested
               hour summary, so these intervals can be detected/deleted
               by testing for DURATM less than your summary interval
                  This is an MXG coding error, only in RMFINTHR; the
                  ASUM70PR and ASUMCEC data is correct across an IPL
                    (but note that MXG keeps history, and uses those
                     prior hours, IBM's SMF70LAC starts new with each
                     IPL, so "correct" is in the eyes of the beholder).
                  and I will eventually take time and figure out how to
                  correct the logic, but not right now!
               Jun 9 2003: See Change 21.094.
   Thanks to Craig Collins, State of Wisconsin, USA.

Change 20.339  Support for MainView TCP/IP SMF record with many datasets
EXMVTPA        and almost all of them are wrong; the only documentation
EXMVTPC        available was the sample SAS code from BMC, and it was
EXMVTPD        restructured into MXG source format, labeled, etc., and
EXMVTPF        then the test records were examined, only to find that
EXMVTPH        the data and sample code do not agree.
EXMVTPI        If you are interested in this support, please contact me,
EXMVTPN        send me your current SMF records, and I will pursue the
EXMVTPO        actual DSECT documentation so I can rewrite the support.
EXMVTPP        And since I could not validate the new support, there may
EXMVTPR        be variable names in conflict with existing MXG names
EXMVTPS        that may need to be changed.
EXMVTPT        But at least the structure and contents of all of the 14
EXMVTPU        new datasets is complete!
EXMVTPV
IMACMVTP
TYPEMVTP
TYPSMVTP
VMACMVTP
VMXGINIT
Feb  6, 2003

Change 20.338  All ADOCxxxx members were programatically updated with
ADOCs          all variables created by MXG 20.10, but all existing
Feb  6, 2003   comments and descriptions (manually made) are preserved
               by a slick utility program Freddie developed to read the
               old and merge in the new (and by agreed syntax standards
               in the ADOCs structure, so his program works!).
   Thanks to Freddie Arie, TXU, USA.

Change 20.337  Using example 4 in UTILEXCL, which reads CICS records to
UTILEXCL       create and write member IMACEXCL to your USERID.SOURCLIB
Feb  5, 2003   tailoring library, writing to this DD statement:
                  //IMACEXCL DD DSN=MXG.USERID(IMACEXCL),DISP=SHR
               then the example reads that IMACEXCL member from that
               dataset, using %INCLUDE SOURCLIB(IMACEXCL); from this DD:
                  //SOURCLIB DD DSN=MXG.USERID,DISP=SHR
                  //         DD DSN=MXG.SOURCLIB,DISP=SHR
               resulted in an UNDETERMINED SAS I/O ERROR and a SYSMSG
               entry "OUT OF EXTENTS", with both SAS V8.2 and V9.0, but
               only when:
                 the USERID.SOURCLIB was extended into another extent
                 by the writing of the IMACEXCL member to the PDS.
               Breaking the example into two MVS steps did not fail; the
               IMACEXCL member was read correctly from the extended-PDS
               in the second step.  While this will ultimately be fixed
               by SAS (I hope!), if you use this technique of writing to
               your USERID.SOURCLIB, you should make sure it has a large
               primary, and compress it after each run, to avoid this
               exposure.
                  That same error message is also documented in NEWSLTRS
                  for a completely un-related problem:  if you have your
                  datasets in your //SOURCLIB concatenation that are
                  mixed PDS and PDSE source libraries.
                  Only all-PDS libraries is guaranteed to be error free!
               The error will be discussed with SAS Institute, and this
               note will be revised if a correction becomes available.
               No code change was made; documentation only.
   Thanks to MP Welch, SPRINT, USA.

Change 20.336  Support for DB2 Trace IFCID=247 (SMF 102 subtype 247) now
VMAC102        populates the trace variables in dataset T102S247.
Feb  2, 2003
   Thanks to T. L.  Berman, DST Systems, USA.

====== Changes thru 20.335 were in MXG 20.12 dated Feb  2, 2003=========

Change 20.335  Support for ASG/Landmark TMON for CICS/ESA Version 2.2.
VMACTMO2       INCOMPATIBLE, causing INPUT STATEMENT EXCEEDED errors:
Feb  2, 2003  -Field inserted in 'TP' record header and sub records.
              -Field inserted in 'TR' record header.
              -Field inserted in 'TK' record header.
              -Field inserted in 'TS' record header.
              -Field inserted in 'T2' record header.
              -Field inserted in 'TM' record header.
              -Field inserted in 'TN' record header.
              -Field inserted in 'TT' record header.
              -Field inserted in 'TX' record header.
              -Fields inserted and removed in 'TA' record.
              -Some overlooked $CHAR fields are now formatted $HEX.
              -Useful new MQSERIES counts/duration variables are created
               in MONITASK dataset.

Change 20.334 -ZRBDVT kept twelve accumulated start and end values which
VMACRMFV       are unneeded and are now dropped; the delta values are in
Feb  2, 2003   the six variables PENDTM DISCTM CONNTM DVBUSYTM CUBUSYTM
Feb  3, 2003   and SWPODLTM. The _SZRBDVT now actually sorts vice copy.
              -ZRBGEI kept four accumulated start and end values which
               are unneeded and are now dropped; the delta values are in
               new variables GEIESPM and GEIESPR. OS/390 set several GEI
               fields reserved, causing CPUWAITM to be zero and PCTCPUBY
               to be missing.  The PCTCPUBY is in dataset ZRBCPU.
              -Variable ASIAUXSC is now divided by sample count, and the
               _SZRBASI now actually sorts vice copy.
              -ENCG3 record with RDW=804, DEO=@296 DEL=608 caused INPUT
               STATEMENT EXCEEDED RECORD ERROR and is now protected, but
               it was caused by using ASMRMFV program earlier than MXG
               20.02, which corrected Enclave support.  No-longer-needed
               triplet variables are no longer kept.
              -All _SZRBxxx macros now PROC SORT their dataset to PDB
               (most just had a Data step) because their _BZRBxxx macro
               now have BY-list variables of SYSPLEX SYSTEM SSHTIBEG and
               possibly more.
   Thanks to Betty Wong, Bank of America, USA.
   Thanks to John Gebert, Office Depot, USA.

Change 20.333  Using READDBw with IFCIDS=ALL is strongly disrecommended,
READDB2        as it requires massive virtual storage and compile time
Jan 31, 2003   to generate the data step for all 300+ DB2 trace records,
               and you could never have all those IFCIDs enabled; if you
               did, you'd be running an SMF stress test, not a DB2 test!
               but now, IFCIDS=ALL will compile correctly; Change 20.270
               introduced syntax errors when IFCIDS=ALL was used.
               Additionally, IFCIDS= 1 2 are now supported as arguments
               (although they are redundant with ACCOUNT).
   Thanks to John Gebert, Office Depot, USA.

Change 20.332 -IMAC6ESS: Support for optional ESS variables from OUTPUT
FORMATS        statements, including the USERDATA= field, which can be
IMAC6ESS       used:  USERDATA=(ACCT=123456)  to set accounting fields
VMAC6          for each OUTPUT statement, new variable ESSUSDAT, plus
Jan 31, 2003   less-important variables ESSTRC, ESSDATCK, ESSCHARS-4,
Feb  3, 2003   ESSUCS and ESS0013 for undocumented IEFDOKEY='0013'x.
Feb  4, 2003   Protection added if more than four ESSCHARn fields are in
               the SMF record.
              -VMAC6: Variable BINUSED='00'X is set for non-PSF type 6
               records; all BINxxxxx fields only exist in APF-PSF data.
              -FORMATS. Variable BINUSED's format MG006BN was updated
               for bins 3,4 and combo's of bins, "NOT PSF" for '00'x.
   Thanks to Ricke Godehard, Itellium, GERMANY.

Change 20.331  Support for DFSMSrmm Extended Extract Data Set Records,
EXEDGRX        which are written as EDGRTYPE='X', along with the other
IMACEDGR       records, by IBM's EDGHSKP program to a flat file that is
VMACEDGR       read by MXG from the INFILE name of EDGHSKP.  The new 'X'
VMACINIT       record creates new EDGRXEXT dataset with all variables
Jan 30, 2003   from the 'V' volume record (MXG dataset EDGRVEXT) and all
               of the variables from the 'D' dataset record (MXG dataset
               EDGRDEXT); now that I've written the code to create the
               new dataset from the new X record, I realize I could have
               instead created it simply by MERGEing the EDGRVEXT Volume
               and EDGRDEXT Dataset MXG dataset, since the X record is
               completely redundant with the V and D records.  IBM added
               the 'X' record with APAR OW47651, June, 2001.
   Thanks to Donald P. Ludwig, United Health Care, USA.

====== Changes thru 20.330 were in MXG 20.11 dated Jan 30, 2003=========

Change 20.330  Useless MSO-based variable PAGESECS (SMF30PSC):
BUILD005         the CPU-TCB-only-based memory occupancy page-seconds,
BUIL3005       the soon to be useless variable RESESFTP (SMF30ERS):
VMAC30           active-time-based expanded memory storace occupancy,
Jan 30, 2003   and the very useful variable IARVPSEC (SMF30PSF):
                 active-time-based central memory storage occupancy
               were all 2.4% too low; IBM now documents them as being in
               'page-milliseconds - 1.024 milliseconds', but MXG had
               used 1000 rather than 1024 in its internal conversion.
               This change creates new CSTORE30 and ESTORE30 variables
               with the average storage occupancy size in bytes, for the
               TYPE30_4, TYPE30_5, TYPE30_6, and TYPE30_V datasets, and
               those new variables are also propagated into the dataset
               PDB.STEPS and PDB.SMFINTRV if BUILDPDB/BUILDPD3 is run.
   Thanks to Scott Barry, SBBWorks, Inc., USA.

Change 20.329 -With BUILDPDB=NO, and enabling USERADD=6 26 30, and also
UTILBLDP       INCLAFTR=BUILD005, macro names generated for input data
UTILRMFI       for BUILD005 now knows to get it from //PDB, which is
Jan 31, 2003   where USERADD= stored them.  Also, UTILBLDP defaulted to
               execute ASUMxxxx members if it found you were USERADDing
               their input, even when you specified BUILDPDB=NO.  Now,
               those ASUMs are generated only with BUILDPDB=YES, so you
               would use INCLAFTR=ASUM70PR, to execute only the ASUMs
               you want.
              -UTILRMFI now prints a report2 even if there is no data;
               the report says there was no data.  Previously, only a
               message to the log was written when there was none.
   Thanks to Alan Sherkow, I/S Management Strategies, USA.

Change 20.328  The period in the //TAPETEMP DD was changed to a comma.
JCLWEEKT
Jan 28, 2003
   Thanks to Dave Crowley, Blue Cross Blue Shield of Florida, USA.

Change 20.327  All references to %VMXGFOR and %%VMXGFOR were removed in
VMXGFOR        all MXG members (except CHANGES/CHANGESS) and the VMXGFOR
Jan 28, 2003   member remains for historical interest!  This %MACRO has
               the value "FORCE" in SAS V6 and later, and was blank in
               SAS V5. In SAS V6, SAS chose to prevent a SORT which had
               the same input and output dataset names when the option
               OBS=N (rather than =MAX) was in effect (so that a dumb
               user didn't replace a million obs dataset with only N
               obs), but then initially provided the FORCE option so you
               could override that choice.  Because using OBS=N is smart
               for testing (so you don't have to read the whole file),
               MXG added %VMXGFOR to all PROC SORTs to permit it.  And
               then SAS made the original behaviour the default with a
               6.07 zap, but MXG users didn't have to install the zap,
               since %VMXGFOR permited the sorts with OBS=N anyhow.

               Now, a new 0C4 error in SAS has occurred in the handling
               of the autocall for %VMXGFOR in SAS V8.2, and SAS note
               SN-009297 documents the problem that will be corrected,
               but by removing the FORCE option from all 282 members,
               the autocall is avoided, and you won't have to install
               the SAS fix when its available.

Change 20.326  Type 30 records from OS/390 R2.10 with JOB='INIT' have an
VGETJESN       undocumented and unexpected value of JCTJOBID='INTnnnnn';
Jan 28, 2003   JCTJOBID='STCnnnnn' is the expected value of SMF30JNM.
               This unexpected prefix caused MXG to set TYPETASK='INT '.
               The logic to set TYPETASK was changed to recognize these
               values and set TYPETASK='STC ', and additional protection
               for future undocumented values of JCTJOBID was added.
   Thanks to Roger P. Martens, International Truck and Engine Corp, USA.

Change 20.325  TYPE792 was incorrectly deaccumulated, as there are many
VMAC79         repeated entries with same JOB (R792JBN); added ASID to
Jan 24, 2003   separate in the SORT and in the IF FIRST. logic.  This
               problem was only seen for OMVS jobs.  Same change made in
               TYPE791 just because it was also sorted by R791JBN.
   Thanks to Stan Dylnicki, RBC, USA.

Change 20.324  Almost cosmetic; semi-colons were added after each of the
Many           _Edddddd exit invocations.  In general, not required, but
Jan 24, 2003   their existence can be exploited in members that generate
               code (BLDNTPDB, READDB2), and it was my intention to have
               them always present, even if unneeded.

Change 20.323  Using RUNDAY=YES,RUNWEEK=YES,RUNMNTH=YES,RUNNTINT=NO
BLDNTPDB       caused errors, attempting to create NTINTRV, even though
VMACNTSM       RUNNTINT=NO.  TRNDNTIN was initialized and fixed.  The
Jan 23, 2003   KEEPERS= logic was revised.
Jan 28, 2003  -VMACNTSM did not have the normal semicolon after each of
               the _Edddddd exit macro invocations, which are required
               only if you re-define those exits (as is done in this
               case by BLDNTPDB), and a dataset label was respelled.
   Thanks to Fiona Benoist, UFI Limited, ENGLAND.
   Thanks to Chris Morgan, UFI Limited, ENGLAND.
   Thanks to Terry Heim, ECOLAB, USA.

Change 20.322  The PROC FREQ failed if &OUTDETAL was specified; a test
ANALCNCR       for &OUTDETAL now uses DATA=&OUTDETAL when that option is
Jan 22, 2003   specified.
   Thanks to Kris Ferrier, State of Washington, USA.

Change 20.321  IBM's OPC Log data causes: INVALID ARGUMENT TO FUNCTION
IHDROPC        error messages followed by INVALID MTD SUBTYPE.  IBM has
VMACOPC        changed their data, but no OPC site has yet been able to
VMXGINIT       get IBM to provide the DSECTS for the MTD sub-segment,
Jan 17, 2003   which is part of the TRLRCTYP=24 "MCP EVENT" OPC record.
               Fortunately, since neither site needed the datasets built
               from that OPC record, they just deleted that record and
               were able to continue using OPCLOG for their purposes.
               This change creates the IHDROPC "OPC LOG Header Exit"
               member (and &MACOPCH macro variable) so that you can
               delete the TRLRCTYP=24 records in the exit or instream.
               In member IMACOPCH, use     IF TRLRCTYP=24 THEN DELETE;
               Or instream, after your //SYSIN, you would use:
                   %LET MACOPCH=%QUOTE( IF TRLRCTYP=24 THEN DELETE; );
    Thanks to Andrew Phillip Davis, Abbey National, ENGLAND.

Change 20.320  ASMTAPES/MXGTMNT is healed in ML-27.  Option XMEM=OFF now
ASMTAPES       elimimates the increase CPU time cause by fast VTS mounts
TAPEVENT       (that caused 0E0 ABENDs because the job was already gone)
Jan 20, 2003   by elminating the cross memory call.  This permits the
               MXGTMNT monitor to be run at 0.1 seconds with minimal CPU
                 ML-19  @2 sec 1.36 sec/hr   ML-27 @2 sec 1.8 secs/hr
                 ML-27  @.5 sec  6 sec/hr    ML-27 @.1 sec 28.5 sec/hr
               Feb 5: Do not use //EXCLUDE DD statement; causes 0C4,
                      awaiting dumps to examine.  No other problems
                      have been reported.  At 0.5 seconds interval,
                      the monitor takes less than 1 second per hour
                      when there are no tape mounts on that system.

Change 20.319  VGETJESN erroneously set TYPETASK='JOB' for OMVS tasks,
BUILD005       instead of TYPETASK='OMVS', causing OMVS TYPE30_1/_4/_5s
BUIL3005       to be sent to SPIN, instead of being written to the PDB
VGETJESN       (OMVS type 30s have no 6s nor 26s to match), causing the
Jan 15, 2003   SPIN library to increase in size.
               VGETJESN now sets TYPETASK='OMVS' if SUBSYS='OMVS', even
               though those OMVS data have JCTJOBID='JOBnnnnn'.

               Fortunately, these type 30 step records for OMVS tasks
               are rarely important; if you do nothing, these records
               will be output into your PDB library in SPINCNT days.

               To remove the OMVS records from your SPIN library and to
               thus prevent further growth, you can use the IMACSPCK
               tailoring member to set OKFLAG=1 for these OMVS jobs.
               In the SPIN30_1 and SPIN30_4 datasets, variable SUBSYS
               exists and can be tested for 'OMVS', but you will need to
               examine variable RACFGRUP in your SPIN30_5 dataset, as it
               is the only variable you can use for SPIN30_5 (other than
               a large table of JOB names).  Then you can put this code:
                IF SUBSYS='OMVS' OR RACFGRUP='OMVSGRUP' THEN OKFLAG=1;
               in your IMACSPCK tailoring library.

               The MXG change-in-error was to support the new JCTJOBID
               values in JES "Z2" mode; to further protect OMVS records
               from being spun due to any future Merrill error, the two
               members BUILD005 and BUIL3005 that hand the OMVS 30s was
               redesigned to look for either TYPETASK='OMVS' or for the
               SUBSYS='OMVS' value, for added protection.
   Thanks to Roger P. Martens, Navistar International, USA.
   Thanks to Roger Rush, Navistar International, USA.

Change 20.318  Support for Cybermation's ESP Product's JOBHIST file.
EXESPJRH       Dataset ESPJBHIS is created from the INFILE ESPHIST.
IMACESPH
VMACESPH
TYPEESPH
TYPSESPH
VMXGINIT
Jan 14, 2003
   Thanks to Jesse Gonzales, The Gap, USA.

Change 20.317  Correction for the Security Resource Manager for IBM MVS
VMACSRMH       V2.3, Thales e-security, Host Security Module SMF record.
Jan 14, 2003   Datasets SRMHSMDV and SRMHSMAP did not output repeated
               segments, but repeatedly output only the first segment.
   Thanks to Russell Dewar, National Australia Bank, AUSTRALIA.

Change 20.316  Support for Tivoli Netview NPM 2.7 SMF 28 changes.
FORMATS       -NAC. Eighteen existing variables LNACPT01-LNACPT18 are
VMAC28         now documented and each contains the 3746-900 line
Jan 14, 2003   processor type, now decoded by the new MG028LT format:
Jan 17, 2003    LNACPTnn
                 value      Description
                 0050X='0050X:CBP (3745-3746/900 LINK)'
                 0051X='0051X:NNP (APP-Resource)'
                 0052X='0052X:CLP (SDLC, Frame Relay, X.25)'
                 0053X='0053X:ESCP (ESCON)'
                 0054X='0054X:TRP (Token-Ring'
               The CPU "NN" value in the MXG label for each of those 18
               sets of LNACPxNN variables in the MXG Label is documented
               (e.g., LNACPT01='3746-900*LINE*CPU  1*TYPE') and this
               table maps the NN value to these line address ranges:
                CPU   Line Addresses     CPU   Line Addresses
                 1      2080-2111        10      2624-2687
                 2      2112-2175        11      2688-2751
                 3      2176-2139        12      2752-2815
                 4      2240-2303        13      2816-2879
                 5      2304-2367        14      2880-2943
                 6      2368-2431        15      2944-3007
                 7      2432-2495        16      3008-2071
                 8      2496-2559        17      3072-3135
                 9      2560-2623        18      NNP Processor
              -NIT. INCOMPATIBLE inserts of new variables:
                NITALIMB='MESSAGE*I-FRAME*BYTES*RECEIVED'
                NITALIXB='XID*BYTES*RECEIVED'
                NITALOMB='MESSAGE*I-FRAME*BYTES*SENT'
                NITALOXB='XID*BYTES*SENT'
                NITAPPNI='APPN*DATA'
                NITIFSPB='INTERFACE*TABLE*SPEED*BYTES'
                NITIFUC ='INPUT*UNICASTS*PACKETS*DLVD HIGHER'
                NITIFUTI='PERCENTAGE*TOTAL LINK*CAPACITY*USED'
                NITINUC ='INPUT*BCST/MCST*PACKETS*DLVD HIGHER'
                NITISLL ='TABLE*STACK*LOW*LAYER'
                NITOFUC ='OUTPUT*UNICASTS*PACKETS*DLVD HIGHER'
                NITONUC ='OUTPUT*BCST/MCST*PACKETS*DLVD HIGHER'
               INCOMPATIBLE in that the NIT variables are trashed by the
               inserted fields, but MXG will not fail with the new data;
               however, it also will not tell you NIT data is trashed!
              -SMC. Scores of new low/high criteria variables are added
               (COMPATIBLY, at the end).
              -ACD/RCD. The Session Type, LSCDSTYP field, formerly at
               offset 006C, is now documented as reserved, but in 2.7
               LSCDSTYP still contains known values of session type:
                   '02'X='02X:3270 RELAY'
                   '03'X='03X:3270 CONTROL'
                   '04'X='04X:3270 TRANSIT=DR'
                   '05'X='05X:3270 TRANSIT=DFC'
                   '06'X='06X:AGENT SERVER COMMUNICATIONS DATA'
                   '08'X='08X:APPC PROTOCOL 1'
                   '09'X='09X:APPC PROTOCOL 2'
                   '0A'X='0AX:TN3270'
                   '0B'X='0BX:TN3270=DR'
                   '0C'X='0CX:TN3270E'
                   '0D'X='0DX:TN3270E=DR'
                (plus a new, undocumented '0007'x value was found once.)
              -Jan 17: Logic for LSCDIPPN was corrected, and above 0A-0D
                       values were added to MG028ST format.
   Thanks to Michael H. Thompson, IBM Global Services, USA.
   Thanks to Vernon Kelly, IBM Global Services, USA.

Change 20.315 -Support for Velocity Software's ESAMON VM Monitor 3.2 and
EXXAMSTO       3.1 with both YY and YYYY year formats in either release.
EXXAMSTO       Restructured CPU, SYS, DEV, and USR records are supported
EXXAMEP1       new fields added to some segments and existing datasets,
EXXAMEP2       and new datasets created for these repeated segments:
EXXAMEP3         SEGMENT   DDDDDD   DATASET
EXXAMSYC          SYTEP1   XAMEP1   XMXAMEP1   EP1
EXXAMVDK          SYTEP1   XAMEP1   XMXAMEP2   EP2
IMACXAM           SYTEP3   XAMEP3   XMXAMEP3   EP3
VMACXAM           SYTCPM   XAMSYC   XMXAMCPM   CHANNEL PATH
VMXGINIT          STOVDK   XAMVDK   XAMSTVDK   STO VDK
Jan 12, 2003      SHRSTO   XAMSTO   XMXAMSTO   SHARED DCSS/NCS
Feb  6, 2003  -Support for the TCP file, with IBM TCPIP Monitor records,
               and HST and UCD segments for Linux, NT, and HP servers is
               nearly ready; contact support@mxg.com for that update.
              -The USER data segments SFSAPL and MTSAPL will be decoded
               only when someone wants to use that data; I previously
               have decoded it from the MONWRITE output, but want a body
               to make it worth my while to reuse the old code.
              -Support for the default YY date format, or the optional
               (if you set XAM PARM Y2K=ON in localesa.write file) YYYY.
   Thanks to Tony Curry, BMC Software, USA.
   Thanks to Tom White, SPRINT, USA.

Change 20.314  Enhancements to process unix sar command output increase
UNIXSAR        the size of some fields that were too short.
Jan 11, 2003
   Thanks to Uriel Carrasquilla, NCCI, USA.

Change 20.313  Example graphs of MQ Series SMF116 data; CPU by Region,
ANAL116        Elapsed time by Region, Bytes Get/Put, etc.
Jan 11, 2003
   Thanks to Amanda Sumner, Royal Bank of Scotland, SCOTLAND.

Change 20.312  JCL examples to create ASUMUOW using Views or using the
JCLUOWP        Batch Pipes product did not create the TIMESTMP variable,
JCLUOWV        which caused errors that are corrected by this change,
Jan 11, 2003   which also bypasses and additional pass of both data.
   Thanks to Larry Nova, TransAmerica Distribution Finance, USA.

Change 20.311  Utility to create tailored BUILDPDB jobs has new argument
UTILBLDP       EXPDBOUT= that lets you insert additional code.  The need
Jan 11, 2003   was to copy the TYPE6 dataset to the PDB library, so that
               use would be to use the new argument in your UTILBLDP:
                 EXPDBOUT=   DATA PDB.TYPE6;SET WORK.TYPE6;   ,
               or similar code to copy the dataset in that exit.
               It would be wiser to use the _STY6 macro to PROC SORT the
               dataset to the PDB library, since that will remove any
               duplicate type 6 SMF records, but that macro will also
               delete the TYPE6 dataset from the //WORK file, which will
               cause BUILDPDB to fail when it tries to build PDB.PRINT
               from WORK.TYPE6.  If you use this logic:
                EXPDBOUT= _STY6 ;
                          DATA TYPE6 (SORTEDBY= _BTY6); SET PDB.TYPE6; ,
               the _STY6 will sort and remove duplicates, and WORK.TYPE6
               will be created, marked as sorted, so that the later PROC
               SORT in BUILDPDB will be bypassed.
   Thanks to Normand Poitras, IBM Global Services, CANADA.

Change 20.310  Transparent redesign of processing of TYPETMNT/TYPETALO
BUILD005       in BUILDPDB was needed for the planned TAPEVENT program,
BUIL3005       which is still in development, but needed these changes:
VMAC30        -VMAC30 adds subtypes 2/3 interval tape DDs to TYPE30TD
Jan  6, 2003   dataset, and variables SUBTYPE INTBTIME INTETIME and
Jan 17, 2003   DDNAME are now kept in TYPE30TD.  Subtype 4s are needed
               by BUILDPDB now, and the 2/3s will be used later.
              -BUILDPDB's now selects only subtype 4's in its PROC SORT
               of dataset TYPE30TD, as the existing logic expects.

Change 20.309  Support for SYNCSORT for z/OS 1.1 User SMF (COMPAT).
VMACSYNC       Five new variables are added, and two two-byte block
Jan  6, 2003   size of sortin and sortout are replaced by four-byte
               fields, using the existing +36 bytes at end of record.
               A new one byte SYNCHDB2 flag and reserved byte are input,
               replacing variable NRWRKUSE, Number of Work Units Used,
               which will now be missing with the new version.  And the
               new SYNCLVL value is 1.1 for this version, the previous
               version was 3.7, making for less than elegant logic!
   Thanks to Chuck Hopf, MBNA, USA.

Change 20.308  Variable ATTRQUAL was changed from LENGTH $8 to $24, as
VMACSOLN       it can be longer than the original 8 byte length.
Jan  6, 2003
   Thanks to Andy Creet, Department of Defence, AUSTRALIA.

=======Changes thru 20.307 were in MXG 20.10 dated Jan 03, 2003=========

Change 20.307  Change 20.274 (OW56739) was flawed, causing INVALID DATA
VMAC7072       FOR CPUHPTTM, EXETTM .. messages, and creating invalid
Jan  2, 2003   values in some observations in TYPE72GO dataset (only for
               periods 2 and higher, and only if LENSCS was GE 488). The
               code after IF LENSCS GE 488 THEN DO; should have INPUT
               only R723PLSC field. Change 20.274 erroneously had four
               additional fields that had been copied from earlier code.
   Thanks to David Klein, City of New York, USA.

Change 20.306  Change 20.138 caused almost no observations in CIMSDBDS
VMACCIMS       dataset; the correct test for output should have been:
Jan  2, 2003     IF NOT (DBORG EQ '00'X AND FLGOVERF EQ '00'X ) THEN DO;
   Thanks to Thomas Heitlinger, FIDUCIA, GERMANY.

Change 20.305  Support for NetSpy Version 6.0 new subtypes 'G' and 'H'
EXNSPYIN       create new datasets:
EXNSPYUD         DATASET   DDDDDD   Subtype     Description
IMACNSPY         NSPYUDP   NSPYUD     G         UDP Connections
VMACNSPY         NSPYINTR  NSPYIN     H         Interface
VMXGINIT       However, the "H" Interface records are invalid, with only
Jan  2, 2003   76 bytes in each segment (while 176 is documented and is
               the length field in these bad records).  MXG will detect
               and delete the invalid records, printing a note on the
               SAS log. A problem will be opened with CA Support.
   Thanks to Chris Selley, Zurich Finaincial Services, ENGLAND.

Change 20.304  Support for IDMS V1500 new subtypes 13, 14, and 15 create
EXIDMXLI       new datasets:
EXIDMXLK        DATASET   DDDDDD   Description
EXIDMXMS        IDMSXLI   IDMXLI   DSG XESLOCK WAIT
IMACIDMS        IDMSXLK   IDMXLK   DSG XESLIST WAIT
VMACIDMS        IDMSXMS   IDMXMS   DSG XCFMSG WAIT
VMXGINIT
Dec 30, 2002
   Thanks to Gilles St-Amand, DGSIG, Province of Quebec, CANADA

Change 20.303  This utility constructs DB2 GTF trace segmented records
UDB2GTF        into legitimate variable length records, but printed the
UDB2GTFA       "LOST EVENT" messages on the log.
Dec 30, 2002  -Member UDB2GTF only works on EBCDIC SAS (z/OS, etc).
              -The new UDB2GTFA member works on ASCII SAS, if that's
               where your DB2 trace records are downloaded.
   Thanks to Ron Alterman, PGE, USA.

Change 20.302  Mostly cosmetic.
ANALUAFF      -ANALUAFF (Unit Affinity Candidates analysis) needed an
ANALSRVC       end comment in line 6.
Dec 30, 2002  -ANALSRVC replaced "compiler fakers" with ARRAYs statement
               to initialize variables.
   Thanks to Bruce Widlund, Merrill Consultants, USA

Change 20.301  This archaic member was replaced by VMXGTIME, but it had
VMXGGMT        typo's corrected and comments updated to steer you to use
Dec 29, 2002   the VMXGTIME to convert timestamps between time zones.
   Thanks to David Klein, DOITT - City of New York, USA.

Change 20.300  SAS Version 9 has tightened syntax validation, and found
VMACLMS        these MXG syntax violations that were tolerated by V8.2:
VMACNTSM      -VMACNTSM variable DUMMYFLD was LENGTH $32 but was also in
Dec 23, 2002   (incorrectly) INFORMAT 16.2 -  error raised on the 16.2.
              -VMACLMS had two instances of ELSE ELSE corrected.
              -Many NOTES: 49-169 The meaning of an identifier .... that
               won't go away until there's a V9 maintenance release.

=======Changes thru 20.299 were in MXG 20.09 dated Dec 20, 2002=========

Change 20.299 -Member ANALALL, which selects and prints all SMF records
ANALALL        for a job is enhanced to include all user SMF records,
Dec 20, 2002   and some new SMF records added since it was last updated,
               and the printing is now done with the %VMXGPRAL utility.
              -Member VMACHSM now include member IMACJBCK, which is the
               member that permits selection of SMF job-related records.
   Thanks to Ronald Lundy, AHOLD, USA.

Change 20.298  The macro override in the MACKEEP= for LDCOVOL had the
DAILYDSN       dataset name spelled wrong; the statement should be:
Dec 18, 2002       MACRO _LDCOVOL DATASETS.DCOLVOLS %
   Thanks to Diane Eppestine, Southwestern Bell, USA.

Change 20.297  This enhancement adds SYSTEM and SYSPLEX to the criteria
VMXGRMFI       that can be used to define RMFINTRV's workloads.
Dec 18, 2002   If you have the same SRVCLASS name on different systems
               that have different meanings in your workload terms, you
               can use the new positional arguments to differentiate.
               (The old IMACWORK gave you access to write code for this,
               but it is limited to only 15 workloads.)
               Two new sections are added to the WORKx= macro arguments
               (that you would tailor in the VMXGRMFI invocation in your
               RMFINTRV member in your USERID.SOURCLIB).
               The syntax to defina a workload now is:

     WORKx=varname/label/pgn(s)/srvclass(s)/periods/system(s)/sysplex(s)

              -varname is used as the first 4 characters of the name of
                  your workload variables
              -label is the first line of the workload variable labels
              -pgn(s) is a list of one or more performance group numbers
                  to sum into this workload (COMPAT MODE only).
              -srvclass(s) is a list of one or more service or reporting
                  classes to sum into this workload (GOAL MODE only).
              -periods is the number of periods in the workload
              -system(s) is a list of one or more systems whose srvclass
                  or pgn will be summed into this workload.
              -sysplex(s) is a list of one or more sysplexes whose pgn
                  or srvclass will be summed into this workload.
   Thanks to Chuck Hopf, MBNA, USA.

Change 20.296  New macro variables &TRNDIN and &TRNDOUT are defined in
VMXGINIT       VMXGINIT and initialized to "TREND", so that the input
Dec 18, 2002   and output TREND libraries can be different.  Originally,
               I backed up the trend library and then updated in place,
               but for restartability products, input and output must
               be different.  These macro variables can be %LET to your
               different DDnames, and your Trend library can be a GDG.
               Only TRND23 (Change 20.239) has been updated to use these
               macros, but all of the MXG TRNDxxxx members will have
               this enhancement.
               Macro LSU23 was defined and set to PDB for TRND23.
   Thanks to Diane Eppestine, Southwestern Bell, USA.

Change 20.295  Investigation of CPU times in AS/400 datasets is enhanced
VMACQACS       by new _400CPU and _400PRN macros to summarize and merge
Dec 18, 2002   all of the variables containing CPU time from QACSJOBL,
               QACSSYSL, and QACSSYST into new dataset QACSCPU that
               includes these CPU-related variables from these datasets:
                 QACSJOBL:  JBCPU JBTCPU JBEDBC
                 QACSSYSL:  SCIFUS SCIFTE SYSSWC
                            JSCPUTOT (sum of JS/3/1/b/c/d/e/i/m/p/s/CPU)
                            SCPUSTOT (sum of SCPU01-SCPU32)
                            NRCPUS   (count of nonzero SCPUnn)
                            PCTCPUBY  100*SCPUSTOT/(NRCPUS*INTSEC)
                 QACSSYST:  SHCPU
                    (the data in QACSSYSC is a subset of QACSSYSL).

               Examination of these CPU times shows that the total CPU
               time in SCPUSTOT is very close to JSCPUTOT+SHCPU.

               Note that the old calculation of PCTCPUBY in QAPMSYS used
               variable SHCPU, but this revision uses the total hardware
               busy time (SCPUSTOT, the sum of SCPU01-SCPU32), as it is
               clear that SHCPU is nothing close to the total CPU used.

               To create the QACSCPU dataset, add   _400CPU after you
               have built the above datasets in the work file.  To then
               print the comparison, add  _400PRN after the _400CPU
               macro invocation.

               Cosmetic: MXG 20.08 debug PUTs with COL=17 GDES=XX were
               removed.
   Thanks to Stephen Hoar, Lloyds TSB, ENGLAND.
   Thanks to John Gebert, Office Depot, USA.

Change 20.294  VTS activity reports enhanced and updated. A new
ANAL94         selection parameter, SUBREP= to select desired report:
Dec 17, 2002   ALL, PHY, VIR, TAP.
Dec 30, 2002   Dec 30: cosmetic: "compiler fakers" replaced with RETAIN.
   Thanks to Wally Danielson, Airborne, USA.

Change 20.293  CICS Stats "UNKNOWN STID=nnn" messages are printed by MXG
VMAC110        to alert us both that IBM has added a new statistics STID
Dec 17, 2002   segment to the SMF 110 subtype 2 record, one that is not
               yet supported by MXG, so that I can begin the process of
               finding the documentation from IBM and updating MXG for
               that new STID.  But when the "UNKNOWN STID=115" message
               was printed, it took several iterations of customer's
               system programmers time to report the problem and send a
               record dump, and hours here trying to find documentation
               that doesn't exist, and then reinvolvement of the site's
               CICS staff to open a PMR with IBM, and then IBM CICS
               support technicians time to finally document that:

               The STID=115 for Enterprise Java Beans (DFHEJBDS) was
               produced by early levels of CICS/TS 2.1 code but then
               withdrawn, with the external mappings and documentation
               removed, so these records should not be produced by the
               currently supported IBM CICS code.  (If you are still
               getting these records on CICS TS 2.2, you need to raise
               a PMR with your CICS support centre.)
               This record type may be reinstated in a future release.

               This change in VMAC110 bypasses the UNKNOWN STID= message
               for STID=115, and documents the STID number!

               02Jan03: APAR PQ69408 was opened 24DEC02.

   Thanks to Chris Selley, Zurich Financial Services, ENGLAND.
   Thanks to Tony Hurlston, Zurich Financial Services, ENGLAND.

Change 20.292  SAS Technical Support provided updated mapping of SAS SMF
ADOCSASU       User record's Procedure Names to the SAS Product Name, so
FORMATS        the $MGSASPR format was updated with new procedure names,
Dec 16, 2002   and the table in member ADOCSASU was revised.
   Thanks to Tom White, SPRINT, USA.

Change 20.291  Support for APAR OW57121 which documents many new SMF 99
FORMATS        Trace Code values; format MG099TC was updated.
Dec 16, 2002

Change 20.290  The Management Class Name variable DMCNAME is padded with
VMACDCOL       hex zeros, which are now converted to blanks.
Dec 11, 2002
   Thanks to Dave Gibney, Washington State University, USA.

Change 20.289  Support for the Workload Manager's WLM Definitions PDS.
REXXWLM        The REXX exec contributed by this user will read the WLM
Dec 11, 2002   PDS to extract the names of tables, keys, and variable
               names, and the exec then generates the SAS code to read
               the PDS to create a SAS dataset for each WLM table.
   Thanks to Sam Bass, McLane Company, USA.

Change 20.288  Support for MQSeries V5.3 (COMPATIBLE) new data:
VMAC115       -SMF 115 Subtype 2 MQMMSGDM Data Set new vars:
VMAC116           QISTDLMM='DELETE*MARKED*MESSAGE*REQUESTS'
Dec  9, 2002      QISTENUM='ENUMERATE*SELECT*REQUESTS'
                  QISTGETB='GETS THAT*GOT MESSAGE*FROM BP'
                  QISTGETD='GETS THAT*GOT MESSAGE*OFF DISK'
                  QISTLOMM='LOCK*MARKED*MESSAGE*REQUESTS'
                  QISTMBLR='RELEASE*BROWSE*LOCK*REQUESTS'
                  QISTMCNT='MESSAGE*COUNT*REQUESTS'
                  QISTRABP='READ*AHEADS*FROM*BUFFER*POOL'
                  QISTRAIO='READ*AHEADS*DOING*I/O'
                  QLSTGETL='GET*LOCK*REQUESTS'
                  QLSTHLDL='TIMES*REQUESTED*LOCK*HELD'
                  QLSTRELL='RELEASE*LOCK*REQUESTS'
                  And all of the QSST fields that exist in DB2ACCT:
                  QSSTABND QSSTCONF QSSTCONT QSSTCONV QSSTCRIT QSSTEXPF
                  QSSTEXPV QSSTFPLF QSSTFPLV QSSTFREF QSSTFREM QSSTFREV
                  QSSTGETM QSSTGPLF QSSTGPLV QSSTRCNZ
              -SMF 116 MQMACCTQ Data Set new vars:
                  QWHSRN  =' RELEASE*INDICATOR'
                  QWHSACE ='ACE*ADDRESS'
                  QWHSSTCK='STORE*CLOCK*VALUE OF*HEADER'
                  QWHSISEQ='SEQUENCE*NUMBER*FOR*IFCID'
                  QWHSWSEQ='SEQUENCE*NUMBER*FOR*DESTINATION'
                  QWHSMTN ='ACTIVE*TRACE*NUMBER*MASK'
                  WQGETPMS='PERSISTENT*GOT BY*MQGET'
                  WQPUTPMS='PERSISTENT*GOT BY*MQPUT'
                  WQPUT1PM='PERSISTENT*GOT BY*MQPUT1'

Change 20.287  PROC DELETE DATA=_Wdddddd; syntax for four z/VM datasets
VMACVMXA       were overlooked and are now %VMXGDEL(DDDDDD=dddddd); as
Dec  9, 2002   they should have been.  The %VMXGDEL is used only for
               datasets that are directly sorted from _W to _Ldddddd,
               and prevents deletion when _W is equal to _L dataset.
   Thanks to Chris Weston, SAS Institute ITRM, USA

Change 20.286 -Three SMS objects were revised to contain Instance Names;
EXNTSQBP       variables SMEXNAME in SMSEXTHR, SMIMNAME in SMSINMEM and
VMACNTSM       SMSENAME in dataset SMSSENDR are now supported.
Dec  8, 2002  -Dataset SQLBUFMG has new fields and fields deleted.
              -New SQLSERVER:Buffer Partition Object supported.
              -INPUT STATEMENT EXCEEDED INPUT with MSExchangeIS object
               if it had NRDATA=49; MXG logic corrected.
              -Antigen Scan object with only NRDATA=12 supported.
   Thanks to Jim Quigley, ConEd, USA.

Change 20.285  Using the _NTIMS macro to tailor Landmark IMS processing
VMACTIMS       failed; each line of that MACRO definition was missing
Dec  8, 2002   the work MACRO at the start of each line.
   Thanks to Michael Gresham, JCPenny, USA.

Change 20.284  Cosmetic cleanup of first MXG 20.08 only:
VMAC119        VMAC119: PUT at line 1794 was deleted.
VMAC110        VMAC110: PUT at line xxxx was deleted.
VMACNTSM       VMACNTSM: Labels for DAPASTRT, DBPAFLRT missing quote.
Dec  8, 2002

Change 20.283  SMF 94 Subtype 2 SMF94SOF/SLN/SON triplet is nonstandard,
VMAC94         so it cannot be used to determine how many pool segments
Dec  5, 2002   need to be output to TYPE942P.  SMF94SON should be the
Jan  2, 2002   number of repeated segments, but is always 1.  SMF94SLN
               should be the length of a segment, but it is 1792, the
               total length of all 16 possible pools, even when fewer
               pools are used.  MXG initially used SON, outputting only
               the first pool, but the test site knew they had defined
               two pools.  Their SMF records had an (undocumented) field
               S94PPP='...0....'B in the first 2 segments, and had
               S94PPP='...1....'B in the other 14 segments, so that test
               was added to VMAC94, to only output if that bit was zero,
               while awaiting this answer from IBM:
                 "We consider all pools to be defined, they just may not
                 be in current use.  Other than assuming that a pool
                 with no logical volumes in it is 'not defined', there
                 is no way to make that determination.  The bits of
                 SMF94PPP are now described, but they will not help in
                 determining which pools are defined."

               So the heuristic test was removed, and MXG now always
               outputs all 16 pool segments to TYPE942P dataset.

               These new variables are created from that S94PPP field:

                 S94PPPRA='RETURNS*ALLOWED?'
                          Bit 0:
                          "Y" if borrowed volumes are to be returned to
                          the common scratch pool when scratched; blank
                          if borrowed volumes remain in the pool that
                          borrowed them when scratched.
                 S94PPPFM='FIRST*MEDIA*TYPE*TO BORROW'
                          Bits 2-4 converted to a decimal value.
                          First media type to borrow, if additional
                          physical scratch volumes are needed by the
                          pool.
                 S94PPPSM='SECOND*MEDIA*TYPE*TO BORROW'
                          Bits 5-7 converted to a decimal value.
                          Second media type to borrow, if additional
                          physical scratch volumes are needed by the
                          pool, and none of the first media type are
                          available.

                          Both are decoded by MG094PP format:
                            0 - No Borrowing
                            1 - Borrowing of Media ID 0 is allowed
                            2 - Borrowing of Media ID 1 is allowed
                            3 - Borrowing of Both Media is allowed

Change 20.282  The debugging  PUT _N_= STARTCOL= .... statement at line
VMACCTLG       580 was removed.
Dec  5, 2002
   Thanks to Len Rugen, University of Missouri, USA.

Change 20.281  SMF 90s from OS/390 V2.9 and z/OS 1.3 have VERSN90 as a
VMAC90A        binary field in subtype 30 records, although the z/OS 1.4
VMAC90         SMF manual still shows an EBCDIC number.  INVALID DATA
Dec  5, 2002   messages were printed, but no impact, as VERSN90 is not
Dec 11, 2002   used.  Revised code inputs VERSN90 ?? &NUM.2. and then
               tests for missing to re-INPUT as &PIB.2.  Subtype 6 have
               VERSN90='0002'x, subtype 6s have 'F0F1'x, or EBCDIC 1.
               Note: USE TYPE90A, the old TYPE90 was replaced by TYPE90A
               and this fix was extended to TYPE90 just for protection.
               I have opened a documentation issue with IBM.
   Thanks to Peter Webber, Co-operative Insurance Society Limited, UK.

=======Changes thru 20.280 were in MXG 20.08 dated Dec  4, 2002=========

Change 20.280  MXG-constructed variable PLAN in DB2ACCT was incorrect in
VMACDB2        Distributed/Remote records (QWHCATYP=7,8); the statement
Dec  4, 2002   in the DO group for those attachments was changed from
               PLAN=SCAN(QWHCCV,1,' .'); to PLAN=SCAN(QWHCPLAN,1,' .');.
   Thanks to Warren E. Waid, JCPenney, USA.

Change 20.279  The Local IP address TCBINDIP in TYP119A7 dataset was not
VMAC119        correctly stored; the statement to compress TCBINDIP must
Dec  4, 2002   be:   TCBINDIP=COMPRESS(TCBINDIP);
               but MXG code had ....   TCBINDIC .. causing the error.
   Thanks to Thomas Heitlinger, Fiducia, GERMANY.

Change 20.278  The %UPCASE(&SASSWORK) and %UPCASE(&USERWORK) added by
VMXGINIT       Change 19.295 were lost, probably by Change 20.019.  When
Dec  3, 2002   ITSV set USER=work (lowercase), their absence caused the
               VMXGDEL to delete dataset work.ANYTHING because it was
               different from dataset WORK.ANYTHING. %UPCASEs restored.
   Thanks to Chris Weston, SAS Institute ITRM, USA.

Change 20.277  RMF Channel Activity Report enhanced with two selection
ANALRMFR       parmaters, CHP= to select desired CHPID values, and
Dec  3, 2002   CACR= to selected SMF73ACR channel types.
   Thanks to Don Isenstadt, Parker Hannifin Corporation, USA.

Change 20.276  Support for numerous NTSMF new objects and new data:
VMACNTSM      -Support for MS Exchange 2000 SP3 changes:
VMXGINIT        -DATABASE:  Variables renamed:
EXNTxxxx          TOCAPCHT==>CACHTOHT
Dec  3, 2002      TOCAHIRT==>CACHTORT
                  TOCAMIRT==>CACHTOMI
                  Variables removed:
                  TOOPENRT LGTHWAIT FIOPPEND FIOPRATE LGWRITRT LGRESTRT
                  CACHSTAL
                  Variables added:
                  DBPAFLRT DAPAEVRT DAPASTRT DBCASIZE
                -DATABASE ==> INSTANCES:  Variables renamed:
                  TOCAPCHT==>CACHTOHT
                  TOCAHIRT==>CACHTORT
                  TOCAMIRT==>CACHTOMI
                  Variables removed:
                  CACHFALT CACHSIZE FIBYWRRT FIBYRDRT TOOPENRT FIOPPEND
                  FIOPRATE LGWRITRT LGRESTRT CACHSTAL
                -MSEXCHANGEDSACCESS CACHES: New variables:
                  CAEXPIRX CAINSRRX TOTENTRX DNENTRX SEAENTRX NDNENTR
                  NGUENTRX TOTENTMX DNENTMX SEAENTMX NDNENTMX NDUENTM
                  CAEXPITX CAINSRTX
                -MSEXCHANGEIMAP4: New variables:
                  INVALICR CONNFAIL CONNREJE
                -MSEXCHANGEPOP3: New variable:
                  INVALICR
                -MSEXCHANGEIS: New variables:
                  RPCAVLAT RPCSLOPK
              -Support for XP Professional:
                -PROCESSOR: New Variables
                  PCTIDLTM PCTC1TM PCTC2TM PCTC3TM TRNSC1RT TRNSC2RT
                  TRNSC3RT
                -Two new XP Professional Objects supported:
                  dddddd   Dataset   Object
                  NTPSFL     PSCHFLOW  PSCHED FLOW
                  NTWMIO     WMIOBJCT  WMI OBJECTS
              -Support for MQSERIES QUEUES: New Instance variable
                 MSMQINST added.
              -Support for new objects: Antigen Scan, Citrix, MSMQ,
               and Data Core:
                  dddddd   Dataset   Object
                  NTANGN     ANTIGENS  ANTIGEN SCAN
                  NTCIIN     CITRIXIN  CITRIX IMA NETWORKING
                  NTCIMF     CITRIXMF  CITRIX METAFRAME XP
                  NTDCCA     DACOCACH  DATACORE CACHE
                  NTDCDC     DACODOMC  DATACORE DOMAIN CONTROLLER
                  NTDCFC     DACOFIBC  DATACORE FIBRE CHANNEL
                  NTDCMI     DACOMIRR  DATACORE MIRRORING
                  NTDCND     DACOSCHD  DATACORE SCHEDULING
                  NTDCNP     DACONMVP  DATACORE NMV POOLS
                  NTDCSC     DACONMVD  DATACORE NMV DISKS
                  NTMQMQ     MSMQUEUE  MSMQ QUEUE
                  NTMQMS     MSMQSRVC  MSMQ SERVICE

Change 20.275  HSM new variables added to dataset HSMDSRDS:
VMACHSM           DSRDRECN='DATA SETS*RECONNECTED'
Dec  2, 2002      DSRBRECN='TRACKS*RECONNECTED*TO TAPE'
                  DSREXRED='EXTENT*REDUCTIONS'
                  DSRABACK='ABACKUPS*REQUESTED'
                  DSRABAKF='ABACKS*FAILED'
                  DSRABXTR='EXTRA*MOUNTS*RECALL*TAKEAWAY'
               HSM now has the ability to "Reconnect" the MCDS record
               when migrating a dataset that had been recalled; the
               update-bit is tested, and if the dataset was not changed,
               HSM "Reconnect"s that MCDS record to the migrated copy
               on tape, updates the catalog to MIGRATE, and avoids any
               movement of data to tape, counting the tracks that were
               not moved to tape!
              -There are 13 function types, not 12, so the DO loop was
               increased to read all 13 array elements.
   Thanks to Frank Cortell, Credit Suisse First Boston, USA.

Change 20.274  Support for RMF APAR OW56739.  For RMF 79 subtype 3, adds
VMAC79         4-byte fields at the end of the segment (i.e. COMPATIBLY)
VMAC7072       to replace the existing and now-overflowing 2-byte frame
Dec  2, 2002   count variables.  For RMF 72 subtype 3, TYPE72GO dataset,
               adds new variable R723PLSC, with the period-level service
               class name, which is now used in RMF reports to flag as
               'HETEROGENEOUS' if R723PLSC is not identical to R723CLSC
               for a certain period across the sysplex.
               See Change 20.306 - correction.

Change 20.273  Workload Graph examples now include plots of MSU used by
GRAFWRKX       each workload.
Nov 27, 2002
   Thanks to Chuck Hopf, MBNA, USA.

Change 20.272  MSU variables that were zero in ASUM70PR/ASUMCEC from old
VMAC7072       S390 data with SMF70CPA=0 are now populated by using the
Nov 26, 2002   CPUTYPE/CPUMODEL variables and the $MG070CP table lookup
               to get and store the CECSUSEC value back into SMF70CPA in
               the TYPE70PR dataset; the non-zero SMF70CPA is then used
               to calculate the MSU values in ASUM70PR/ASUMCEC.
   Thanks to Chuck Hopf, MBNA, USA.
   Thanks to Alan Sherkow, I/S Management Strategies, USA.

Change 20.271 -VMAC108: DOMPVN now labeled.
several       -VMAC42:  S42JDDSO now labeled.
Nov 26, 2002  -VMAC60:  VVROPIND SMF60FNC VVRAMAT3 VVRTPEXT now labeled.
              -VMACTPF: TPFRECNR, GMTOFF, SYSTEM are now labeled, and
                        temporary variable MZHDVAL is no longer kept.
              -VMAC73:  SMF73BSY now labeled.
   Thanks to Chris Weston, SAS ITRM, USA.

Change 20.270  Enhancement for DB2 Trace IFCIDs 202, 230, and 239; those
READDB2        IFCID values are not SMF 102 subtypes, but are SMF 100
Nov 26, 2002   subtype 2 and 3, and SMF 101 subtype 1.  READDB2 will now
               create DB2STAT2 (202), DB2GBPAT (230) or DB2ACCTP (239)
               datasets when those IFCIDs were requested in your READDB2
               invocation.
   Thanks to ???, ???, USA.

Change 20.269  Change 20.221 for ASUMUOW created variable TIMESTMP and
JCLUOWP        changed the sort order of _SUOWCIC, but the JCL examples
JCLUOWV        to use Views (JCLUOWV) or to use Pipes (JCUUOWP) were not
Nov 26, 2002   updated with the revised _SUOWCIC definition, causing the
               VARIABLE TIMESTMP NOT FOUND error.
   Thanks to Larry Nova, TransAmerica, USA.

Change 20.268  Cosmetic.  Syntax of  M4=-4; INPUT +M4 ...  was replaced
Many           by INPUT +(-4) ... and the Assignment or RETAIN statement
Nov 25, 2002   for variables  M1, M2, M4 ... were deleted.  There is no
               need to create/retain the negative valued variable to
               move backwards in an INPUT statement.

Change 20.267 -Type 119 subtype 5 TYP11905 variable TSIPMAXS was not
VMAC119        input, causing the following 8 TSIPxxxx variables to be
Nov 23, 2002   wrong, and the label for TSIPCURS was changed to CURRENT.
              -Type 119 subtype 2 TYP11902 variable TTSTATUS was 0 or
               16777216 when it should have been 0 or 1; documented as
               length 4, it's actually only length 1.  Variable TTTOS is
               only PIB1, TTXRT is PIB2, and TTINSEG and TTOUSEG are
               both PIB8 instead of PIB4; IBM's originaly documentation
               was corrected by the z/OS 1.3 online manual.
   Thanks to Mark Cohen, DTS, ITALY.

Change 20.266  Most EXdddddd "Data Set Exit" members have one executable
EXDB2ACC       statement,  OUTPUT _Wdddddd  or  IF ... THEN OUTPUT ....
EXTY39         which permits instream tailoring syntax that will execute
EXNSPYAP       the existing EXdddddd member's statement:
EXIMRACF          %LET MACKEEP=
EXDB2ACP           %QUOTE(
EXDB2ACB           MACRO _EDB2ACC
EXCICJRN            IF  (your-new-selection-logic-is-true)
EXARBnnn            THEN %%%INCLUDE SOURCLIB(EXDB2ACC); %%
Nov 20, 2002       );
               However, that logic failed with EXDB2ACC, one of the few
               exit members that has more than one executable statement:
                      IF something THEN DELETE;  OUTPUT _WDB2ACC;
                  DB2 Parallel duplicate must be deleted by MXG, but IBM
                  techies using MXG inside DB2 Development needed to see
                  those records, so the normal DELETE was externalized.
               at those records, so the DELETE was externalized so those
               rare instances
                 a. The DELETE statement should not normally be used in
                    dataset exits, as it deletes the entire record; if
                    the record has repeated segments, a DELETE will stop
                    MXG from seeing the rest of that record's segments.
               But by adding a DO;  END; pair in the exit member code:
                   DO;
                   IF DB2PARTY='P' AND QWACPARR='Y' THEN DELETE;
                   OUTPUT _WDB2ACC;  /* DB2ACCT, DEFINED IN IMACDB2 */
                   END;
               there is only one executable statment, so the preceding
               logic   IF  ...  THEN   %INCLUDE SOURCLIB(EX...) works.

               All exit members were examined, and those with more than
               one executable statement were wrapped in a DO; END; pair.

               HOWEVER:  The actual MXG recommended syntax for tailoring
               in exit members when overriding the _Edddddd macro, as
               shown in examples in member DOCMXG, show that I expected
               that YOU would put the DO; ... END;  pair in your logic:
                         %LET MACKEEP=  %QUOTE(
                           MACRO _EDB2ACC
                            IF selection-critera THEN DO;
                              %%%INCLUDE SOURCLIB(EXDB2ACC);
                            END;
                           %%
                           );
               and I still think that syntax is clearer and safer.

               But this is still an worthy enhancement, because, now, no
               matter which syntax you use to override _Edddddd macros,
               either will work, transparently!
   Thanks to Rob D'Andrea, Royal Bank of Scotland, ENGLAND.

Change 20.265  Undocumented fields added by FC4001 cause new SMF 94 data
VMAC94         (added by Change 20.206, using the text of the IBM PTF!)
Nov 19, 2002   to be wrong.  IBM Redbook SG24-2229-05 now lists the 128
Nov 25, 2002   byte field we found at offset 400, but an 8-byte field
Nov 26, 2002   between S94OPM_AVG_VDM at offset 534 and S94OPM_DC1 at
               offset 536 is not documented; it was located only by this
               user's astute validation, knowing what values to expect.
               The validation and -05 document made these corrections:
              -S94VPSET is now input as PIB2 instead of 1.
              -S94PSVC0-S94PSVC3 are now input as PIB2 instead of 1.
              -S94DRIC1-8, S94xxWN1-2, S42ADI, S42DTW are recorded in
               megabytes and were too small by a factor of 1048076, and
               ADI/DTW were not formatted MGBYTES.
              -The *1 or *2 text in many labels that didn't belong was
               removed (added by erroneous CHANGE X Y ALL edit command).
              -Variable SMF94VLC, the 5-byte alphanumeric Library Serial
               "number" is now kept in TYPE942 & TYPE942P datasets, and
               SMF94VLC should now be used in place of SMF94SNO in your
               reports, as the 12-byte SMF94SNO field does not exist in
               subtype 2 records.  SMF94SNO was replaced by SMF94VLC in
               the sort macros for the TYPE94, TYPE942, and TYPE942P
               data sets, for consistency and so they could be matched.
               SMF94VLC is created from SMF94SNO in (older) subtype 1
               records that still have hex zeros in the VLC field.
                 SMF94VLC is not documented in the SMF 94 subtype 2
                 record, but MXG creates it as a five-byte character
                 variable from the 3-byte hex field that was observed to
                 contain it in the VPS Message Header field.  SMF94VLS
                 is always missing value in TYPE94 when VLC contains a
                 character, so SMF94VLS is of no use in reporting.
               OBSERVATION COUNT CHANGE:  TYPE942  fewer obs.
               OBSERVATION COUNT CHANGE:  TYPE942P more  obs.
   Thanks to Wally Danielson, Airborne Express, USA.

Change 20.264  Variable MSEXISPU in MSEXCHPU dataset was increased from
VMACNTSM       $32 to $64 to hold names like:
Nov 19, 2002    "First Storage Group-Public Folder Store (ISOMAILP1)"
   Thanks to Xiaobo Zhang, Insurance Service Office, USA.

Change 20.263 -Support for BMC MVCICS 5.6 and correction to 5.5 CMRDETL
FORMATS        support.  New data BMC added to file segments in 5.5 was
VMACMVCI       optional, the old (5.4) 16 bytes, or an expanded 92 bytes
Nov 16, 2002   but MXG always expected the new 92 byte length, causing
Nov 19, 2002   INPUT STATEMENT EXCEEDED error if you did not turn on the
               new optional longer length records.  The MXG test to
               INPUT the longer length segment was revised to
                 IF T6ECPRID EQ 'F4'X AND T6EQUAL EQ '1.......'B THEN
               using the new T6EQUAL field added in 5.5 to discriminate.

              -In MVCICS 5.6, BMC added segment length into a reserved
               field; new variable T6EFENLN is created by this Change.

              -And MVCICS 5.6 extends the extended information to DB2,
               MQSERIES, and DBCTL so the $MGMVCTI format that decodes
               the file type variable, TFILI, was updated to identify
               those types of files that were accessed from CICS.
   Thanks to Franco Carmignani, IntesaBCI, ITALY.

Change 20.262  Support for APAR xxyyyyy added new RMF 99-1 trace codes
FORMATS        for WLM dynamic resource group additional measurements,
Nov 16, 2002   that are now decoded by the MG099TC format.

Change 20.261  Preliminary look at Velocity Software ESAMON V3.2 data.
VMACXAM        Updated the header from YY to YYYY; received documenation
Nov 15, 2002   of the current version, but yet to validate and compare.
               Text of this change will be updated when changes made.

Change 20.260  Support for AS/400 5.2 Collection Services.  INCOMPATIBLE
VMACQACS       because you must change the LRECL for the files that IBM
Nov 15, 2002   IBM changed; if you upload 5.2 data with the new LRECL,
               these data are readable with prior versions of MXG since
               IBM added the new data at the end of the record:
                 Dataset   Variable                     5.2 LRECL
                 QAPMSYSL  SYLPTB    Added at end           3294
               But these data were inserted or increased in length, so
               you must have  this change and correct LRECLs to read:
                 Dataset   Variable                     5.2 LRECL
                 QAPMETH   ETMDIF    Length increased        266
                 QAPMETH   ETMUPF    Added at end            266
                 Dataset   Variable                     5.2 LRECL
                 QAPMDISK  DSASPX    was DSAASP now NUM      367
                 QAPMDISK  DSASPN    Added at end            367
   Thanks to Warren Cravey, Fidelity Systems, USA.

Change 20.259  TYPE71 Medium Impact Frames variables ESFRMEAV/MN/MX were
VMAC71         input out of order (AV had Min, MN had Max, MX had Avg)
Nov 15, 2002   this change also affected ESFRHIAV,ESFRHIMN,ESFRHIMX due
May 12, 2003   to subsequent calculations.
   Thanks to Don Deese, Computer Management Sciences, USA.
   Thanks to Tony Stewart, Royal Mail, ENGLAND.

Change 20.258 -Cosmetic.  Labels for variables MCTSSDCN/MCTSSDRL added.
VMAC110        Only if the new UTILEXCL is used to create IMACEXCL, will
Nov 21, 2002   those variables (field count, segment length) exist in
Nov 29, 2002   CICSTRAN, so that you can know which exclude code was in
               use to create these observations with excluded fields.
              -The debugging PUT statement for STID=82 was removed.
   Thanks to Craig Collins, State of Wisconsin DEG, USA.
   Thanks to Peter Krijger, National Bank of New Zealand, NEW ZEALAND.

Change 20.257  Message VMAC80A.WARN.  MORE DTP (44) SEGMENTS UNIMPORTANT
VMAC80A        is unimportant, but the for the 10/13 RACFEVENTS, MXG now
Nov 14, 2002   will keep 15 segments (previously kept was 12, this site
               had 14) to suppress the warning message.
   Thanks to Hersch White, UICI, USA.

Change 20.256  Major enhancement in UTILEXCL redesigns its IMACEXCL.
UTILEXCL       Instead of creating a DO-GROUP for each APPLID+SMFPSRVR,
Nov 15, 2002   only the SMFPSRVR (CICS Version), MCTSSDCN (field count)
               and MCTSSDRL ("record" length) combination are used to
               create a DO-GROUP for each unique record structure, so
               you won't have a separate DO-GROUP for each APPLID.  And
               more important, you won't have to update IMACEXCL every
               time you add a new APPLID that clones an existing record
               structure.   Thus to support a new CICS version (or any
               changes in existing EXCLUDED fields), you only need one
               dictionary record from a test run to create the IMACEXCL
               that will support the new record format for all APPLIDs.

               The reporting of UTILEXCL was enhanced.  If optional CICS
               segments are found in your data, it prints the list of
               IMACICxx members whose comment blocks must be removed to
               input those optional segments.  New reports show which
               APPLIDs are in which DO-GROUP, list the non-excluded
               dictionary fields for each DOGROUP, and print the text
               of the IMACEXCL that was created.

               To detect the very unlikely event that your CICS guru
               created two exclude lists for the same APPLID that have
               exactly the same number of fields and same record length,
               but have different fields excluded, UTILEXCL compares the
               internal sequence of fields, and will print an ERROR
               on its log if that conflict is discovered.

               The redesign is inside the _BLDEXCL macro that creates
               the IMACEXCL file from PDB.CICSDICT, so you don't need to
               re-read SMF dictionary records.  You use _BLDEXCL to read
               your previously-built PDB.CICSDICT as shown in examples
               in the comments in the UTILEXCL member.

               This also corrects INPUT STATEMENT EXCEEDED errors with
               the previous design caused by multiple dictionaries for
               an APPLID+SMFPSRVR that had different DCN/DRL lengths.
               The old logic did not handle correctly, and it created an
               IMACEXCL that had repeated variables in the INPUT.

               When you execute UTILEXCL on MVS to create IMACEXCL, with
               SYNCSORT as your host sort, you'll get WARNINGS that the
               BY list length is greater than 4092, which is a SYNCSORT
               limit, but then SAS recognizes that SYNCSORT failed and
               uses the internal SAS sort successfully.  One site got a
               ERROR: WER723A: CONTACT YOUR SYNCSORT REPRESENTATIVE
               message, but I believe that was with SAS Version 6.09.
               Using OPTIONS SORTPGM=SAS should circumvent on V6.
   Thanks to Kevin Van Houten, Worldcom, USA.
   Thanks to Erling Andersen, SMF, DENMARK

Change 20.255  MXG 20.08-20.07, only if VSAM SMF is read with TYPEDB2,
VMACDB2        an INPUT STATEMENT EXCEEDED RECORD LENGTH error occurs;
Nov 12, 2002   the test added by Change 20.202 should have been
                 ELSE IF TR03OFF GT 0 THEN OFFSMF=TR03OFF;
               The original test with TR03OFF GT . THEN was always true
               because it is TR03OFF is initialized to zero in RETAIN,
               so when VSAM data (with OFFSMF=4) was read, the first 100
               record resetn OFFSMF incorrectly to zero.
   Thanks to Michael Oujesky, MBNA, USA.

Change 20.254  Invalid SMF ID=100 Subtype=226 record caused STOPOVER.
VMACDB2        The record was in fact not written by DB2, and MXG's code
Nov 12, 2002   recognized the non-standard subtype, but because IBM puts
               the actual subtype in QWHSIID, in the DB2 product header,
               MXG has to INPUT from @LOC, but did not validate that the
               value in LOC was inside the record.  The logic now checks
               and detects invalid (short) records, printing the first
               five on the log, but continuing to process the SMF file.
   Thanks to Chuck Hopf, MBNA, USA.

Change 20.253  Support for ASG-Landmark TMON/CICS V2.1 TH01595 (COMPAT).
VMACTMO2       TCB Switch counts and durations were restructured in both
Nov 10, 2002   TA and TI records, adding new count/duration variables:
                  TAWRDCT/M TIWRDCT/M   Ready Queue Wait for Dispatch
                  TAAWTWRC/T TIIWTWRC/T Ready Queue Wait after Satis
                  TADSPWRC/T TIIDSWRC/T Ready Queue Wait While Switched
               and making TADSPQCN/M and TIIDSQCN/M now reserved = zero.
               The new fields were added compatibly and will be skipped
               over without error with MXG 20.02 or later (Change 20.072
               is required for base V2.1); this change will create and
               populate the new variables when found.
               Note: the order and location of the fields is a guess, as
                     the documentation is unclear, and no records with
                     the new fields have been tested.  But since all are
                     input as binary, no errors in MXG execution will
                     occur, and I might have guessed luckily.
   Thanks to Frank Lund, EDB Teamco AS, NORWAY.

Change 20.252  Support for SAS Version 9 TS M0 Production Release.  MVS
CONFIGV9       Benchmarks in Newsletter FORTY-TWO show there is no real
AUTOEXEC       change in resources between V8.2 and V9.00; this change
Nov  8, 2002   is not required for V9, but turns on reporting options
Mar  1, 2003   that can help in diagnosing problems with your SAS job.
              -In CONFIGV9 (used only for "MVS" execution) SAS options
                DLEXCPCOUNT FULLSTATS FULLSTIMER STIMER MEMRPT
               are now enabled to print those statistics by default.
               MXG's previous override to MSGCASE was removed so that
               the SAS default of NOMSGCASE is specified (to circumvent
               a SAS error in the DLEXCPCOUNT counts with MSGCASE).
              -In AUTOEXEC (used only for "ASCII" execution), FULLSTIMER
               was added; it had been removed due to problems way back
               in SAS V6 for PCs.
              -This change is not required, but has the recommended new
               options for SAS Version 9 on MVS-OS/390-z/OS systems.
              -SEQENGINE=V6SEQ is still required; see Change 20.150.

Change 20.251  Change 20.221 to VMXGUOW causes ASUMUOWT to fail; the new
VMXGUOW        variable TIMESTMP was added by that change only to the
Nov  7, 2002   code used when CICSTRAN was input, and was not added to
               the separate macro used when MONITASK data is input.
   Thanks to Terry Warnke, CUNA Mutual, USA.

Change 20.250 -Enhancement for Tandem G07 and later creates new datasets
EXTANDIF       TANDISKO (Disk Open) and TANDISKF (Disk File) from those
EXTANDIO       same filenames.  If you do not have a tailored TYPETAND
IMACTAND       or TYPSTAND member, you will need to add //TANDISKO and
TYPETAND       //TANDISKF DD DUMMY, as the default MXG member TYPETAND
TYPSTAND       member always looks to read all possible Tandem files.
VMACTAND      -MXG code for TANDPROC G06 record expected 42 bytes of the
VMXGINIT       variables MSGSQTIM thru RPLCBYTE, but documentation shows
Nov  6, 2002   only a 16 byte reserved field added by G05, and I can't
Nov 25, 2002   find documentation that caused me to add those fields, so
               their input is made conditional to eliminate STOPOVER.
               In addition, the divide by DURATM was relocated until
               after all fields have been input, and PER SEC was added
               to several rate variables' label.
   Thanks to Erling Andersen, SMF Data A/S, DENMARK.

Change 20.249  Enhancement adds TRENDOLD= parameter so you can have your
VMXGRMFI       old TREND and new TREND be different datasets, i.e., be
Nov  6, 2002   part of a GDG, so the Trend Job is recoverable by CA-11.
               Previously, the TREND parm was used for both the old and
               the new Trend Library, and that is unchanged unless you
               actually use the TRENDOLD= parameter in your VMXGRMFI.
               Also, the disfunctional NORM70= (obviously had never been
               used) was corrected to work as designed.
   Thanks to Chuck Hopf, MBNA, USA.

Change 20.248  Variables HU47BJOB and HU47BSTP were input and kept in
VMACHURN       dataset HURN47, and variables HU49BJOB/HU49BSTP added to
Nov  6, 2002   dataset HURN49.
   Thanks to Deborah Churchyard, IBM Global Services, AUSTRALIA.
   Thanks to Roger Stenlake, TELSTRA, AUSTRALIA.

Change 20.247  ASUMUOWT stopped working in MXG 20.03-20.07; the _SUOWTMO
VMXGUOW        macro definition that was in VMXGUOW in 20.02 when 20.038
Nov  6, 2002   was tested was somehow deleted in the VMXGUOW in 20.03.
   Thanks to Terry Warnke, CUNA Mutual, USA.

Change 20.246  Two STG THLD titles were corrected and TOTEFS is now
ANAL88         spelled correctly as TOTALs in headings of this report
Nov  6, 2002   example for SMF 88 System Logger data.
   Thanks to Fred Mathew, Nordstrom, USA.

Change 20.245  Internal note.  MXG's PROCSRCE program is used to create
PROCSRCE       the IEBUPDTE-format sequential file from the MXG Source
Nov  6, 2002   directory, and it is part of MXG QA, checking line length
               and for unexpected ./ characters inside those files.  It
               now also checks for 'E3'x and 'FC'x in my ASCII source,
               as they should have been ] '5D'x and u '75'x.

Change 20.245  MACRO _THRDHST should have had INFILE THRDHIST instead of
TYPSTHST       SMF, which was left over from testing, and wasn't caught
Nov  5, 2002   in QA because there was an //SMF file allocated.
   Thanks to Wolfgang Vierling, Allianz, GERMANY.

=======Changes thru 20.244 were in MXG 20.07 dated Nov  4, 2002=========

Change 20.244  A second instance of DSNLABEL= in TRNDCEC caused ERROR:
TRNDCEC        THE KEYWORD PARAMETER DSNLABEL PASSED TO MACRO VMXGSUM
TRNDHSM        WAS GIVEN A VALUE TWICE.  The second instance was
Nov  4, 2002   removed, and a similar error prevented in TRNDHSM.
   Thanks to Mike Kynch, International Paper, USA.

Change 20.243  Cosmetic, in seldom-used TYPE40 (last updated in 1995).
VMAC40         If TYPE40 is executed alone, SAS prints notes that
Nov  3, 2002    VARIABLE ABEND, CONDCODE IS UNINITIALIZED
               because those variables don't exist in SMF 40 (dynamic
               deallocate).  That note is caused by a PUT statement in
               included VMACEXC2 (common code that decodes the TIOT EXCP
               counts in SMF 30s and 40s) that prints ABEND and CONDCODE
               in an MXGERROR log message if an error is found in EXCPs,
               and ABEND/CONDCODE do exist in the type 30s.  There is no
               impact on the TYPE40 dataset since those two variables
               are not kept nor used to create TYPE40.

               However, UNINITIALIZED notes often expose errors in logic
               or in spelling during alpha testing, so the QA test looks
               for those notes during error correction.  But even when
               the cause is valid, like here, and even though they have
               no impact, those notes are eliminated (primarily because
               they cause confusion and unnecessary support questions),
               by a "compiler faker" statement:
                 IF charvar=' ' THEN charvar=' ';
                 IF numrvar=.   THEN numrvar=.;
               an executable statement, but one that is placed after the
               RETURN; statement in VMAC40, they are never actually
               executed.   Nevertheless, I considered replacing those
               executable statements with the RETAIN compiler statement:
                RETAIN ABEND '       ' CONDCODE .;
               to initialize, define length and char/numr type.  However
               RETAIN can never be used if the variable is conditionally
               INPUT, because values from a prior record would then be
               retained and incorrectly output when they were not INPUT.
               When I asked Rick Langston about a RETAIN without retain
               he pointed out that ARRAY statements could be used:
                 ARRAY INIC40   $ ABEND ('       ');
                 ARRAY ININ40     CONDCODE (.);
               as it initializes without retaining values.  The ARRAY
               statement must be physically located before the variable
               name is used, and a unique token must be used for each
               array (some names are restriced, like ENTITY, and the
               array name cannot be the same as a variable name in some
               other member that can be compiled together, but with the
               naming convention INICxxxx and ININxxxx in VMACxxxx, the
               compiler faker statements in VMAC40 were replaced by two
               ARRAY statements, and I will likely replace others as I
               find them in other members.
   Thanks to Bruce Widlund, Merrill Consultants, USA
   Thanks to Freddie, TXU, USA.

Change 20.242  STK HSC User SMF Subtype 29 (1Dx) caused INPUT STATEMENT
VMACSTC        EXCEEDED error; MXG expected +6 at the end of the record
Oct 31, 2002   should have been +4, and STC29MVN is PIB4. and not NUM4.
               And that subtype was incorrectly OUTPUT into STCVSM28,
               but now those typos are corrected to OUTPUT to STCVSM29.
   Thanks to Dwain P. Majak, Blue Cross Blue Shield of Kansas, USA.

Change 20.241  Support for APAR OW55968 replaced 4-byte R744RSST with a
VMAC74         new 8-byte field (R744RSSE) to prevent overflow.  When
Oct 29, 2002   the new value exists, it is still stored in R744RSST,
               as keeping R744RSSE would be redundant.  Also OW55586.

Change 20.240  TYPE73 with SMF73CMG=0 still had missing PCHANBY/PNCHANBY
VMAC73         because the initialization logic was still incorrect and
Oct 29, 2002   had to be relocated, again.
   Thanks to Michael L. Kynch, International Paper, USA.

Change 20.239  Trending for TYPE23 dataset (SMF Buffer Usage) was wrong;
TRND23         the include of ASUM23 was incorrect and macro names were
Oct 28, 2002   also corrected.
   Thanks to Diane Eppestine, Southwestern Bell, USA.

Change 20.238  Documentation. Using TEMP01= with %VMXGSUM can cause
VMXGSUM          ERROR: FILE PDB1.MXGSUM1.VIEW IS SEQUENTIAL. THIS TASK
Oct 28, 2002     REQUIRES READING OBSERVATIONS IN A RANDOM ORDER, BUT
                 THE ENGINE ALLOWS ONLY SEQUENTIAL ACCESS.
               Remove the TEMP01=PDB1 argument in your tailored %VMXGSUM
               invocation to eliminate this error.  MXG Change 19.151
               documented the changes in use of the TEMP01/TEMP02/TEMP03
               arguments; while you can make TEMP01= work (by changing
               your DD or adding a LIBNAME PDB1 V6SEQ; statement), MXG
               has recommended that you never use TEMP01, and you use
               TEMP02/TEMP03 only for specific large dataset cases, e.g.
               when you want to exploit hardware compression.

               "MXGSUM1" errors are in an VMXGSUM invocation.  When the
               message is XXXX.MXGSUM1.VIEW instead WORK.MXGSUM1.VIEW,
               it shows that your %VMXGSUM invocation has TEMP01=XXXX.
   Thanks to Lawrence Jermyn, Fidelity Systems, USA.

Change 20.237  IDMS Performance Monitor for Version 1500 circumvention;
VMACIDMS       MXG will skip over unknown sections, rather than failing
Oct 25, 2002   with an INPUT STATEMENT EXCEEDED; new sub-subtype 13, 14
               and 15 records are created, but I have no documentation
               of those record subtypes, nor of any changes to any of
               the existing subtypes (which, while seeming to be still
               correct, should be closely examined and validated).
               This text will be updated when those sub-subtypes are
               requested to be supported by a site with documentation.

Change 20.236  SAS User SMF record variable SASPROD, SAS Product Name,
VMACSASU       was decoded with the table look-up, but was neither kept
Oct 25, 2002   nor was the variable labeled.
   Thanks to Alfred Holtz, Merck Medco, USA.

Change 20.235  Support for APAR OW54010 adds Large Virtual Memory (above
VMAC78         2 GigaBytes) fields to RMF's Private Area Virtual Storage
Oct 24, 2002   Job-Level Monitor SMF 78 subtype 2, in TYPE78PA dataset:
                 VSDGHWM ='HWM*BYTES ALLOCATED*ABOVE 2GB'
                 VSDGMAX ='MIN BYTES*ALLOCATED*ABOVE 2GB'
                 VSDGMIN ='MIN BYTES*ALLOCATED*ABOVE 2GB'
                 VSDGNTME='TIME STAMP*OF MIN*ABOVE 2GB'
                 VSDGTOTL='TOTAL*SAMPLES*ABOVE 2GB'
                 VSDGXTME='TIME STAMP*OF MIN*ABOVE 2GB'
               You must have put JOB name(s) for VSTOR in your ERBRMFxx
               to monitor job-level and create 78-2s, and these new data
               are present only if the Detail Option was set for VSTOR.
               This change is required if you install this APAR; the MXG
               code was not prepared to skip over the new data.
   Thanks to Brian Currah, Performance Associates, CANADA.

Change 20.234  Support for Candle Omegamon for CICS V520 User SMF record
VMACOMCI       was added by adding 'V520' to the IF FOCVER test; visual
Oct 24, 2002   scan of a PROC PRINT of first 20 observations showed no
               obvious errors (as would occur if a field was inserted).
   Thanks to Art Cuneo, Health Care Services Corporation, USA.

Change 20.233  Fairly obscure tailoring: the KEEP= _PDB30_4 LOCLINFO was
BUILD005       reversed to KEEP = LOCLINFO _PDB30_4 ; so that redefine
BUIL3005       of _PDB30_4 could use DROP= syntax without accidentally
Oct 24, 2002   dropping LOCLINFO; the MXG syntax in KEEP= must have the
               old-style macro name last, so that DROP overrides KEEP.
   Thanks to Brian Crow, British Telecom, ENGLAND.

Change 20.232  Cosmetic.  Labels for REGSEXAV/MN/MX are 'REG+SWA PAGES';
VMAC71         the original label mistakenly had 'REG+SQA PAGES'.
Oct 23, 2002
    Thanks to Tom Buie, Southern California Edison, USA.

Change 20.231  Support for Control-D "SF2" User SMF record, described by
EXTYCSF2       their CTDSF2 DSECT, for Batch, creates new dataset
IMACCSF2       CTLDSF2, but the data does not exactly match the DSECT:
TYPECSF2         Variable SF2VSMCP, CPU Writing to VSAM, contains data
TYPSCSF2         values that are impossible ('0009CBEF'x, if that field
VMACCSF2         is in milliseconds, as are the preceding four  fields);
VMXGINIT         that value is greater than the elapsed time.  Problem
Oct 22, 2002     will be opened with the vendor and this note updated.
   Thanks to Kerstin Jansson, Tietoenator, FINLAND.

Change 20.230  Support for Control-D "POD" User SMF record, described by
EXTYCPOD       their CTDPSMF DSECT, for Web-Access creates new dataset
IMACCPOD       CTLDPOD, but the record does not agree with the DSECT:
TYPECPOD         Variable PODPTMLI (Login Time) i