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

CHANGE 17.17

 
=========================member=CHANGE17================================
 /* COPYRIGHT (C) 1984-2000 MERRILL CONSULTANTS DALLAS TEXAS USA */

         MXG Version 17.17 is  dated Feb  7, 2000, thru Change 17.398.
         MXG Version 17.11 was dated Feb  2, 2000, thru Change 17.395.
First    MXG Version 17.11 was dated Jan 31, 2000, thru Change 17.394.
First    MXG Version 17.10 was dated Jan 20, 2000, thru Change 17.375.
         MXG Version 17.09 was dated Dec 22, 1999, thru Change 17.339.
         MXG Version 17.08 was dated Nov 12, 1999, thru Change 17.308.
First    MXG Version 17.08 was dated Nov 10, 1999, thru Change 17.301.
         MXG Version 17.07 was dated Oct  8, 1999, thru Change 17.264.
First    MXG Version 17.07 was dated Oct  7, 1999, thru Change 17.261.
         MXG Version 17.06 was dated Aug 12, 1999, thru Change 17.216.
         MXG Version 17.05 and dated Aug  5, 1999, thru Change 17.207.
First    MXG Version 17.05 and dated Aug  4, 1999, thru Change 17.203.
         MXG Version 17.04 was dated Jul 16, 1999, thru Change 17.175.
First    MXG Version 17.04 was dated Jul 14, 1999, thru Change 17.172.
         MXG Version 17.03 was dated Jun  8, 1999, thru Change 17.126.
         MXG Version 17.02 was dated May 19, 1999, thru Change 17.104.
         MXG Version 17.01 was dated May  3, 1999, thru Change 17.079.
First    MXG Version 17.01 was dated Apr 29, 1999, thru Change 17.073.
         MXG Version 16.16 was dated Feb 20, 1999, thru Change 16.394.
    Newsletter THIRTY-FIVE was dated Feb 20, 1999, thru Change 16.367.

Contents of member CHANGES:

  (Please see member NEWSLTRS for Technical Notes
   that were previously in member CHANGES).

I.    MXG Software Version 17.17 is now available.
IX.   Incompatibilities and Installation of MXG 17.17.
X.    Online Documentation of MXG Software.
XI.   Changes Log


I.   MXG Software Version 17.17 is now available, upon request.

 1. Major enhancements added in MXG 17.17:

      Support for OS/390 Release 2.9.
      Support for Lotus Domino Server Release 5.02.
      CICINTRV dataset creation logic was wrong.
      Revised utility to print NEWSLTRS/CHANGESS members.
      Revisions and updates with new variables in all ADOCs.

    Major enhancements added in MXG 17.10:

       Year 2000 errors fixed for TYPEZARA and VMXGVTOF.
       Y2K Cosmetic conversion of Julian dates from 00cyyddd to yyyyddd.
       TELNET LOGF Time field is Duration, not datetime, not Y2K prob!
       RMFINTRV/VMXGRMFI enhancements fixed and documented.
       Support for Beta91 Balancing Manager SMF record.
       Support for Software Innovation's LDMS product.
       Added a replica of MICS SNTNSS report from NETSPY (and fixed it).
       EXPDBOUT Example to add CICS Statistics datasets to your PDB.
       Several ANALRMFR enhancements, this was just most recent.
       Test version of VMXGSUM in XMXGSUM, uses SAS View to save DASD+.

    Major enhancements added in MXG 17.09:

       ABEND 2415, some sites due to no RECFM in //NULLPDS in SAS proc.
         Starting with MXG 17.07, VMXGINIT now opens //SOURCLIB, and
         some SMS sites get ABEND2415.  Adding RECFM=U to the //NULLPDS.
         DD statement corrects the ABEND.  See Change 17.317.
       Support for IIS Log.
       Support for Windows 2000 Build 2195 NTSMF data.
       Support for remaining CA-VIEW Metrics validated.
       Support for additional Landmark TMVS subtypes.
       More IMS Log revisions for negative values, more in testing.
       RMFINTRV now invokes VMXGRMFI, supports 115 workload, SYNC59.
       ASUMTALO Last-complete-interval now corrected.

    Major enhancements added in MXG 17.08:

       TYPEIMSA IMS Log revisions correct negative RESPNSTM/SERVICTM.
       TYPECIMS IMF SQLCALLS are lost due to INCOMPAT change in MVIMF.
       TYPE73 FICON PCHANBY/PNCHANBY wrong in initial FICON support.
       TYPE74 PCTPNCHA/PCTPNOTH/PCTDVPND/PCTPNDEV revisions.
       Support for APAR OW41147 ORGEXPDT=99999 - Read it: Y2K Critical.
       Support for CA View Metrics SARSMFUX SMF record.
       Support for RACF Unload IRRDBU00 Started Task subtype.
       Support for TRMS Version 51A08 (COMPATIBLE).
       Support for Landmark DB2 Monitor V 3.2 (INCOMPAT).
       Support for APAR OW40579/41407 SMF 42 subtype 4.
       Support for APAR PQ28258 for SMF 103 record.
       Support for unix PerfMeter Freeware Monitor records.
       Support for DFSMS/MVS V1R5 - in place, no changes.
       Support for CA VIEW Metrics SARSMFUX SMF record.
       Support for SQL*NET NIV adds IPADDR/PORTNR to ORACLE.
       Enhanced TYPE1032 Web Server eliminates negatives.
       Negative QXSELECT because DB2 overflowed counter!
       CECSER wrong if CPUs added or deleted during interval.
       Utility to show IMACWORK definitions CPU sources.
       TYPE90A replaces TYPE90 member for SMF type 90 data.
       CICS Statistics EOD record has missing DURATM.

    Major enhancements added in MXG 17.07:

       Major IMS Enhancements for MXG IMS log processing.
       Support for Domino Server R5.0/R5.01 SMF type 108 record.
       Support for Top Secret 5.1 (INCOMPATIBLE).
       Support for TMON/MVS V2 PTF TD01655 (COMPAT).
       Support for MQ Series Version 2.1 (COMPATIBLE).
       Support for TeleView 4.3B subtype 3 record.
       Support for OS/400 Release 4.4.0 (LRECLs INCOMPAT)
       Support for Mobius View Direct 6.1.2 (INFOPAC).
       Support for APAR OW39508 7060 Multiprise EIO and DSD.
       Support for OS/390 R2.8 (COMPAT, changes were APARs).
       ASUM70PR now creates PDB.ASUMCEC BY CECSER vice BY SYSPLEX.

    Major enhancements added in MXG 17.06:

       Support for OS/390 R2.8 (Compatible, 16.09 or later supports).
       Support for Lotus Notes, SMTPDS, SMTPRS objects in NTSMF data.
       Y2K Ready: ASMTAPES must have been Assembled with ES6 parameter.

    Major enhancements added in MXG 17.05:

       Support for IBM's TPF (Transaction Processing Facility) OS.
       Support for APAR OW31701 for ESS Parallel Access Volumes.
       Support for OW39128 for RACF, adds DSNAME of PDS used for PROGRAM
       Support for STK's VTCS 2.2.0 (INCOMPATIBLE) VSM SMF records.
       IBM's sample IXGRPT1 for SMF type 88 records is replicated.
       New PDB.ASUMCEC corrects errors in PDB.ASUM70PR, more useful.
       TYPETASK='OMVS' instead of TYPETASK='STC ' for OMVS/USS jobs.
       OMVS/USS jobs filled SPIN, never purged, now output to PDB.

    Major enhancements added in MXG 17.04 dated Jul 16, 1999:

       Correction for preliminary IMS Log Enhancements.

    Major enhancements added in MXG 17.04 dated Jul 14, 1999:

       Support for CICS TS 1.3 new field inserted in CICSTRAN, INCOMPAT!
         If you have CICS TS 1.3, you must install MXG 17.04 (or the one
         line Change 17.156) or many variables in CICSTRAN will be bad.
       Support for APAR OW37565 identifies CP or ICF CPUs in TYPE70PR.
       ICF CPUs are now detected and deleted automatically in ASUM70PR.
       Significant IMS Log processing enhancements available for test.
       Utility to examine dates in SAS data library for Y2K.
       Support for APAR OW37816, new 2105 cache data in TYPE74CA.
       Support for Connect Direct R 3.2 'CT' record.
       Support for MIM user record enhanced, new dataset.
       Support for RMM European or American Date formats.
       Support (preliminary) for NTSMF Windows 2000 Beta Three records.
       Enhanced RMFINTRV/VMXGRMFI permits over 100 workloads now works.

    Major enhancements added in MXG 17.03:

       Support for Type 42 subtype 7/8 NFS Usage/Users.
       Support for APAR OW37091 Measured Usage SMF 89 changes.
       Support for SoftAudit Version 7.1 (COMPATIBLE).
       Support for STK's NearOAM V2.2 (COMPATIBLE).
       Support for 32 (up from 16) sortworks for SYNCSORT.
       Support for OS/400 V4.3.0, no change, is in MXG 16.16.
       BUILDPDB vars TAPEDRVS/TAPE3480/etc corrected for MULTIDD='Y'.
       BUILDPDB vars EXCPNODD/IOTMNODD now corrected for MULTIDD='Y'.
       Enhancement for PDB.ASUMTAPE obs with STATUS=MISSEDMNT.

    Major enhancements added in MXG 17.02:

       Support for DB2 type 102 subtype 199, Dataset I/O.
       Support for Lexmark MarkVision Job Statistics
       Support for CICS TS 1.2 Journal segment GLRHTYPE=2, used by SAP.
       Support for SOFTAUDIT 6.1.2 (COMPATIBLE).
       Support for TELEVIEW 4.3 (INCOMPATIBLE).
       Support for RACAL IT Security's SRM product for HSM.
       Support for i-data afp-software's SMF record.
       Support for NTSMF 2.3 (COMPAT), 21 new NT objects added.
       Enhanced RMFINTRV/VMXGRMFI permits over 100 workloads. See 17.04.
       RACF command keywords specified/ignored now decoded in TYPE80A.

    Major enhancements added in MXG 17.01:

       Support for DB2 type 102 subtype 199, Dataset I/O.
       Support for Index Statistics in T102S022.
       Support for deaccumulation of TYPE30_6 data.
       Support for APAR OW37708/APAR OW38073 new fields.
       Support for APAR OW15406 (IODF Creation now YYYY).
       Support for "FICON" channels adds fields compatibly.
       Support for Candle V400 Omegamon for CICS Epilog.
       Support for IXFP/ICEBERG Subtype 8 and fix forsubtype6.
       Support for NTSMF new Quota Server object.
       Support for TANDEM F40, G04 and G05 INCOMPATIBLE.
       Changing Interval with DURSET didn't change ASUM70PR.
       Don't use PDB.TYPETMNT. USE PDB.ASUMTAPE for mounts.
       ML-19 of ASMTAPES supresses TMNT005E messages.
       TYPEIMSA processing is wrong in 16.16.  Use 17.08.
       STC SILO SMF record sometimes short.
       Unexpected TCP/IP command of STOU protected.
       TMS Julian dates printed as 2E6, format now 7.
       Revised and documented utility to modify BUILDPDB.
       Text in col 72 cause unexpected failure.

  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.8.0                    Aug 24, 1999        16.09
      OS/390  2.8.0 FICON/PAV/SHARK    Aug 24, 1999        17.08
      OS/390  2.9.0                    Mar 31, 2000        17.17
      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
      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                        Mar 15, 1999        16.09
      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
      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
      RMDS 2.1, 2.2                    Dec 12, 1995        12.12
      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                      ??? ??, ????        16.08
      IMS     4.1                      Jul  4, 1994        12.02
      IMS     5.1                      Jun  9, 1996        14.05
      IMS     6.1                      ???  ?, 199?        16.04
      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

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

                                                        MXG Version
      Product Name                                       Required

      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                     16.02
       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 MVS/ESA 1.3  -                      12.05
       The Monitor for MVS/ESA 1.5  -                      12.05
       The Monitor for MVS/ESA 2.0  -                      15.09

      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 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 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
      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 6.1  -   ASMIMSL6/TYPEIMSA                      17.08
       IMS 5.1  -   ASMIMSL5/TYPEIMSA                      17.08
      Amdahl
       APAF 4.1, 4.3                                       16.08


IX.   Incompatibilities and Installation of MXG 17.17.

 1. Incompatibilities introduced in MXG 17.17 (since MXG 16.16):

  a- No changes in MXG architecture were made between 16.16 and 17.17
     that introduced incompatiblities.

 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.


X.    Online Documentation of MXG Software.

    MXG Documentation is now described in member DOCUMENT.


XI.   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 16.16 now in MXG 17.17:

  Dataset/
  Member   Change    Description

  All      17.060  MXG Enhancement %LET &Wdddddd=ddname for //WORK copy.
  many     17.171  PRINTWAY JCTJOBID='PSnnnnnn' support in TYPETASK.
  many     17.214  Support for OS/390 R2.8 (COMPAT, changes were APARs.
  ADOCall  17.379  Revisions and updates with new variables in all ADOCs
  ANAL42   17.223  Report failed with more than one SYSTEM.
  ANAL88   17.185  IBM's sample IXGRPT1 for SMF type 88 replicated.
  ANAL91   17.243  Batch Pipes Analysis for APAR PQ25641.
  ANALCNCR 17.070  Concurrency analysis now tolerates missing values.
  ANALDATE 17.168  Utility to examine dates in SAS data library for Y2K.
  ANALDB2R 17.300  Field-width enhancement to DB2PM-like reports
  ANALDSET 17.240  MXG 17.03-17.06. DATA SET NOT FOUND corrected.
  ANALDSET 17.343  Revised to use MACKEEP instead of IEBUPDTE, NEXTENT.
  ANALDSOP 17.198  ANALDSET enhancments (42s, 30 interval, 62s, 6156).
  ANALNSPY 17.358  Added and corrected a replica of MICS SNTNSS report.
  ANALRMFR 17.160  All BY variables must be in first 4092 bytes.
  ANALRMFR 17.369  Several enhancements, this was just most recent.
  ASMDALO  17.061  The MXG DASD Allocation Monitor may 0C4.
  ASMIMSL5 17.064  0C4 if &DFSMS left at 0 (for DFP) in IMS 5.1.
  ASMIMSXx 17.172  Significant IMS Log processing enhancements for test.
  ASMIMSxx 17.228  Major IMS Enhancements for MXG IMS log processing.
  ASMIMSxx 17.315  Final IMS Revisions for all know negative values.
  ASMTAPES 17.046  ML-19 of ASMTAPES supresses TMNT005E messages.
  ASUM70PR 17.045  Changing Interval with DURSET didn't change ASUM70PR.
  ASUM70PR 17.163  ICF CPUs are now detected and deleted automatically
  ASUM70PR 17.203  Dedicated CPU error fixed, use new PDB.ASUMCEC.
  ASUM70PR 17.232  PDB.ASUMCEC now created BY CECSER vice BY SYSPLEX.
  ASUM78CF 17.178  New ASUM78CF member summarizes PDB.TYPE78CF data.
  ASUMDB2A 17.170  DB2 5.1/6.1 new variables added to DB2ACCT summary.
  ASUMTALO 17.242  Lost output when multiple days are input is fixed.
  ASUMTALO 17.320  Last-complete-interval now corrected.
  ASUMTAPE 17.010  PDB.ASUMTAPE replacement for PDB.TYPETMNT.
  ASUMTAPE 17.041  Don't use PDB.TYPETMNT. USE PDB.ASUMTAPE for mounts.
  ASUMTAPE 17.106  PDB.ASUMTAPE with STATUS=MISSEDMNT handling revised.
  ASUMUOW  17.324  WTIRIOTM no longer sum of all IR waits in ASUMUOW.
  AUTOEXEC 17.392  Options S=72,S2=72 removed from AUTOEXEC and CONFIG.
  BUILDPDB 17.025  Adding/Dropping variables from PDB.JOBS/STEPS/PRINT.
  BUILDPDB 17.110  Vars EXCPNODD/IOTMNODD now corrected for MULTIDD='Y'.
  BUILDPDB 17.111  Vars TAPEDRVS/TAPE3480/etc corrected for MULTIDD='Y'.
  BUILDPDB 17.113  PDB.PRINT new variables SMF6PRMD and SMF6USID added.
  BUILDPDB 17.176  OMVS/USS jobs fill SPIN, never purge, now forced out.
  CICINTRV 17.391  CICINTRV dataset creation logic was wrong.
  CONFIGV7 17.073  Revised CONFIG for SAS V7 eliminates warning msgs.
  DOCMXG   17.051  Typos in MACKEEP= examples in documentation corrected
  EX80ASEG 17.247  New TYPE80A exit for Top Secret unique segments.
  EXPDBOUT 17.357  Example to add CICS Statistics datasets to your PDB.
  FORMATS  17.222  Support for APAR OW39508 7060 Multiprise EIO and DSD.
  IMACACCT 17.327  Order of code revised so &MACACCT now works.
  IMACEXCL 17.229  Omegamon Exclude logic needed SMFPSRVR test.
  IMACEXCL 17.356  CICS TS 1.3 Excluded Field example did not work.
  MXGSAS   17.317  ABEND 2415 due to no RECFM=U in //NULLPDS in SAS proc
  PRINTNL  17.381  Revised utility to print NEWSLTRS/CHANGESS members.
  RMFINTRV 17.238  Non-contiguous shift definitions now supported
  RMFINTRV 17.322  RMFINTRV now invokes VMXGRMFI, supports 115 workload
  RMFINTRV 17.360  RMFINTRV/VMXGRMFI enhancements fixed and documented.
  SPUNJOBS 17.311  DATASET CONDCODE NOT FOUND with old IMACPDB.
  TYPE102  17.006  Support for DB2 type 102 subtype 199, Dataset I/O.
  TYPE102  17.020  Typos.  _C012297 should have been _C102297.
  TYPE102  17.044  Typos.  _C102206 should have been _C102106.

  TYPE102  17.056  Support for Index Statistics in T102S022.
  TYPE103  17.270  Support for APAR PQ28258 for SMF 103 record.
  TYPE103  17.304  Enhanced TYPE1032 Web Server eliminates negatives.
  TYPE103  17.314  Deaccum of TYPE1032 for duplicate IPADDRESS.
  TYPE108  17.384  Support for Lotus Domino Server Release 5.02.
  TYPE110  17.096  Support for GLRHTYPE=2 CICS TS 1.2 Journal segment
  TYPE110  17.156  Support for CICS TS 1.3 new field (INCOMPATIBLE)!
  TYPE110  17.279  CICS Statistics EOD record has missing DURATM.
  TYPE115  17.248  Support for MQ Series Version 2.1 (COMPATIBLE).
  TYPE21   17.013  TYPE21/PDB.TAPES variable OPEN is always blank.
  TYPE28   17.018  NPM 2.4. Datasets NPMINSES/NPMEVSAL trashed.
  TYPE28   17.049  Zero obs in dataset NPMSEEND corrected.
  TYPE30   17.009  Support for deaccumulation of TYPE30_6 data.
  TYPE30   17.176  TYPETASK='OMVS' instead of TYPETASK='STC ' for USS.
  TYPE30   17.385  New foreign enclave times and TYPE30MR in OS/390 R29.
  TYPE42   17.042  Type 42 subtype 16 (SMF42Gxx) was out of alignment.
  TYPE42   17.059  Support for APAR OW37708/APAR OW38073 new fields.
  TYPE42   17.124  Support for Type 42 subtype 7/8 NFS Usage/Users.
  TYPE42   17.278  Support for APAR OW40579/41407 SMF 42 subtype 4.
  TYPE42   17.355  Type 42 st 7/8 NFS caused INVALID NF-CL TRIPLET.
  TYPE50   17.007  Variables BSIZE and MXTRSIZE corrected in TYPE50.
  TYPE64   17.032  Extended Format datasets, HIGHRBA now calculated.
  TYPE7072 17.162  Support for APAR OW37565 identifies CP or ICF CPUs.
  TYPE7072 17.299  CECSER wrong if CPUs added or deleted during interval
  TYPE73   17.026  Support for APAR OW15406 (IODF Creation now YYYY).
  TYPE73   17.027  Support for "FICON" channels adds fields compatibly.
  TYPE73   17.286  PCHANBY/PNCHANBY wrong in initial FICON support.
  TYPE74   17.161  Support for APAR OW37816, new 2105 cache TYPE74CA.
  TYPE74   17.180  Support for APAR OW31701 ESS Parallel Access Volumes
  TYPE74   17.182  TYPE74OM (OMVS/USS) had several variables wrong.
  TYPE74   17.269  PCTPNCHA/PCTPNOTH/PCTDVPND/PCTPNDEV revisions.
  TYPE74   17.378  Broken Type 74.4 RMF caused INPUT STATEMENT EXCEEDED.
  TYPE74CF 17.211  Doc. XSYSn variable blank is most observations.
  TYPE79   17.023  CPU time for Pre-emptible SRBs added in TYPE79s.
  TYPE80A  17.012  RACF type 80 with optional RACFTYPE=7 had STOPOVER.
  TYPE80A  17.094  RACF keywords specified/ignored are now decoded.
  TYPE80A  17.158  Top Secret causes many SEGMENT SKIPPED messages.
  TYPE80A  17.199  Support for OW39128, PDS DSNAME for PROGRAM access.
  TYPE80A  17.218  Support for Top Secret Release 5.1 (INCOMPAT)
  TYPE89   17.116  Support for APAR OW37091 Measured Usage SMF 89 change
  TYPE90A  17.287  Replacement for TYPE90 member for SMF type 90 data.
  TYPE91   17.298  Batch Pipes IC/OC counts propagated into 12/13/15.
  TYPE94   17.213  Support for type 94 import/export statistics.
  TYPE94   17.245  ERROR.VMAC94.AUDITLEN INVALID error corrected.
  TYPE97   17.385  New in OS/390 Release 2.9
  TYPEBETA 17.368  Support for Beta91 Balancing Manager SMF record.
  TYPECIMS 17.303  IMF, MVIMF, CIMS:  SQLCALLS not counted, INCOMPAT.
  TYPEDB2  17.090  DB2STATS dataset some QXxxxxxx varibles were wrong.
  TYPEDB2  17.338  BPHITRAT, Buffer Pool Hit Ratio, revised.
  TYPEDB2  17.382  DB2 TCB times QWACSPCP/QWACSPTT included in DB2TCBTM.
  TYPEDCOL 17.244  DCOLLECT variables DCACSIZ/DCACACIC were missing.
  TYPEDCOL 17.281  Support for DFSMS/MVS V1R5 - in place, no changes.
  TYPEDCOL 17.307  Support for APAR OW41147 ORGEXPDT=99999 Y2K Critical
  TYPEDCOL 17.347  Year 2000.  IBM APAR OW42559, UCCOLDT in DCOLCAPD.
  TYPEEDGR 17.016  Dataset EDGRDEXT has zero observations.
  TYPEEPIL 17.003  Support for Candle V400 Omegamon for CICS Epilog.
  TYPEEREP 17.339  INPUT STATEMENT EXCEEDED for EREP records.
  TYPEHSM  17.019  HSM _DIFFHSM macro relocated into VMACHSM.
  TYPEHSM  17.021  HSM Julian dates printed as 2E6, format now 7.
  TYPEICE  17.048  Support for IXFP/ICEBERG Subtype 8 and fix for st 6.
  TYPEICE  17.346  INVALID DATA FOR IOSSTIME, Icebert IXFP subtype 8.
  TYPEIDAP 17.100  Support for i-data afp-software SMF record.
  TYPEIISL 17.321  Support for IIS Log.

  TYPEIMSA 17.011  TYPEIMSA processing is wrong in 16.16.  Use 17.08.
  TYPEIMSA 17.290  More IMS Log revisions correct negative RESPNSTM.
  TYPEIPAC 17.234  Support for Mobius View Direct 6.1.2 (INFOPAC).
  TYPEITRF 17.336  Variables IMSVERS,IMSRELEASE,SMBCLASS numeric now.
  TYPELDMS 17.371  Support for Software Innovation's LDMS product.
  TYPEMIM  17.152  Support for MIM user record enhanced, new dataset.
  TYPEMRKV 17.099  Support for Lexmark MarkVision Job Statistics
  TYPENDM  17.155  Support for Connect Direct R 3.2 'CT' record.
  TYPENOAM 17.122  Support for STK's NearOAM V2.2 (COMPATIBLE).
  TYPENSPY 17.154  Zero obs in NSPYTIC3 (again, due to Change 16.147).
  TYPENSPY 17.367  NETSPY NSPYAPPL dataset had missing response times.
  TYPENTSM 17.055  Support for NTSMF new Quota Server object.
  TYPENTSM 17.101  Support NTSMF Version 2.3 (COMPAT), 21 new objects.
  TYPENTSM 17.165  Protection for Win 2000 Beta 3. IIS, Web changes.
  TYPENTSM 17.209  Support for Lotus Notes, SMPTDS/SMTPRS objects.
  TYPENTSM 17.335  Support for Windows 2000 Build 2195 NTSMF data.
  TYPEORAC 17.308  Support for SQL*NET NIV adds IPADDR/PORTNR to ORACLE.
  TYPEPMTR 17.297  Support for unix PerfMeter Freeware Monitor records.
  TYPEQAPM 17.107  Support for OS/400 V4.3.0, no change, is in 16.16.
  TYPEQAPM 17.235  Support for OS/400 Release 4.4.0 (LRECLs INCOMPAT)
  TYPERACF 17.305  Support for RACF Unload IRRDBU00 Started Task subtype
  TYPESARR 17.306  Support for CA View Metrics SARSMFUX SMF record.
  TYPESARR 17.309  Support for remaining CA-VIEW Metrics validated.
  TYPESFTA 17.092  Support for SOFTAUDIT 6.1.2 (COMPATIBLE).
  TYPESFTA 17.123  Support for SoftAudit Version 7.1 (COMPATIBLE).
  TYPESRMH 17.085  Support for RACAL IT Security's SRM product for HSM.
  TYPESTC  17.040  STC SILO SMF record sometimes short.
  TYPESTC  17.195  Support for STK's VTCS 2.2.0 INCOMPATIBLE VSM SMF.
  TYPESTC  17.230  Variables STC07FPS/TPS now match STK utility report.
  TYPESTC  17.313  Variables STC11CI/CE/TOL were blank.
  TYPESYNC 17.145  SYNCSORT variables COREREQ/COREUSED now 8-byte store.
  TYPESYNC 17.199  Support for 32 (up from 16) sorworks for SYNCSORT.
  TYPESYNC 17.350  Flags CONTIGn,CACHFWn fixed, DYNALOn,UNOPENn added.
  TYPETAND 17.037  Support for TANDEM F40, G04 and G05 INCOMPATIBLE.
  TYPETAND 17.115  TANDEM G05 and later TANDDISK corrected.
  TYPETCP  17.034  Unexpected TCP/IP command of STOU protected.
  TYPETCP  17.349  TELNET LOGF Time field is Duration, not datetime!
  TYPETELE 17.091  Support for TELEVIEW 4.3 (INCOMPATIBLE).
  TYPETELE 17.246  Support for TeleView 4.3B subtype 3 record.
  TYPETMDB 17.280  Support for Landmark DB2 Monitor V 3.2 (INCOMPAT).
  TYPETMNT 17.216  ASMTAPES needed 'ES6' at ASM for Y2K, this protects.
  TYPETMO2 17.169  Landmark TARSPTM contains sum of all conversations.
  TYPETMS5 17.021  TMS Julian dates printed as 2E6, format now 7.
  TYPETMS5 17.151  Undocumented DENX='DE'x TMS records now supported.
  TYPETMS5 17.352  Year 2000.  Variable OUTDATE was still 0cyyddd.
  TYPETMV2 17.259  Support for TMON/MVS V2 PTF TD01655 (COMPAT).
  TYPETMV2 17.333  Support for additional Landmark TMVS subtypes.
  TYPETPF  17.200  Support for IBM's TPF Operating System records.
  TYPETPX  17.036  TPX Start Up record subtype 1 not properly decoded.
  TYPETRMS 17.284  Support for TRMS Version 51A08 (COMPATIBLE).
  TYPEUNIC 17.002  TYPEUNIC support for CA UniCenter is for Open VMS.
  TYPEZARA 17.344  Year 2000.  Support for ZARA Release 1.3 (INCOMPAT).
  UTANDSTR 17.241  Tandem Utility to read "Unstructured" with new LRECLs
  UTILBLDP 17.054  Revised and documented utility to modify BUILDPDB.
  UTILRMFI 17.271  UTILRMFI to show IMACWORK definitions CPU sources.
  VMAC102  17.253  DB2 trace SQL text variables use &SASCHRLN length.
  VMAC110  17.220  SMF type 110 subtype 0 JCRLL=0 error.
  VMAC28   17.018  NPM 2.4, NPMINSES/NPMEVSAL datasets trashed.
  VMAC80A  17.316  WARNING: BIT MASK TOO LONG corrected.
  VMACDB2  17.300  Negative QXSELECT because DB2 overflowed counter!
  VMACIMSA 17.011  MXG ASMIMSLG/L5/L6, STRTTIME is missing due to typo
  VMACIMSA 17.228  SAP IMS 'AE'x log record was NOT Y2K Ready.
  VMACTMDB 17.319  Landmark DB2 Version 3.0 INPUT STATEMENT EXCEEDED.

  VMXGINIT 17.250  MXGVERS specification removed from VMXGINIT.
  VMXGINIT 17.251  USER= option protected, &SASCHRLN= created
  VMXGRMFI 17.142  Enhanced RMFINTRV permits over 100 workloads.
  VMXGRMFI 17.388  Added DROPPGN=,DROPSRV= for easier RMFINTRV tailoring
  VMXGSUM  17.193  Dashed-variable-list now correctly supported.
  VMXGSUM  17.255  New stats, INHERIT exploitation under SAS V8.
  VMXGSUM  17.265  VMXGSUM revisions now implemented in MXG 17.08.
  VMXGVTOF 17.341  Year 2000. CREATED,EXPIRES,LASTUSE wrong.
  WEEKBLDT 17.029  Text in col 72 cause unexpected failure.
  XMXGSUM  17.370  Test version of VMXGSUM using SAS View to save DASD+.
  YEAR2000 17.363  Year 2000.  Julian 0cyyddd values convert to yyyyddd.

Inverse chronological list of all Changes:

NEXTCHANGE: Version 17.

======Changes thru 17.398 were in MXG 17.17 dated Feb  7, 2000======

Change 17.398  DEVICE Activity Report can now utilize the INTERVAL and
ANALRMFR       MYTIME parameters for summarization tailoring.  All of
Feb  6, 2000   the ANALRMFR reports will eventually hav these options.

Change 17.397  The revised CICINTRV dataset did not contain variable
VMXGCICI       DATETIME, which is archaic and STARTIME should be used
Feb  6, 2000   in your reports, but now they will still work.

Change 17.396  Support for EMC's InfoMovers Product's SMF record.
EXINMVCL       creates two datasets:
EXINMVSR          INMVCLNT - Infomover Client Record Subtype 1
IMACINMV          INMVSRVR - Infomover Server Record Subtype 2
TYPEINMV       These records look much like FTP records, but do not
TYPSINMV       contain IP addresses, but do have additional statistics.
VMACINMV       However, the start and end time variables INFSTART/END
VMXGINIT       are bad, containing INFEND= '38970868'x which should be
Feb  6, 2000   close to the record's SMFTIME of '005F7F11'x.
Feb  7, 2000   EMC has opened tracking number 2951232 to resolve, but
               was unaware of the error.
   Thanks to Charles Piggott, SAS Europe, GERMANY.
   Thanks to Mr. Ragaglia, ITS - FIAT, ITALY.

======Changes thru 17.395 were in MXG 17.11 dated Feb  2, 2000======

Change 17.395  Change 15.268 was supposed to have added DURATM=INTERVAL,
ASUMHSM        to the VMXGSUM invocation in ASUMHSM, but was overlooked
Feb  2, 2000   until now. And work datasets HSMINTVL/HSMSTAT are now
               deleted at the end of execution of ASMHSM.
   Thanks to Chris Weston, SAS Institute ITSV, USA.

======Changes thru 17.394 were in MXG 17.11 dated Jan 31, 2000======

Change 17.394  Example had three sets of pairs of strange characters in
ANALBATW       lines 77, 78, and 170; those characters should each be
Jan 31, 2000   an exclamation point, since a pair of exclamation points
               are used for character string concatenation (instead of
               long vertical bars, precisely because exclamation points
               are correctly translated by Rhumba, but long vertical
               bars are not, and I missed that error when I edited this
               contribution that had gone thru Rhumba enroute to MXG).
   Thanks to Raff X. Rushton, Kaiser Permanente, USA.

Change 17.393  IBM RMF-like CACHE Subsystem Activity Report can now be
ANALRMFR       created by ANALRMFR. New REPORT=CACHE argument will
Jan 31, 2000   create the report from TYPE74CA Cache DASD records.
   Thanks to Jane S. Huang, CIGNA, USA.


Change 17.392  MXG 17.01-17.11, on ASCII (PC or Workstations) only.  To
AUTOEXEC       make AUTOEXEC and CONFIGxx members consistent, I added
CONFIG         OPTIONS S=72 S2=72 into the AUTOEXEC member in MXG 17.01,
CONFIGV7       but only today did Chuck discover that those options have
CONFIGV8       entirely different meanings to SAS under MVS than under
Jan 31, 2000   ASCII!  Originally they were needed to prevent SAS from
               reading source statement columns 73-80, because that's
               where MVS fixed length files are numbered, and under MVS
               with fixed length input, options S=72/S2=72 do set the
               MAXIMUM column to be read.  However, under PC/unix, with
               variable length -SYSIN input, SAS documents that they
               instead set the MINIMUM column to be read, causing SAS to
               skip input columns 1-71!  When PC SAS read that OPTIONS
               statement in AUTOEXEC.SAS, it began ignoring columns 1-71
               in remaining lines, and never read nor ran the %VMXGINIT
               statement that followed that OPTIONS statement!
               Fortunately, those options are now deleted from AUTOEXEC
               (and for consistency, also from the CONFIGxx members),
               because MXG Software has been unnumbered since 1992.
               P.S. I keep several AUTOEXEC.xxx members in the SAS root
               directory and copy the one I want (kinda like JCL) into
               the AUTOEXEC.SAS member and then start SAS.  However, you
               can also change the autoexec using
                c:\sas\sas.exe -config 'c:\mxg\sourclib\config.sas'
                               -autoexec 'c:\mxg\sourclib\autoexec.sas'
               either in batch execution or in separate shortcuts for
               your differing file allocations, etc.
                  Making MXG.SOURCLIB VB on MVS reduced it from 150 cyl
                  to 95 cylinders, reduced BUILDPDB EXCPs for compile
                  from 13,326 to 12,886, and CPU time from 45 to 43 sec.
                  It doesn't hardly seem worthwhile!
               Change 18.147 reinstated S=72,S2=72 in CONFIGV8. 29JUN00.
               But S=72,S2=72 should NOT be in your AUTOEXEC.SAS file.
   Thanks to Chuck Hopf, MBNA, USA.

Change 17.391 -CICINTRV dataset creation logic was wrong, causing the
CICINTRV       non-INT event records (REQ/USS/EOD) to be put in the
VMXGCICI       wrong interval.  But IBM caused STARTIME to be wrong in
VMXGDUR        INT interval records, because DURATM was found wrong:
VMXGSUM           CICDS Interval records with DURATM=03:00:00 and the
Jan 30, 2000      COLLTIME=06:00:00 (so then STARTIME=03:00:00), but
                  CICSSTCK=03:48:00 when this region started.  The
                  interval record has SMFSTINO=1, but that interval
                  number is reset at midnight!  Since the CICDS record
                  has the dispatcher durations, adding DSGTWT=DSGTDT
                  showed the true duration of this interval was 02:12:00
                  and the IBM DURATION of 3 hours was wrong!
               MXG uses COLLTIME to group records.  The COLLTIME in the
               INT records is the end-of-interval value and is the same
               in all INT records for that interval (e.g. 03:00:00),
               which VMXGCICI floored correctly to 03:00:00 for summary.
               However, because the COLLTIME in the EOD, REQ and USS
               records is a distinct event time (e.g. 03:05:01.99 for a
               file close), it is not the end of interval, so VMXGCICI
               incorrectly floored that COLLTIME back to the 03:00:00
               end time of the prior interval.   This logic error was
               corrected by adding the INTERVAL value to the COLLTIME
               for the non-INT records and then flooring that sum back
               to the end of this interval.
                  This works for timed intervals, but INTERVAL=SHIFT is
                  not supported at this time, as there is no obvious
                  way to determine the end of shift.  Call if wanted.

              -STARTIME is now calculated based on the DSGTDT+DSGTWT or
               DURATDS from the dispatcher record, if one is found, and
               the STARTIME will be exact if the COLLTIME is exact and
               the DURATDS is within 30 seconds of exact.  If there were
               no CICDS records for an interval both the STARTIME and
               DURATM will be set missing and COLLTIME will be the end
               of interval.
              -Variable SMFSTRQT is now kept in PDB.CICINTRV to identify
               the source (EOD/INT/REQ/USS).
              -New INTERVAL=EOD option will combine all of the records
               for a region's execution together and give you total
               resources for each execution.
              -New INTERVAL=THREEHR option is an attempt to match IBM's
               default interval, and works fine as long as all regions
               create interval records.
              -But you can still get strange results if you request
               CICINTRV to be summarized at an INTERVAL that is smaller
               that your CICS interval, or if a region writes EOD,REQ
               and USS but doesn't write interval records:  a region
               started at 01:00, wrote three USS CICFCR close records at
               05:05:, and then wrote an EOD record at shutdown at
               12:00.  CICINTRV with hourly default created one obs for
               the 05:00-06:00 event, with only the FCR counts, and then
               the EOD record created an overlaping 01:00-12:00
               observation with all other measurements.
   Thanks to Normand Poitras, ISM, CANADA.

Change 17.390  The default value for &SASCHRLN was changed back to 100
VMXGINIT       from 200 so those SQL text variables under SAS V6 are the
Jan 28, 2000   original length and agree with labels. See Change 17.253.
  Thanks to Jarl L. Bruvoll, VPS, NORWAY.

Change 17.389  Support for HP's Measureware V11.0 for HPUX adds several
VMACMWUX       fields (incompatibly, since they were inserted in the
Jan 28, 2000   middle of the records).
   Thanks to Tony Steward, Post Office, ENGLAND.

Change 17.388  Additional arguments were added for better tailoring, and
VMXGRMFI       additional new variables are now kept in both RMFINTRV
Jan 27, 2000   and TRNDRMFI datasets.
              -New OPERANDS:
                If you specified IMACWORK=NO and USEREPRT=YES, you could
                not drop unwanted Control Performance Groups or Service
                Classes; now you have these new operands:
                 DROPPGN= A list of performance groups numbers, which
                          could be either Control or Report Performance
                          groups, that are to be deleted.
                 DROPSRV= A list of service class names, which could be
                          either Service or Reporting Class names, that
                          that are to be deleted.
                In case you really need to add special logic as each of
                the individual TYPE7xxx datasets are brought in, these
                new macro variables permit insertion of any SAS code:
                 INCODE70= INCODE71= INCODE72= INCODE73= INCODE74=
                 INCODE75= INCODE78=
              -Migration age was not being tracked by RMFINTRV so the
               MIGAGEMX, MIGAGEMN, and MIGAGEAV variables were added,
               and if it makes sense to track migration age, it should
               make sense to also add the HIUIC values.
                 RMFINTRV new variables:
                   HIUICMN HIUICMX MIGAGEMN MIGAGEMX MIGAGEAV IORATE70

                 TRNDRMFI new variables:
                   HIUICMN HIUICMX MIGAGEMN MIGAGEMX MIGAGEAV IORATE70
                   PMGIEXAU
              -Note that the actual values many variables in RMFINTRV &
               TRNDRMFI datasets that came from TYPE71 with labels that
               indicate they are average values are actually the maximum
               value of the average value of each of the individual RMF
               interval values.  These variables are:
                 FIXEDAV CSLPFXAV LPAFXAV LSQAFXAV PRVFXAV SQAFXAV
                 FIXLOAV PCTLSWAP PVTAFCAV CSTORE ESTORE
   Thanks to Normand Poitras, ISM, CANADA.
   Thanks to Raymond Schwartz, First Data, USA.

Change 17.387  The _STY94 macro contained PROC DELETE instead of invoke
VMAC94         of %VMXGDEL(DDDDDD=TY94), so you could not change the PDB
Jan 26, 2000   ddname and sort into work.  With this correction, the MXG
               syntax:  %INCLUDE SOURCLIB(TYPE94);
                        %LET PTY94=WORK;
                        _STY94;
               will sort WORK.TYPE94 into WORK.TYPE94.  Note that this
               syntax is general, and works with all TYPExxxx members.
   Thanks to Joseph M. Marchesani, Equitable, USA.

Change 17.386  MXG 17.10 only.  Labels for BYTEREAD and BYTERPCR contain
VMACNTSM       extraneous trash and hex characters that should have been
Jan 26, 2000   errored by the SAS compiler, but weren't detected until
               execution of their data records, causing unrelated error
               message INVALID HEXADECIMAL CONSTANT STRING CONNXAFA=....
Thanks to Bob Gauthier, Albertsons, Inc., USA

Change 17.385  Support for OS/390 Release 2.9.
BUIL3005       TYPE30:
BUILD005       - New SMF30WMI variable 'Y' identifies jobs executing in
EXTY30MR         a WLM managed batch initiator.
EXTY9207       - New SMF30MSI variable 'Y' if remote system data is
EXTY94           incomplete.  I don't know what this really means, but
FORMATS          suspect it means a permanent data loss.
IMAC97         - New triplet for the  Multisystem Enclave Remote Data,
TYPE97           with a separate section for each system on which remote
TYPS97           enclaves of this job were executed, contains:
VMAC30             RMSU_SEC - CPU SU_SEC OF THIS REMOTE SYSTEM
VMAC7072           MRENSYST - SYSTEM ID OF THIS REMOTE SYSTEM
VMAC97             CPUMRDTM - CPU TIME FOR DEPENDENT REMOTE ENCLAVES
VMXGINIT           CPUMRITM - CPU TIME FOR INDEPENDENT REMOTE ENCLAVES.
Jan 26, 2000     These variables are output in the new TYPE30MR dataset
                 with an observation for each segment in this job, but
                 the CPUMRDTM and CPUMRITM are summed across all of the
                 remote segments and the sum is kept in TYPE30_V, _4,
                 and TYPE30_5 datasets, as well as being kept in the
                 PDB.STEPS and PDB.JOBS built by BUILDPDB.
                 If your remote systems are of different speeds, you
                 may want to normalize these remote CPU times before
                 they are output; the exit member EXTY30MR allows you
                 to normalize the new CPUMRDTM and CPUMRITM if needed.
               TYPE72/TYPE72GO
               - Three new Active durations for enclaves were added:
                 to the TYPE72 and TYPE72GO datasets:
                   TYPE72   TYPE72GO   Description
                  SMF72IEA  R723CIEA  INDEP*ENCLAVES*ORIGINATED*ACTIVETM
                  SMF72XEA  R723CXEA  EXPORTED*ENCLAVES*TOTAL*ACTIVETM
                  SMF72FEA  R723CFEA  FOREIGN*ENCLAVES*TOTAL*ACTIVETM
               TYPE92

               -  New subtype 7 for NFS FILE SYSTEM MOVE creates new
                  TYPE9207 dataset with 33 variables.
               TYPE97
               -  New SMF type 97 for FOREIGN ENCLAVE CPU TIME creates
                  dataset TYPE97 with an observation for every system
                  that exported Enclaves to this system containing the
                  Dependent and Independent Enclave CPU time consumed
                  by Foreign Enclaves on this system.

Change 17.384  Support for Lotus Domino Server Release 5.02 SMF 108,
EXTY1083       added GMT interval start/end times, system, sysplex and
IMAC108        level to the product section, which are now added to the
VMAC108        existing subtype 1 datasets (with a heuristic algorithm
VMXGINIT       to convert GMT to local until IBM adds the GMT Offset).
Jan 26, 2000   The new subtype 3 Monitoring and Tuning data record now
               creates new dataset TYPE1083 with interval activity and
               buffer pool statistics.  Problems with subtype 3 data:
                - Five counters in Release 5.02 are accumulated:
                    DOMTDBCI (DBCACHE Initial DB Opens) and
                    DOMTDBCO (DBCACHE OVERCROWDING REJECTIONS)
                    DOMTDBHI (DBCACHE Hits)
                    DOMTDBPR (DATABASE BUFFERPOOL READS)
                    DOMTDBPW (DATABASE BUFFERPOOL WRITES)
                  which was not IBM's intention, and those counters will
                  be fixed in Release 5.03 later this year.  The MXG
                  _STY1083 SORT macro deaccumulates those variables only
                  if the record is from Release 5.02, but you will need
                  to add  _STY1083 in your EXPDBOUT member if you add
                  SMF 108 record processing to you BUILDPDB.
                - These MXG subtype 3 variables are set by environmental
                  server variables, rather than being measurements:
                      DOMMXUS  /*MAXIMUM*NUMBER*OF USERS*/
                      DOMTLMCS /*LIMIT FOR*CONCURRENT*TRANSACTIONS*/
                      DOMTMXCS /*MAXIMUM*CONCURRENT*SESSIONS*/
                      DOMTTMOT /*DURATION*IN*TIMEOUT*/
                      DOMTMXCU /*MAXIMUM*CONCURRENT*UPDATE*TASKS*/
                      DOMTMXRE /*MAXIMUM*CONCURRENT*REPLICATORS*/
                      DOMTSATH /*SERVER*AVAILABILITY*THRESHOLD*/
                  If you don't change the corresponding environmental
                  variable at your installation, a default value is put
                  in the SMF record.  For the 2nd-4th fields, default
                  values are meaningless: FFFFFFFF FFFF000 F900, (so
                  variables DOMTLMCS, DOMTMXCS and DOMTTMOT are set
                  missing if they contain those values).
   Thanks to Tom Wieland, Phoenix Home Life, USA.

Change 17.383  Member IMACJBCK ("Job Check" exit) is now included in
VMAC83         these members that input JOB and READTIME.  The IMACJBCK
VMAC92         exit lets you select SMF records for specific JOBs.  Four
VMACHIPR       other members, VMACSTC, VMACSUIN, VMACTCP, and VMACWSF
Jan 24, 2000   do contain job name, but they do not have the READTIME so
               without both JOB and READTIME (the "job log"), they are
               not really written on behalf of a job execution, and so
               they don't include IMACJBCK.
   Thanks to Chuck Hopf, MBNA, USA.

Change 17.382  DB2 TCB time for stored procedures (QWACSPCP & QWACSPTT)
VMACDB2        are now added into DB2TCBTM variable in DB2ACCT, as they
Jan 24, 2000   are not already captured in DB2TCBTM.
   Thanks to Brandon Persinger, The Gap, USA.

Change 17.381  Revised utility program to print MXG Newsletters from the
PRINTNL        member NEWSLTRS or CHANGESS, under either MVS or ASCII.
Jan 24, 2000   To print Newsletters using MS Word:
                 Open NEWSLTRS.SAS as a new document.
                 Adjust the page setup:
                       Select portrait
                       Set top.bottom margins to .6 inches.
                 EDIT/REPLACE ALL _PAGE_ with a "manual page break",
                       by select "more" on the replace panel then
                       "special" to get to this option.
                 EDIT/SELECT ALL change font to COURIER NEW 9 point
                 PRINT

Change 17.380  First MXG 17.10.  The first few tapes had version date of
AAAAAAAA       Jan 20, 1999, which was not Y2K Ready.  MXG 17.10 dated
Jan 24, 2000   Jan 24, 2000 corrected that cosmetic error, since that
               is only a display string and is not a SAS date value.
   Thanks to Freddie Arie, Lone Star Gas, USA.

Change 17.379  Documentation.  All ADOCxxxx members were examined and
ADOCall        revised to be consistent (i.e., force ZDATE to always be
Jan 24, 2000   the last listed variable for each dataset) so that we can
               programatically compare the variables in member DOCVER
               with each ADOC and update the ADOC with new or changed
               variables while still keeping the original ADOC text.
   Thanks to Freddie Arie, Lone Star Gas, USA.

Change 17.378  Type 74 subtype 4 (Coupling Facility) records caused MXG
VMAC74         to "INPUT STATEMENT EXCEEDED" because only 12 of the 18
Jan 24, 2000   structures had complete data in the RMF record.  Whenever
               the total size of the structure Request Data and Cache
               Data sections is greater than 32760, IBM creates multiple
               "broken" records from the "large" record, but the 74.4
               "broken" records, unlike the 74.1 and 74.2, are invalid.

               Instead of RMF writing one SMF record with 12 structure
               Request Data sections and the associated 134 Cache Data
               sections, and then writing a second record with the other
               6 structure's Request Data sections and the associated 2
               Cache Data sections, RMF wrote a first record containing
               all 18 structure Request Data sections and the 134 Cache
               Data sections for structures 1-12, and then RMF wrote a
               second SMF record containing only the two remaining Cache
               Data sections (one each for structure 13 and 14), but as
               neither the Structure nor Request Data sections are in
               that second record, it is IMPOSSIBLE for MXG to decode
               the second broken record.

               The record has SMF74RAN=1, indicating the "Reassembly
               Area" exists, but that design (to reassemble multiple
               "broken" records into a large record in the virtual
               memory of the reading program) requires offsets from one
               SMF record to be used to input fields in another SMF
               record, and that algorithm fails unless all of the SMF
               broken records are adjacent and found in the input SMF
               file, which cannot be guaranteed (as, for example, when
               the first broken record is the last record in today's SMF
               file, or if the SMF data was presorted).

               "Broken" records and reassembly areas are not new, but
               IBM has previously never spanned logical data fields
               between two physical records.  Both the 74 subtype 1 and
               subtype 2 records are "broken" when there are many
               devices, but each "broken" record is self-contained and
               can be decoded with no dependency on other records.  The
               required solution for the type 74 subtype 4 record is for
               IBM to write self contained data records.  The first
               record should contain only as many Request Data sections
               as will fit with their associated Cache Data sections.
               Second and subsequent records must contain the Product,
               Local Coupling Facility, and Structure data sections, and
               then as many Request Data and their Cache Data sections
               that will fit together.

               To circumvent the error, an additional condition:
                    AND CDSILOC+SMF744CL LT LENGTH
               was inserted in the existing IF statement
                 IF R744CDSI GT 0 AND R744CDNE GE 1 THEN DO;
               before the THEN, so that the missing cache data sections
               are skipped (causing missing values in TYPE74ST).  Thus
               far, only a few bad 74.4 records have been found per
               day on this OS/390 R2.8 system.

               While IBM's RMF Reporter does handle these broken records
               if they are found in the same SMF input file (which RMF
               has to first sort for the reassembly algorithm), if the
               second record is not in today's data, the RMF Report just
               skips that interval in its reports!

               In conversation with RMF developers, they have now agreed
               to revise their design so that when "broken records" must
               be written, they will be self-contained and not dependent
               on the contents of other records for decoding.

               This investigation also uncovered an MXG oversight; only
               the first cache data section was read for each structure,
               but there are a few structures that have as many as 63
               cache data sections, (but only two of those sections had
               any non-zero counter values!).  Now MXG sums all of the
               cache data section counters for each structure.
   Thanks to Steve Lottich, University of Iowa Hospitals, USA.

Change 17.377  Change 17.290 changed SORT fields, but this JCL example
JCLIMSL6       was overlooked (LG and L5 were correct). It should be:
Jan 21, 2000         SORT FIELDS=(1,12,A,43,8,A,29,1,A),FORMAT=BI
               as described in the text of that change.
   Thanks to John Pierce, Liberty Mutual, USA.

Change 17.376  Variables POOLNPBY and POOLPGBY in NTINTRV dataset were
NTINTRV        from the SERVER dataset instead of from the MEMORY data,
Jan 21, 2000   so their values were not correct in NTINTRV.  Inserting
                (DROP=POOLNPBY POOLPBY) after _LNTSERV in the MERGE
               statement will correct this error.
   Thanks to Greg Jackson, National Life of Vermont, USA.

======Changes thru 17.375 were in MXG 17.10 dated Jan 20, 2000======

Change 17.375  Report was showing equal utilization of the channel for
ANALPATH       both the LPAR and the CEC.
Jan 20, 2000
   Thanks to Tony Steward, Post Office, ENGLAND.

Change 17.374  Windows 2000 NTSMF enhancements, etc.
EXNTSMTN      -Objects 'Job Object' and 'Job Object Details' are still
EXNTTRMS       flakey, sometimes containing NRNAMES and instance names
EXNTTRMV       (1 in Job Object, 2 in Details), sometimes NRNAMES=0.
FORMATS        While this is being resolved, MXG now protects both,
IMACNTSM       (but if NRNAMES=0, then the names will be blank and the
VMACNTSM       records of questionable utility!).
VMXGINIT      -New variable FTPUPTME added to FTPSERV dataset from the
Jan 20, 2000   'FTP Service' object.
              -Three new objects supported:
                dddddd  Dataset   Object
                NTSMTN  SMTPNFS   SMTP NFS Store Driver
                NTTRMV  TERMSERV  Terminal Services
                NTTRMS  TERMSESS  Terminal Services Sesion
              -Sixty new variables added to SMTPSERV dataset from the
               'SMTP Server' object are protected, but not input; I
               ran out of time in building MXG 17.10, but call for
               the update.
               Jan 21, 2000:  No update needed; MXG 17.10 did contain
               all of the new variables, but I forgot to go back and
               change this text.
   Thanks to Jim Quigley, Con Edison, USA.

Change 17.373  TRNDRMFI has been updated to keep xxxxMEMR memory vars
TRNDRMFI       as 8 bytes, like all other measures of memory, so that
Jan 20, 2000   there is no loss of resolution.

Change 17.372  Replaced by Change 17.378.
VMAC74
Jan 20, 2000

Change 17.371  Support for LDMS product creates three new datasets:
EXLDMSDB        dddddd    dataset    label
EXLDMSDI        LDMSDB    LDMSBASE   SI-LDMS-BASE
EXLDMSPC        LDMSDI    LDMSDIST   SI-LDMS-DIST
FORMATS         LDMSPC    LDMSPC     SI-LDMS-PC
IMACLDMS       in this user-contributed enhancement.
TYPELDMS       LDMS is from Software Innovation in Germany, and it is
TYPSLDMS       used for archiving and viewing JCLLOG, SYSLOG, reports
VMACLDMS       and lists that were previously printed and delivered.
VMXGINIT
Jan 20, 2000
   Thanks to Thomas Heitlinger, Fiducia AG, GERMANY.

Change 17.370  This test version of VMXGSUM enables a SAS VIEW in the
XMXGSUM        first datastep to reduce time and resources (CPU, I/O,
Jan 19, 2000   and especially DASD space, since a VIEW is essentially a
               pipe that avoids hardening a dataset.  This version also
               allows you to create the output dataset as a view with
               OUTDATA=X/VIEW=X, syntax (but of course you must use that
               dataset before you invoke VMXGSUM again).  This member
               will become VMXGSUM in the next version, but is placed
               here for wider testing; copy this XMXGSUM into VMXGSUM
               in your USERID.SOURCLIB to test it yourself.
   Thanks to Chuck Hopf, MBNA, USA.

Change 17.369  CPU Activity Report can now utilize the INTERVAL and
ANALRMFR       MYTIME parameters for summarization tailoring.
Jan 18, 2000

Change 17.368  Support for Beta91 Balancing Manager SMF Record creates
EXTYBE9A       four new datasets from the many subtypes:
EXTYBE9B         "dddddd"    Dataset     Label
EXTYBE9C          TYBE9A     BETA91A     BETA91 HEX ST 10,14,28,48
EXTYBE9C          TYBE9B     BETA91B     BETA91 HEX ST 22,24,36,42,44
FORMATS           TYBE9C     BETA91C     BETA91 HEX ST 50
IMACBE91          TYBE9D     BETA91C     BETA91 HEX ST 60
TESTUSR1       The second variable data portion of the subtype 22-44
TYPEBE91       record is not documented, so those fields are not yet
TYPSBE91       decoded into dataset BETA91B.
VMACBE91      -Minor, but SMFCSTIM was shifted one byte to the left in
VMXGINIT       the record ('45400000'x instead of '00454000'x for noon),
Jan 17, 2000   so there is an extra divide by 256 required.
   Thanks to W. Waldeyer, BHF-Bank AG, GERMANY.

Change 17.367  NETSPY NSPYAPPL dataset had missing values for response
EXNSPYAP       time and percentages when NETRSPN6 (computed number of
VMACNSPY       LU6.2 responses) was zero.  Logic was added to use the
Jan 15, 2000   TOTRSPN6 (total number of LU 6.2 responses) if NETRSPN6
               is zero.  Additionally, exit EXNSPYAP tested only TRANSNO
               or OUTPUTNO, which suppressed output of any interval that
               had LU6.2 traffic but no 3270 traffic.  The test now also
               tests TOTRSPN6 so that LU6.2-only intervals are output.
   Thanks to Julian Smailes, Experian Limited (UK), ENGLAND.

Change 17.366  Deleted TMS volumes still in the TMC that had DENX=00x
VMACTMS5       printed DENSITY IS MISSING and a hex dump of the record
Jan 14, 2000   on the log, with no other impact.  The existing test
               ELSE IF DENX=0DEX THEN DEN=0; was expanded to read
               ELSE IF (DENX=0DEX OR DEL='Y') THEN DEN=0;  and that
               block of code was relocated to after DEL='Y' is set.
   Thanks to Warren Hayward, TJX, USA.

Change 17.365  The _Sdddddd and _Bdddddd macros (SORT and BY list) have
VMACTCP        been updated so they can now be used.  The _SUBTCP5 macro
Jan 13, 2000   was deleted, as it was never referenced; the statistics
               record is recognized by length, not by subtype (which was
               user-settable and thus not reliable!).
   Thanks to Dr. Alexander Raeder, Karstadt AG, GERMANY.

Change 17.364  XCF Path Statistics report, updated to report all
ANALRMFR       paths.
Jan 13, 2000
   Thanks to Neil Ervin, Schwab and Company, USA.

Change 17.363  Year 2000.  Julian Date Values for these products have
VMACACF2       been protected to convert 01yyddd values to 20yyddd:
VMACCTLT       TYPEACF2 - LIDADATE, LIDCDATE, LIDDXPDT, LIDIPDAT, prot.
VMACLMS        TYPECTLT - CTLTDSN/CTLTVOL variables protected.
VMACPROS                  but there are EXPDT fields that are not
Jan 14, 2000              protected for invalid dates (like 99366).
               TYPELMS  - This code had not been updated in a long time.
                          EXPDT is now correct, but several datasets
                          were also corrected, and the code now runs
                          under ASCII as well as EBCDIC versions of SAS.
                          These changes support Sutmyn/VTS/LMS 3.4.
               TYPEOMAU - OMJULDAT is protected, and OMDATIME corrected.
               TYPEPROS - GWADATE protected.  GWAEXPDT is character.
               TYPEWSF2 - No julian date variable, listed in error.
               Unfixed, awaiting raw data:
               TYPEIAM:   IAMCDATE=0852 decimal, 0354 hex, doc dddy!!!

               Unvalidated, these products have unvalidated fields and
                          no test data has been made available. See the
                          member YEAR2000 for variables and datasets:
                          TYPEBETA TYPECMF TYPEDECS TYPEEDGR TYPEEDGS
                          TYPEEPIL VMXGHSM TYPESARS TYPETMDB TYPETMVS
                          TYPETLMS
   Thanks to Warren Hayward, TJX, USA.
   Thanks to David Ehresman, University of Louisville, USA.
   Thanks to Kevin Marsh, AT&T Solutions EMEA, ENGLAND.
   Thanks to Caron Know, Willis, ENGLAND.
   Thanks to Steve Clark, California Federal, USA.
   Thanks to Coen Wessels, UNICIBLE, SWITZERLAND.
   Thanks to Caron Knox, Willis Corroon Group Services Limited, ENGLAND.

Change 17.362  Documentation only; no code was changed. Highwatermark
VMACTM02       and lowatermark values in TMON for CICS/ESA 2.0 (TCE)
Jan 13, 2000   statistics interval records will be always zeroes after
               applying SYSMOD TH01288 to TMON, but the HWM values in
               the TI record will still be valid, as they are obtained
               differently than the TCE records.  The SYSMOD text has an
               extensive discussion of why the TCE HWM/LWM values cannot
               be calculated when the TCE interval is different than the
               CICS statistics interval.  These fields in these records
               will be zero:
                 Record  Fields
                  TP     TPGWLRHW TPGHWMT
                  TS     TSGSTA6F TSGQNUMH TSGNCIAH TSGBUWTH TSGNVCAH
                         TSGVUWTH TSGQINH
                  TD     TDGAMXIU TDGAMXAL TDGAMXWT TDGAMXCI TDGSMXAL
                         TDGSMXWT
                  TX     TXGPAT   TXGPQT
                  TR     TRVRPLX  TRVRPLXT TRXMCPAT TRXMCCPQ TRVLUHWM
                  T2     T2TCBQHW T2TCBHWM T2ETHDHW T2EPTHDP T2EHTASK
                         T2EH
                  TM     TMCE1HWM TMCE2HWM TMCEBHWM TMCESTAM
                  TT     TTRMCNT
                  TF     TFFDSHSW TFFDTSHI

Change 17.361  Extension to Change 17.339 for EREP records.  Now, all
VMACEREP       EREP record types are tested and will be bypassed (and
Jan 12, 2000   and MXG WARNING message printed on the log) if any of the
               invalid record bits are enabled; previously only the
               record types that had experienced bad bits were
               protected.  IBM's EREP writes out truncated records when
               it runs out of buffer space, and sometimes EREP doesn't
               edit the record and only writes out what's in the buffer,
               and sometimes EREP writes out incomplete records.  Also,
               MCH '13'x record conditionally inputs ERRORID by testing
               length in LRBMLNH to avoid STOPOVER.
   Thanks to Jerry Urbaniak, Peoples Energy Corporation, USA.
   Thanks to Les Geraghty, DMR (an Amdahl Corporation), IRELAND.

Change 17.360  The RMFINTRV/VMXGRMFI enhancements added in MXG 17.09
VMXGRMFI       have been revised and corrected, so the errors and fixes
RMFINTRV       apply only to the 17.09 code, but all of the new stuff
TRNDRMFN       now works!  Your existing IMACWORK member will continue
Jan 12, 2000   to work to define your workloads, if you do nothing, but
Jan 20, 2000   now you can EDIT member RMFINTRV (instead of IMACWORK) in
               your USERID.SOURCLIB to create new workloads either in
               addition to your IMACWORK workloads, or instead of, by
               ignoring in IMACWORK completely.  Member RMFINTRV invokes
               %VMXGRMFI, so you EDIT RMFINTRV to change the arguments.

               Remember, you NEVER change member VMXGRMFI; you only read
               it for its documentation of the arguments in comments.
               Then, in your RMFINTRV member, you invoke %VMXGRMFI with
               your chosen workload definitions, parameters, etc.
               Member RMFINTRV has documentation and examples in its
               comments.

               To match output to input sums exactly, all of the length
               4 variables in RMFINTRV are now stored in 8 bytes.  The
               truncation when stored in four bytes is only in the 7th
               significant digit, so using length 4 is not wrong, but
               with a daily totaly of 1,000,000 seconds, that caused a
               visually-obvious-even-if-not-significant difference of
               0.1 of those million seconds lost between RMF & RMFINTRV.
               Since I wasted a full day chasing down that difference, I
               decided the small increase in DASD space would be worth
               you never having to ask why there was any difference!

               RMFINTRV now uses SAS VIEWS to pass data from one step to
               another without using DASD space, but now, an ignorable
               note "A stored DATA STEP view cannot run under a
               different operating system" is printed on the SAS log.

               Some additional documentation comments.

               Specifying IMACWORK=NO may cause UNINITIALIZED VARIABLE
               messages on the SAS log for the old variables that you
               no longer want.  Putting a comment block aroung the
               label statement in your EXRMFINT member will eliminate
               those messages, but they have no impact.

               Any workload can be broken into periods, with a set of
               variables for each period, including response time,
               transaction count, and swap count as has always been
               done for the TSO workload.  You need to tell VMXGRMFI
               how many periods to be mapped with the syntax:
                 WORKn=NNNN/LLLLLLLL/PGN/SRVCLASS/PERIODS
               See PERIODS= in member VMXGRMFI.

               If you specify to use Report Classes/Perfgrps, but you
               also say to use your IMACWORK member, and that IMACWORK
               member still contains the default to delete Report stuff
               the IMACWORK will have deleted the Report stuff before
               the new definitions are used.  You will need to revise
               your IMACWORK member to permit use of Report stuff.

               Trending on the new RMFINTRV variables can now also be
               done, with this new VMXGRMFI's TRENDIN=, TRENDOUT=,
               TRENDBY=, and TRNDINTV= arguments, and by setting PDB=.
               Member TRNDRMFN is an example of the new syntax that
               will invoke VMXGRMFI to create TREND.TRNDRMFI with all
               of the new workload variables.

               These 17.09-only errors were corrected:

              -The default IMACWORK=YES caused MXG error message that
               RMFINTRV CPU TIMES DO NOT MATCH because OTHRCPU was
               included twice in the creation of variable CPU72TM.
               17.09 sites can remove the OTHRCPU from the end of:
                    ,BATCPU,TSOCPU,CICSCPU,IMSCPU,OTHRCPU,
               OTHRCPU is the fallthru workload for undefined PERFGRP or
               SRVCLASS that were not mapped in your IMACWORK, so if all
               work was mapped, then OTHRCPU will be zero and this error

               does not occur.
              -That error message does NOT set a return code nor stop
               your BUILDPDB job (because once you see the error and
               fix your workload definitions in your IMACWORK member
               or in your RMFINTRV invocation of %VMXGRMFI, you can
               simply re-run the RMFINTRV program to re-create the
               PDB.RMFINTRV dataset, without re-reading SMF data.
              -Detailed validation of 17.09 corrected values in a few
               variables from TYPE71 and TYPE74 datasets.
              -Using IMACWORK=NO and RPGNs did not use the RPGN data.
   Thanks to Bruce Lietz, Cessna Aircraft, USA.
   Thanks to Normand Poitras, ISM, CANADA.

Change 17.359  VMXGSUM fails if variable names are created in lower case
VMXGSUM        and KEEPALL=NO default is used with SAS V7/V8, as that
Jan 12, 2000   space-saving option invokes logic to figure out what
               variables need to be kept, and because the output dataset
               created by PROC CONTENTS that contains the list of
               variable names that exist has lower case values in
               variable NAME, but the dataset created by parsing of the
               arguments (like SUMBY=) that contains the list of
               variables that are needed has upper case values in its
               variable NAME, which then causes the MERGE matchup:
                MERGE A (IN=INA) B (B=INB); BY NAME; IF INA AND INB;
               to fail, as it sees those NAMEs as different values.

               And since there is no SAS facility for case-insensitive
               character tests nor case-insensitive MERGEing, three
               UPCASE() functions were inserted in the three places
               where variable NAME is read from the PROC CONTENTS output
               dataset.

               I discovered this one while creating CHANGE 17.358, and
               accidentally used lower case in my test program, but it
               was very nasty in impact and not obviously caused.  There
               was no error condition, but the output dataset had only
               17 observations instead of 212; there were a few MISSING
               VALUES messages on the log during MXGSUM1 creation.  Only
               when the SUMBY variables were printed was it found that
               one of them did not exist in the output dataset, which
               led to the discovery and fix.

               Using argument KEEPALL=YES will circumvent this error,
               because that bypasses the NAMEs matchup, but it can waste
               //WORK space if there are many unused variables.

               Ain't mixed case fun?????

Change 17.358  An additional sample NETSPY report that replicates the
ANALNSPY       MICS SNTNSS report from MXG's NSPYLU dataset was added to
Jan 12, 2000   the examples in ANALNSPY.  (However, the MICS report does
               not correctly count input transactions; the MXG report
               prints both the MICS number and the true number).
   Thanks to Gene Rahe, Experian, USA.

Change 17.357  To modify BUILDPDB to copy CICS Statistics datasets to
EXPDBOUT       your PDB, you should insert this code in EXPDBOUT:
Jan 12, 2000       _S110
Jan 20, 2000       MACRO _SCICEXC  %
               The BUILDPDB writes all CICS Statistics datasets to the
               work file (to later create PDB.CICINTRV), but those 50+
               individual CICxxxx datasets are not copied into the PDB
               by default (they can be large; if you don't ask for them,

               they won't waste any space in your PDB).  That macro
               invocation of _S110 sorts each TYPE110 dataset to the
               PDB, and the two MACRO redefinitions to null out the
               sorts of datasets CICSEXEC and CICSYSTM are needed
               because BUILDPDB will try to sort them later in its own
               logic, after the EXPDBOUT exit has been executed.

               Note: if you don't want to create any observations from
               the type 110 subtype 2 CICS statistics records, add this
               statement:    IF ID=110 AND SUBTYPE=2 THEN DELETE; in
               your IMACFILE exit member.
   Thanks to David Ehresman, University of Louisville, USA.

Change 17.356  Using Excluded CICS fields with CICS TS 1.3 failed,
IMACEXCL       because the DO group  IF MCTSSDCN LT 202 ... should have
Jan 11, 2000   been deleted when the TS 1.3 INPUT logic was copied into
               member IMACEXCL.  Delete that DO group.
   Thanks to Tony Steward, Post Office, ENGLAND.

Change 17.355  Type 42 Subtype 7/8 NFS records caused INVALID NF-CL
VMAC42         SECTION TRIPLET error, but the message itself was in
Jan 11, 2000   error.  The test OFFCL+LENGTH GT LENGTH should have been
               OFFCL+LENGTH-1 GT LENGTH.  The INPUT of SMF42CHL (twice)
               was changed from &PIB.4. to &PIB.2.  and SUBTYPE= was
               added to those INVALID messages.  Datasets TYPE42NF and
               TYPE42NU were affected.
   Thanks to Alan Deepe, Perot Systems Europe, ENGLAND.

Change 17.354  Summarized variable RESPSTD was always zero; the code
ASUMCICS         SQRTARG=(SSQELAP/NUMTRANS)-(IRESPTM**2);
ASUMCICX       must be changed to read:
Jan 11, 2000     SQRTARG=(SSQELAP/NUMTRANS)-((IRESPTM/NUMTRANS)**2);
   Thanks to Normand Poitras, ISM, CANADA.

Change 17.353  Protection for the unwise.  If you use the same name for
VMAC7072       a Service Class and for a Report Class, the MXG NODUP
WEEKBLD        removal would not remove all duplicates.  Adding variable
MONTHBLD       RPRTCLAS at the end of MACRO _BTY72GO will not impact the
Jan 11, 2000   existing sorted datasets but will delete any duplicate
               records in TYPE72GO.
   Thanks to Chuck Hopf, MBNA, USA.

Change 17.352  Year 2000. Variable OUTDATE was still a 0cyyddd value,
VMACTMS5       having been overlooked by Change 16.330, but now it is
Jan 11, 2000   converted into a yyyyddd value.
   Thanks to Freddie Arie, Texas Utilities, USA.

Change 17.351  Format MGSTCRS was corrected to 00/01 UN-/CONFIGURED.
FORMATS        Labels for STC26MST/MET were changed to TAPECOPY vice
VMACSTC        MIGRATE, for STC26VPO was changed to Position on the new
Jan  8, 2000   MVC, and for STC26MID was changed to VTV VOLSER.
   Thanks to Herb Strazinski, US Bank, USA.

Change 17.350  SYNCSORT flag variables CONTIGn was wrong if SMFWKCID
VMACSYNC       contained multiple bits, variable CACHFWn was created but
Jan  8, 2000   not kept, and two new flag variables were not decoded.
               Now, CONTIGn and CACHFWn are kept and right, and two new
               variables are decoded and kept:
                 DYNALOn = 'WORK n*DYNAMICALLY*ALLOCATED?'
                 UNOPENn = 'WORK n*UNOPENED*DISP=OLD?'
               for n=1 to 32, for each possible Sort Work Area.  Also,
               the UCB address in variables UNIT1-UNIT32 is now the four
               digit character address, so their stored length was

               increased from $3 to $4.
   Thanks to Steve Colio, CIGNA, USA.

Change 17.349  IBM Documentation of TELNET LOGF Date and Time Fields was
VMACTCP        wrong, causing MXG variable TELLOGFT to be wrong.
Jan  7, 2000   Instead of being the time of logoff, the time field at
               offset 82-85 is the elapsed duration of the session! And
               the date field at 86-89 is redundant with the SMF date
               field (and this is the date field that IBM's APAR PQ34359
               plans to change from the non-standard yyyydddF format to
               0cyydddF in spite of its uselessness!).  Adding the
               session duration and that date field created a value on
               Jan 3, 2000, for a session that ended Jan 1, which made
               this look like a Year 2000 problem, but it was just bad
               documentation!  Now, TELLOGFT is the LOGF datetime value,
               new variable TELLOGON is the calculated LOGN datetime
               value, and new variable TELLOGTM is the elapsed session
               duration.
   Thanks to Freddie Arie, Texas Utilities, USA.
   Thanks to Jerome Vitner, Experian, USA.

Change 17.348  This GRAF example failed if you did not have SAS/GRAPH;
GRAFLPAR       while the actual PROC GPLOTS were protected, the graph
Jan  6, 2000   control statements AXIS1, SYMBOL1, etc, were not and
               caused AXIS1; to create a 180 syntax error.
   Thanks to Michael E. Rounceville, Shaw Industries, USA.

Change 17.347  APAR OW42559.  Variable UCCOLDT contains 1900001F for
VMACDCOL       data on Jan 1, 2000, and records will be lost until the
Jan  5, 2000   end of January, 2000, according to that APAR text.

Change 17.346  INVALID DATA FOR IOSSTIME error because an additional 4
VMACICE        bytes were added to the subtype 8 ICEBERG SMF record, but
Jan  5, 2000   MXG failed to protect for a change in segment size.  The
               correction is to insert these two lines:
                 SKIP=LENSEG-128;
                 IF SKIP GT 0 THEN INPUT +SKIP @;
               immediately before this line:
                 _EICE8NP /*INC SOURCLIB(EXICE8NP); _WICE8NP .... */
   Thanks to Jerry Urbaniak, Peoples Energy Corporation, USA.

Change 17.345  MXG 17.06-17.09 only.  INVALID NUMERIC DATA CECSER=...
ASUM70PR       error because MXG 17.06 added statements that used CECSER
Jan  5, 2000   as a numeric variable, but it is created as a 6-byte
               character variable.  The actual CPU Serial number
               contained xxC4, which surfaced this error.
               The test IF CECSER=. THEN CECSER=.; must be changed
               to IF CECSER='      ' THEN CECSER='      '; and the
               test IF CECSER=. THEN DELETE; must be changed to
               IF CECSER='      ' THEN DELETE;
   Thanks to Darlene Wnukowski, Schreiber Foods, Inc., USA.

Change 17.344  Year 2000.  Support for ZARA Release 1.3 (INCOMPATIBLE).
VMACZARA       Release 1.3 is the only Y2K Ready version of ZARA, and
Jan  5, 2000   the record format was changed to the API records, so you
               will need this change to support ZARA records.  In
               addition to 1.3 record changes, MXG's logic for the
               FILDATEX was wrong; the test  FILDATEX GE 1999365   was
               corrected to read:
                 FILDATEX EQ 1999365 OR FILDATEX EQ 1999366 OR
                 FILDATEX EQ 1999999)
   Thanks to Norbert Ravarani, European Commission, LUXEMBURG.

Change 17.343  Variable NEXTENT, the number of extents on this volume,
ANALDSET       was added to dataset DSETOPEN created by ANALDSET.  The
Jan  3, 2000   DCOLLECT/TYPEDCOL is probably better for analysis of
Feb  2, 2000   dataset extents, because DCOLLECT sees all datasets on a
               volume at the time DCOLLECT is run, while ANALDSET only
               sees datasets that were closed in input SMF file time
               interval (SMF type 14,15,64).  Nevertheless, if you need
               to track which job and which open is causing datasets to
               extend, using this revised ANALDSET will now provide
               NEXTENT for both VSAM and non-VSAM files.  The structure
               of ANALDSET was also revised; no longer do you need to
               IEBUPDTE step to create the temporary tailoring PDS
               library; the revised program now tailors instream using
               %LET MACKEEP= architecture.
               Feb 2: _N30, _N1415, _N64 added to null all datasets and
               then define the wanted; creation of new TYPE30MR caused
               the earlier revision to fail, but now its futurized.
   Thanks to Tien Truong, CITICORP, SINGAPORE.

Change 17.342  Year 2000.  TYPE1415 variables EXPDT and CRDATE were not
VMAC1415       converted to yyyyddd format (they were overlooked in
VMXGINIT       Change 16.330) and are still in cyyddd format, so they
Dec 31, 1999   print as 100001 for 1Jan2000.  This change adds in the
Jan 12, 2000   algorithm from member YEAR2000 to convert both EXPDT and
               CRDATE to value 2000001 instead of 100001, and changes
               their label to show YYYYDDD as their value.  Member
               VMXGINIT is also needed if you are still at MXG Version
               16.16, or you can insert this statement:
                 %LET WTY1415=WORK;
               as your first //SYSIN DD statement.
   Thanks to Rebecca Cates, PKS Information Systems, USA.
   Thanks to Frank Cortell, CSFB, USA.

Change 17.341  Year 2000.  MXG created SAS date variables CREATED,
VMXGVTOF       EXPIRES, and LASTUSED are wrong in Y2K in this archaic
Dec 31, 1999   VTOC reading program (which was replaced by DCOLLECT),
               although the julian date variables CRDATE, EXPDT, and
               LASTUSE are correct.  The correct equations are:
                 CREATED=DATEJUL((CRCENT+19)*100000+CRDATE);
                 EXPIRES=DATEJUL((EXCENT+19)*100000+EXPDT);
                 LASTUSED=DATEJUL((LACENT+19)*100000+LASTUSE);
               The incorrect equation produced dates that were either
               off by one day if YEARCUTOFF=1900, or off by 36525 days
               if YEARCUTOFF was 1960.
   Thanks to Geoff Morley, Origin Netherlands, THE NETHERLANDS.

Change 17.340  Three cases of "$EBCDIC8 " were changed to "$EBCDIC8."
VMACOMVT
Dec 24, 1999
   Thanks to Freddie Arie, Texas Utilities, USA.

======Changes thru 17.339 were in MXG 17.09 dated Dec 22, 1999======

Change 17.339  INPUT STATEMENT EXCEEDED RECORD LENGTH for EREP records
VMACEREP       because the HDRIS flag bits were not being tested for all
Dec 21, 1999   record subtypes.  IBM's EREP writes out truncated records
               when it runs out of buffer space, it sometimes doesn't
               edit the record but writes out what's in the buffer, and
               writes out incomplete records, all of which are flagged
               by HDRIS and BYTE0 flag bytes.  MXG covered most but not
               all cases, writing out an MXG WARNING that EREP had
               created bad records, but now all cases are protected.
   Thanks to Jerry Urbaniak, Peoples Energy Corporation, USA.

Change 17.338 -The calculation of BPHITRAT, Buffer Pool Hit Ratio, in
VMACDB2        DB2STATB dataset was revised based on Don's research: The
Dec 20, 1999   new algorithm substitutes QBSTRIO for QBSTSIO, and
               restores QBSTSPP, which was removed due to negatives:
                 BPHITRAT=
                   QBSTGET-(QBSTRIO+QBSTSPP+QBSTDPP+QBSTLPP)/QBSTGET;
              -QBSTSPP had been removed when MXG had negative ratios,
               but it is better to use it (as it includes all prefetch
               pages, regardless of whether these pages were discarded
               before actually being used by the application), so that
               negative values indicates a potentially serious problem
               that could be overlooked without QBSTSPP: pages that are
               read via prefetch, discarded before use, and then read
               via synchronous sequential read.  Large values in QBSTSIO
               would also be true for this case, but negative BPHITRAT
               would be less likely to be overlooked.  Without QBSTSPP,
               the equation calculated terrific buffer hit ratios that
               were meaningless, since they did not consider the number
               of pages that were read via normal sequential prefetch.
   Thanks to Don Deese, Computer Management Sciences, Inc., USA.

Change 17.337 -Remove TYPE79 processing, not used in IBM reports.
ANALRMFR      -Remove TYPE76 processing, not used in IBM reports.
Dec 20, 1999  -New optional parameter ALLTYPE= to build  TYPE70-75,
               TYPE77 & TYPE78 datasets, or build only those record
               types needed for the reports that are requested.
              -New optional parameter DEVICEC=, allows selection of
               only certain device classes for device reports.
              -Update Channel Avtivity report column TYPE of channel.
               Change line
                IF LPARCPUS GT 0 AND LPARNAME NE 'PHYSICAL' THEN DO;
               To
                IF LPARCPUS GT 0 THEN DO;
   Thanks to Neil Ervin,    Charles Schwab & Co.
   Thanks to Al Sherkow,    Management Strategies, Ltd.
   Thanks to Susan Walters, Michelin Tires, USA.

Change 17.336  Variables IMSVERS, IMSRELEASE, and SMBCLASS were changed
VMACITRF       from character to numeric (input now with &PIB.1.) to be
Dec 20, 1999   directly readable and to now make sense!
   Thanks to Warren E. Waid, JC Penny, USA.

Change 17.335 -Support for Windows 2000 Build 2195 changed field counts
EXNTACRS       from the Beta 3 release, so the code was revised to read
EXNTDIST       only the Build 2195 records:
EXNTIACC        Memory - AVAILMEK and AVAILMEM variables added.
EXNTIACS        Logical Disk - Instance Name restored (was missing).
EXNTIATC        Print Queue - Instance Name restored (was missing).
EXNTIATS        Web Service - SRVUPTME (service up time) added.
IMACNTSM        Job Object - Instance Field added, sometimes, but
VMACNTSM                     data fields are accumulated.
VMXGINIT        Job Object Details - Instance Fields added, sometimes.
Dec 19, 1999    Note: we're still researching why some of the Job and
                      Job Detail records contain no instance fields,
                      and NTSMF will need to be revised to deaccumulate
                      the Job Object counters.

               -New Objects found in Build 2195:
                Dataset    dddddd   Description
                ACSRSVPS   NTACRS   ACS/RSVP Service
                DISTRNCO   NTDIST   Distributed Transaction Coordinator
                IASACCTC   NTIACC   IAS Accounting Clients
                IASACCTS   NTIACS   IAS Accounting Server
                IASAUTHC   NTIATC   IAS Authentication Clients
                IASAUTHS   NTIATS   IAS Authentication Server
   Thanks to Jim Quigley, Con Edison, USA.

Change 17.334  Variables PGBKSYSA PGBKLPA SHPGINAU SHPGOUAU SHPGINES
VMAC71         SHPGOUES in TYPE71 are now converted to rates per second
Dec 19, 1999   and their labels corrected, since they paging rates.
   Thanks to Bruce Widlund, Merrill Consultants, USA.

Change 17.333  Support for additional Landmark TMVS subtypes, including
EXTMVXC        WG (Workload Manager) and XC (Coupling Facility), and
EXTMVXC1       additional fields in other records are now decoded and
EXTMVXC2       created.  Test data was available, and most number have
EXTMVXC3       been verified, but there was lots of coding here!
EXTMVXC4
IMACTMV2
VMACTMV2
VMXGINIT
Dec 15, 1999
   Thanks to John Jackson, Redcats, UK.

Change 17.332  INPUT STATEMENT EXCEEDED error for VSM subtype 24; the
VMACSTC        input of STC24MID should have been $EBCDIC6 instead of
Dec 15, 1999   $EBCDIC8.
Dec 21, 1999   In addition, variable STC13TIM is now corrected by the
               addition of DEL6070 (the delta seconds between unix's
               1970 epoch and SAS's 1960 epoch - see Change 17.195),
               and further protected in case STC changes that to the
               TODSTAMP format in the future!
               And more:  All of the VSM timestamps (except SMFTIME) are
               on GMT, and there is no offset provided!
               And finally, just in time for the 17.09 build, the bit
               test for STC11TOL had an extra 9th postition to delete.
   Thanks to Herb Strazinski, US Bank, USA.

Change 17.331  Variable SMF77RF2, a second status indicator, is input to
VMAC77         match RMF report replication in member ANALRMFR.
Dec 14, 1999
   Thanks to Bruce Widlund, Merrill Consultants, USA.

Change 17.330  17.05-17.08 only.  STOPOVER and/or BAD RECORD messages
VMAC80A        if you have installed APAR OW39128, which added RPDSNAME
Dec 13, 1999   to the WHEN (66) decoding, but I believed IBM and read in
               with INPUT RPDSNAME $EBCDIC44.   But actual data records
               show the segment is variable length.  Change the above
               line to read:  RPDSNAME $VARYING44. RACFDLN
   Thanks to Joseph Faska, Depository Trust, USA.

Change 17.329  Partition Data Report, *PHYSICAL* values zero.  Change
ANALRMFR         IF LPARCPUS GT 0 AND LPARNAME NE 'PHYSICAL' THEN DO;
Dec 10, 1999   to
                 IF LPARCPUS GT 0 THEN DO;
               References to TYPE79 were removed, as it is not used in
               any reports, and caused space problems if PDB=SMF was
               specified.
   Thanks to Neil Ervin, Charles Schwab & CO.
   Thanks to Al Sherlow, Management Strategies, Ltd., USA.
   Thanks to Susan Walters, Michelin Tires, USA.

Change 17.328  This utility to show the size (MegaBytes) of each data
UTILCONT       set in a SAS Data Library did not have the DETAILS
Dec 10, 1999   parameter specified, and thus returned zero when run
               under SAS Verson 6, 7, or 8.  Now it always works.
   Thanks to Jerry Urbaniak, Peoples Energy Corporation, USA.

Change 17.327  The order of the code in IMACACCT was revised, so that
IMACACCT       the &MACACCT invocation now is located after the LABEL
Dec  7, 1999   statement and before the LENGTH statement, so that the
               length and label of the account variables can both be
               changed instream.  For example, this syntax in //SYSIN:
                 %LET MACACCT=
                   %QUOTE(
                   DROP ACCOUNT4-ACCOUNT9 SACCT4-SACCT9
                        LENACCT4-LENACCT9;
                   LENGTH ACCOUNT3  SACCT3 $12; ) ;
               will drop and change the length as indicated.
   Thanks to Paul Oliver, BHP Petroleum, AUSTRALIA.

Change 17.326  Documentation only.  The old //PROCLIB DD DSN=xxxxxxx
INSTALL        statement was replaced some time ago by the JCLLIB
Dec  7, 1999   statement.  An example of that syntax is:
                   //PROCLIB  JCLLIB ORDER=MXG.USERID.SOURCLIB
   Thanks to MP Welch, SPRINT, USA.

Change 17.325  This CICS utility to detect what PTFs are installed so
IMACPTF        that you can then update member IMACPTF to tell MXG what
UTILCICS       is installed has been cleaned up.  The double output for
Dec  6, 1999   OMEGADLI, CANMQ, and CANWLMSC were removed, the test for
               PTF UN98309 should have been for SMFPSRVR=51.0 instead of
               SMFPSRVR=41.0 (and the associated comments in member
               IMACPTF were corrected to 51.0), and the test for DBCTL
               now tests for CMODNAME=DBCTL.
   Thanks to Harry Olschewski, DeTecCSM GmbH, GERMANY.

Change 17.324  The WTIRIOTM (inter region wait time) in ASUMUOW was the
ASUMUOW        sum of all of WTIRIOTM values from all transactions in
Dec  6, 1999   the unit of work, but this value is meaningless, as the
               multiple waits in the TOR, AOR, etc., were summed.  Now,
               the WTIRIOTM in ASUMUOW is the WTIRIOTM from the first
               transaction, which is also the source of IRESPTM, as this
               will provide a more meaningful indication of IR wait for
               the unit of work.
   Thanks to Alan Meyer, Prudential-Bache Securities, USA.

Change 17.323 -This utility to understand the sequencing of CICS TOR/AOR
UTILUOW        transactions now avoids all duplicates in the reports by
Dec  5, 1999   adding variables APPL5, TRAN5, ... TRAN10 to the BY list
               for the PROC SORTs of datasets FIRST/MIDDLE/LAST/MOREONE,
               and variable INDEX was added at the end for a better sort
               sequence.

              -Comments for Report 5 were enhanced, because when DBCTL
               is used, there are lots of non-mirror transactions with
               RTYPE=D that belong to one unit-of-work, that show up in
               Report 5 and that are correct and should use case 1.
              -Eliminated the first step (and IEBUPDTE to create a temp
               PDS for tailoring) by using the 16.04 design to override
               instream.
   Thanks to Harry Olschewski, DeTecCSM GmbH, GERMANY.

Change 17.322 -Parameter SYNC59 will correct the RMFINTRV interval for
EXRMFINT       sites still stuck with SYNC(59) in SMFPRMxx in PARMLIB.
RMFINTRV       Because MICS originally used the end-of-interval SMFTIME
VMXGRMFI       to summarize data, they required the RMF interval to be
Nov 30, 1999   at 59 minutes rather than on the exact hour.  This new
Dec 21, 1999   parameter will "correct" the STARTIME in PDB.RMFINTRV
               by adding one minute to STARTIME and ENDTIME so your old
               13:59 to 14:59 report shows 14:00 to 15:00.
              -Member IMACKEEP was only included if PDB=SMF.
              -Parameter IMACWORK=NO did not function in VMXGRMFI, and
               it has been corrected, redefined, and redocumented in
               member VMXGRMFI.  The default IMACWORK=YES causes MXG to
               use definitions in member IMACWORK to create workloads in
               dataset PDB.RMFINTRV in addition to any workloads that
               are created in the WORKnn= parameters in your %VMXGRMFI
               invocation.  Now, if IMACWORK=NO is specified, not only
               is the INCLUDE of IMACWORK suppressed, but also the old
               MXG workload variables (BATxxxx,TSOxxxx,..,OTHnxxxx) will
               NOT be created in PDB.RMFINTRV; only the workloads that
               you define in your %VMXGRMFI invocation will create
               workload variables (but you can still create workloads
               with those old prefixes in your invocation and they will
               be kept).
              -Member RMFINTRV now invokes %VMXGRMFI to create the data
               set PDB.RMFINTRV, using the IMACWORK definitions, to
               exploit the VMXGRMFI performance enhancements (by using
               VMXGSUM, especially in SAS V8, when entire data steps can
               be skipped due to the new PROC MEANS INHERIT feature).
              -An example of how you can invoke VMXGRMFI multiple times
               to create additional "RMFINTRV" datasets that are at the
               Hour (RMFINTHR), or at the Shift (RMFINTSH), etc., are in
               sample VMXGRMFI invocations in member RMFINTRV.
              -If you have tailored EXRMFINT to provide labels for OTHxx
               variables, your definitions will be used for RMFINTRV,
               but if you use VMXGRMFI to create a different dataset
               name (like RMFINTHR), you will first need to change the
               OUTPUT in your EXRMFINT to read OUTPUT _LRMFINT ;  cause
               if you don't, you'll get a 455-185 error due to your old
               OUTPUT statement in your old EXRMFINT member.
   Thanks to Normand Poitras, Banque Nationale du Canada, CANADA.

Change 17.321  Support for IIS Log provides event records with identity
EXIISLOG       of user, IP Address, byte counts, etc. in new dataset
IMACIISL       IISLOG. This support reads the #FIELDS list of fields and
TYPEIISL       populates only those variables in your log records.  All
VMACIISL       possible IIS Log variables are kept in IISLOG dataset, so
Nov 27, 1999   compression is strongly recommended to eliminate wasted
Dec 19, 1999   space, especially since many character variables are
               defined as $64, but usually contain far fewer characters.
               Of course you can always use MACRO _KIISLOG to drop any
               unwanted variables as well.
   Thanks to Xiaobo Zhang, Insurance Services Office, USA.

Change 17.320  The logic to detect the last-complete-interval-time to
ASUMTALO       control SPINTALO was imperfect, and could cause part of
Nov 24, 1999   the data for an hour to be split into two separate obs
Dec  5, 1999   in two day's separate PDB.ASUMTALO datasets.  The logic
Dec 20, 1999   was revised, which required a change in the sort order of
               dataset PDB.ASUMTALO to now be BY DEVICE DEVNR ALOCSTRT.
               In addition, we are now using SAS Views to "pipe" data
               and avoid physical writing and then reading records.
               This works fine, but prints notes on the log reading:
               "A stored DATA STEP view cannot run under a different
                operating system.", which has no impact.
   Thanks to Greg Jackson, National Life of Vermont, USA.

Change 17.319  Landmark DB2 Version 3.0 caused INPUT STATEMENT EXCEEDED
VMACTMDB       error, because MXG tried to input the CF fields (starting
Nov 24, 1999   with variable DABRH) that don't exist in that version.
               The INPUT statement was revised.
   Thanks to Paul P. van den Brink, MeesPierson, THE NETHERLANDS.

Change 17.318  Documentation.  MXGTMNT TMNT010E WRITE FAIL RC=0024 will
ASMTAPES       result if you try to create SMF records with MXG's Tape
Nov 24, 1999   Mount monitor, but have excluded that SMF record number
               in your SMFPRMxx member.  Depending on how your SYSPROG
               chose to code the TYPE/NOTYPE, etc parameters, you may
               have to update SMFPRMxx before you can write the SMF
               record, and you'll get one of these messages for each
               tape dismount and deallocation.
   Thanks to Steve Smith, BMC, USA.

Change 17.317  ABEND 2415 due to no RECFM=U in //NULLPDS DD in SAS proc,
MXGSAS         and message "INVALID RECFM is DCB NOT (U|F|V)" is printed
your SAS proc  on your SYSMSG, if your SMS ACS allocation rules for new,
Nov 23, 1999   temporary PDS libraries leaves RECFM blank, and you are
Nov 29, 1999   using MXG 17.04 or later.  The permanent fix from SAS is
Jan 31, 2000   in Usage Note G645 for V6, Usage Note 1651 for V8, is to
               add RECFM=U to the //NULLPDS DD statment in the SAS proc.
               The ABEND was precipitated by MXG 17.04, which added an
               INFILE read of //SOURCLIB during initialization, but as
               SOURCLIB is also in SASAUTOS, SAS opened that DD, which
               concatenates the //NULLPDS DD, and SAS cannot tolerate
               a blank value for RECFM when an INFILE is opened.
               The MXGSAS JCL Procedure was changed, but if you use
               // EXEC SAS instead of // EXEC MXGSAS, you will need to
               add RECFM=U to the //NULLPDS DD in the SAS procedure.
               The //NULLPDS DD statement exists in the SAS JCL proc,
               but it is there only for maintenance and testing, and it
               and was included in MXGSAS only for consistency.  That
               default was changed from only DCB=BLKSIZE=6160, to now
                  DCB=(RECFM=U,BLKSIZE=6160).
               Adding RECFM=FB to //NULLPDS fixed the ABEND and it was
               my initial circumvention, because MXG 17.04+ reads from
               the //SASAUTOS DD, which points to RECFM=FB datasets.
               Now, SAS Technical Support and I now agree that RECFM=U
               is slightly the better choice:  Both work fine now, but
               NULLPDS is also used in //STEPLIB, which is read by IBM
               programs, so using RECFM=U protects if a future OS/390
               release decides not to tolerate RECFM=FB in STEPLIB.
   Thanks to Mike Kepler, Wright State University, USA.
   Thanks to Phil Wise, Wright State University, USA.
   Thanks to Eladio Aviles, Arizona Public Services, USA

Change 17.316  WARNING: BIT MASK TOO LONG, TRUNCATED ON THE LEFT occurs
VMAC80A        if two bytes of bits are compared with a one byte field,
Nov 23, 1999   but the warning is not detected by the compiler, and it
               give no clue as to which statement is in error, which was
               introduced in Change 17.094 decoding of keyword bits.
               Three tests for KW08AUDT, 8 tests for KW25SPEC, and two
               tests for KW25ADSP were stripped of the right eight dots.
                  eg, the line IF KW25ADSP='........1........'B THEN ...
                   now reads   IF KW25ADSP='........1'B THEN ...
   Thanks to Joseph Faska, Depository Trust Company, USA.

Change 17.315  MXG 17.08 only.  I introduced typos into IMS Log members
ASMIMSL6       when I updated the MXG library from the tested members,
ASMIMSL5       and one more houskeeping statement was added to TYPEIMSA:
ASMIMSLG       - TYPEIMSA:
TYPEIMSA         Semicolon was missing in this statement:
Nov 22, 1999       IF MTYPE EQ: 'T' THEN STRTTIME=GUTIME; /*RESET....*/
Nov 23, 1999     New statement  ENDTIME=STRTTIME; was inserted after
                 the WSRVTS=ENDTIME-NEWSQ6; statement (line 864).
               - ASMIMSL6/L5/LG: Three statements must be changed:
                     BNZ P301000I      should be   BNZ P031000I.
                     CLI MTYPE+3,=C'P' should be   CLI MTYPE+3,C'P'
                     MVI MTYPE+3,=C'T' should be   MVI MTYPE+3,C'T'
               - ASMIMSL6:
                     Blank line before label P031000C must be removed.

               I thought that my revisions had been re-tested before
               MXG 17.08 was sent, but it is now painfully obvious that
               they were not!
   Thanks to Alan Green, Zurich, ENGLAND.

Change 17.314  The de-accumulation of the Web Server TYPE1032 data was
VMAC103        expanded to BY SYSTEM HOSTNAME IPADDRES PORTNUMB SMFTIME;
Nov 19, 1999   because you can have two copies of the server running in
               the same host with same IP Address, differing only in the
               Port Number.
   Thanks to Joseph Faska, Depository Trust, USA.

Change 17.313  Tests for STC11CI, STC11CE, and STC11TOL should have been
VMACSTC        IF STC11xx='.......1.B THEN DO .... instead of ='01'.
Nov 17, 1999   Variables were blank without this change.
   Thanks to Herb Strazinski,

Change 17.312  The _KSU70PR "Keep/Drop" macro was not referenced in the
ASUM70PR       building of ASUM70PR dataset, so variables could not be
Nov 17, 1999   dropped.  The token _KSU70PR was added inside the parens.
   Thanks to Gary Morris, Centre Link, AUSTRALIA.

Change 17.311  If you had an old IMACPDB from before MXG 16.04, you can
SPUNJOBS       get and error DATASET CONDCODE NOT FOUND.  Removing your
Nov 12, 1999   old IMACPDB and instead using the new  %LET ADDnn= macro
               variables will correct the error, but this change also
               protects by using the same logic in BUILD005 to create a
               zero obs CONDCODE dataset.
   Thanks to Rudolf Werner, Audi Ag, GERMANY.

Change 17.310  Input statement #25 (STIVSR36-STIVSR44) should have been
VMACCADM       #25 (STIVSR37-STIVSR44).
Nov 12, 1999
   Thanks to Freddie Arie, Lone Star Gas, USA.

Change 17.309  The remaining subtypes of CA-VIEW Metrics have now been
VMACSARR       validated and corrected.  Segment tests were change to
Nov 12, 1999   IF SV31xOF+SV31xLN-1 LE LENGTH AND SV30xLN GE 1 THEN DO;
               and the input of SV30IVAL now uses SV30IVLN vice SV30INLN
               to eliminate INPUT STATEMENT EXCEEDED on some subtypes.
   Thanks to Bruce Sloss, PNC Bank, USA.

======Changes thru 17.308 were in MXG 17.08 dated Nov 12, 1999======

Change 17.308  Support for the SQL*NET Network Information Vector, added
VMACORAC       to the Oracle user SMF record.  New variables IPADDR and
Nov 12, 1999   PORTNR for TCP/IP connnections or NIVNETNM and NIVLUNAME
               for SNA connnections are created and kept.
   Thanks to Sudie Wulfert-Schickedanz, Anheuser-Busch, USA.

Change 17.307  Support for APAR OW41147 to recognize ORGEXPDT=0099999 as
VMACDCOL       a "valid" migration date when creating variables DCDEXPDT
Nov 12, 1999   and UMEXPDT.  This change (insert before ORGEXPDT=9999999
               in two places the line   ORGEXPDT=99999 OR     ) corrects
               SAS dates to be "MXG infinite" date in 2099 instead of to
               be missing in DCDEXPDT or UMEXPDT.  However, the variable
               ORGEXPDT is unchanged, so you can use your current MXG to
               examine your DCOLLECT datasets DCOLDSET and DCOLMIGS, and
               if you have any datasets with ORGEXPDT=99999, then you
               MUST either install that APAR or follow its instructions
               to prevent unexpected loss of any SMS dataset with its
               ORGEXPDT=99000 on Jan 1, 2000.  What is critical is that
               you read the APAR and see if it has impact on our site.
               This MXG change is not required for year 2000 support in
               MXG Software.

Change 17.306  Support for CA VIEW Metrics report program SARSMFUX SMF
EXSARR20       records create seven datasets:
EXSARR21        Dataset  Label
EXSARR30        SARRU20  User Logon
EXSARR31        SARRU21  User Logoff
EXSARR32        SARRU30  Report was viewed
EXSARR33        SARRU31  Report was reprinted
EXSARR34        SARRU32  Report was loaded to database
TYPESARR        SARRU33  Report was deleted
TYPSSARR        SARR&34  Report was deleted from disk
VMACSARR
Nov 11, 1999
   Thanks to Bruce Sloos, PNC Bank, USA.

Change 17.305  Support for RACF General Resources Started Task subtype
EXRAC540       540 in RACF Database Unload Utility IRRDBU00 file.
IMACRACF
VMACRACF
Nov 11, 1999
   Thanks to Randolph W. Shumate, LEXIS-NEXIS, USA.

Change 17.304  Counts could be negative in TYPE1032 Web Server dataset,
TYPE103        because the accumulated counters are reset each time the
TYPS103        server is "bounced".  Now, MXG interleaves the subtype 1
VMAC103        (start) and 2 (interval) records to eliminate negative
Nov 11, 1999   values.  Additional protection prevents negative values
               if a subtype 2 is read before a subtype 1, or if data
               records were lost, for the first subsequent record.
               Member TYPE103 or TYPS103 both now invoke the DIFF103
               member to sort both TYPE1031 and TYPE1032 datasets.
               (So the //PDB ddname is required for TYPE or TYPS103).
   Thanks to Joseph Faska, Depository Trust, USA.

Change 17.303  IMF DB2 counts are lost in datasets CIMSTRAN and CIMSDB2
VMACCIMS       in MVIMF 3.2, because BMC enabled IOWAITS by default,
Nov 11, 1999   which puts some SQLCALLS in a new, undocumented DBORG=00x
Nov 19, 1999   DBD segment, instead of the documented DBORG='80'X DBD.
Sep 15, 2000   IOWAITS is the MVIMF Event Collector DBIO initialization
               parameter, and the new 00x segment accounts for sync
               point write activity and is also flagged by the
               PLANNAME='ALLDBS'.  MXG previously only knew about the
               80x DBD, so the new 00x segments were decoded incorrectly
               and output to the CIMSDBDS instead of CIMSDB2.  And while
               MVIMF documentation said there would be only one '80'x
               segment, logic was added to sum SQLCALLS for these
               multiple segments into CIMSTRAN.  The drop in SQLCALLS
               coincided with installing IMF 3.2.61.
               This change was not correct. See Change 18.225.
   Thanks to Winfried Waldeyer, BHF Bank, GERMANY.

Change 17.302  Format $MG074PT expected 'F1'X or 'F3'X, but actual data
FORMATS        values are '01'X or '03'X, so the format now supports
Nov 11, 1999   both formats, just in case.
   Thanks to Alan M. Sherkow, I/S Management Strategies, Ltd., USA.

======Changes thru 17.301 were in MXG 17.08 dated Nov 10, 1999======

Change 17.301  Variable DURATM was not created in PDB.CICS built with
ASUMCICX       member ASUMCICX.  Insert  DURATM=INTERVAL,  before the
Nov 10, 1999   INTERVAL=HOUR, macro argument.
   Thanks to Alan Deepe, Perot Systems Europe, ENGLAND.

Change 17.300  If DB2 stays up long enough, and does enough SELECTs, the
ANALDB2R       four-byte accumulated counter in the type 100 SMF records
VMACDB2        can wrap, causing MXG to create a negative value when it
Nov 10, 1999   DIF()'d the adjacent observations.  Now, each DIF() is
               followed by a test for four-byte wrapping of the form:
                IF . LT Qxxxxxxx LT 0 THEN Qxxxxxxx=Qxxxxxxx+4294967296;
               in member VMACDB2 (the "DIFFDB2" logic was relocated into
               the _SDB2xxx sort macros in MXG 16.04 redesign).  Also,
               several fields in MXG's ANALDB2R reports were not wide
               enough for large values, causing SAS to print exponential
               notation (valid, but confusing to neophytes), so they are
               now expanded along with other minor report revisions.
   Thanks to Victor Chacon, Bell Atlantic Mobile, USA.

Change 17.299  MXG Variable CECSER is created by substringing the last
VMAC7072       four nybbles of the three byte CPUSER to get the hardware
Nov  9, 1999   serial number of the "CEC" or "CPC", (i.e., the box), but
Nov 10, 1999   CPU segments have been found with 'E03333'X instead of a
               valid CPU Serial Number.  These segments are all flagged
               for an engine "not online at the end of the interval", or
               "came online during the interval", and the CPUSER is not
               valid in those instances.  So now, MXG sets CECSER only
                 IF CECSER GT '000000'X AND CAI EQ '......01'B THEN ...
               so that only CPUs that were online at the end of the
               interval and had not come online during the interval
               will be used to set the CECSER.  Note, however, that
               CPUSERnn (CPUSER stored into a serial number for each
               CPU) will still contain whatever CPUSER value was in
               its CPU segment if CAI had any bits turned on.
   Thanks to Linda Berkley, Amdahl, USA.

Change 17.298  Batch Pipes datasets TYPE9112, TYPE9113, and TYPE9115 now
FORMATS        contain the Input and Output counts summed from all of
VMAC91         the IEC and OEC connection segments for the End, Close,
Nov  9, 1999   or Delete events, and the Highest Error Code from those
Nov 27, 1999   connection segments.  Format $MG091EC was also updated.
               Nov 27: additional formats added to $MG091EC.
   Thanks to Michael Oujesky, MBNA Hallmark Information Services, USA.

Change 17.297  Support for unix PerfMeter Freeware Monitor that creates
EXTYPMTR       interval resource data on CPU, PKTS, PAGE, SWAP, INTR,
IMACPMTR       DISK, CNTXT, LOAD, COLLS, and ERRS rates in new dataset
TYPEPMTR       PERFMETR.  This monitor is free from Sun MicroSystems,
TYPEPMTR       for their unix.
VMACPMTR
VMXGINIT
Nov  8, 1999
   Thanks to Michael Lefkofsky, Wayne State University, USA.

Change 17.296  The de-accumulation logic in DIFFTPX caused NOT FOUND as
DIFFTPX        was not updated; now it has only  _STPXINT invocation, as
Nov  8, 1999   deaccum is now done in the data set sort macro.
   Thanks to Mike Shapland, PKS Information Services, Inc.

Change 17.295  The creation of ZDATE in this VMAC member was replaced by
VMACCTLT       %%INCLUDE SOURCLIB(IMACZDAT); to be consistent with the
Nov  8, 1999   rest of MXG VMACs.   The ommission was an oversight.
   Thanks to Steve Clark, California Federal Bank, USA.

Change 17.294  MXG 17.06 added macro _CICXC13 to support excluded fields
IMACEXCL       for CICS/TS 1.3, but the "END;  /* END CICS TS 1.3 ..."
Nov  8, 1999   line number 547, must be deleted to use the 1.3 Excludes.
   Thanks to Alan Deepe, Perot Systems Europe, ENGLAND.

Change 17.293  TYPEIMSA did not include member IMACKEEP; now it does.
TYPEIMSA       This should have been included in Change 17.228 but was
Nov  8, 1999   overlooked.
   Thanks to Gilles Fontanini, SAS Institute, FRANCE.

Change 17.292  Variable SMF6DDNM contains hex zeros for DDNAME in some
IMAC6ESS       type 6 SMF records (perhaps spin data sets?), but the ESS
VMAC6          segment appears to have the DDNAME in the SWBTU text, so
Nov  5, 1999   this change inputs new variable SMF6TUDD from ESS segment
               and stores SMF6TUDD into SMF6DDNM if SMF6DDNM is blank or
               nulls.  I'm still seeking the DSECTS for the SWBTU, and
               the ESS segment itself is incorrectly documented in the
               SMF manual and the DSECT, to make sure this is permanent.
   Thanks to Hartmut Richter, BASF Computer Services GmbH, GERMANY.

Change 17.291 -Variable PERFINDX in dataset TYPE72GO was non-zero when
EXTY72DL       it should have been missing for Service Classes with a
EXTY72GO       Percentage goal.  MXG calculated PERFINDX even when there
VMAC7072       were no transactions completed in the interval.  Now, the
Nov  5, 1999   statement ELSE IF R723CRGF='P' THEN DO; was changed to
               read ELSE IF R723CRGF='P' AND TRANS GT 0 THEN DO; so that
               PERFINDX will be missing when TRANS=0.  Additionally,
               PERFINDX was not reinitialized for each Period, and thus
               it could have been carried forward as non-zero when it
               should have been missing.  However, PERFINDX will always
               be missing in Reporting Class (RPRTCLAS='Y') observations
               and in observations for Service Classes that have System
               or Discretionary Goals (R723CRGF='S' or 'D').  PERFINDX
               will also be missing if the percent of transactions that
               meet the goal falls into the 14th (last) bucket, which

               make it impossible to calculate the PERFINDX.  On RMF
               reports, IBM prints four asterisk for the index; you
               can recognize these cases in MXG because R732CRGF='P',
               PERFINDX=., but TRANS or TRANSEXC will be non-zero.
              -Observations were output in TYPE72GO for Service Classes
               that had no resources nor transaction completions.  The
               variable NOACTVTY was non-zero (indicating activity) when
               it should have been zero.  Logic in VMAC7072 was revised
               so R723RESS (trans states sampled) is no longer included
               in NOACTVTY, and VELOCITY and PERFINDX are initialized
               for each period (they were propagated into subsequent
               periods in the same record that had no activity), and the
               logic in EXTY72GO now tests only
                 IF NOACTVTY GT 0 THEN OUTPUT _WTY72GO;
              -Observations were also output in TYPE72DL where there
               were no delay samples.  Now, EXTY72GO was revised so that
               observations are only output in TYPE72DL when R723RESS is
               non zero (i.e., there were transaction states sampled).
   Thanks to Tan York Sin, Stock Exchange of Singapore, SINGAPORE.

Change 17.290  MXG 17.07 IMS code still had negative RESPNSTM/SERVICETM
ASMIMSLG       in 5704 (out of 130000) IMS transactions.  Data records
ASMIMSL5       for this (yet another!) unique sequence of IMS log events
ASMIMSL6       plus lots of detailed digging thru mounds of data allowed
JCLIMSLG       Carl to enhance MXG for these new IMS idiosyncrasies:
JCLIMSL5       1. TYPEIMSA corrected 5411 of the negative cases, which
JCLIMSL6          included all of the negative RESPNSTM values.  Logic
TYPEIMSA          added protects when ENDTIME is less than GUTIME.  This
Nov 10, 1999      left 293 transactions with negative SERVICTM.
               2. ASMIMSLx assembly program revision protects cases when
                  IMS rerouting exits change destinations causing the
                  IMS communications manager to do the get unique of a
                  message that was originally destined to an SMB.  The
                  change sets MTYPE='PTOT' for messages GU'd by comm.
                  So you must re-assemble the ASMIMSLG/L5/L6 program for
                  your version of IMS to correct this problem, which
                  corrected 291 cases of negative SERVICETM.
               3. TYPEIMSA corrected the remaining two cases of negative
                  SERVICETM was to change the reset of STRTTIME=GUTIME
                  for all transactions, to use that reset only for MTYPE
                  starts with T, and otherwise reset STRTTIME=ENQTIME
                  for cases such as MTYPE='PTOT' in which the GU happens
                  ascynchronous to the end of the transaction.
               4. The SORT statement in STEP02 of the JCL examples needs
                  to be changed.  The "35,8" entry, for the message
                  arrival time, is changed to "43,8" so that the enq
                  timestamp is used to force the records in absolute
                  order (because the arrival timestamp can be zero, as
                  for 03 output record messages for PTOT transactions).

               In summary, you need to reassemble ASMIMSLx, use the new
               TYPEIMSA, and change the SORT parameter in your JCL.

               The cause of the 291 negatives is documented in IBM APAR
               PQ01976; they result when the site uses the IMS Input
               Message Routing Exit, DFSNPRT0, to reroute a message that
               was originally destined to an SMB instead to a CNT.  In
               this case, a multisegment IMS log 03 record has MSGDFLG2
               indicating a program-to-program message switch ('81'X),
               but the Exit changed the destination from another SMB to
               the CNT of an IBM 3614 cash dispensing ATM terminal, so
               the message is picked up by the IMS communications
               manager instead of by DLI, so the get unique from the

               message queue for that message is represented by a type
               31 record that has a QLGUFLGS ('A0'X), indicating it's
               pretty much just a normal output message, but the
               resultant mismatch in log coding created a transaction
               record with negative value for SERVICTM variables in
               IMSTRAN.  The PTF associated with IBM APAR PQ01976 does
               NOT correct the log records; it only prevented IBM's
               merge utility DFSLTMG0 from ABENDing (as it did when it
               first saw this sequence of IMS log records!).
   Thanks to Carl Meredith, SAS Institute ITSV Development, USA.

Change 17.289  Labels for several sets of TYPE71 variables AV/MN/MX
VMAC71         suffixed, now contain "*USED", to clarify which are the
Nov  3, 1999   usage measures and which are capacity measures.
   Thanks to Forrest Nielson, State of Utah, USA.

Change 17.288  Variable TOTSHARE was removed from the DROP statement so
ASUM70PR       it will be kept, as it may be useful to recalculate the
Nov  3, 1999   original system weights.
   Thanks to Chuck Hopf, MBNA, USA.

Change 17.287  Revised Support for SMF Type 90, TYPE90A/VMAC90A should
EXTY9001       be used instead of the old TYPE90/VMAC90 members, which
EXTY9003       will no longer be updated.  That old architecture kept
EXTY9004       all variables from subtypes 1-26 in the TYPE90 dataset,
EXTY9005       which not only wastes DASD space, but always requires a
EXTY9006       subset operation to select the observations you want.
EXTY9008       The TYPE90 code was the first written when subtypes were
EXTY9010       added to SMF records, and when there were only a few and
EXTY9011       they were similar in content, it made sense to create one
EXTY9012       TYPE90 dataset, and when new subtypes were added it was
EXTY9014       easier to add variables to an existing data set than to
EXTY9016       create a new data set, but now with 31 often-dissimilar
EXTY9017       subtypes, this "redesign with hindsight" is the righteous
EXTY9018       way it should have been done in the first place, as it
EXTY9019       creates 26 separate datasets, TYPE9001-TYPE9031, one for
EXTY90..       each of the operator commmand events, with only variables
EXTY90..       from that event kept in that TYPE90nn dataset.  There was
EXTY9030       no complaint with the old design, since everything that
EXTY9031       was supported was in the old TYPE90 dataset, but the need
IMAC90A        to support the new subtypes (27 and above, plus some that
TYPE90A        per previously missed) motivated the redesing.  Now all
TYPS90A        subtypes are decoded, except for data segments of subtype
VMAC90A        24 and 31 (no request, no test data, complicated, shelve
Nov  3, 1999   until someone want's to us them).
   Thanks to Philip Foster, Desjardins, CANADA.

Change 17.286  MXG Support for FICON Channels was wrong.  Variables
VMAC73         PCHANBY/PNCHANBY were incorrectly calculated for FICON,
Nov  2, 1999   and Percent Bus Busy, PBUSBY was not even created, and
               variables SMF73PRU/PWU/TRU/TWU are recalculated to now
               contain read/write lpar/total rates in bytes per second,
               formatted with MGBYTRT to print KB/Sec, MB/Sec, etc, to
               match IBM RMF reports, now that I have test data and RMF
               reports for validation!
   Thanks to Joseph Rannazzisi, Salomon Smith Barney, USA.

Change 17.285  New NPM 2.4 field LSCDIPNM (IP Name) was input for all
VMAC28         records but is valid only if resource type is 'IP', so
Nov  1, 1999   that field will now be blank if not an 'IP' record.
               Variable LSCDUSER is blank if LENCOF is 112, which is the
               documented length for VM Session Configuration (SMF28SCD)
               records, and other LSCDxxxx fields are only input if the

               record is for Session Managers.
   Thanks to Robert A. Brown, Arthur Andersen, USA.

Change 17.284  Support for TRMS Version 51A08 changes (COMPATIBLE) to
EXTRMS05       their user SMF record.  New fields were added to subtype
VMACTRMS       3 and 4 datasets TMRS03 and TMRS04, and new subtype 5
VMXGINIT       record creates new dataset TMRS05, 'Browse Tracking'.
Oct 28, 1999   The S0nACCT character variables are now formatted as
               $HEX64, because the contain non-printable characters.
               The length of new fields S05KEY is not defined in the
               dsect, but was found to be 14 bytes in this site's data
               record.  It's length, T00KLEN is set somewhere else and
               could be different; we're investigating.
   Thanks to Carol King-Baer, Vanderbuilt University, USA.

Change 17.283  Format $MG091EC now decodes Batch Pipes error codes in
FORMATS        variables SMF91IEC and SMF91OEC.
VMAC91
Oct 28, 1999
   Thanks to Michael Oujesky, MBNA Hallmark Information Services, USA.

Change 17.282  Protection for bad type 80 record was not robust if MXG
VMAC80A        got out of alignment and thought it had a bad record; it
Oct 27, 1999   could STOPOVER abend instead of gracefully deleting that
               bad record, but protection logic from WHEN (00) was also
               added in OTHERWISE DO; logic to eliminate the abend.
   Thanks to Jens Schlatter, Independent Consultant, GERMANY.

Change 17.281  Support for DFSMS/MVS V1R5 is already in place, as there
VMACDCOL       were no changes in the DCOLLECT records in 1.5.
Oct 26, 1999

Change 17.280  Support for Landmark DB2 Monitor Version 3.2 (INCOMPAT).
EXTMDD7        Many new variables were added to existing MXG datasets
EXTMDD7B       TMDBDB, TMDBDA2, TMDBDAB, TMDBDBB, TMDBDBF, TMDBDBK and
EXTMDD7P       TMDBDE2, and TMDBD6, and the new 'D7' record creates new
VMACTMDB       TMDBD7, TMDBD7B, and TMDBD7P datasets.  This version has
VMXGINIT       lots of new stuff, including pairs of duration/counts of
Oct 26, 1999   many waiting-for-something's.  Since Landmark inserted
               new fields instead of adding at the end, you must install
               the change to process Version 3.2 or higher data.  Using
               an earlier MXG version for TMDB Version 3.2 records will
               cause the job to fail with many errors!
   Thanks to John Enevoldson, Ellos AB, SWEDEN.

Change 17.279  CICS Statistics "EOD" records do not contain a duration,
UCICSCNT       even though the "EOD" records is just the Interval Record
VMAC110        since the last "INT" record. (The "EOD" is written at EOD
Oct 24, 1999   but DOES NOT contain the entire day's data!).  With no
Oct 27, 1999   DURATM, MXG sets STARTIME=COLLTIME (SMFTIME), so while
               all of the obs are really there in the MXG data set, it
               looks like the 9pm interval was missed with STARTIME:
                    STARTIME          COLLTIME     SMFSTRQT
                  31OCT:15:00       31OCT:18:00      INT
                  31OCT:18:00       31OCT:21:00      INT
                   1NOV:00:00        1NOV:00:00      EOD
                   1NOV:00:00        1NOV:03:00      INT
               While STARTIME is wrongly equal to COLLTIME in the "EOD"
               interval record in CICxxxxx Statistics datasets built by
               the TYPE110/BUILDPDB programs, STARTIME is set correctly
               in the PDB.CICINTRV dataset that is created from nineteen
               of the "raw" CICS Stat datasets by t