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

CHANGE 25.25

 
        MXG Version 25.25  is dated Jan 28, 2008, thru Change 25.309
First   MXG Version 25.25 was dated Jan 21, 2008, thru Change 25.302
        MXG Version 25.12 was dated Jan 21, 2008, thru Change 25.294
        MXG Version 25.11 was dated Dec  7, 2007, thru Change 25.268
First   MXG Version 25.11 was dated Nov 22, 2007, thru Change 25.256
        MXG Version 25.10 was dated Oct  7, 2007, thru Change 25.215
        MXG Version 25.09 was dated Sep 17, 2007, thru Change 25.199
        MXG Version 25.08 was dated Sep  5, 2007, thru Change 25.187
First   MXG Version 25.08 was dated Sep  4, 2007, thru Change 25.182
        MXG Version 25.07 was dated Aug 10, 2007, thru Change 25.161
        MXG Version 25.06 was dated Jul  4, 2007, thru Change 25.134
        MXG Version 25.05 was dated Jun  7, 2007, thru Change 25.107
        MXG Version 25.04 was dated May  7, 2007, thru Change 25.086
Second  MXG Version 25.03 was dated Apr 12, 2007, thru Change 25.058
First   MXG Version 25.03 was dated Apr 10, 2007, thru Change 25.057
        MXG Version 25.02 was dated Mar 10, 2007, thru Change 25.033
        MXG Version 25.01 was dated Mar  5, 2007, thru Change 25.025
        MXG Version 24.24 was dated Feb  5, 2007, thru Change 24.306
        MXG Newsletter FORTY-NINE was dated Feb 5, 2007

MXG 25.25 is the 2008 "Annual Version", dated January 28, 2008.

Instructions for ftp download of MXG 25.25 were mailed to all licensees,
but you can always request ftp download instructions using the form at
  http://www.mxg.com/ship_current_version

Contents of member CHANGES:

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

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

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


I.  MXG Version 25.25, now re-dated Jan 28, 2008.

    Minor cosmetic corrections in MXG 25.25, re-dated Jan 28, 2008

  TYPEXAM  25.307  Extraneous PUT from testing removed.
  ASUM70PR 25.303  Extraneous PROC PRINT from testing was removed.

    Minor enhancements in MXG 25.25, re-dated Jan 28, 2008

  TYPERMFV 25.309  Support for RMF III CPD, Channel Path Data Table.
  TYPE102  25.306  IBM SMF 102 IFCID 22 APAR PK38803 wrong, supported.
  TYPE30   25.304  Support for APAR OA23679, BLKSIZE might be wrong.
  COMPINTV 25.302  Capture/Compare ALL CPU times in 30/70/72/100/101/110

    Major enhancements added in MXG 25.25, dated Jan 21, 2008

  ADOCs    25.296  All ADOCxxxx member's CONTENTS were updated.

    Major enhancements added in MXG 25.12, dated Jan 21, 2008

  TYPEDB2  25.265  DB2TCBTM Correction for DB2 V9.1, REQUIRED.
  TYPEDB2  25.291  DB2ACCT variable QWACUDCP CPU time added in DB2TCBTM.
  TYPE122  25.287  Support for SMF 122, Tivoli Tape Allocation Manager
  TYPEITRF 25.286  Support for ITRF DCR77/DCR78 additions.
  TYPENTSM 25.282  Support for new NTSMF Objects, Database Mirroring.
  TYPEMQLG 25.280  Support for MQ V6 System Admin Accounting Queue Log.
  TYPE85   25.279  Support for subtypes 38, 39 and 40 for ID=85 OAM.
  TYPEPSYC 25.277  Support for PSYNCH/390 SMF record.
  TYPE22   25.276  Support for APAR OA20043 Dynamic Volume Expansion
  TYPE102  25.306  Support for APAR PK38803 INCOMPAT SMF 102 IFCID 22.
  TYPE50   25.269  Support for OSA-MPC VTAM SMF 50 subtype 4 record.
  TYPETIMS 25.271  Revisions for TMON/IMS support
  ASUM70PR 25.270  INTERVAL=DURSET cannot be used.
  CONFIGV9 25.267  VALIDVARNAME=V7 added to SAS CONFIGs.
  ITRMTNG  25.262  233 DDU files to create ITRM definitions for TYPETNG.

    Major enhancements added in MXG 25.11 dated Dec  7, 2007.

  TYPE111  25.241  Support for CICS CTG 7.1.0 new SMF 111 record.
  TYPE110  25.240  Full Support for CICS/TS 3.2 Compressed Data
  EXITCICS 25.240  New "CICS" INFILE EXIT for CICS compressed SMF data.
  TYPE7072 25.224  CPUTYPE tests are replaced with ZARCHMDE tests.
                    This means that with MXG 25.11 or later, a new IBM
                    CPUTYPE will NOT require a new MXG Version.
  TYPETPMX 25.239  Support for Thruput Manager SLM and DB2 data.
  TYPE82   25.257  Support for ISCF HCR7750 TKE Logging update.
  TYPEEVTA 25.255  Support for Action Software's EventAction user SMF.
  TYPE85   25.234  New variables in OAM subtype 32-35 records.
  TYPE78   25.236  Zero obs in TYPE78IO with Change 24.171 if z/OS 1.7.
  TYPEEVTA 25.255  Support for Action Sofware's EventAction SMF record.
  TYPERMFV 25.246  Updates for CPU Segmentation changes.
  TYPENTSM 25.253  Support for new NTSMF objects for MSSQL.
  TYPETNG  25.221  Support for VM Ware VSX Systems in CA NSM records.
  TYPETNG  25.235  New Solaris, AIX, and many RedHat objects added.
  VMXGSUM  25.248  New &LNSUMOUT=8 will make all output to length 8.
  UTILEXCL 25.256  Macro variable &MXGDEBUG revised for IMACEXCL plus!
  EXITCICS 25.240  MCTSSCRL now tested vs MCTMNOPN for CICS Compressed.
  TYPE110  25.240  MCTSSCRL now tested vs MCTMNOPN for CICS Compressed.
  UPRINDOC 25.226  Utility prints NAME and LABEL of all variables.
  TYPE30   25.260  MXG 25.10, INTRVLTM missing for TYPETASK='OMVS'
  ANALACTP 25.254  Sample report summarizes DB2 Package data to UOW.
  CONFIGW2 25.252  MXG updates for testing MXG Execution under WPS.

    Major enhancements added in MXG 25.10.

  TYPE7072 25.205  Support for z/OS 1.9, up to 54 CPUs per MVS, INCOMPAT
  TYPERMFV 25.204  CFI Segmentation eliminates RMF III skipped CF data.
  ANALDB2R 25.202  VARIABLE QBnTDPIO NOT FOUND error corrected.
  TYPE70   25.212  ZIPACTTM, PCTZIPBY corrected for Dedicated zIIPs.
  ASUMCELP 25.209  Duplicate observations in PDB.ASUMCELP eliminated.
  TIMEBILD 25.209  Optional SYNC59 timeshifting using TIMETABL.

    Major enhancements added in MXG 25.09.

    IMPORTANT CHANGES:

    Almost none!  Only UTILEXCL in 25.08 had an error, but these other
                  fixes/enhancements are now ready for prime time:

  UTILEXCL 25.193  MXG 25.08 ONLY: LABEL IMACICU3 NOT FOUND.
  TYPERMFV 25.191  Support for RMF Monitor III CFI table enhancements.
  TYPESRDF 25.195  Support for EMC's SRDF/A user SMF record.
  READDB2  25.189  New PDBOUT=YES, old PDBOUT= changed, writes to WORK.
  ANALDB2R 25.189  New PDBOUT=YES, old PDBOUT= changed, writes to WORK.
  RMFINTRV 25.199  SMF70GIE now reset to 00/15 if SYNC59=YES is used.
  TYPE89   25.198  SMF89HOF,SMF89DTO were incorrect due to typo.
  UTILCSV  25.197  %UTILCSV creates a CSV (or TAB) Delimited flat file.
  UTILBLDP 25.196  Large &MACKEEP string caused strange results.
  TYPE92   25.192  New ID=92 ST=14 INPUT EXCEEDED if not a RENAME.

    Major enhancements added in MXG 25.08.

    IMPORTANT CHANGES:

  TYPETNG  25.181  Support for CA NSM RedHat 4.01 Linux perf cube.
  TYPE7072 25.176  Support for APAR OA18244, Blocked Workload z/OS 1.9.
  TYPE7072 25.163  Support for Capacity Groups variables in TYPE70.
  ASUM70PR 25.163  Capacity Group summarization, PDB.ASUM70GC/ASUM70GL.
  TYPEQACS 25.178  AS400 APAR QAPMDISK with LRECL=456 added new data.
  ADOCDB2  25.172  Example to process DB2 datasets to separate DDNAMES.
  TYPEDB2  25.169  _RDB2ACC DB2 Parallel event "analysis" example.
  Many     25.179  %UPCASE,%LOWCASE,%STR,%BQUOTE,%QUOTE, etc.
  Doc      25.179  Use %LET MACxxxx= %STR( text ) ; to pass text.


    Major enhancements added in MXG 25.07.

    CRITICAL CHANGE:

  TYPE78   25.141  APAR OA21799 for HiperPAV, ABEND, SMF78HIX invalid.
                   Installing HyperPAV can create invalid RMF 78-3's
                   that cause BUILDPDB to ABEND as it reads RMF 78's.
                   Change 25.141 will detect bad records and avoid the
                   ABEND, but you will need to install the IBM PTF for
                   the APAR to correct the invalid data values.

    IMPORTANT CHANGES/ENHANCEMENTS:

  Many     25.140  Prelim z/OS 1.9 (fails if 54-CPs, See Ch 25.205)
  TYPECIMS 25.139  Support for IMF Version 4.3 (INCOMPATIBLE).
  TYPE74   25.140  APAR OA17070 supports CF Level 15 measurements.
  TYPE89   25.138  Support for APAR OA20314 new SMF89LPN/SMF89ZNA.
  TYPE80A  25.137  Support for unknown TOKDANAMs, prevents ABEND.
  UTILLPDS 25.136  Utility to count used/defined PDS Directory Blocks.
  TYPE7072 25.135  LCPUCAP/LCPUCAPC Labels include "Hard CAP".
  TYPE42   25.153  MXG 25.06 only, false INVALID TYPE42 SUBTYPE 5 error.
  TYPEVMXA 25.151  180 Error _MPRCAPC not found, DEBUG prints removed.
  ASUM70PR 25.150  ASUM70PR created PCTCPUBY GT 100%, final fix?
  ASUM70PR 25.150  ASUM70PR now supports INTERVAL/CECINTRV=SHIFT.
  ADOCITRM 25.149  Doc. Maps ITRM dataset names to MXG name.
  ADOCDB2  25.148  Doc. How to create DB2ACCTB/DB2ACCTP in separate DDs.
  ANALRMFR 25.146  ERROR: NO DATASETS TO LOOKUP correction.
  TYPERMFV 25.145  RMF III dataset ZRBLCP missing obs for many LPARs.
  UPCMEMDZ 25.144  ASCII utility to determine memory available to MXG.
  TYPE71   25.143  SWAPrates were set missing if zero, now can be zero.
  VMXGINIT 25.143  New MXGMISS macro variable changes TYPE71 SWAPrates.

    Major enhancements added in MXG 25.06.

  TYPE30   25.116  MXG 25.05, negative EXECTM, INTRVLTM, GMTOFF30 wrong.
  TYPE110  25.041  Support for CICS/TS 3.2 (INCOMPATIBLE), Uncompressed.
  TYPEBTE  25.107  Support for CA Brightstor Tape Encryption SMF.
  TYPE80A  25.131  Support for CRL PUBLISH and SET UID RACFEVNT 52, 79.
  TYPEFERT 25.133  Support for Williams Data FERRET product user SMF.
  TYPECLAR 25.130  Support for Clarion Disk Array flat files.
  TYPE119  25.119  SMF 119 from z/OS 1.8 caused INVALID DATA messages.
  TYPESYNC 25.117  INVALID ARGUMENT due to incorrect HEX4/HEX3 formats.
  ASUMUOW  25.121  Enhanced to keep each CICS segment response time.
  ASUMHSM  25.113  HSM Summary enhanced with "HSM COMPLEX" HSMPLEX.
  IHDRIDMS 25.112  CA IDMS PerfMon support enhanced with "IHDR" exit.
  TYPENMON 25.110  Support for DISKBUSYn for all NMON Disk Monitoring.
  TYPERACF 25.134  Support for IRRDBU00 record types 0560,0561,0562.
  TYPE80A  25.131  Support for TOP SECRET (INCOMPAT) '90'x,'00'x VRSN.

    MXG Version 25.05, dated Jun  7, 2007.

    Major enhancements added in MXG 25.05.

  TYPEITRF 25.103  Support for IBM OMEGAMON TRF ITRF V550 and V560.
  TYPENMON 25.104  Full support for NMON, Nigel's Monitor for AIX/unix.
  TYPEDB2  25.090  Support for PK37354 SMF 101 Subtype 4 in DB2 9.
  TYPEDB2  25.097  Variable THREADTY blank if non-DDF transaction.
  TYPE30   25.089  GMTOFF30 calculation corrections and problems.
  CONFIGV9 25.101  MEMLEAVE=10M SORTBLOCKMODE now set in CONFIGV9
  UTILBLDP 25.098  %UTILBLDP(BUILDPDB=JES3 ... enhancement.

    Major enhancements added in MXG 25.04.

  TYPE21   25.083  Fix for support for APAR OA20077 Device Bytes TYPE21.
  TYPEXAM  25.082  Support for XAM Release 3.6, many new data.
  TYPENMON 25.073  Support for LPAR and IOADAPTR Nigel's NMON data.
  SYSLOG   25.070  Support for SYSLOG file enhanced, all records output.
  TYPENDM  25.081  Support for NDM-CD type 'NM' records creates NDMNM.
  DALYTAPE 25.072  Sample tape reports from STC VTS SMF + MXGTMNT.
  TYPERMFV 25.079  ZRBLCP dataset had only first LPARs observations.
  TYPEDB2  25.064  Several QISE variables were wrong.
  TYPEDB2  25.075  QBGL variables in DB2 V8.1 now spuported, were wrong.
  TYPETMS5 25.084  FILSEQ in TMS.DSNBRECD could be wrong, mult-vol-file.
  ANALDB2R 25.068  SQL Text QW0141TX was not printed, coding error.
  UTILBLDP 25.071  Products that need deaccumulation now protected.
  UTILBLDP 25.065  Default list of ASUMxxx to be included, MXGINCL=.
  VMXGRMFI 25.069  Service Class Names can be "wild-carded"
  VMXGUSE  25.067  Revised to invoke _STY70; UTILBLDP recommended.
  FORMATS  25.063  Additional SWAP reason codes added to $MG079SR.
  Doc      25.078  List of MXG-issued USER ABEND values & source member.


    Major enhancements added in MXG 25.03.

  CONFIGV8 25.037  SORTEQUALS should NOT have been in CONFIGV8, V9 only.
  TYPE119  25.035  Support for SMF 119 for z/OS 1.8 (INCOMPATIBLE).
  TYPE1415 25.047  Support for APAR OA19502, SMF14KET Key Exchange Time
  TYPE21   25.040  Support for APAR OA20077, uncompress read/write bytes
  TYPEAIXT 25.039  Support for AIX Tapas-C performance data files.
  TYPESAMS 25.055  Support for SAMS objects 2151,2226,2229 and 2231.
  TYPETDS  25.052  Support for TDSLink Version 630 ZCOST datasets.
  TYPECSM  25.050  Support for CrossSysplexManager user SMF record.
  TYPSCOCR 25.034  Support for CopyCross (now VTF Mainframe 2.1.0) SMF.
  VMXGDUR  25.044  Interval= QUARTER, SEMIANN, ANNUAL now supported.
  TYPEHSM  25.042  Process HSM with different SMF IDs/different SYSTEMs.
  ASUMTAPE 25.040  Uncompress read/write SMF21DBR/DBW kept in ASUMTAPE.
  ASUMUOW  25.054  QWACSPCP,QWACTRET added to PDB.ASUMUOW for OTE.
  ASUMCEC  25.053  PDB.ASUMCEC, PCTCPUBY GT 100%, DURATM LT CECINTRV.
  BLDSMPDB 25.048  Corrections to BLDSMPDB, new SORTEDBY= option.

    Major enhancements added in MXG 25.02.

    MXG 25.02 was created to protect sites who set the NOSORTEQUALS
    option (i.e., changed the SORTEQUALS default). NOSORTEQUALS causes
    invalid data in ASUM70PR-built datasets.

  CONFIGV9 25.028  OPTION NOSORTEQUALS caused errors in ASUM70PR.
  VMXG70PR 25.028  OPTION NOSORTEQUALS caused errors in ASUM70PR.

        Other New Support and corrections added in MXG 25.02:

  ASMTAPEE 25.033  Support for ASMTAPEE ML-40 assembly under z/OS 1.8.
  ANALRMFR 25.032  IRD corrections to RMF reports.
  TYPE42DS 25.030  TYPE42DS had carried-forward IOCOUNT and other vars.
  TYPE70   25.028  IORATEn per-engine I/Os corrected for IRD.
  VMXGPRAL 25.028  Print All utility now compares all datasets in LIBs.
  UCOMPSOE 25.028  Utility to compare SORTEQUALS and NOSORTEQUALS output
  ANALFIOE 25.026  Divide by zero message protected.

    Major enhancements added in MXG 25.01.

    The MXG 24.24 Annual Version is VERY solid, with only these three
    relatively minor corrections:

  TYPENTSM 25.015  INCOMPAT MXG CHANGE for NTSM WEEKly requires action.
  TYPE7072 25.013  PCTMVSBY in PDB.TYPE70PR was wrong if IRD was active.
  ASUM70PR 25.001  NRICFCPU,NRIFLCPU were wrong if you have more than 1.

        Other New Support and corrections added in MXG 25.01:

  TYPEIMS7 25.006  Support for IMS Version 10 (INCOMPATIBLE) IMS log.
  TYPEBVIR 25.011  Support for TS7700 SMF records.
  TYPE7    25.025  Support for APAR OA19453 for 4-byte LOSTRECS count.
  TYPE74   25.003  NREXPOSR was wrong for HyperPAV devices.
  IMACICMR 25.007  Optional CICS CMRDATA, CMDUDATA/CMDDBCCP reversed.
  IMACICOB 25.008  Optional CICS OMDBDB2LN now spelled as OMBDB2LN.
  IMACICOM 25.008  Optional CICS OMMLN now spelled as OMMQLN.


    Please read CHANGESS for the complete list of major enhancements.

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


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

    SAS Version requirement information:

      MXG 22.08 or later is REQUIRED for SAS V9.1.2 or V9.1.3; see
      "Major Enhancements in MXG 22.08" in CHANGES, above, for the major
      items, then search Newsletters for V9 for all of the minor items.

      MXG executes under SAS V8.2 and SAS V9.1.3, but MXG is no longer
      supported under SAS V6.  The "PDB" libraries written to by MXG
      must have been created by V8/V9 (i.e, if ENGINE=V6 is shown in the
      PROC CONTENTS output, you must convert that data library to the
      current ENGINE=BASE by PROC COPYing it under SAS V8 or V9.

       For SAS V9.1.3 on z/OS with Service Pack 4:
        There are no reported errors, and MXG's CONFIGV9 now specifies
        V9SEQ instead of V6SEQ.  As V6SEQ does not support long length
        character variables, it should not be used.

       SAS V9.1.3 with current Service Pack 4 is STRONGLY RECOMMENDED.

       For (back-level!) SAS V9.1 or V9.1.2 on z/OS:
        SN-013514 is REQUIRED to be able to read datasets that were
          created by V6SEQ (tape) engine.
        SN-012437 is REQUIRED to prevent creation of corrupt/unreadable
          datasets with tape engines V7SEQ, V8SEQ, or V9SEQ.
        Both fixes ARE included in SAS V9.1.3, but V9.1 or 9.1.2 is NOT
          SAFE without those two hot fixes, and if you do NOT have those
          two fixes on 9.1 or 9.1.2, you MUST set V6SEQ in CONFIGV9.

        With MXG 23.02 or later, V9SEQ is the default sequential engine
        specified in CONFIGV9, but if you are back at SAS V9.1 or V9.1.2
        you MUST install the two hot fixes listed above.

       For SAS Version 8.2, HotFix Bundle 82BX08 (or later) is required
         to be completely safe.  No earlier Version 8's were supported.

       Sequential Engine Status:
          V9SEQ is fixed in V9.1.3; it is now the default in CONFIGV9.
          V8SEQ was always safe under SAS V8.2, but it wasted CPU time
            by always compressing when writing in tape format.
          V6SEQ, if used under V9.1.2, requires SN-013514, but V6SEQ
                 should no longer be used, as it does not support long
                 length variables.

      MXG New-Version QA tests are executed on z/OS with SAS V9.1.3 and
      V8.2, and on Windows XP with SAS V9.1.3.  But previous QA tests
      have been run with all SAS releases on z/OS, SAS V8.2 and V9.1 on
      Linux RH8 on Intel, with V9.1 on Solaris v2.8 on Model V880, and
      V9.1 on HP-UX v11.11 model rp5470, confirming full compatibility.
      MXG should execute under SAS V9.1.3 or V8.2 on every possible SAS
      platform without errors! Each new MXG version is also tested with
      the SAS ITSV/ITRM product by the ITRM developers.

    Availability dates for the IBM products and MXG version required for
    the processing of that product's data records:

                                       Availability     MXG Version
      Product Name                     Date              Required

      MVS/ESA 4.1                      Oct 26, 1990         8.8
      MVS/ESA 4.2                      Mar 29, 1991         9.9
      MVS/ESA 4.2.2                    Aug 15, 1991         9.9
      MVS/ESA 4.3                      Mar 23, 1993        10.10
      MVS/ESA 5.1.0 - compatibility    Jun 24, 1994        12.02
      MVS/ESA 5.1.0 - Goal Mode        May  3, 1995        13.01
      MVS/ESA 5.2.0                    Jun 15, 1995        13.05
      MVS/ESA 5.2.2                    Oct 19, 1995        13.09
      OS/390  1.1.0                    Feb 22, 1996        14.01
      OS/390  1.2.0                    Sep 30, 1996        14.05
      OS/390  1.3.0 Compatibility Mode Mar 28, 1997        14.14
      OS/390  1.3.0 WLM Goal Mode      Mar 28, 1997        15.02
      OS/390  2.4.0                    Sep 28, 1997        15.06
      OS/390  2.5.0                    Feb 24, 1998        15.06
      OS/390  2.6.0                    Sep 24, 1998        16.04
      OS/390  2.7.0                    Mar 26, 1999        16.09
      OS/390  2.7.0 APAR OW41318       Mar 31, 2000        18.03
      OS/390  2.8.0                    Aug 24, 1999        16.09
      OS/390  2.8.0 FICON/SHARK        Aug 24, 1999        17.08
      OS/390  2.8.0 APAR OW41317       Mar 31, 2000        18.03
      OS/390  2.9.0                    Mar 31, 2000        18.03
      OS/390 2.10.0                    Sep 15, 2000        18.06
      OS/390  PAV                      Oct 24, 2000        18.09
      z/OS    1.1                      Mar 30, 2001        18.11
      z/OS    1.1 on 2064s             Mar 30, 2001        19.01
      z/OS    1.1 with correct MSU     Mar 30, 2001        19.02
      z/OS    1.2                      Oct 31, 2001        19.04
      z/OS    1.1,1.2 APARs to 78      Oct 31, 2001        19.05
      z/OS    1.2+ APAR OW52227        Apr 26, 2002        20.02
      z/OS    1.3+ APAR OW52227        Apr 26, 2002        20.02
      z/OS    1.2 JESNR Z2 MODE        Apr 26, 2002        20.03
      z/OS    1.3 JESNR Z2 MODE        Apr 26, 2002        20.03
      z/OS    1.4 Tolerate             Sep 27, 2002        20.03
      z/OS    1.4 Support              Sep 27, 2002        20.06
      z/OS    1.4 Over 16 CPUs/LPARs   May 29, 2003        21.02
      z/OS    1.4 DFSMS/rmm, RACF      Aug 29, 2003        21.04
      z/OS    1.5                      Mar 31, 2004        21.21
      z/OS    IRD ASUM70PR/ASUMCEC     Sep 22, 2003       *24.10
      z/OS    IRD TYPE70PR             Mar 11, 2004       *24.10
      z/OS    IRD TYPE70,RMFINTRV      Mar 22, 2002       *24.10
      z/OS    1.6 - No IFAs            Sep 30, 2004       *22.09
      z/OS    1.6 - With IFAs          Sep 30, 2004       *22.11
      z/OS    1.7 (COMPATIBLE CHANGES) Sep 30, 2005       *24.10
      z/OS    1.7 (SPLIT70 CORRECTION) Sep 30, 2005       *24.10
      z/OS    IFA data in RMF 79s      Sep 30, 2005        23.10
      z/OS    1.8 - ASMTAPEE assembly  Sep 30, 2005       *25.03
      z/OS    1.8 - SMF 119 INCOMPAT   Sep 30, 2005       *25.06
      z990 CPUs - CPUTYPE '2084'x      Aug 25, 2003        21.04
      z890 CPUs - CPUTYPE '2086'x      Jun 24, 2004        22.07
      z9   CPUs - CPUTYPE '2094'x      Jul 20, 2005       *24.24
      z9EC CPUs - CPUTYPE '2094'x:
             with 64-bit z/OS - no change required        *24.24
             with 32-bit z/OS only:    Aug 26, 2006        24.06
      z9BC CPUs - CPUTYPE '2096'x:
             with 64-bit z/OS - no change required         24.01
             with 32-bit z/OS only:    Jul 27, 2006       *24.24
      z/OS More than 32 LPARs          Jan 30, 2006       *24.24
      z/OS SPLIT RMF 70 records        Jan 30, 2006       *24.24
      z/OS Dupe SYSTEMs in a SYSPLEX   Jan 30, 2006       *24.02
      z/OS IRD errors corrected        May 15, 2006        24.03
      z/OS ASUMCEC errors corrected    May 15, 2006       *24.24
      z/OS ASUM70LP errors corrected   Jun 13, 2006       *24.24
      z/OS    zIIP Processor Support   Jun 22, 2006       *24.24
      z/OS    Dedicated zIIP Support   Oct  5, 2007        25.10
      z/OS    1.8 (COMPATIBLE CHANGES) Sep 20, 2006       *24.24
      z/OS    1.9 (INCOMPAT, 54 CPs)   Sep 27, 2007        25.10
      CICS/ESA 3.2                     Jun 28, 1991         9.9
      CICS/ESA 3.3                     Mar 28, 1992        10.01
      CICS/ESA 4.1                     Oct 27, 1994        13.09
      CICS/ESA 5.1 aka CICS/TS V1R1    Sep 10, 1996        14.07
      CICS-Transaction Server V1R1     Sep 10, 1996        14.07
      CICS-TS V1R1 with APAR UN98309   Sep 15, 1997        15.06
      CICS-TS V1R2  CICS/TS 1.2        Oct 27, 1997        15.06
      CICS-TS V1R3  CICS/TS 1.3        Mar 15, 1999        17.04
      CICS-TS for Z/OS Version 2.1     Mar 15, 2001        18.11
      CICS-TS for Z/OS Version 2.2     Jan 25, 2002        19.19
       CICSTRAN subtype 1 support only                    *19.19
       CICSTRAN subtype 2 completed                       *19.08
      CICS-TS for Z/OS Version 2.3     Dec 19, 2003
       Using UTILEXCL to create IMACEXCL:                  21.04
       Reading un-Excluded CICS with TYPE110, no IMACEXCL:*22.04
      CICS-TS for Z/OS Version 3.1     Mar 15, 2005
       Using UTILEXCL to create IMACEXCL:                  22.13
       Reading un-Excluded CICS with TYPE110, no IMACEXCL: 22.22
      CICS-TS for Z/OS Version 3.2     Jun 29, 2007        25.03
      CICS-TS/3.2 Compressed Records   Nov  3, 2007        25.11
      DB2 2.3.0                        Oct 28, 1991        10.01
      DB2 3.1.0                        Dec 17, 1993        13.02A
      DB2 4.1.0 Tolerate               Nov  7, 1995        13.07
      DB2 4.1.0 Full support           Sep 11, 1996        14.07
      DB2 5.1.0 Tolerate               Jun 27, 1997        14.14
      DB2 5.1.0 Full support           Jun 27, 1997        15.02
      DB2 6.1.0 initial support        Mar 15, 1999        16.09
      DB2 6.1.0 all buffer pools       Mar 15, 1999        18.01
      DB2 6.1.0 parallel DB2           Mar 15, 1999        19.19
      DB2 7.1.0 parallel DB2           Mar 31, 2001        19.19
      DB2 7.1.0 corrections            Mar 31, 2001        20.06
      DB2 8.1 Tolerate, no packages    Mar 31, 2004        20.20
      DB2 8.1 New Data Packages wrong  Mar 31, 2004        21.08
      DB2 8.1 Support with Packages    Mar 31, 2004        23.09*
      DB2 8.1 with all zIIP Variables  Sep 30, 2006        24.08
      DB2 9.1 See Change 25.265.       Dec  7, 2007        25.11
      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
      DFSORT SMF V1R5                  Mar  1, 2006        24.02
      MQM 1.1.2, 1.1.3, 1.1.4          Apr 25, 1996        14.02
      MQ Series 1.2.0                  May 26, 1998        16.02
      MQ Series 2.1.0                  Oct  2, 1999        17.07
      MQ Series 5.2                    Dec 16, 2000        18.10
      MQ Series 5.3                    Dec 16, 2002        21.05
      NETVIEW 3.1 type 37              ??? ??, 1996        14.03
      NPM 2.0                          Dec 17, 1993        12.03
      NPM 2.2                          Aug 29, 1994        12.05
      NPM 2.3                          ??? ??, 1996        15.08
      NPM 2.4                          Nov 18, 1998        17.01
      NPM 2.5                          Feb ??, 2000        18.02
      NPM 2.6                          Nov ??, 2001        19.06
      RMDS 2.1, 2.2                    Dec 12, 1995        12.12
      RMDS 2.3                         Jan 31, 2002        19.11
      TCP/IP 3.1                       Jun 12, 1995        12.12
      TCP/IP 3.4                       Sep 22, 1998        16.04
      WebSphere 5.0 APAR PQ7463        Aug 19, 2003        21.04
      WebSphere 6.0                    Feb 18, 2006        23.23
      DOS/VSE POWER V6.3.0             Dec 19, 1998        16.08
      VM/ESA  2.0                      Dec 23, 1992        10.04
      VM/ESA  2.1                      Jun 27, 1993        12.02
      VM/ESA  2.2                      Nov 22, 1994        12.06
      VM/ESA  2.3                      Jun  1, 1998        16.08
      VM/ESA  2.4                      Mar  1, 2001        19.03
      z/VM    3.1                      Mar  1, 2001        19.03
      z/VM    3.1 DATABYTE=0           May  2, 2002        20.02
      z/VM    4.2 ??                   May  2, 2002        20.02
      z/VM    4.4                      Jan 22, 2005        22.22
      z/VM    5.1                      Jan 22, 2005        22.22
      z/VM    5.2                      Jan 22, 2006        24.01
      z/VM    5.3                      Jan 22, 2007        25.04
      IMS log 4.1                      Jul  4, 1994        12.02
      IMS log 5.1                      Jun  9, 1996        14.05
      IMS log 6.1                      ???  ?, 199?        20.03
      IMS log 7.1                      ???  ?, 200?        20.03
      IMS log 8.1                      May 21, 2003        21.02
      IMS log 9.1                      Dec ??, 2004        22.08
      IMS log 10.0                     Feb 27, 2007        25.01
      AS400 3.7.0                      Nov  1, 1996        15.01
      AS400 4.1.0                      Dec 30, 1996        15.08
      AS400 4.2.0                      Apr 27, 1998        16.02
      AS400 4.4.0                      Sep 27, 1999        17.07
      AS400 4.5.0                      Jul 27, 2000        18.07
      AS400 5.2.0 - Most records       Jul 23, 2003        21.03
      AS400 5.2.0 - QAPMMIOP           Jul 23, 2003        22.04
      AS400 5.3.0                      Jan 22, 2005        22.22
      AS400 5.4.0                      Aug 26, 2006        24.06

    Note: Asterisk before the version number means the Version number
          was changed (to the MXG version required), after an earlier
          MXG version was listed as supporting this product release,
          usually because an APAR modified the product's data records.
          Or a coding error in MXG could be the reason for the change!

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

                                                        MXG Version
      Product Name                                       Required

      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
       NTSMF 2.4.4                     Aug  9, 2002        20.04
       NTSMF 2.4.5   INCOMPAT          Apr  1, 2003        21.02
       NTSMF 2.4.7                     Sep 30, 2004        22.08
      Landmark
       The Monitor for DB2 Version 2                       13.06
       The Monitor for DB2 Version 3.0                     16.02
       The Monitor for DB2 Version 3.1                     20.04
       The Monitor for DB2 Version 4.0                     22.10
       The Monitor for CICS/ESA 1.2 -                      12.12
       The Monitor for CICS/ESA 1.3 -                      15.01
       The Monitor for CICS/ESA 2.0 -                      15.06
       The Monitor for CICS TCE 2.1 -                      20.04
       The Monitor for CICS TCE 2.2 - 20.335, 21.134       21.04
       The Monitor for CICS TCE 2.3 including cics/ts 3.1  22.08
       The Monitor for MVS/ESA 1.3  -                      12.05
       The Monitor for MVS/ESA 1.5  -                      12.05
       The Monitor for MVS/ESA 2.0  -                      15.09
       The Monitor for MVS/ESA 3.0  -                      19.19
       The Monitor for CICS/TS V2.3 for CICS/TS 3.1        22.08

      Candle
       Omegamon for CICS V200 User SMF                     12.05
       Omegamon for CICS V300 User SMF                     13.06
       Omegamon for CICS V400 User SMF                     16.02
       Omegamon for CICS V400 type 110 segments            16.02
       Omegamon for CICS V500 User SMF                     18.01
       Omegamon for IMS V110 (ITRF)                        12.12
       Omegamon for IMS V300 (ITRF)                        14.04
       Omegamon for IMS V550/V560 (ITRF)                   25.05
       Omegamon for MVS V300                               13.05
       Omegamon for MVS V400                               13.06
       Omegamon for DB2 Version 2.1/2.2                    13.05
       Omegamon for VTAM V160                              12.04A
       Omegamon for VTAM V400                              15.15
       Omegamon for VTAM V500                              18.08
       Omegamon for SMS V100/V110                          12.03
      CA
       ACF2 6.2                                            16.04
       ASTEX 2.1                                           14.04
       NETSPY 4.7                                          14.03
       NETSPY 5.0                                          14.03
       NETSPY 5.2                                          16.05
       NETSPY 5.3                                          18.03
       NETSPY 6.0                                          20.10 20.305
       NETSPY 7.0                                          20.10 20.305
       SAR/VIEW R11                                        23.07 23.196
      BMC, was 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
       IMF 3.3 (for IMS 7.1 and 8.1)                       22.08*
       IMF 4.1 (for IMS 9.1)                               22.08
      Memorex/Telex
       LMS 3.1                                             12.12A
      Oracle V9, V10                                       24.06
      Amdahl
       APAF 4.1, 4.3                                       16.08
      Velocity Software
       XAMAP 3.4                                           22.10
       XAMAP 3406                                          24.03
       XAMAP 3.7                                           25.04

II.   Incompatibilities and Installation of MXG 25.11.


 1. Incompatibilities introduced in MXG 25.11:

  a- Changes in MXG architecture made between 25.11 and prior versions
     that can introduce known incompatibilities.

     NTSMF Weekly/Monthly processing will fail on BLKBERRY dataset due
     to new variable in the BY list.  See Change 25.015 for required
     actions you must take prior to running the Weekly/Monthly.  The
     incompatibility was introduced by Change 24.162 in MXG 24.06.

     Change 25.189 revised %READDB2/%ANALDB2R when PDBOUT=, is null.
     Now, ALL output datasets are written to //WORK, which was intended
     when PDBOUT=null, but that did not always happen.
       The error corrected was that a simple report with %ANALDB2R
       failed if there was no //PDB DD name, because MXG tried used the
       default DDnames, and did not force them to //WORK as desired.
       That correction created a new exposure if you actually did have
       a //PDB DD name, if you had changed DDNAME defaults with
          %LET PDB2ACC or MACRO _LDB2ACC or _WDB2ACC,
       and if you did not specify PDBOUT=PDB; Change 25.189 now caused
       zero observations in PDB.DB2ACCT.
     So if you want output datasets created by %READDB2/%ANALDB2R, you
     must specify
        PDBOUT=PDB (which works as documented, output all to //PDB), or
        PDBOUT=YES (which outputs to the (tailored) default DDNames, or
        PDBOUT=ZZZ (which outputs everything to ZZZ DDname).
     Change 25.284, in MXG 25.25, corrected the original Change 25.189.

 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 JCLINST9 for
    SAS Version 9.1.3 (JCLINST8 for SAS Version 8.2).

    MXG Definitions with regard to MXG Software Changes:

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

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

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

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

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


III.  Online Documentation of MXG Software.

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


IV.   Changes Log

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

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

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

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

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

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

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



Alphabetical list of important changes in MXG 25.06 after MXG 24.24:

  Dataset/
  Member   Change    Description
  Many     25.140  Support for z/OS 1.9 (COMPAT, minor SMF additions).
  Many     25.179  %UPCASE,%LOWCASE,%STR,%BQUOTE,%QUOTE, etc.
  ADOCDB2  25.172  Example to process DB2 datasets to separate DDNAMES.
  ADOCDB2  25.148  Doc. How to create DB2ACCTB/DB2ACCTP in separate DDs.
  ADOCITRM 25.149  Doc. Maps ITRM dataset names to MXG name.
  ANALACTP 25.254  Sample report summarizes DB2 Package data to UOW.
  ANALDB2R 25.202  VARIABLE QBnTDPIO NOT FOUND error corrected.
  ANALDB2R 25.189  New PDBOUT=YES, old PDBOUT= changed, writes to WORK.
  ANALDB2R 25.068  SQL Text QW0141TX was not printed, coding error.
  ANALFIOE 25.026  Divide by zero message protected.
  ANALRMFR 25.146  ERROR: NO DATASETS TO LOOKUP correction.
  ANALRMFR 25.032  IRD corrections to RMF reports.
  ASMTAPEE 25.033  Support for ASMTAPEE ML-40 assembly under z/OS 1.8.
  ASUM70PR 25.303  Extraneous PROC PRINT from testing was removed.
  ASUM70PR 25.270  INTERVAL=DURSET cannot be used.
  ASUM70PR 25.163  Capacity Group summarization, PDB.ASUM70GC/ASUM70GL.
  ASUM70PR 25.150  ASUM70PR created PCTCPUBY GT 100%, final fix?
  ASUM70PR 25.150  ASUM70PR now supports INTERVAL/CECINTRV=SHIFT.
  ASUM70PR 25.001  NRICFCPU,NRIFLCPU were wrong if there was more than 1
  ASUMCEC  25.053  PDB.ASUMCEC, PCTCPUBY GT 100%, DURATM LT CECINTRV.
  ASUMCELP 25.209  Duplicate observations in PDB.ASUMCELP eliminated.
  ASUMHSM  25.113  HSM Summary enhanced with "HSM COMPLEX" HSMPLEX.
  ASUMTAPE 25.300  Blank SYSTEM, missing DEVNR in PDB.ASUMTAPE fixed.
  ASUMTAPE 25.040  Uncompress read/write SMF21DBR/DBW kept in ASUMTAPE.
  ASUMUOW  25.121  Enhanced to keep each CICS segment response time.
  ASUMUOW  25.054  QWACSPCP,QWACTRET added to PDB.ASUMUOW for OTE.
  BLDSMPDB 25.048  Corrections to BLDSMPDB, new SORTEDBY= option.
  COMPINTV 25.302  Capture/Compare ALL CPU times in 30/70/72/100/101/110
  CONFIGV8 25.037  SORTEQUALS should NOT have been in CONFIGV8, V9 only.
  CONFIGV9 25.267  VALIDVARNAME=V7 added to SAS CONFIGs.
  CONFIGV9 25.101  MEMLEAVE=10M SORTBLOCKMODE now set in CONFIGV9
  CONFIGV9 25.028  OPTION NOSORTEQUALS caused errors in ASUM70PR.
  CONFIGW2 25.252  MXG updates for testing MXG Execution under WPS.
  DALYTAPE 25.072  Sample tape reports from STC VTS SMF + MXGTMNT.
  Doc      25.179  Use %LET MACxxxx= %STR( text ) ; to pass text.
  Doc      25.078  List of MXG-issued USER ABEND values & source member.
  EXITCICS 25.240  MCTSSCRL now tested vs MCTMNOPN for CICS Compressed.
  EXITCICS 25.017  SAS INFILE EXIT for compressed CICS SMF 110-1 data.
  FORMATS  25.063  Additional SWAP reason codes added to $MG079SR.
  IHDRIDMS 25.112  CA IDMS PerfMon support enhanced with "IHDR" exit.
  IMACICMR 25.007  CMRDATA, CMDUDATA/CMDDBCCP reversed.
  IMACICOB 25.238  OMEGAMON did NOT increase time-duration to 12 bytes.
  IMACICOB 25.008  OMDBDB2LN now spelled as OMBDB2LN.
  IMACICOM 25.008  OMMLN     now spelled as OMMQLN.
  ITRMTNG  25.262  233 DDU files to create ITRM definitions for TYPETNG.
  MXGWPSV2 25.252  Revised JCL Procedure for MXG Execution under WPS.
  READDB2  25.189  New PDBOUT=YES, old PDBOUT= changed, writes to WORK.
  RMFINTRV 25.199  SMF70GIE now reset to 00/15 if SYNC59=YES is used.
  RMFINTRV 25.177  ARRAY SUBSCRIPT OUT OF RANGE, 9999 LIMIT externalized
  SYSLOG   25.070  Major revisions to SYSLOG program, will be renamed.
  TIMEBILD 25.209  Optional SYNC59 timeshifting using TIMETABL.
  TYPE102  25.306  Support for APAR PK38803 INCOMPAT SMF 102 IFCID 22.
  TYPE102  25.306  IBM SMF 102 IFCID 22 APAR PK38803 wrong, supported.
  TYPE102  25.129  IFCID=224 updated with QW0224PN and QW0224CI.
  TYPE110  25.240  MCTSSCRL now tested vs MCTMNOPN for CICS Compressed.
  TYPE119  25.119  SMF 119 from z/OS 1.8 caused INVALID DATA messages.
  TYPE119  25.119  Support for SMF 119 for z/OS 1.8 (INCOMPATIBLE).
  TYPE120  25.247  SM120SNT=2 (two heap ids) caused INPUT EXCEEDED.
  TYPE122  25.287  Support for SMF 122, Tivoli Tape Allocation Manager
  TYPE1415 25.047  Support for APAR OA19502, SMF14KET Key Exchange Time
  TYPE21   25.083  Actual support for APAR OA20077 Device Bytes TYPE21.
  TYPE21   25.040  Support for APAR OA20077, uncompress read/write byte
  TYPE22   25.276  Support for APAR OA20043 Dynamic Volume Expansion
  TYPE30   25.304  Support for APAR OA23679, BLKSIZE might be wrong.
  TYPE30   25.260  MXG 25.10, INTRVLTM missing for TYPETASK='OMVS'
  TYPE30   25.116  MXG 25.05, negative EXECTM, INTRVLTM, GMTOFF30 wrong.
  TYPE30   25.089  GMTOFF30 calculation corrections and problems.
  TYPE42   25.153  MXG 25.06 only, false INVALID TYPE42 SUBTYPE 5 error.
  TYPE42DS 25.030  TYPE42DS had carried-forward IOCOUNT and other vars.
  TYPE50   25.269  Support for OSA-MPC VTAM SMF 50 subtype 4 record.
  TYPE70   25.212  ZIPACTTM, PCTZIPBY corrected for Dedicated zIIPs.
  TYPE70   25.028  IORATEn per-engine I/Os corrected for IRD.
  TYPE7072 25.237  LCPUWAIT was accidentally not kept in TYPE70.
  TYPE7072 25.227  Variable RPRTCLAS now kept in TYPE72DL dataset.
  TYPE7072 25.224  CPUTYPE tests are replaced with ZARCHMDE tests.
  TYPE7072 25.205  Support for z/OS 1.9 54 CP engines per MVS, INCOMPAT
  TYPE7072 25.176  Support for APAR OA18244, Blocked Workload z/OS 1.9.
  TYPE7072 25.163  Support for Capacity Groups variables in TYPE70.
  TYPE7072 25.135  LCPUCAP/LCPUCAPC Labels include "Hard CAP".
  TYPE7072 25.013  PCTMVSBY in PDB.TYPE70PR was wrong if IRD was active.
  TYPE70PR 25.051  NRIFACPU now populated for z990/2084 CPUTYPE.
  TYPE71   25.143  SWAPrates were set missing if zero, now can be zero.
  TYPE71   25.109  UIC variables changed meaning in z/OS 1.8.
  TYPE74   25.140  APAR OA17070 supports CF Level 15 measurements.
  TYPE74   25.140  Support for APAR OA17070 RMF 74-4 Coupling Facility
  TYPE74   25.108  R748CSER/CTYP/CDML now kept in TYPE748 dataset.
  TYPE74   25.003  NREXPOSR was wrong for HyperPAV devices.
  TYPE78   25.236  Zero obs in TYPE78IO with Change 24.171 if z/OS 1.7.
  TYPE78   25.141  APAR OA21799 prevents ABEND, SMF78HIX invalid.
  TYPE80A  25.137  Support for unknown TOKDANAMs, prevents ABEND.
  TYPE80A  25.131  Support for CRL PUBLISH and SET UID RACFEVNT 52, 79.
  TYPE80A  25.131  Support for TOP SECRET (INCOMPAT) '90'x,'00'x VRSN.
  TYPE80A  25.131  Support for TOP SECRET (INCOMPAT) '90'x,'00'x VRSN.
  TYPE80A  25.111  TYPE80xx variable TYPSTRNG wrong after Change 25.024.
  TYPE82   25.257  Support for ISCF HCR7750 TKE Logging update.
  TYPE85   25.279  Support for subtypes 38, 39 and 40 for ID=85 OAM.
  TYPE85   25.234  New variables in OAM subtype 32-35 records.
  TYPE89   25.198  SMF89HOF,SMF89DTO were incorrect due to typo.
  TYPE89   25.138  Support for APAR OA20314 new SMF89LPN/SMF89ZNA.
  TYPE92   25.192  New ID=92 ST=14 INPUT EXCEEDED if not a RENAME.
  TYPE99   25.012  SMF 99 with only Trace, INPUT STATEMENT EXCEEDED.
  TYPEAIXT 25.039  Support for AIX Tapas-C performance data files.
  TYPEBTE  25.107  Support for CA Brightstor Tape Encryption SMF.
  TYPEBVIR 25.011  Support for TS7700 SMF records.
  TYPECIMS 25.230  IMF 4.2 PTF BQI0129 caused INPUT EXCEEDED error.
  TYPECIMS 25.139  Support for IMF Version 4.3 (INCOMPATIBLE).
  TYPECLAR 25.130  Support for Clarion Disk Array flat files.
  TYPECSM  25.050  Support for CrossSysplexManager user SMF record.
  TYPEDB2  25.291  DB2ACCT variable QWACUDCP CPU time added in DB2TCBTM.
  TYPEDB2  25.265  DB2TCBTM Correction for DB2 V9.1, REQUIRED.
  TYPEDB2  25.169  _RDB2ACC DB2 Parallel event "analysis" example.
  TYPEDB2  25.097  Variable THREADTY blank if non-DDF transaction.
  TYPEDB2  25.090  Support for PK37354 SMF 101 Subtype 4 in DB2 9.
  TYPEDB2  25.064  Several QISE variables were wrong.
  TYPEDB2  25.020  DB2STATS, QWS3, QWS4 may have reversed contents.
  TYPEEVTA 25.255  Support for Action Software's EventAction user SMF.
  TYPEEVTA 25.255  Support for Action Sofware's EventAction SMF record.
  TYPEFERT 25.133  Support for Williams Data FERRET product user SMF.
  TYPEHSM  25.042  Process HSM with different SMF IDs/different SYSTEMs.
  TYPEIMS7 25.006  Support for IMS Version 10 (INCOMPATIBLE) IMS log.
  TYPEITRF 25.286  Support for ITRF DCR77/DCR78 additions.
  TYPEITRF 25.103  Support for IBM OMEGAMON TRF ITRF V550 and V560.
  TYPEMQLG 25.280  Support for MQ V6 System Admin Accounting Queue Log.
  TYPENDM  25.242  NDM record 'UC' is now output in NDMAE dataset.
  TYPENDM  25.081  NDM-CD type 'NM' records now decided into NDMNM.
  TYPENDM  25.014  No observations in NDMRT due to incomplete comment.
  TYPENMON 25.229  NMON for AIX CPUnn records vary in number.
  TYPENMON 25.110  Support for DISKBUSYn for all NMON Disk Monitoring.
  TYPENMON 25.104  Full support for NMON, Nigel's Monitor for AIX/unix.
  TYPENMON 25.073  Support for LPAR and IOADAPTR Nigel's NMON data.
  TYPENTSM 25.282  Support for new NTSMF Objects, Database Mirroring.
  TYPENTSM 25.253  Support for new NTSMF objects for MSSQL.
  TYPENTSM 25.015  INCOMPATIBLE MXG CHANGE for NTSM WEEK/MONTH BUILDs.
  TYPEORAC 25.127  No change in Oracle Version 10, but data is trash.
  TYPEPDSM 25.245  CA PDSMAN diagnostic trace records filled //WORK.
  TYPEPSYC 25.277  Support for PSYNCH/390 SMF record.
  TYPEQACS 25.178  AS400 APAR QAPMDISK with LRECL=456 added new data.
  TYPEQACS 25.132  Revisions to AS400 TYPECONF GDES variables.
  TYPERACF 25.244  IRRDBU00 Unload '0200' record has two lengths.
  TYPERACF 25.134  Support for IRRDBU00 record types 0560,0561,0562.
  TYPERMFV 25.309  Support for RMF III CPD, Channel Path Data Table.
  TYPERMFV 25.246  Updates for CPU Segmentation changes.
  TYPERMFV 25.225  Variable ENCCPUT corrected with zIIP time removed.
  TYPERMFV 25.204  CFI Segmentation eliminates RMF III skipped CF data.
  TYPERMFV 25.191  Support for RMF Monitor III CFI table enhancements.
  TYPERMFV 25.145  RMF III dataset ZRBLCP missing obs for many LPARs.
  TYPERMFV 25.079  ZRBLCP dataset had only first LPARs observations.
  TYPESAMS 25.055  Support for SAMS objects 2151,2226,2229 and 2231.
  TYPESRDF 25.195  Support for EMC's SRDF/A user SMF record.
  TYPESYNC 25.117  INVALID ARGUMENT due to incorrect HEX4/HEX3 formats.
  TYPETDS  25.052  Support for TDSLink Version 630 ZCOST datasets.
  TYPETIMS 25.271  Revisions for TMON/IMS support
  TYPETMS5 25.126  Circumvention skip new TMC 'FF20'x Vol Def record.
  TYPETMS5 25.084  FILSEQ in TMS.DSNBRECD could be wrong, mult-vol-file.
  TYPETNG  25.243  Automatic PROC DELETE of UNKNOWN dataset removed.
  TYPETNG  25.235  New Solaris, AIX, and many RedHat objects added.
  TYPETNG  25.221  Support for VM Ware VSX Systems in CA NSM records.
  TYPETNG  25.181  Support for CA NSM RedHat 4.01 Linux perf cube.
  TYPETNG  25.181  Support for CA Unicenter NSM is in MXG "TNG" product.
  TYPETPMX 25.239  Support for Thruput Manager SLM and DB2 data.
  TYPEVMXA 25.151  180 Error _MPRCAPC not found, DEBUG prints removed.
  TYPEVMXA 25.043  Reserved Change Number.
  TYPEXAM  25.307  Extraneous PUT from testing removed.
  TYPEXAM  25.115  Incorrect memory variables in XMUCDSYS in MXG code.
  TYPEXAM  25.082  Support for XAM Release 3.6, many new data.
  TYPSCOCR 25.034  Support for CopyCross (now VTF Mainframe 2.1.0) SMF.
  UCICSCNT 25.120  CICS record counting separates Resource segments.
  UCOMPSOE 25.028  Utility to compare SORTEQUALS and NOSORTEQUALS output
  UPCMEMDZ 25.144  ASCII utility to determine memory available to MXG.
  UPRINDOC 25.226  Utility prints NAME and LABEL of all variables.
  UTILBLDP 25.196  Large &MACKEEP string caused strange results.
  UTILBLDP 25.098  %UTILBLDP(BUILDPDB=JES3 ... enhancement.
  UTILBLDP 25.071  Products that need deaccumulation now protected.
  UTILBLDP 25.065  Default list of ASUMxxx to be included, MXGINCL=.
  UTILCSV  25.197  %UTILCSV creates a CSV (or TAB) Delimited flat file.
  UTILEXCL 25.256  Macro variable &MXGDEBUG revised for IMACEXCL plus!
  UTILEXCL 25.193  MXG 25.08 ONLY: LABEL IMACICU3 NOT FOUND.
  UTILLPDS 25.136  Utility to count used/defined PDS Directory Blocks.
  VMAC110  25.041  Reserved Change Number.
  VMACDB2  25.075  QBGL variables in DB2 V8.1 supported, were wrong.
  VMXG70PR 25.293  SMF70GIE is now set from STARTIME=DURATM after shifts
  VMXG70PR 25.028  OPTION NOSORTEQUALS caused errors in ASUM70PR.
  VMXGDUR  25.044  Interval= QUARTER, SEMIANN, ANNUAL now supported.
  VMXGINIT 25.231  Unresolved &ARRAYRMF is SAS V8.1 or WPS was used.
  VMXGINIT 25.143  New MXGMISS macro variable changes TYPE71 SWAPrates.
  VMXGPRAL 25.028  Print All utility now compares all datasets in LIBs.
  VMXGRMFI 25.069  Service Class Names can be "wild-carded"
  VMXGSUM  25.248  New &LNSUMOUT=8 will make all output to length 8.
  VMXGUSE  25.067  Revised to invoke _STY70; UTILBLDP recommended.

  See member CHANGESS for all changes ever made to MXG Software.


Inverse chronological list of all Changes:

NEXTCHANGE: Version 25.


====== Changes thru 25.309 were in MXG 25.25 dated Jan 28, 2008=========

Change 25.309  Support for RMF III CPD, Channel Path Data Table, creates
ASMRMFV        new ZRBCPD dataset.
CLRMFV
DOCRMFV        The RMFV documentation in DOCRMFV and the documentation
EXZRBCPD       in the CLRMFV CLIST (without any code changes in CLIST)
IMACRMFV       have been updated to match ASMRMFV's updated.
VMACRMFV
VMXGINIT
Jan 28, 2008
   Thanks to Jerry Urbaniak, Acxiom, USA.

Change 25.308  SAS V8.2-V9.1 %MACRO compiler accepts  %ELSE %THEN %DO;
ANALDB2R       syntax, but the documented syntax is only    %ELSE %DO;
VMACMVCI       The SAS Language compiler never accepted  ELSE THEN DO;
Jan 28, 2008   In early tests of SAS V9.2, its %MACRO compiler rejected
               the extra %THEN, so all three accidental, unintended MXG
                 %ELSE %THEN %DO statements have been corrected.
   Thanks to MP Welch, SPRINT, USA.

Change 25.307  Debugging PUT printed _N_= COL=nnnn PRCAPM for every one
VMACXAM        of those segments, but had no impact on output data.
Jan 25, 2008   Remove the PUT statment after WHERE ('PRCAPM').
   Thanks to Roger Foreman, TransUnion, USA.

Change 25.306  IBM SMF 102 IFCID 22 with PK38803 records are wrong, with
VMAC102        QWT02R2L=160 instead of 162, with only 16 bytes vs 18 for
Jan 23, 2008   QW0022CN, and with onlyh 8 vs 10 UNUSED at the end.  MXG
               Change 25.273 added code for the new fields, but was not
               tested as data records did not exist.  This change will
               read the bad records successfully, pending IBM response.

Change 25.305  Error in %UTILBLDP with USERADD=TMNT/nnn + BUILDPDB=YES.
UTILBLDP       Because TMNT processing is already in BUILDPDB, there was
Jan 23, 2008   special handling in the USERADD= logic, but in this case
Jan 27, 2008   it incorrectly didn't create the MACRO _IDTMNT nnn % that
               it should have, so, while all TMNT datasets were created,
               they all had zero observations, unless you had defined
               your TMNT Record ID _IDTMNT in IMACKEEP/IMACTMNT.
               The logic in UTILBLDP is corrected for all USERADDs,
               whether or not they are already in BUILDPDB:
               USERADD=TMNT/nnn, creates   MACRO _IDTMNT nnn %
                                which will override any IMAC tailoring.
               USERADD=TMNT,     does not create _IDTMNT, but ensures
                                 TMNT records are processed.
              -Jan 27: Added support for USERADD=100 101 alias for DB2.
              -In testing the UTILBLDP invocation in the new COMPINTV, I
               had %MACRO errors about non-numeric in a %EVAL, (whose
               clarity may be a separate SAS issue!), but which were the
               result of incorrect code ordering in my COMPINTV program.
               When %UTILBLDP has MACKEEPX= argument text with old-style
               macros that you want to redefine AND execute in this one
               step, then your   MACRO _MMMMMMM ...  %   statements must
               be located after the %UTILBLDP(); statement and before
               the %INCLUDE statement that executes the UTILBLDP output:
               statement that executes the UTILBLDP output:

                 %UTILBLDP(MACKEEPX=  MACRO _ETY70  _SETTIME  %, .... );
                 RUN:
                 MACRO _SETTIME  STARTIME=FLOOR(STARTIME/900);  %
                 RUN;
                 %INCLUDE INSTREAM;

               If the old style macros are defined before %UTILBLDP is
               executed, then they are expanded inside the macro
               language when the %MACRO UTILBLDP is being compiled,
               which can result in unexpected failures.  If you move the
               definition to after %UTILBLDP, only the name of the macro
               is passed to the UTILBLDP output which works as expected.
   Thanks to Jim Horne, Lowes', USA.

Change 25.304  APAR OA23679 documents possible errors in BLKSIZE in SMF
VMACEXC1       30 records when DDCONS=YES is specified.  Since MXG has
Jan 23, 2008   ALWAYS recommended DDCONS=NO and NEVER to use DDCONS=YES,
               this shouldn't have impact.  But when YES is specified,
               IBM now says the consolidated SMF 30 record contains the
               first non-zero BLKSIZE value from those DDs in SMF30BSZ,
               the original 4-byte blocksize field, but the newer 7-byte
               SMF30BXS blocksize field, contains the BLKSIZE value from
               the last DD in the consolidation, which could be valid or
               zero.  MXG stored SMF30BSZ into BLKSIZE, but then INPUT
               BLKSIZE from SMF30BXS when it existed, even when zero.
               Now, BLKSIZE is set to SMF30BXS ONLY when it is larger
               than SMF30BSZ.

Change 25.303 -Extraneous PROC PRINT from testing was removed.
VMXG70PR      -Calculation of LPARCPUS could be non-integer value, for
Jan 22, 2008   example, 11.99995682 instead of 12.  Algorithm refined.
Jan 28, 2008
   Thanks to Clayton Buck, UniGroup, USA.
   Thanks to William Wai Lun WONG, HSBC, HONG KONG.

====== Changes thru 25.302 were in MXG 25.25 dated Jan 21, 2008=========

Change 25.302  Compare all CPU variables from SMF 30,70,72,100,101,110s.
COMPINTV       Single pass of SMF creates only the needed datasets with
Jan 21, 2008   a "fast read" of SMF records keeping only the CPU and key
Jan 27, 2008   variables to minimize the run with a tailored %UTILBLDP
               and MACKEEPX overides to create two summary datasets:
                 PDB.INTVSRVC by SYSTEM STARTIME SRVCLASS          30+72
                 PDB.IN307072 by SYSTEM STARTIME                30+70+72
                 PDB.INALLCPU by SYSTEM STARTIME    30+70+72+100+101+110

               Fast read:  6 GB SMF data, 2 Minutes CPU, 10 Min Elapsed

               The type 30 SMF interval and type 72 RMF service class
               create the PDB.INTVSRVC with CPU times by service class.
               Those data and the CPUACVTM from TYPE70 are combined into
               the PDB.IN307072 SMF+RMF CPU time for each interval. Then
               the CICSTRAN and DB2ACCT transaction CPU times plus the
               interval CICDS dispatcher and DB2STATS statistics CPU
               times are added from the 100, 101, and 110 records to
               create the PDB.INALLCPU with ALL possible CPU variables,
               summed for each SYSTEM for each STARTIME.

               Several PROC MEANS summary output reports are printed.

               The SRVCLASS-level SMF30 and RMF72 summary CPU times
               should match closely for most service classes, but there
               can be significant differences in which "SRVCLASS" CPU
               time is recorded.  For example Enclave CPU time in SMF
               may be in the SRVCLASS of the address space that started
               the enclave, but in RMF that same enclave CPU time gets
               put in the SRVCLASS where that enclave was classified.
               And we've seen enclaves in two SRVCLASS in SMF30 while
               spread across three SRVCLASS in RMF72.  It can get messy!

               The STARTIME-level interval summary should match RMF and
               SMF totals, for the CPU fields that we expect to match,
               and will show how much of that CPU time is captured in
               the DB2 and CICS interval data as well, but its accuracy,
               and the accuracy of the SRVCLASS-level data is dependent
               on the synchronization of your SMF and RMF data.
                 The MACRO _SETTIME default expects 15 minute intervals
                 and SYNC(0), but can be tailored to your intervals.
                 You can get the totals of all CPU times for all of SMF
                 records in a single output observation per SYSTEM by
                 setting STARTIME to a single value for all records.
                   But the summary of the CICSTRAN and DB2ACCT times
                   can always be skewed by a long-running transaction,
                   or if SYNC59 is in the data (because not all CPU
                   records obey SYNC - RMF/SMF 30 does, CICS doesn't.
   Thanks to Chuck Hopf, Bank of America, USA.

Change 25.301  Due to typos that had DB where OB should have been, all
VMAC102        of the QW1145OB-QWF145OB variables were wrong (they had
Jan 21, 2008   the DB database value instead of the OB Object value).
   Thanks to Giuseppe Giacomodonato, E.P.V. Technologies, ITALY.

Change 25.300  PDB.ASUMTAPE could have blank SYSTEM and VOLSER, DEVNR
ASUMTAPE       missing when the SYSLOG Mount and Keep messages had the
Jan 21, 2008   same timestamp, and the Keep was seen first. Adding the
               variables SMFTIME SYSLTEXT forces the KEEP to be first
               to complete the prior event, but adding .001 seconds to
                 IF SYSLTMNT GT . THEN EVENTIME=SYSLTMNG+.001;
               was also needed to force the correct sequence.
   Thanks to Scott Barry, SBBWorks, Inc., USA.

Change 25.299  Type 42 Subtype 18 CF Cache Partition Summary Section for
EXTY42P3       Directory/Element Ratio Data now creates new dataset:
IMAC42            DDDDDD  DATASET  Description
VMAC42            TY42P3  TYPE42P3 RLS CF DIRECTORY/ELEMENT RATIO
VMXGINIT       which had been added in z/OS 1.8 but overlooked.
Jan 21, 2008
   Thanks to Bruce Widlund, Merrill Consultants, USA.

Change 25.298  ADOCxxxx members that existed have been updated with new
ADOCs          variables.  New ADOCS member lists the VMACxxxx products
Jan 20, 2008   for which an ADOC member does not exist.

Change 25.297  Change 25.196 caused ERROR: CHAR OPERAND IN THE %EVAL ...
UTILBLDP       when either or both MACFILE and MACKEEP were used and had
Jan 19, 2008   more than 65 characters of text.
   Thanks to Scott Barry, SBBWorks, Inc., USA.

Change 25.296  All ADOCxxxx members were updated with current CONTENTS.
ADOCs
Jan 19, 2008
   Thanks to Freddie Arie, Merrill Consultants, USA.

Change 25.295  The COMPALL program compiles all of the VMACs for all SMF
COMPALL        records in a single data step, and is back in MXG's QA
VMACIPAC       tests, now that it can be compiled!  It was used in early
VMACOMCI       MXG Versions, testing only the IBM SMF records, by about
VMACSAMS       Version 3 (1987!), it needed more virtual storage than I
Jan 19, 2008   could get back then, and it was set aside.  It now brings
               in all of the VMACs for all IBM and USER SMF records, and
               it detected numeric-character variable conflicts in one
               temp variable that was renamed in VMACIPAC, and two kept
               variables were renamed to avoid the exposure to error,
               if you were to add these and certain other SMF records to
               your BUILDPDB job:
                 -VMACSAMS.  Variable CLUSTR replaces numeric CLUSTER.
                 -VMACOMCI.  Variable DIFTYPEF replaces char DIFTYPE.
               The current COMPALL requires an 1150 MB Region on z/OS.

====== Changes thru 25.294 were in MXG 25.12 dated Jan 17, 2008=========

Change 25.294  Label PARTNCPU='TOTAL*NUMBER OF*CPUS*IN THE CEC' replaces
VMAC7072       the previous confusing "CPUS IN THE PARTITION" text that
VMXG70PR       goes back to the days when we "physically partitioned" a
Jan 17, 2008   "hardware platform". The variables PARTNCPU PLATCPUS,
               NUCPSCPU and temp variable NRCPSCPU have always counted
               the CP/CPU engines in this CEC/CPC/platform/box/etc.

               If there are no LPARNAME='PHYSICAL' records in TYPE70PR
               (because your outsourcer turned them off?), the variables
               PARTNCPU, PLATCPUS, NUCPSCPU and CPCNRCPU will be zero.
               And the specialty engine counters NRIFACPU, NRZIPCPU, etc
               will also always be zero.  And, in the ASUM70PR/ASUMCEC
               datasets, only your own LPARn variables are populated.
               Finally (?), CPCMSU in PDB.RMFINTRV is also zero.
   Thanks to Matthew Chappell, Queensland Transport, AUSTRALIA.

Change 25.293  SMF70GIE is now set from STARTIME+DURATM after SYNC59 to
VMXG70PR       provide a more stable and consistent value for the
Jan 17, 2008   expected end of the interval.  See Change 25.270.

Change 25.292  Internal logic was revised so when INTERVAL= is used, the
ANALRMFR       variables LRDY00-LRDY11 are added to the MEAN= parm for
Jan 17, 2008   Cpu Reports.
               Dollarsigns were needed in the below array definitions.
              -ARRAY INICT05 $ STFBIT05(' ') ;
              -ARRAY INICT05 $ STFBIT06(' ') ;
              -Also, updated for 54 engines z/OS 1.9.
   Thanks to Clay Duncan, Toyota, USA.
   Thanks to Jerry Cobb, American Century, USA.

Change 25.291  DB2ACCT variable QWACUDCP, CPU time in DB2 User Functions
VMACDB2        is now included in MXG variable DB2TCBTM, as documented
Jan 17, 2008   in DB2 Technical Note 4 (PAR.TASKS) in Newsletter FIFTY.

Change 25.290  Variable JOBCLASS is $8 in JES3 and $1 in JES2, but MXG
BUIL3005       had INPUTs with both lengths, and that caused SAS WARNING
VMAC26J2       messages that the variable's length was CHANGED; these
VMAC26J3       warnings will set Return Code 4 in SAS Version 9.2, so
VMAC30         this change revised how MXG handles JOBCLASS for JES3
Jan 17, 2008   to keep the full 8-byte length.  The contents of the
Jan 20, 2008   SPIN library are also changed; JOBCLASS is no longer kept
               in SPIN26, and JOBCLAS8 is kept instead of JOBCLASS in
               SPIN30_1, SPIN30_4, and SPIN30_5.
                   Note: This change was revised in MXG 25.25.
                         Do NOT use MXG 25.12 with JES3 BUILDPD3.
   Thanks to MP Welch, SPRINT, USA.
   Thanks to Scott Barry, SBBWorks, Inc., USA.

Change 25.289 -Nigel's Monitor for AIX/LINUX variable NRCPUS in NMONINTV
VMACNMON       dataset was one-tenth correct; the INFORMAT 6.1 should be
Jan 17, 2008   6.0.  The AAACPU2 count was correct in NMONAAA dataset.
              -Support for ERROR: records, sort of: they are printed on
               the log in full when read.
   Thanks to Michael W. Wolke, Boeing, USA.
   Thanks to Steve Olmstead, Northwestern Mutual Trust, USA.

Change 25.288  Variable SMF70GJT is already on Local zone, so the adding
VMAC7072       of the GMT offset in MXG created incorrect datetimes.
Jan 16, 2008   Jan 26: a second instance was removed.
Jan 26, 2008
   Thanks to Al Sherkow, I/S Management Strategies, USA.

Change 25.287  Support for SMF 122, Tivioli Allocation Record creates
EXT122IT       six new datasets:
EXT122AL          DDDDDD  DATASET   DESCRIPTION              SUBTYPE
EXT122WA
EXT122FA          T122IT  T122INIT  ATAM ASID INIT/TERM          0,4
EXT122DY          T122AL  T122ALOC  ATAM SUCCESSFUL ALLOCATE       1
EXT122ON          T122WA  T122WAIT  ATAM WAIT/NOHOLD/ALOCFAIL  2,3,5
IMAC122           T122FA  T122FAIL  ATAM VARY ONLINE FAILURE       6
TYPE122           T122DY  T122DYNA  ATAM UNSUPPORTED DYNALLOC      7
TYPS122           T122ON  T122VONL  ATAM VARY ONLINE TO WAIT       8
VMXGINIT
Jan 16, 2008

Change 25.286  Support for new ITRF variables in subtype '10'x and '18'x
EXITRCRG       records and new subtype '20'x created by ITRF DCR77/DCR78
EXITRCRG       (PTFs UA36089,UA37073).  New variables added:
IMACITRF         Dataset  New Variables
VMACITRF         ITRFMSG
VMXGINIT                  RECTOK  ='FULL*RECOVERY*TOKEN'
Jan 16, 2008              IMSID   ='IMS*ID'
                          COMN    ='COMMITS*DURING*THIS*SCHEDULE'
                          OASN    ='ORIGIN*APPLICATION*SEQUENCE*NUMBER'
                          SUSEC   ='SERVICE*UNITS*PER*SECOND'
                 ITRFDB2
                          CPUDB2TM='IN DB2*CPU*TIME'
               New dataset ITRFCRGN, 'CONTROL REGION CPU TIME', which is
               created once each 24 hours with the daily total CPU Time
               in the IMS Control Region:
                 Dataset  New Variables
                 ITRFCRGN
                          CPUCRGTM='CONTROL*REGION*DAILY*CPU TIME'
                          IMSNAME ='IMSID*FOR THE*IMS SYSTEM'
                          INTBTIME='INTERVAL*START*DATETIME'
                          INTENDTM='INTERVAL*END*TIME'
               The IMSNAME is retained from the prior ITRF record, as
               the '20'x record contains only the time fields.

Change 25.285  The VALIDVARNAME=V7 option added by Change 25.267 to WPS
CONFIGW2       CONFIGW2 file caused ERROR: OPTION VALIDVARNAME NOT KNOWN
Jan 15, 2008   so it has been removed from CONFIGW2 member.  That option
               is the internal WPS default, but the option name is not
               supported by WPS.

Change 25.284  Change 25.189 was not completely implemented.
ANALDB2R      -Using %ANALDB2R with new PDBOUT=YES printed COPIED TO YES
READDB2        and did not perform as documented; an additional test for
VFMT102        AND &PDBOUT NE YES was required to support the new YES.
Jan 16, 2008     But then using PDBOUT=YES caused messages:
                   ERROR: Libname PDB is not assigned.
                   ERROR: Libname   _VDB2A is not assigned.
                 when no //PDB DD or LIBNAME PDB was allocated.
                 That is an error.  When PDBOUT=YES is specified, it
                 writes all DB2 output datasets to their default (or the
                 tailored) DDname, and PDB is the default for sorted DB2
                 datasets.
                -But then using no PDBOUT operand, which should write
                 all DB2 output to //WORK, still caused
                   ERROR: Libname PDB is not assigned.
                 because READDB2 had an old segment of code that should
                 have been removed by Change 25.189, now corrected, so
                 that PDBOUT= null does NOW write only to //WORK.
              -Warnings about T102S017 DOES NOT EXIST are removed with
               enhancements made in VFMT102.
   Thanks to Mike Rounceville, Blue Cross Blue Shield of NC, USA.
   Thanks to Robert Carballo, Office Depot, USA.

Change 25.283  An extraneous ); was inserted in %UTILBLDP output (on a
UTILBLDP       separate line several lines after %LET EPDBOUT= text) if
Jan 15, 2008   both EXPDBOUT= and INCLAFTR= were specified.
   Thanks to Robert Carballo, Office Depot, USA.

Change 25.282  Support for seven new NTSMF Objects:
EXNTCICP          DDDDDD     DATASET   DESCRIPTION
EXNTCILI          NTCICP     CITRIXCP  CITRIX CPU UTILIZATION MGMT USER
EXNTHSMG          NTCILI     CITRIXLI  CITRIX LICENSING
EXNTHSRV          NTHSMG     HEALMGMT  HEALTH SERVICE MANAGEMENT GROUPS
EXNTOPSM          NTHSRV     HEALSERV  HEALTH SERVICE
EXNTSECT          NTOPSM     OPSMGRCN  OPSMGR CONNECTOR
EXNTSQDM          NTSECT     SECTIKAU  SECURE TICKET AUTHORITY
IMACNTSM          NTSQDM     SQLDATMI  SQLSERVER:DATABASE MIRRORING
VMACNTSM                           or  MSSQL:DATABASE MIRRORING
VMXGINIT       The SQLSERVER and MSSQL Database Mirroring records are
Jan 15, 2008   both output in SQLDATMI dataset.  The MSSQL records will
               populate variable SQLDBNAM='SQL*SERVER*DATABASE*NAME'
               while SQLDBNAM will be blank in the SQLSERVER records.
   Thanks to Roger Zimmerman, Hewitt Associates, USA.

Change 25.281  Cosmetic. If RMFINTRV definitions fall thru to create any
VMXGRMFI       work in "OTHER", a new MXG NOTE alerts you to the SYSTEM
Jan 15, 2008   and SRVCLASS that fell thru your workload definitions.
Jan 28, 2008   This is not an error, but it is recommended that all of
               your work be mapped to a unique workload variable in the
               RMFINTRV dataset.  The first ten workload names that fell
               thru are printed on the SAS log.
              -Cosmetic. Some ERROR:NEGATIVE CPU OVERHEAD for RMF 70-72s
               were in intervals in which a Policy Activation occurred,
               and data for those intervals are always wise to ignore.
               There is no flag bit that activation occurred during this
               interval, but the time of policy activation, R723MTPA, is
               now printed along with STARTIME and DURATM of the raw RMF
               record, so you can see if there was a policy activation
               to blame.  Variable CPUOVHTM in PDB.RMFINTRV will be
               negative, non-missing value. to identify the intervals
               that printed that log message.
               This message may also be seen in intervals in which the
               number of hardware CPUs was altered.
   Thanks to Chuck Hopf, Bank of America, USA.
   Thanks to Harald Seifert, HUK-COBURG, GERMANY.

Change 25.280  Support for Websphere MQ V6 System Admin Account Queue
EXMQLGMD       MQMD Structure in MQ Accounting Log non-SMF file creates
IMACMQLG       the new MQLGMQMD Dataset with the Descriptor fields for
TYPEMQLG       each event. This structure is documented on page 51 in
TYPSMQLG       Chapter 7.
VMACMQLG
VMXGINIT
Jan 11, 2008

Change 25.279  SMF 85 subtypes 38, 39, and 40 now create three datasets
EXTY85RE       TYPE85RE, TYPE85IB, and TYPE85TR.  Archaic test records
EXTY85IB       from year 2000 with shorter records were protected.
EXTY85TR
VMAC85
VMXGINIT
Jan 10, 2008
   Thanks to Harald Seifert, HUK-COBURG, GERMANY.

Change 25.278  PDB.TYPE70 variables PCTZIBYx were created in MXG 24.02
VMAC7072       but were accidentally6 not kept after MXG 24.06; they are
Jan 10, 2008   now reinstated.  PCTZIBYx/PCTIFBYx are the "MVS" values,
               variables PCTCIBYx/IFATYPE are "LPAR" values for zIIP and
               zAAP usage as noted in Change 24.184.
   Thanks to Harald Seifert, HUK-COBURG, GERMANY.

Change 25.277  Support for PSYNCH/390 SMF Record from M-Tech product
EXPSYC39       creates PSYNC390 dataset.
FORMATS
IMACPSYC
TYPEPSYC
TYPSPSYC
VMACPSYC
VMXGINIT
Jan 10, 2008
   Thanks to Joe Faska, Depository Trust Corporation, USA.

Change 25.276  Support for APAR OA20043 DFSMS DYNAMIC VOLUME EXPANSION
VMAC22         adds these two variables:
Jan  9, 2008     SMF22CYL='DEVICE*HIGH*CYLINDER'
                 SMF22PCP='DEVICE*HIGH*CYLINDER*PREVIOUS'
               to the TYPE22_A dataset.

Change 25.275 -Strange error messages can occur if you did not update
VMACTPMX       your IMACTPMX member with your SYSPLEX and SYSTEM names
Jan  4, 2008   and mapping tables; messages like these:
Jan  9, 2008   >>ERROR>> MXG/SAS VARIABLE TPMXPLEX NOT ASSIGNED
                         CORRECTLY USING LOCAL PROC FORMAT $MXTPMPX IN
               >>ERROR>> EXIT MEMBER MXG.PROD.USERID.SOURCLIB(IMACTPMX).
               >>ERROR>> RUN ABORTED.  CORRECT THE FORMAT AND RESTART.
               resulted when data from SYSTEMs not in IMACTPMX was read.
               Adding an entry for each SYSPLEX and for its SYSTEMs in
               IMACTPMX solved those errors.
              -Variable JXJBSJ4 was incorrectly input as $EBCDIC, but it
               is a hex flag field, now input and formatted $HEX8.
               Jan 9: A debugging PUT was removed, VGETJESN %INCLUDEd to
                      create variable JESNR from JCTJOBID for subtype=5.
                      The current level: TM V6R1.2 at PTF TMT6116; the
                      fix for the truncated records is APAR TR61390, but
                      you are at PTF TMT6118, the APAR is TR61391.
   Thanks to James D. Lieser, UHC, USA.
   Thanks to Scott Barry, SBBWorks, Inc., USA.

Change 25.274  A GDG member that had DSNAME .VnnnnGOO' (alpha oh) caused
VMAC6156       INVALID DATA warning message when MXG INPUT the oh's as a
Jan  2, 2008   numeric.  Adding the double question mark modifier to the
               INPUT function eliminates the warning and causes GENNO to
               be a missing value:
                 IF ENTTYPID='H' THEN DO; /*GDG, GET GOOVO GEN/VER NUM*/
                   GDGLEN=LENGTH(ENTRNAME);
                   VCK   =SUBSTR(ENTRNAME,GDGLEN-2,1);
                   DOTGCK=SUBSTR(ENTRNAME,GDGLEN-8,2);
                   IF DOTGCK='.G' AND VCK='V' THEN DO;
                     GENNO=INPUT(SUBSTR(ENTRNAME,GDGLEN-6,4),?? 4.);
                     VERNO=INPUT(SUBSTR(ENTRNAME,GDGLEN-1,2),?? 2.);
                   END;
                 END;
               Scott had provided this elegant alternative that uses the
               TRANSLATE and SCAN functions, worthy of sharing:
                 IF ENTTYPID='H' THEN DO; /*GDG, GET GOOVO GEN/VER NUM*/
                   LASTNODE = SCAN(ENTRNAME,-1,'.');
                   IF TRANSLATE(LASTNODE,'%%%%%%%%%%','0123456789') =
                     'G%%%%V%%' THEN DO;
                     GENNO=INPUT(SUBSTR(LASTNODE,2,4),4.);
                     VERNO=INPUT(SUBSTR(LASTNODE,7,2),2.);
                   END;
                 END;
   Thanks to Scott Barry, SBBWorks, Inc., USA.

Change 25.273  APAR PK38803 incompatibly alters SMF 102 IFCID 22 Record.
VMAC102       -These variables were INPUT as fixed length text, but they
Jan  2, 2008   can be longer, and can be relocated in the SMF record.
               MXG now detects the new OFFSETs and INPUTs $VARYING32:

                 Variable  Fixed Length         Label
                 QW0022CN   $EBCDIC18.    /*TABLE*CORRELATION*NAME*/
                 QW0022CR    $EBCDIC8.    /*TABLE*CREATOR*/
                 QW0022TN   $EBCDIC18.    /*TABLE*NAME*/
                 QW0022AC    $EBCDIC8.    /*QW0022XC:ACC INDEX CREATOR*/
                 QW0022AN   $EBCDIC18.    /*qw0022XN:INDEX NAME*/
                   (Note: 22AC and 22AN were original DSECT names)

               Debugging is enabled for the first 10 instances that have
               varying length fields on the MXG log, so I can validate.
              -Records with QW0022PL=. have many missing values, and the
               $CHAR vars formatted with $HEX have '20'x vice '00'x. The
               obs was created from a second record, after a legitimate
               instance with 6 observations, and has only R1O segment.
              -_S102022 SORT MACRO revised and tested for dupe removal.
              Jan 23, 2008:  Change 25.306 is now required for PK38803.
   Thanks to Scott Barry, SBBWorks, Inc., USA.

Change 25.272  The Group Capacity Name SMF70GNM is now populated only if
VMAC7072       bit 1 of SMF70PFL is ONE, as that bit indicates this LPAR
Dec 21, 2007   is part of a capacity group of that name.  If bit 1 is
               zero, SMF70GNM is blanked, because some z/OS 1.8 data had
               non-blank SMF70GNM when bit 1 was zero.  While I could
               have created a separate variable for bit 1 to identify
               this LPAR is in a capacity group, with this change there
               is no need for a second variable; now, IF SMF70GNM GT ' '
               then this LPAR is in that Capacity Group, otherwise not.
   Thanks to Al Sherkow, I/S Management Strategies, USA.

Change 25.271  Corrections for TMON/IMS support.
VMACTIMS      -CM5612TM is a datetime variable, now format DATETIME21.2.
Dec 21, 2007  -CMCOMP, CPCOMP are formatted HEX8.
              -XXTOKN Token variables are LENGTH 5 and HEX8 format.
              -CMGMTA value's second division by 4096 was removed.
              -ENDTIME is already on Local time, its GMT correction was
               removed.
              -These variables were incorrectly input as &PIB.8.6 vice
               &PD.8.6, causing too-large values when non-zero:
                 TIMSCH: CMTMEIO CMTMEPL CMMINT CMMPOL CMMSCH
                 TIMSCM: CMTMEIO CMTMEPL CMMINT CMMPOL CMMSCH
                 TIMSCN: CNTMEIO CNTMEPL CNMINT CNMPOL CNMSCH
                 TIMSCP: CPTMEIO CPTMEPL CPMINT CPMPOL CPMSCH
                 TIMSCT: CTTMEIO CTTMEPL CTMINT CTMPOL CTMSCH
               These fields were correctly documented as Packed in the
               DSECT, but overlooked originally as they all were zero.
              -Variables input &PIB.8.6 that are NOT GMT offsets are NOT
               then divided by 4096: e.g., CTRSPTME when CTSDATE and
               CTSPDATE are both non-missing matches their delta.
                 However, when CTSDATE is missing, CTRSPTME contains
                 the value of CTSPDATE shifted right by three nybbles,
                 i.e. a very large and very invalid data.
                 This problem will be passed to Landmark for correction,
                 but is circumvented by MXG setting CTRSPTME to missing.
              -Five CPU variables are documented on the DSECT as (MILS)
               for milliseconds and have always been input as &PIB.4.3:
                 CHCUMCPU CMCUMCPU CNCUMCPU CPCUMCPU CTCUMCPU
              -But eleven REGION*CPU*TIME variables have no clue as to
               their decimal place location:
                 CHCTCPUT CHDBCPUT CHDLCPUT CHIRCPUT CHCQCPUT
                 CJTXNCPU
                 CNCTCPUT CNDBCPUT CNDLCPUT CNIRCPUT CNCQCPUT
               I have arbitrarily input them as &PIB.4.3 (MIL) but this
               must be validated.
              -These variables are assumed input of &PIB.4.6 to be like
               their xxDUR counterparts, but this must be validated:
                 CMSQ6GM CMACCQ6 CNSQ6TM CNACCQ6 CPSQ6GM CPACCQ6
                 CUSQ6GM CUACCQ6
   Thanks to Warren Waid, JC Penny, USA.

Change 25.270  For ASUM70PR, IMACRMFI tailoring with INTERVAL=DURSET
ASUM70PR       can NOT be used, and output datasets created with that
VMXG70PR       tailoring will be invalid if STARTIME is changed in your
Dec 19, 2007   IMACRMFI member and you used the default ASUM70PR, which
               specified INTERVAL=DURSET as its default prior to this
               change.  You must use INTERVAL=HOUR, QTRHOUR, etc. in
               in your %VMXG70PR invocation in your ASUM70PR member to
               specify the desired interval.

               For RMFINTRV, you can still use IMACRMFI/DURSET, because
               it is a per-SYSTEM dataset, but I still recommend you use
               INTERVAL=xxxx and not use IMACRMFI, for clarity.

               Here's the problem with DURSET/IMACRMFI for ASUM70PR:
                 Because ASUM70PR summarization combines SYSTEMs that
                 can have different STARTIME, it uses and resets the
                 value in SMF70GIE.  When I detect INTERVAL=DURSET, I
                 have to detect if STARTIME was changed in IMACRMFI, and
                 if so, then MXGDURTM (that you added in your IMACRMFI
                 per Change 25.150) must be added to STARTIME to create
                 SMF70GIE.  I though I could use this code:
                     OLDSTART=STARTIME;
                     _DURSET;
                     IF STARTIME NE OLDSTART THEN DO;
                 and that worked with the first test case.

                 However, I now discover that the test will always fail
                 if STARTIME is already exactly on the interval, i.e.
                 STARTIME=DHMS(DATE,HOUR,0,0); for HOURly intervals will
                 equal OLDSTART when OLDSTART is exactly on the hour.
                 Since I can only detect some, but not all, changed obs,
                 I cannot support IMACRMFI and DURSET in ASUM70PR.

                 This is a rare problem; using INTERVAL=value in the
                 ASUM70PR invocations of %VMXG70PR and RMFINTRV invokes
                 of %VMXGRMFI is self-documenting and works safely,
                 so this change is mostly this change text and updates
                 to the INTERVAL= documentation comments in the cited
                 members.

Change 25.269  Support for SMF 50 subtype 4 OSA-MPC VTAM record adds new
EXTY50         observations with ATTCHTYP=4 to TYPE50 dataset, but only
FORMATS        if this DEV had activity during this interval; the logic
VMAC50         that deletes zero-activity intervals is in the EXTY50
Dec 22, 2007   if you should want to output all of those observations.
   Thanks to Karl Lasecki, Chemical Abstracts Service, USA.

====== Changes thru 25.268 were in MXG 25.11 dated Dec  7, 2007=========

Change 25.268  The date in MXG 25.11 was typo'ed as year 2006 in several
AAAAAAAA       members, but the member CHANGES was correct with 2007.
COPYRITE       The dates were corrected and the ftp site was refreshed
Dec  7, 2007   on Tuesday with the Dec  7, 2007 date.
   Thanks to Mike Ryan, Acxiom, USA.

Change 25.267  If the option VALIDVARNAME=V6 is set in your site's SAS
AUTOEXEC       options, a temporary variable in VMAC78 caused
AUTOEXEU        ERROR: The variable named N78HCNTCN contains more than
AUTOEXEW               8 characters
CONFIGV8       because the V6 value restricts the length of variable's
CONFIGV9       names to be 8 bytes or less.
VMAC78         MXG tests with the default VALIDVARNAME=V7, which allows
Dec  7, 2007   variable names to be up to 32 characters.
               But almost all MXG variables will always be 8-bytes or
               less, because I think shorter, encoded, albeit cryptic,
               variable names are easier for PROGRAMMERs to work with.
               But because some new open systems code was written with
               their long names, and because change the default in the
               MXG members can do no harm but can avoid future errors,
               VALIDVARNAME=V7 has been added to MXG CONFIGVx and the
               AUTOEXEx members.
   Thanks to Andreas von Imhof, Rabobank Nederland, THE NETHERLANDS.

Change 25.266  The MXG ERROR.VMAC110... messages are updated to print
VMAC110        the CICS/TS 3.2 expected values.
Dec  6, 2007
   Thanks to MP Welch, SPRINT, USA.

Change 25.265  Required for DB2 Version 9.1, DB2TCBTM correction.
VMACDB2        DB2TCBTM could be significantly less than it should be in
Dec  7, 2007   non-rollup observations in DB2ACCT.  The CPU time delta
               QWACEJST-QWACBJST was NOT included in DB2TCBTM when
               QWACBJST was zero (and DB2PARTY NE 'R') in DB2ACCT.
               And the loss has only been reported at sites with zIIP
               engines for their DB2 systems.

               Prior to DB2 V1.9, IBM DSNWMSGS documentation noted that
               QWACBJST=0 meant that CPU timing was in error, and so MXG
               had always NOT included that QWACEJST-QWACBJST delta in
               MXG's DB2TCBTM variable.  Accidentally, DB2TCBTM for the
               Rollup Records (i.e., DB2PARTY='R") has always included
               the QWACEJST when QWACBJST=0.
               Note that
                    DB2TCBTM=SUM(DB2TCBTM,QWACSPCP,QWACTRTE);
               is the final value output in DB2ACCT dataset.

               Now, IBM DB2 Level 2 Support has confirmed in a reply to
               an MXG site that QWACBJST=0 is valid and the QWACEJST in
               those records should be included in DB2TCBTM, adding that
               "If we have an agent running 100% on a zIIP, QWACBJST
               will be zero."  It was only after that reply from IBM DB2
               Support that I looked to see the CPU timing not is not in
               DSNWMSGS in the DB2 V 1.9 Macro Library.

               To see if this change impacts your DB2ACCT dataset, you
               can measure how much DB2TCBTM was lost with

                  PROC MEANS SUM DATA=PDB.DB2ACCT
                    (WHERE= (DB2PARTY NE 'R' AND QWACBJST=0));
                  VARIABLES QWACEJST;
                  TITLE TOTAL QWACEJST NOT INCLUDED IN DB2TCBTM;

               If no observations are selected, no CPU time was lost.

               Several folks at DB2 Support were ultimately involved in
               the problem, providing this information about PK46171:
               - Class 1 CP, zIIP, and elapsed times could be incorrect.
                  Because we don't get a 'start accounting' call:

                  1. QWACBSC would be from the last transaction to see a
                     start

                  2. QWACBJST would be the CP time from the last
                     transaction to see a start -- this can result in
                     this number being unrelated to QWACEJST

                  3. QWACCLSL_ZIIP would be effected similarly to
                     (QWACEJST - QWACBJST) since it is internally
                     calculated from a start ziip time that can be
                     unrelated to the end time

                  4. QWACAJST and QWACCLS2_ZIIP are probably not
                     noticeably effected although there could be an
                     extremely small amount of time that is not counted.

                     Above symptoms only occur in DRDA work when
                     connection-reuse is in effect.  I can't see any
                     record said lacking of PK46171 will directly make
                     qwacbjst to zero.
                - And this note on why QWACBJST can validly be zero.
                  From dump, we can see CPUTIME is 0 but zIIP time is >0
                  and this is a zIIP eligible distributed SRB.  Thus
                  this is working as expected.  The CP time can be 0
                  since all time might be on a zIIP at the time of the
                  first clocking. As long as either the CP or the zIIP
                  time > 0, that is normal.
   Thanks to Sieghart Seith, Fiducia, GERMANY
   Thanks to Derrick Haugan, MetLife, USA.
   Thanks to Lisa Ouellette, Wachovia, USA.
   Thanks to Jim Lazowski, NAV-INTERNATIONAL, USA.
   Thanks to Uncha, DB2 Level 2 Support, GERMANY.
   Thanks to Ronald Lobodzinski, DB2 Level 2 Support, USA.

Change 25.264  For consistency with MXG tailoring macro variables, new
IMACSPCK       &MACSPCK is defined in VMXGINIT and referenced in the
VMXGINIT       IMACSPCK tailoring member, though unlikely to be used.
Dec 5, 2007
   Thanks to Chuck Hopf, Bank of America, USA.

Change 25.263  Some DD DUMMY statements for INFILEs for new products
JCLTEST8       were missing in the TESTOTHR/TESSOTHR steps, and there
JCLTESS8       were inconsistencies in the TEST vs TESS members that
JCLTEST9       were corrected in these four test members. The main
JCLTESS9       purpose of these TEST/TESS jobs is to confirm that your
Dec 4, 2007    "USERID.SOURCLIB" tailoring did not cause any errors in
               the TESTIBMx steps, so a failure in a subsequent step due
               to a missing DD statement should not prevent you from
               moving to JCLPDB8/JCLPDB9 testing.
   Thanks to Eric Barnes, Scottish and Southern Energy, SCOTLAND.

Change 25.262  The 233 DDU files needed for ITRM sites to create ITRM
ITRMTNG        table definitions for each of the 233 datasets built
Dec  4, 2007   by MXG's TYPETNG (for CA's NSM product, formerly TNG).
               There is also the cpddudef.sas program that is used
               to generate all table definitions,.  You will need to
               replace &YOUR_PDB_PATH & Your_DDU_PATH in cpududef.sas
               with your paths.  The creation was run under a SAS ITRM
               interactive session.
               The itrmtng.sas file contains all 234 files in IEBUPDTE
               format; the individual files can be created by using the
               IEBUPDTE.SAS program in the MXG Source Library with the
               itrmtng.sas file as it's input.
   Thanks to Xiaobo Zhang, CheckFree, USA.

Change 25.261  Variable LGGLGDEF in CICS dataset CICLGG is the Log Write
VMAC110        Defer Interval, the value specified in the site's LGDFINT
Nov 29, 2007   parameter, but the MXG format only printed 2 decimals;
               the value is normally in milliseconds, so the format
               TIME13.3 is now used so a value of 5 ms will print as
               00:00:00.005.  n Deese, Computer Management Sciences,
   Thanks to Don Deese, Computer Management Sciences, USA.

Change 25.260  ITRTVLTM in TYPE30_V or PDB.SMFINTRV could be missing
VMAC30         for TYPETASK='OMVS' record; it is now protected twice,
Dec  1, 2007   in the SUBSTEP loop, and at the OUTPUT statement.
   Thanks to Carl Sablon, KBC, BELGIUM.

Change 25.259  VMXGALOC bumped to the next week's PDB one day early, and
VMXGALOC       could do even worse if the week-start-day was not Monday.
Nov 29, 2007   The logic was revised for both errors by this CodeShark.
   Thanks to Patrick Holloman, Zions Bank Corporation, USA.

Change 25.258  Intentionally Blank Change (a/k/a skipped).

Change 25.257  Support for ICSF HCR7750 SMF Logging Update for TKE adds
FORMATS        these new variables to SMF type 82 subtype 16 TYPE8216:
VMAC82            SMF82PAL='LENGTH OF*FIXED*AUDIT*DATA*'
Nov 29, 2007      SMF82PDE='DESCRIPTION'
                  SMF82PFI='FUNCTION*ID'
                  SMF82PFR='FUNCTION*RETURN*CODE'
                  SMF82PTA='TKE*AUTHORITY'
                  SMF82PUS='USER ID*NONCE*TSN'
               and incorrectly spelled SMF82PDK is now SMF82PBK.
               New MG082RC format decodes SMF82PFR.
   Thanks to Greg Burt, Fifth Third Bank, USA.

====== Changes thru 25.256 were in MXG 25.11 dated Nov 22, 2007=========

Change 25.256  Macro variable &MXGDEBUG is revised for internal debugs.
TIMEBILD       It's value is now the name of the member, suffixed with a
UTILRMFI       numeric value when multiple values are needed. Previously
VMXGRMFI       tests were for a simple numeric value, which triggered
VMXGSUM        unwanted debugging diagnostics from other code members.
VMXGSUME       And, UTILEXCL now exploits &MXGDEBUG with BEFORE/AFTER
UTILEXCL       location for each of the optional CICS data segments, so
Nov 21, 2007   diagnosis of user tailoring errors will be faster!
                 For example, you could use:
                    OPTIONS FIRSTOBS=3800 OBS=3800;
                    %LET MXGDEBUG=IMACEXCL;
                    %INCLUDE SOURCLIB(TYPE110);
                 if you had an error after IMACEXCL/IMACICxx members
                 were tailored, and the error was in _N_=3800th record.

Change 25.255  Support for Action Software's EventAction SMF User Record
EXEVTA00       creates new datasets:
EXEVTA01         DDDDDD     DATASET   DESCRIPTION
EXEVTA02
EXEVTA03         EVTA00     EVTA00    DATASET CHANGE OR REFERENCE
EXEVTA04         EVTA01     EVTA01    CHANGESMXSMF)
EXEVTA05         EVTA02     EVTA02    REFERENCES MZSMF)
EXEVTA06         EVTA03     EVTA03    CHANGE ACTION CONTROLS
EXEVTA07         EVTA04     EVTA04    TEST ACTION C506)
EXEVTA08         EVTA05     EVTA05    COMMAND CONTROL C507)
EXEVTA09         EVTA06     EVTA06    CHG.DISTRIB TRANSMITS MZSMF)
EXEVTA0A         EVTA07     EVTA07    REF.TRACKING BY MEMBERS CS501)
EXEVTA0B         EVTA08     EVTA08    UPDATE TO EXCLUDES TABLE C41E)
EXEVTA0C         EVTA09     EVTA09    UPDATE TO BLACKOUT TABLE C427)
EXEVTA0D         EVTA0A     EVTA0A    UPDATE TO DATASET OPTIONS C404)
EXEVTA0E         EVTA0B     EVTA0B    UPDATE TO MEMBER OVERRIDE C405)
EXEVTA0F         EVTA0C     EVTA0C    OPTIONS AT OID LEVEL C40F)
EXEVTA10         EVTA0D     EVTA0D    GLOBAL PARMS C401)
EXEVTA11         EVTA0E     EVTA0E    DATA SET GLOBAL OPTIONS C401)
EXEVTA12         EVTA0F     EVTA0F    PXC
EXEVTA40         EVTA10     EVTA10    UPDATE TO USER GROUP
EXEVTA50         EVTA11     EVTA11    EXCLUDES NOT REF.TRK)
EXEVTA51         EVTA12     EVTA12    UPDATE TO CMD>TRACK OPTIONS
EXEVTAF0         EVTA40     EVTA40    CHANGE REQUEST DELETE
EXEVTAF1         EVTA50     EVTA50    USS CONTROLS
IMACEVTA         EVTA51     EVTA51    USS EXCLUDES
TYPEEVTA         EVTAF0     EVTAF0    ACCOUNTING RECORDS C50C)
TYPSEVTA         EVTAF1     EVTAF1    USS CHANGS AND REFERENCES
VMACEVTA
VMXGINIT
FORMATS
Nov 18, 2007
   Thanks to Craig Collins, State of Wisconsin DOA DET, USA.

Change 25.254  New sample report summarizes the DB2 Package data to the
ANALACTP       UOW level keeping track of total response and CPU,
Nov 18, 2007   the longest package, the first 10 packages.
Jan  8, 2008   Jan 8: Typos in the untested code were discovered/fixed.
                      Example expected UOWIDCHR variable had been added
                      to your DB2ACCTP dataset, but didn't show how to,
                      or note it could be removed from ANALACTP example.
   Thanks to Dan Almagro, Automobile Club of Southern California, USA.

Change 25.253  Support for new NTSMF MSSQL Objects.
EXNTQLBA          DDDDDD     DATASET      DESCRIPTION
EXNTQLBN
EXNTQLBS          NTQLBA     MSQBROAC     MSSQL:BROKER ACTIVATION
EXNTQLBT          NTQLBN     MSQBUFND     MSSQL:BUFFER NODE
EXNTQLCA          NTQLBS     MSQBROST     MSSQL:BROKER STATISTICS
EXNTQLCL          NTQLBT     MSQBRODT     MSSQL:BROKER/DBM TRANSPORT
EXNTQLCT          NTQLCL     MSQCLR       MSSQL:CLR
EXNTQLCU          NTQLCA     MSQCATME     MSSQL:CATALOG METADATA
EXNTQLES          NTQLCU     MSQCURMG     MSSQL:CURSOR MANAGER TOTAL
EXNTQLPC          NTQLCT     MSQCURTY     MSSQL:CURSOR MANAGER BY TYPE
EXNTQLSR          NTQLES     MSQEXECS     MSSQL:EXEC STATISTICS
EXNTQLTR          NTQLPC     MSQPLANC     MSSQL:PLAN CACHE
EXNTQLWS          NTQLSR     MSQSQLER     MSSQL:SQL ERRORS
IMACNTSM          NTQLTR     MSQTRANS     MSSQL:TRANSACTIONS
VMACNTSM          NTQLWS     MSQWAITS     MSSQL:WAIT STATISTICS
VMXGINIT
Nov 18, 2007
   Thanks to Bob Gauthier, Albertsons, USA.

Change 25.252  Changes for testing MXG execution under WPS:
CONFIGW2      -MXGWPSV2. JCL procedure updated for WPS under z/OS
MXGWPSV2      -VMXGINIT. Test for identification of WPS revised, code
VMXGINIT                 was relocated to after TAPENGN was set for SAS:
VMXGPRAL           %IF %SYSPROD(WPS) EQ 1 %THEN %DO;
ANALDB2K             %LET WPSVER=&SYSVER;
ANALHTML             %LET SASVER=8;
ANALMQMC             %LET TAPENGN=WPDSEQ;
ASUM42DS           %END;
ASUMCACH
     -CONFIGW2.  CONFIG options now specify SEQENGINE=WPDSEQ.
ASUMHSM      -VMXGPRAL. Tests for ENGINE adds WPDSEQ to list of seqs.
ASUMTALO               Unrelated, SUM was added to PROC MEANS output.
CICSTRAN     -VMXGINIT.  WPS does not yet support VIEWS; all members
DB2PDB                   with /VIEW=XXXXXX were replaced with &VWxxxxxx
GRAFRAID                 macro variables that are %LET to the correct
JCLUOWP                  View-NAME under SAS but blanked under WPS.
JCLUOWV                    This change will be reversed when WPS has
UTILRMFI                   added support for Views.
UTILUOW      -ANALDB2K thru VMXGUOWT listed at left were "View-Revixed".
VMXGCAPT      WPS Level Tested successfully was Build (8460).
VMXGSUM
VMXGSUME      MXG Newsletter FIFTY-ONE, VI.A WPS Technical Note reports
VMXGUOTT      1. Current status of MXG Testing under WPS Betas Nov 2007.
               1.j. MXG Support Position for testing of WPS Release.
VMXGUOW       2. Run time comparisons.
VMXGUOWT      3. Revision to SAS Clones article in MXG Newsletter FIFTY.
Nov 19, 2007  4. Summary and statistics

Change 25.251  Several variables starting with R7021xxx had '2048-BIT'
VMAC7072       in their labels, but those are all '1024-BIT' counts and
Nov 17, 2007   durations; their labels are now corrected.
   Thanks to Miguel F. Monferrer Carvajal, SPAIN.

Change 25.250  Variable TARCELAP is now FORMATed TIME12.2.
VMACTMNT
Nov 17, 2007
   Thanks to Chuck Hopf, Bank of America, USA.

Change 25.249  Variable TAUSRDAT was INPUT as $EBCDIC32. but can have up
VMACTMO2       to 240 bytes of data; INPUT statement was revised to use
Nov 17, 2007   TAUSRLEN to determine the length of user data input.
   Thanks to Roger Foreman, Acxiom, USA.

Change 25.248  The current VMXGSUM creates output variables with stored
VMXGINIT       LENGTH of 5 (z/OS) or 6 (ASCII), based on the value of
VMXGSUM        &MXGLEN (set in VMXGINIT), unless they are used in the
Nov 18, 2007   SUMLONG=, MAXTIME=, OR MINTIME= arguments, which always
               create LENGTH 8 variables. You could change those lengths
               with an explicit LENGTH statement in OUTCODE=, or you
               could change the &MXGLEN value, but that would also
               change subsequent LENGTHs of all defaulting variables in
               subsequent steps in the same SAS session/step.
               The SUMBY= and ID variables are output in the same length
               they were in the input dataset, or in the INCODE= code if
               that is where they were created.  They could be changes
               in the ORDER= argument.
               This change creates macro variable &LNSUMOUT which will
               only apply to VMXGSUM and makes all variables on which we
               do mathematical operations to be LENGTH 8.
               The default value of LNSUMOUT is blank, so the variables
               will have the original (shorter) length unless you set
               %LET LNSUMOUT=8; in your //SYSIN stream.

   Thanks to MP Welch, SPRINT, USA.

Change 25.247  WebSphere SMF 120 Subtype 3 with two heap ids SM120SNT=2
VMAC120        caused INPUT STATEMENT EXCEEDED RECORD or INVALID DO LOOP
Nov 13, 2007   CONTROL error; only SM120SNT=1 records had been read and
               this condition exposed an MXG logic error, now corrected.
   Thanks to Bjorn Helgestad, VPS ASA, NORWAY.

Change 25.246  A CFI record with only a header segment caused ASMRMFV
ASMRMFV        to burp and die with an 0C4; this revision protects.
Nov 13, 2007   Additional enhancements are noted in the changes in the
Nov 17, 2007   ASM source comments.
   Thanks to Jon Whitcomb, Great Lakes Educational Loan Service, USA.
   Thanks to Jerry Urbaniak, Acxiom, USA.

Change 25.245  CA PDSMAN product's SMF record created megabytes of data
VMACPDSM       when diagnostic trace records (LGRTYPE='D') were enabled,
Nov 12, 2007   and CA's recommendation was to suppress them and also the
               Resource Monitoring (LGRTYPE='M') record processing.
   Thanks to Sudie Wulfert-Shcickendanz, Anheuser-Busch, USA.

Change 25.244  The IRRDBU00 RACF DATABASE UNLOAD record '0200' comes in
VMACRACF       two different lengths, 540 and 549, but MXG expected the
Nov 12, 2007   549 length record, which caused INPUT RECORD EXCEEDED
               error when the shorter record was read. Both lengths are
               now supported.
   Thanks to Sean Angley, IBM, CANADA

Change 25.243  The automatic PROC DELETE of the WORK.UNKNOWN dataset is
TYPETNG        removed, so that that dataset will exist after TYPETNG or
TYPSTNG        TYPSTNG program is used to process CA NSM (old TNG) data.
Nov  6, 2007   If there are non-zero observations in WORK.UNKNOWN, it is
               very possible that some or all data will not have been
               output by MXG logic, so leaving WORK.UKNOWN will allow
               it to be tested for possible unknown data records.
   Thanks to Xiaobo Zhang, CheckFree, USA.

Change 25.242  NDM record 'UC' is now output in NDMAE dataset.
VMACNDM
Nov  5, 2007

Change 25.241  Support for CICS Transaction Gateway 7.1.0 new SMF 111
EX111CM        statistics record:
EX111CM        datasets:
EX111CS           DDDDDD     MXG       MXG
EX111CXE          DATASET    DATASET   DATASET
EX111CXI          SUFFIX     NAME      LABEL
EX111GD
EX111PH           111CM      T111CM    CICS CTG COMMUNICATIONS MANAGER
EX111SE           111CS      T111CX    CICS CTG CICS SERVER
EX111WT           111CXE     T111CXE   CICS CTG EXCI SERVER INSTANCE
IMAC111           111CXI     T111CXI   CICS CTG IPIC SERVER INSTANCE
VMAC111           111GD      T111GD    CICS CTG GATEWAY DAEMON
VMXGINIT          111PH      T111PH    CICS CTG PROTOCOL HANDLER
Nov  5, 2007      111SE      T111SE    CICS CTG SYSTEM ENVIRONMENT
Nov 21, 2007      111WT      T111WT    CICS CTG WORKER THREADS

Change 25.240  Full Support for CICS/TS 3.2 Compressed Data.
EXITCICS       MXG incorrectly believed that '20'x bit in MCTMNOPN was
VMAC110        true when CICS/TS 3.2 SMF 110-1 records are internally
VMAC112        compressed, but that bit only indicates that the compress
Nov  3, 2007   option was enabled for this CICS region.  This caused MXG
Nov 13, 2007   to falsely report the EXITCICS decompression exit was not
               correctly installed, when Dictionary Records (MNSEGCL=1),
               which are never compressed, were read. MXG now tests for
               non-zero MCTSSCRL, which is the documented condition for
               a compressed CICS SMF 110 or 112 record.
              -VMAC112 was similarly changed to test for non-zero OMSPCL
               to detect compressed SMF 112 records.
              -This incorrect assumption had also been passed in my spec
               for the EXITCICS logic, which had just turned off that
               '20'x bit in its decompressed output. Now, EXITCICS sets
               MCTSSCRL or OMSPCL to zero after decompression.
              -If you previously assembled EXITCICS prior to this change
               you must reassemble with this revised EXITCICS member AND
               use the revised MXG's VMAC to read compressed records.

Change 25.239 -Support for new THRUPUT MANAGER variables in TYPETPMX:
EXTPMALG         JXSLMCC ='JXSLM*CONTROL*CENTER'
EXTPMDBS         JXSLMCC ='JXSLM*CONTROL*CENTER'
EXTPMSLM      -New SLM JOB Statistics subtype 5 creates TPMSLM dataset.
FORMATS       -New DBS POOL subtype 240 creates two new datasets:
IMACTPMX         TPMALG - Algorithm data
VMACTPMX         TPMDBS - DBS Pool data
VMXGINIT      -Jan 4: Variables JESNR JCTJOBID added to TPMSLM dataset.
Nov  3, 2007  -Jan 9: GA records have corrected ETP truncation that was
Jan  4, 2008          originally reported here.
Jan  9, 2008
   Thanks to Scott Barry, SBBWorks, Inc., USA.

Change 25.238  Optional OMEGAMON BSC segment for CICS/TS 3.2 did NOT
IMACICOB       increase time-duration/count fields to the full 12-byte
IMACICOC       resolution that I had ASS-U-Med, which caused MXG ERROR
IMACICO2       message INVALID STRTTIME.  I made the same assumption for
Nov  2, 2007   all three Omegamon segments with time/count fields, so I
               now assumed that the other two segments also have 8-byte
               fields (IMACICOB for OMEGDB2, IMACICO2 for OMEGAMON), so
               those two members also are reverted.  And, of course, if
               Omegamon does increase their fields to full 12-bytes,
               yet another MXG change will be required.
   Thanks to Ray Dunn, CIGNA, USA.

Change 25.237  Variable LCPUWAIT='LCPU 28*WAIT*COMPLETE?' in PDB.TYPE70
VMAC7072       was not kept after MXG 23.09, but the same named variable
Nov  1, 2007   LCPUWAIT='LPAR*WAIT*COMPLETION?' in PDB.TYPE70PR was, and
               that was the source of the problem.  Now, a rename fixes
               this error, which was introduced in the infamous SPLIT70
               rewrite.
   Thanks to Enzo Rossi, Demand Technology Software, ITALY.

Change 25.236  Change 24.141 with z/OS at 1.7 or earlier caused TYPE78IO
VMAC78         dataset to have zero observations; MXG tested SMF78RSQ
Oct 31, 2007   for zero or one, but SMF78RSQ does not exist when the
Nov  1, 2007   RMF product segment is only 104 bytes.  The test was
               revised to output TYPE78 for missing value, zero or one.
               But then, the duplicate observations created were NOT
               removed by the NODUP option, because the SMFTIME in the
               second or third replicates was not exactly the same value
               as the first, so the _STY78IO sort macro was rewritten to
               remove those with identical SMFTIMEs, and an extra DATA
               step is used to keep only the FIRST.SMFTIME instance.
               (The additional logic is invoked, but not needed, when
               the SPLIT 78 records have a valid SMF78RSQ value.)
   Thanks to Peter B. Hopper, CSC, AUSTRALIA.
   Thanks to Steven Olmstead, Northwestern Mutual, USA.

Change 25.235 -Support for new Solaris CA CUBE STORE GROUP object and
EXTSO030       new variables in existing Solaris MIB-2.
EXTAI027      -Support for two new AIX Objects.
EXTAI028      -Support for 10 new RedHeat Objects, many new Metrics
EXTRH020       for existing RedHat Objects.
EXTRH021
EXTRH022
EXTRH023
EXTRH024
EXTRH025
EXTRH026
EXTRH027
EXTRH028
EXTRH029
FORMATS
VMACTNG
VMXGINIT
Oct 31, 2007
   Thanks to Xiaobo Zhang, CheckFree, USA.

Change 25.234  New variables added to OAM SMF 85 subtype 32-35 record
VMAC85         by z/OS 1.7 are now input and kept in TYPE85ST dataset:
Oct 28, 2007      R85B2ODK='BACKUP2*BYTES*DELETED FROF*OPTICAL'
Nov  1, 2007      R85B2ODO='BACKUP2*OBJECTS*DELETED FROM*OPTICAL'
                  R85B2ORK='BACKUP2*BYTES*READ FROM*OPTICAL'
                  R85B2ORO='BACKUP2*OBJECTS*READ FROM*OPTICAL'
                  R85B2OWK='BACKUP2*BYTES*WRITTEN TO*OPTICAL'
                  R85B2OWO='BACKUP2*OBJECTS*WRITTEN TO*OPTICAL'
                  R85B2TDK='BACKUP2*BYTES*DELETED FROF*TAPE'
                  R85B2TDO='BACKUP2*OBJECTS*DELETED FROM*TAPE'
                  R85B2TRK='BACKUP2*BYTES*READ FROM*TAPE'
                  R85B2TRO='BACKUP2*OBJECTS*READ FROM*TAPE'
                  R85B2TWK='BACKUP2*BYTES*WRITTEN TO*TAPE'
                  R85B2TWO='BACKUP2*OBJECTS*WRITTEN TO*TAPE'
                  R85NTE  ='TAPE*VOLUMES*EXPIRED'
                  R85RCLD ='RECALLED*OBJECTS*PROCESSED*THIS CYCLE'
                  R85RCLK ='BYTES OF*RECALLED*OBJECTES*THIS CYCLE'
               and these varibles added by z/OS 1.8 are input/kept:
                  R85LOBD ='ROWS*DELETED*FROM LOB*STRUCTURE'
                  R85LOBI ='ROWS*INSERTED*INTO LOB*STRUCTURE'
   Thanks to Harald Seifert, HUK-COBURG, GERMANY.

Change 25.233  The COMPRESSED RECORD FOUND error was printed for a CICS
VMAC110        dictionary record, but the MNSEGCL flag that identifies
Oct 27, 2007   the record IS a dictionary record was not printed.

Change 25.232  Change 25.124 added preliminary support for WPS execution
VMXGINIT       but it forced WPSVER=2; now, the actual WPSVER is stored
Oct 26, 2007   in &WPSVER.

Change 25.231  Change 25.177 created new macro variable &ARRAYRMF, but
VMXGINIT       the location in VMXGINIT was inside a DO GROUP that was
Oct 26, 2007   only executed for SAS V8.2, causing UNRESOLVED MACRO when
               MXG executed under SAS Version 8.1.  The statement was
               relocated so it is always executed, no matter what SAS
               version is used.
   Thanks to John Compton, ACS, USA.

Change 25.230  MXG support for IMF 4.3 used the new offset field to the
VMACCIMS       DBD segments when it was non-zero, but PTF BQI0129 for
Oct 23, 2007   IMF 4.2 populated that previously reserved field, which
               caused INPUT EXCEEDED error and this error message:
               INVALID IMS TRANSACTION RECORD LENGTH=836 WITH xxx
               48-BYTE DBDS EXPECTED AFTER COL=32765 _N_=1
               Now, MXG only uses the 4.3 offset to DBDs when the IMF
               version is 4.3 or greater.
   Thanks to Sigfried Trantes, IDG, GERMANY.

Change 25.229 -NMON data for AIX for PDB.NMONCPUD records can have the
VMACNMON       number of CPUnn records increase and decrease as AIX adds
Oct 23, 2007   or subtracts "virtual" CPUs, and when a CPUnn goes away,
Nov  2, 2007   NMON wrote a short record, which caused INPUT EXCEEDED
               error.  Now, MXG detects and deletes these short records.
               Note that the PDB.NMONINTV dataset, in NRCPUS variable,
               has the number of "real" CPUs.  However, in this case,
               the value of NRCPUS was always 6, even though there were
               CPUnn segments with CPU14 (i.e., there should have been
               NRCPUS=7, as there are 2 "virtual" CPUs for each "real".
              -Temporary variables WORD11-WORD24 were not set to LENGTH
               $128, so they took the SAS default of 8-bytes for CHARs,
               causing character variables stored from them to also have
               a stored length of 8 bytes.  Now, all WORDnn are $128,
               and specific LENGTHs for kept variables are used where
               needed.
              -Variables NRCPU, PID, and PPID are now numerics.
              -NMON data value 'nan' is 'Not a Number' and is stored in
               the data records, causing INVALID DATA messages until
               each instance is protected with double question marks!!
   Thanks to Mike Woelke, Boeing, USA.

Change 25.228  Protection for invalid SMF 14 record that had NUCB=2 but
VMAC1415       only one actual UCB segment.  This record caused ERROR:
Oct 17, 2007   INPUT STATEMENT EXCEEDED RECORD LENGTH.  Protection will
               print error message for first three bad instances.
   Thanks to William Carrol, Grange Insurance, USA.

Change 25.227  Variable RPRTCLAS is now kept in TYPE72DL dataset to flag
VMAC7072       a Service Class versus a Reporting Class observation. It
Oct 16, 2007   was not kept previously because the SMF manual mentioned
               only service classes, but actual data shows TYPE72DL can
               contain both Service and Reporting Class observations.
   Thanks to Harald Seifert, HUK-COBURG, GERMANY

Change 25.226  UPRINDOC will PROC PRINT the NAME and LABEL of variables
UPRINDOC       and is used to create the example output in the ADOCxxxx
Oct 16, 2007   members, and it also PROC MEANS all numeric variables.
               It's been in MXG for years, but never documented.

Change 25.225  RMF III variable ENCCPUT is labeled 'CP*ENGINE*CPU TIME'
VMACRMFV       now, because it is recalculated to remove zIIP CPU time:
Oct 16, 2007     ENCCPUT=ENCCPUT-ENCSUPT;
Oct 31, 2007   when it was found (and confirmed by RMF support) that it
               contained both CP and zIIP Engine CPU time, but MXG will
               always preserve the CP-Engine CPU times separately from
               the zIIP and/or zAAP engine CPU times.
   Thanks to Roger Foreman, Acxiom, USA.

Change 25.224  The tests for CPUTYPE IN ('2064'X ...) are revised to now
VMAC7072       alternatively test for ZARCHMDE='Y', so that a new value
VMXGRMFI       for CPUTYPE does NOT have to be added to MXG's table.
Oct 16, 2007     Previously, an unknown CPUTYPE was INCOMPATIBLE until
Oct 27, 2007   it was added to the tables in these two members.
               The tests for CPUTYPE were needed to identify which data
               exists in some of the early CPU types, but now that IBM
               has added the bit for ZARCHMDE, it eliminates the need
               for a new MXG version when IBM has a new CPUTYPE.
   Thanks to Don Deese, Computer Management Sciences, USA.

Change 25.223  The variable HOST is increased to 32 bytes; the original
VMACNMON       length of 8 is insufficient for unix/AIX/linux host name.
Oct 15, 2007
   Thanks to Michael W. Wolke, Boeing, USA.

Change 25.222  EXIT112 is the enhanced CICS INFILE EXIT for z/OS MXG
EXIT112        that reads compressed SMF 110 and SMF 112 records, but it
Oct 13, 2007   is temporary, as it will replace EXITCICS when a site
               reports successful production sites with both records.

               EXITCICS is running in production at several sites.

               EXIT112 is an extension to EXITCICS, and EXIT112 has been
               tested, but only with a small SMF file.  I recommend that
               EXIT112 be installed instead of EXITICS, and ask that you
               confirm successful processing compressed 110 and 112 data
               so that I can remove EXIT112 and rewrite this change.

Change 25.221  Support for CA NSM data from VM Ware VSX Systems creates
EXTVW001-      ten new datasets.  Many VMW metrics are the same as their
EXTVW010       Solaris and RedHat Linux counterparts, but with different
FORMATS        variable names because not all exist and they are created
IMACTNG        in different orders. While "TNG" still must be the suffix
VMACTNG        for the MXG code members, the dataset labels of all "TNG"
VMXGINIT       datasets are now changed to "NSM".  New VM Ware datasets:
Oct 13, 2007     DATASET    DDDDDD    DESCRIPTION
                  VW001     VW001     NSM CA CPU GROUP
                  VW002     VW002     NSM CA FILE SYSTEM
                  VW003     VW003     NSM CA INTERFACE GROUP
                  VW004     VW004     NSM CA KERNEL CONFIG GROUP
                  VW005     VW005     NSM CA MEMORY GROUP
                  VW005     VW005     NSM CA NETWORK GROUP
                  VW007     VW007     NSM CA PER CPU GROUP
                  VW008     VW008     NSM CA SWAP GROUP
                  VW009     VW009     NSM CA PROCESS GROUP
                  VW010     VW010     NSM VIRTUALIZED ENVIRONMENT
   Thanks to Xiaobo Zhang, CheckFree, USA.

Change 25.220  The LABEL for SMF91OW was correct in TYPE91 datasets, but
ANAL91         it was changed in ANAL91, incorrectly, in an unneeded and
Oct 11, 2007   redundant and now removed LABEL statement.
   Thanks to Dave Krouse, IBM, USA.

Change 25.219  TYPE74CA variable FWDC was replaced some time ago, but
VMAC74         the label was not corrected; the variable is labeled now:
Oct 11, 2007     FWDC    ='DASD F/W*BYPASS*COUNT*R745DFWB'
   Thanks to Ed Woodward, UPS, USA.

Change 25.218  Support for local CICS USER field CMODHEAD,CMODNAME=TRADE
IMACICU5       creates variable TRADEU5 in CICSTRAN, when enabled.
VMAC110
UTILEXCL
Oct 11, 2007
   Thanks to Leendert Keesmaat, UBS, SWITZERLAND.

Change 25.217  VMACPRPR was revised, in June, but the Change text was
VMACPRPR       lost.  Originally support for the '1620' record was added
Oct 10, 2007   June 12, and test records had different delimiters in
               date/time fields, so INPUTs were changed in MXG, but now
               I see that no other record's date/times were changed.
               This change, which was included in MXG 25.10, reverted
               date/times for all other records to the original format,
               but created a separate path to decode 1620 subtypes.
   Thanks to Sigfried Trantes, IDG, GERMANY.

Change 25.216  The MXG support for optional CICS EZA01/EZA02 fields has
IMACICEZ       been enhanced and documentation revised for clarity:
IMACICE1      -IMACICEZ always has five fields, but they are clock-count
IMACICE2       fields that increased from 8 in CICS/TS 3.1 and earlier
VMAC110        to 12 bytes, with higher time resolution, in CICS/TS 3.2.
Oct 11, 2007   Now, IMACICEZ supports both lengths, because SMFPSRVR,
               the CICS Version, is used to identify the field length.
               So you will only have to remove the comment block, with
               no other tailoring, when IMACICEZ needs to be tailored.
              -IMACICE2 had 11 fields with z/OS 1.4 TCP/IP data, but can
               have 22 fields with z/OS 1.7 and later.  While you will
               still have to look at UTILEXCL program's REPORT THREE to
               see which data you have in your records, now there are
               TWO comment blocks, one for each set, so you should only
               remove one comment block, with no other tailoring.
              -IMACICE1 data comes in several different sets of data,
               so you WILL have to compare UTILEXCL's REPORT THREE to
               see which fields you have, and it is VERY likely you will
               to update IMACICE1 to match your data, as follows:
                  IMACICE1 expects 13 fields with CMODHEAD EZA01, and
                  the label statements identify the content of each
                  field.  If you have less than 13 fields, you will have
                  to tailor it.  For example, one structure ended with
                  "ATTACHED" and had only 7 fields. For that data, you
                  would EDIT your IMACICE1 member, and:
                  -change this test for data-left (prevents STOPOVER)
                      IF MCTSSDRL-(COL-SEGSTRT) GE 52 THEN DO;
                   to test your length, GE 28 if there are seven fields,
                  -change LABELs to match the CMODNAME in REPORT,
                  -delete LABELs for variables that don't exist,
                  -change INPUT statement to read only your variables
                       INPUT (EZA01A01-EZA01A07) (&PIB.4.) @;
                  -and see text of Change 24.033 for additional notes.
              -You create REPORT THREE with the _RPTEXCL macro run
               with or after your UTILEXCL execution:
                    //SYSIN DD *
                     %INCLUDE SOURCLIB(UTILEXCL);
                     _BLDDICT;
                     _BLDEXCL;
                     _RPTEXCL;
              -VMAC110 was updated to keep the EXA01A13 13th variable.
   Thanks to Jane Dickerson, PRODUBAN, ENGLAND.

====== Changes thru 25.215 were in MXG 25.10 dated Oct  7, 2007=========

Change 25.215  Change 25.179 broke VMXGUOW, some overrides of _LDB2ACC
VMXGUOW        caused CHARACTER OPERAND IN %EVAL FUNCTION errors.
Oct  7, 2007   Also, parameter HOWDEEP added to set kept array sizes.

Change 25.214  An example that finds all TSO and IDMS USERID that logged
TSOIDMS        on,using IBM SMF 30 and IDMS PERFMON USER SMF records.
Oct  6, 2007
   Thanks to Pat Curren, Supervalu, USA.

Change 25.213  Documentation only.  DB2 variable THREADTY shouldn't have
VMACDB2        been added to DB2ACCTP dataset (Change 25.097), because
Oct  7, 2007   DB2 V8.1 writes all Package data in IFCID=239 (ID=101.1)
               records, which do not contain a QLAC segment, and IBM's
               THREADTY definition (in comments for QWHDRQNM field in
               their DSNWMSGS member of the DB2 Macro Library) compares
               QWHDRQNM with QLACLOCN.  Since I can never safely remove
               a variable, it will still exist in DB2ACCTP, but it will
               always be blank in that dataset.  No code was changed.

Change 25.212 -SYNCSORT variable SYNCUSET is now documented to be the
VMACSYNC       sum of VSCORET plus the GDSM Adjustment, so its label
Oct  6, 2007   is revised to be:
Nov 17, 2007      SYNCUSET='CORE USED*TOTAL*VSCORET*PLUS GDSM ADJ'
              -SYNCSORT added a new field, which MXG decodes as:
                  SYNHWMPF='HIGHWATERMARK*PAGEFIXED*STORAGE*USED'
               where the old HPALLOC/HPUSED ESTORE BLOCKS was located.
              -All reserved and unknown fields in SYNCSORT SMF record
               are decoded, but none of these variables are kept:
                  /* SYNRSV41-SYNRSV45 SYNUNK01-SYNUNK15 */
                  /* SYNCHFUT SYNCBFUT SYNXXXX1 SYNSPARE */

Change 25.211  PDB.TYPE70 variables ZIPACTTM, PCTZIPBY, PCTCIBYn are now
VMAC7072       corrected for Dedicated zIIP Engines.  For Shared zIIPs,
Oct  5, 2007   the LPAR Dispatch time is valid, but Dedicated engines
               report 100% dispatch.  For TYPE70, the ZIPWAITM is used
               to correct ZIPACTTM, which corrects the other variables.
   Thanks to Jerry Cobb, American Century, USA.


Change 25.210 -WARNING: LENGTH OF CHARACTER VARIABLE ACCOUNT1 HAS BEEN
VMACSFTA       SET under SAS V9 is issued ONLY when a LENGTH statement
VMACDB2        changes the length of a character variable, and, like all
VMACOPC        WARNING: messages in SAS V9, z/OS sets Condition Code 4.
VMACBE97         (Under V8, this specific WARNING did NOT set CC=4,
VMAC7072          but V9 has tightened specs so WARNINGS always CC=4.)
TRNDDB2S       But it should never occur in MXG code: although there are
ANALCISH       multiple LENGTH statements, they should always set the
Oct  4, 2007   same value.
               But it did occur when VMACSFTA was executed standalone,
               because the statement  ACCOUNT1=XPUPNOAC;  was located
               prior to the %INCLUDE of IMACACCT, which is where the
               LENGTH of ACCOUNT1 should always be defined.  Relocating
               that ACCOUNT1=XPUPNOAC; statement eliminated the WARNING.
              -When WARNING for numeric vars (eg. QB1TALX) were printed,
               I discovered there were six members that had hard-coded
               values for LENGTH DEFAULT=4 that should have been changed
               to LENGTH DEFAULT= &MXGLEN; the were overlooked or added
               after Change 19.272, but now all are consistent so that
               numeric variables are stored 5 on z/OS and 6 on ASCII,
               except for the specific cases where length 8 is required.
   Thanks to Ron van der Zande, KLM Info Services, THE NETHERLANDS.
   Thanks to MP Welch, SPRINT, USA.

Change 25.209 -TIMEBILD/TIMETABL is enhanced to support the selective
TIMEBILD       application by SYSTEM of "SYNC59" timeshifting logic:
TIMETABL       - TIMEBILD now reads columns 71-72 of TIMETABL to INPUT
VMXGTIME         the (+ or -) number of minutes to be added for SYNC59.
VMXGINIT         That value is a part of the format built by TIMEBILD.
VMXG70PR       - %TIMEBILD must be executed first to create the table.
Oct  5, 2007   - To enable the addition of SYNC59 offset, you must set
                   %LET MXGTIM59=YES;
                 and then you would run the program whose datetimes
                 are to be shifted by both TIMEBILD zones and SYNC59.
               - The "SYNC59" option is intended to be used ONLY with
                 RMF/CMF data, and in particular, for data from a CEC
                 that has some systems SYNC59 and some SYNC00.  It may
                 not work with other programs, including BUILDPDB, as
                 you may not want all records SYNC59'ed.  And, if you
                 now use the SYNC59 option in TIMEBILD, you must also
                 change your ASUMxxx, TRNDxxxx, VMXGxxxx tailored code
                 to now specify SYNC59=NO to prevent a double shift.
               - To process only the RMF data with a TIMETABL that has
                 been updated to include the SYNC59 flag, you could use
                     %LET MXGTIM59=YES;
                     %TIMEBILD;
                     %UTILBLDP ( BUILDPDB=NO,
                                 USERADD=70 71 72 73 74 75 76 77 78,
                                 ZEROOBS=74.1 74.5,
                                 INCLAFTR=RMFINTRV ASUM70PR,
                                 OUTFILE=INSTREAM);
                     %INCLUDE INSTREAM;
                 to build you RMF-only PDB Library (which will be small,
                 as that example does NOT create observations in the two
                 big TYPE74 and TYPE74CA datasets due to that ZEROOBS=).
               - TIMEBILD will PROC PRINT the input TIMETABL and the
                 output TIMEBILD datasets by enabling MXGDEBUG:
                    //SYSIN DD *
                     %LET MXGDEBUG=1;
                     %LET MXGTIM59=YES;
                     %TIMEBILD;
                     RUN;
                     %LET MXGDEBUG=0;
               - You can conditionally reset MXGTIME59 for some SMF data
                 and not for others; for example, to enable for59 add,
                 and you do NOT have to rerun TIMEBILD.
                    %TIMEBILD(TIMEBILD=YES);
                    %LET MACFILE=%QUOTE(
                       IF ID=30 THEN CALL SYMPUT('MXGTIM59','NO');
                       ELSE CALL SYMPUT('MXGTIM59','YES');
                    );
                    %UTILBLDP(USERADD=7072 30,BUILDPDB=NO);
                    %INCLUDE INSTREAM;

              -Once TIMEBILD worked to selectively SYNC59, the original
               problem, duplicate observations in PDB.ASUMCELP, could be
               diagnosed: while BY variable GMTOFFTM is correctly used
               to creating the "per-SYSTEM" datasets, it can never be
               used in the "per-CEC" datasets, because they are built
               from multiple SYSTEM's data, which can have multiple
               values in GMTOFFTM.  Removing GMTOFFTM from the creation
               of PDB.ASUMCELP has eliminated the duplicates; I should
               remove GMTOFFTM where it makes no sense, but instead, I
               have set GMTOFFTM=. in ASUMCEC and ASUMCELP, so it will
               not create a VARIABLE NOT FOUND ERROR.
   Thanks to Jannson Ingegerd, Volvo, SWEDEN

Change 25.208  CICS local user field CMONDNAME DAT008 CMODHEAD ENTRADA
IMACICU4       creates new variable ENTRADA.
VMAC110
UTILEXCL
Oct  1, 2007
   Thanks to Jane Dickenson, Santander Produban UK, ENGLAND.

Change 25.207  The NTSMF dataset LOGLDISK had the variables FREESPAC
VMACNTSM       (FREE MEGABYTES and PCTFRESP (PCT Free space) but the
Sep 27, 2007   size of the volume did not exist until now, with the
               new DISKSIZE variable.
   Thanks to Michael Ryan, Acxiom, USA.

Change 25.206  MXG 25.09 only. If the SAS-provided default CONFIG member
FORMATS        was not in your //CONFIG DD statement in your MXGSASV9
CONFIGV8       JCL procedure, the PROC FORMAT failed to build MXGTNGON,
CONFIGV9       because lines 12092 thru 12099 in FORMATS were low-case
Oct  3, 2007   duplicates of preceding lines, that should not have  been
               have been there, but they caused no error when the CONFIG
               member was present.  Since they also caused the error if
               they were UPPERCASED, I assume the absence of the SAS
               CONFIG member caused them to be treated as UPCASE.  Also,
               there were Macro Variable error messages because MERROR
               is a required option that is normally set in SAS CONFIG.
               To protect, MERROR is now added to CONFIGV9 and CONFIGV9.
  Thanks to Jim Wertenbe