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

MXG CHANGES 26.26

=========================member=CHANGE26================================
 /* COPYRIGHT (C) 1984-2009 MERRILL CONSULTANTS DALLAS TEXAS USA */     
                                                                        
Final   MXG Version 26.26 was dated Feb 12, 2009, thru Change 26.326    
First   MXG Version 26.26 was dated Feb  3, 2009, thru Change 26.325    
        MXG Version 26.26  is the    2009 "Annual Version".             
        MXG Newsletter FIFTY-THREE is dated Feb  3, 2009                
        MXG Version 26.12 was dated Jan 20, 2009, thru Change 26.308    
        MXG Version 26.11 was dated Jan  5, 2009, thru Change 26.296    
        MXG Version 26.10 was dated Dec  1, 2008, thru Change 26.271    
        MXG Version 26.09 was dated Oct 20, 2008, thru Change 26.240    
        MXG Version 26.08 was dated Sep 12, 2008, thru Change 26.209    
        MXG Newsletter FIFTY-TWO  was dated Aug 24, 2008                
        MXG Version 26.07 was dated Aug 24, 2008, thru Change 26.197    
        MXG Version 26.06 was dated Aug  6, 2008, thru Change 26.176    
Third   MXG Version 26.06 was dated Aug  5, 2008, thru Change 26.175    
Second  MXG Version 26.06 was dated Aug  4, 2008, thru Change 26.173    
First   MXG Version 26.06 was dated Aug  1, 2008, thru Change 26.172    
        MXG Version 26.05 was dated Jun 18, 2008, thru Change 26.140    
        MXG Version 26.04 was dated Jun  4, 2008, thru Change 26.120    
        MXG Version 26.03 was dated May 11, 2008, thru Change 26.095    
First   MXG Version 26.03 was dated May  8, 2008, thru Change 26.093    
        MXG Version 26.02 was dated Apr 22, 2008, thru Change 26.075    
        MXG Version 26.01 was dated Mar 11, 2008, thru Change 26.037    
        First MXG   26.01 was dated Mar 10, 2008, thru Change 26.036    
        MXG Version 25.25 was dated Jan 28, 2008, thru Change 25.309    
                                                                        
MXG 25.25 was last year's 2008 "Annual Version", dated January 28, 2008.
                                                                        
Instructions for ftp download can be requested by using this form:      
  http://www.mxg.com/ship_current_version                               
Your download instructions will be sent via return email.               
                                                                        
Contents of member CHANGES:                                             
                                                                        
I.    Current MXG Software Version 26.26 is available upon request.     
II.   SAS Version requirement information.                              
III.  WPS Version requirement information.                              
IV.   MXG Version Required for Hardware, Operating System Release, etc. 
V.    Incompatibilities and Installation of MXG 26.26.                  
VI.   Online Documentation of MXG Software.                             
VII.  Changes Log                                                       
                                                                        
  Member NEWSLTRS contains Technical Notes, especially APARs of interest
  and is updated with new notes frequently.  All Newsletters are online 
  at http://www.mxg.com in the "Newsletters" frame.                     
                                                                        
  Member CHANGES contains the changes made in the current MXG version.  
  Member CHANGESS contains all changes that have ever been made to MXG. 
  All MXG changes are also online at http://www.mxg.com, in "Changes".  
                                                                        
======================================================================= 
                                                                        
                                                                        
I.  MXG Version 26.26, dated Feb  3, 2009, the 2009 Annual Version.     
                                                                        
    Major enhancements added in MXG 26.26, dated Feb  3, 2009           
                                                                        
  TYPEDB2  26.311  DB2STATS4-IFCID=225 in DB2 V9 correction/additions.  
  TYPE23   26.312  Support for APAR OA27163, new interval variables.    
  TYPEOMMQ 26.319  Support for Omegamon XE MQ Export File               
  TYPEENQM 26.323  Support for IBM's ENQ/DEQ Monitor flat file.         
  ASMTAPEE 26.317  Enhanced SYSLOG message capture, MSGIDs read from DD.
  TYPETMDB 26.313  New subtypes for TMON for DB2 V4 and V4.1.           
  READDB2  26.311  TEXT EXPRESSION LENGTH (65545) EXCEEDS corrected.    
  VMXGINIT 26.310  The MXGWORK= argument of VMXGINIT is removed.        
  TYPE70   26.308  TYPE70 PARTNICF/IFA/IFL/ZIP variables added.         
  TYPEACF2 26.324  Enhancement for ACF2 support to add IHDRACF2 exit.   
  UTILCVRT 26.322  UTILCVRT utility for z/OS to ASCII conversion revised
                                                                        
    Major enhancements added in MXG 26.12, dated Jan 20, 2009           
                                                                        
  Many     26.300  Conflict Resolution, variables RE-NAMed,RE-LENGTHed  
  ANALZPCR 26.297  Execution errors in mismatched Tags corrected.       
  TYPE72GO 26.299  MXG 26.10-26.11. PERFINDX missing for R723TYPE=2.    
  RMFINTRV 26.303  Capture Ratios for zAAPs,zIIPs added to PDB.RMFINTRV 
  TYPE102  26.298  DB2 IFCID=22 INPUT STATEMENT EXCEEDED error fixed.   
  FORMATS  26.304  Internal format $MGUTILD for DOCVER created.         
                                                                        
    Major enhancements added in MXG 26.11, dated Jan  5, 2009           
                                                                        
  Many     26.289  QA Cleanup, variable LENGTHs changed, zdate added.   
  VMXGPRAL 26.293  Print all datasets with variable name + label heading
  TYPERMFV 26.287  Support for RMF III CPUG3 z/OS 1.9 (INCOMPAT).       
  TYPE92   26.277  Support for APAR OA24208 new subtype 15 for ID=92.   
  TYPEOPCN 26.280  Support for Open Connect user SMF record.            
  ANALZPCR 26.283  zPCR failed with z/OS V1R9. SELECT=CECTIME supported.
  IMACICMD 26.284  BMC Optional CMRDB2 segment increased to 256 INCOMPAT
  TYPENMON 26.279  DISKSERV,DISKWAIT,MEMPAGESxxx supported, some fixes. 
  TYPE78   26.288  TYPE78CU variables for Aliases could be wrong.       
  ASUMUOW  26.282  APPLID could be blank in PDB.ASUMUOW.                
  BUILDPDB 26.281  IFAUNITS,IFEUNITS added to PDB.STEPS and PDB.JOBS.   
  ANALDBJO 26.278  Example analysis JOins DB2ACCT + DB2ACCTP, expensive.
  TYPE72GO 26.276  Negative one value for CPUUNITS due to resolution.   
  BLDSMPDB 26.275  New WEK2KEEP=,MTH2KEEP= controls for keeping PDBs.   
  TYPEDB2  26.274  Some DB2 V9-only QWACxxxx vars were INPUT with V8.   
  TYPEXAM  26.272  Variable SIZE in HSTMEM incorrectly INPUT, is RB4.   
                                                                        
    Major enhancements added in MXG 26.10, dated Dec  1, 2008           
                                                                        
  ANALZPCR 26.264  Support for IBM zPCR model input from MXG PDB data.  
    PDB TYPE70,TYPE70PR,TYPE74 are read to create "External Study" files
    for input to IBM's capacity modeling tool; by default, MXG selects  
    the RMF interval from each system with peak CPU usage to be modeled.
    This should make your use of IBM's excellent zPCR tool even easier! 
                                                                        
  TYPE70   26.270  NRCPUS redefined, online-non-parked, value changed.  
  TYPE70PR 26.243  Support for OA21140 RMF HiperDispatch enhancements.  
    Because of these changes MXG 26.10 is now required for HiperDispatch
                                                                        
  TYPE73   26.243  Support for OA21140 zHPF High Performance FICON.     
  TYPE120  26.262  Support for WebSphere Version 7, new subtype 9 data. 
  TYPEMVCI 26.254  Support for MAINVIEW for CICS 6.1 CMRDETL (INCOMPAT).
  TYPEBVIR 26.250  Support for eight clusters in BVIR33 dataset.        
  TYPEHSM  26.249  Sorting HSM ABARS datasets caused NOT SORTED errors. 
  TYPE113  26.247  SMF 113 data records needed to finish support.       
  TYPE70   26.269  CPUWAIxx/MVSWAIxx for CP Engines 33-63 were missing. 
  TYEPRMFV 26.246  RMF III ASIPHTxx SRB CPU times wrong by x1000.       
  TYPETPMX 26.245  ERROR VARNAME=$JXSLMJ_ in Thruput Mgr SMF corrected. 
  GRAFWRKX 26.244  MIPS was not calculated for WORKLOAD=0, uncaptured.  
  ANALDB2R 26.256  %ANALDB2R(PDB=SMF); failed with error.               
  VMXGOPTR 26.242  Internal utility enhanced for multiple options.      
  TYPEVMXA 26.241  LINUXKRNL '02'x caused BROKEN CONTROL RECORD error.  
  TYPE112  26.257  TYPE112 now reads both V550 & V560 subtype 203 data. 
  TYPEOMCI 26.257  TYPEOMCI supports subtype 200,201,203, but only V550.
  VMXGINIT 26.252  Forward Slash in a unix libref for WORK supported.   
  TYPECTLG 26.255  Enhancements to processing Catalog records.          
  Many     26.252  %QUPCASE(xxx) vs %UPCASE for forward slash protect.  
  Many     26.259  QA Stream revised to eliminate return code & warnings
  WPS      26.258  WPS 2.3.4 now required for MXG, ARRAY(256,512) error.
                                                                        
    Major enhancements added in MXG 26.09, dated Oct 20, 2008           
                                                                        
  TYPE70   26.236  HiperDispatch CPUPATTM, PCTMVSBY can be wrong TYPE70.
  TYPE7072 26.222  Large CPUIFATM IFAUNITS when op varied CP on/offline.
  ASUMMIPS 26.216  ZIPUSED MSU was incorrect, ZIP/ZAP metrics fixed.    
  TYPENMON 26.224  NMON variables without decimal point may be wrong.   
  TYPESVC  26.221  Support for IBM DS8000 2107 SAN Disk SVCPerfStats.   
  TYPENTSM 26.213  Support for new data in NTDS and ASP.NET App objects.
  TYPETMDB 26.210  Support for ASG/Landmark DB2 Monitor V4.1 raw data.  
  TYPETNG  26.223  Support for NSM VMWARE ESX 2.5.5 new objects.        
  FORMATS  26.231  MEMLIMIT '00000FFFFFFFF000'x value is NOLIMIT.       
  READDB2  26.233  Dataset DB2STAT4 and T102S225 created for IFCID=225. 
  ASUMSTGP 26.228  Example to report DASD storage by Storage Group.     
  TYPERMFV 26.218  RMF III ASIRNM,ASIRDE (reporting class) names blank. 
  TYPENDM  26.215  NDM-CDI subtype 'UC' is now output in NDMAE.         
  TYPE1415 26.214  Invalid extended segment protection enhanced.        
  UPRINDOC 26.238  Utility to PROC PRINT the LABEL and VARIABLE NAME.   
                                                                        
    Major enhancements added in MXG 26.08, dated Sep 12, 2008           
                                                                        
  TYPEVMXA 26.203  Support for z/VM 5.4 (COMPATIBLE with MXG 25.04+).   
  TYPEDB2  26.201  Support for DB2 V9.1 SMF 100,101 (COMPAT MXG 25.25+) 
  TYPE1415 26.199  INVALID SMF1415 RECORD, even with Change 25.228, fix.
  TYPEBVIR 26.198  All BVIR32 Pool 00-31 are now Pool 01-32 variables.  
  TYPETPMX 26.207  Support for Thruput Manager Subtype 7, new fields.   
  IMACICMR 26.206  Optional BMC CMRDATA increased in CICS/TS 3.2.       
  WEEKBLDT 26.205  SYSNAME incorrectly added to BY List for TYPE892.    
  TYPESHDW 26.204  Support for new subtypes, fields Shadow USER SMF.    
  BUILDPDB 26.208  Variables SMF30MLS, MEMLIMIT now kept in PDB.STEPS.  
                                                                        
    Major enhancements added in MXG 26.07, dated Aug 24, 2008           
                                                                        
  TYPE7072 26.071  Support for z/OS 1.10 (INCOMPAT, due to MXG code).   
    MXG code that protected an earlier IBM error in the number of       
    triplets caused z/OS 1.10 TYPE72GO to have zero observations,       
    so MXG 26.07 is REQUIRED to support z/OS 1.10 records.  Sorry!      
                                                                        
  MXGSAS92 26.191 New JCL proc for SAS V9.2 with new z/OS DSNAMES.      
                                                                        
  VMXGINIT 26.189  SAS V9.2 Hot Fix F9BA07 eliminates new WARNINGs      
    MXG Version 26.03+ provided circumvention for new WARNING messages  
    that set condition Code 4 with SAS V9.2, but SAS Hot Fix F9BA07     
    now eliminates the need for that MXG circumvention.                 
                                                                        
  TYPE42   26.187  Support for APAR OA25205 adds SMF 42 subtypes, data. 
  TYPEINSY 26.182  Support for MACRO4 INSYNC SMF user record.           
  ASMIMSL6 26.190  Support for IMS Log record 0A (CPI-CI Drive PGM).    
  TYPEIMS7 26.190  Support for IMS Log record 0A (CPI-CI Drive PGM).    
  ASUMCEC  26.188  HiperDispatch subtracts SMF70PAT from SMF70ONT       
  ASUMDB2P 26.183  Revised summary/trending of DB2ACCTP example.        
  TYPERMFV 26.178  RMF III z/OS 1.9 changed length of ASI segment.      
                                                                        
    Major enhancements added in MXG 26.06, dated Aug  6, 2008           
                                                                        
  ASMTAPEE 26.148  MXGTMNT ML-43 captures IEF233D mount event, improved.
  UNDUPSMF 26.152  Utility removes duplicate SMF records, output is VBS.
  RMFINTRV 26.165  New RMFWKLRV: RMFINTRV Workload-only dataset created.
  TYPEQACS 26.166  Support for AS/400 Version 6.1.0 (COMPATIBLE).       
  TYPETPF  26.163  Support for TPF PUT22 changes, and corrections.      
  TYPEOMCI 26.160  Support for Omegamon CICS User records in SMF 112.   
  TYPE99   26.155  Support for SMF 99 Subtype 11 Group Capacity Limits. 
  TYPE28   26.151  Support for APAR OA24416, 'D6'x NPM record.          
  TYPEMVCI 26.145  Support for BMC Mainview CICS CMRTYPE=109 (ABENDS).  
  TYPETNG  26.172  Support for NSM VMware Virtual Center 2.5 Servers.   
  TYPEDCOL 26.142  DCOLDSET identifies 'HFS' and 'PDSE' datasets.       
  TYPETMS5 26.161  New BESKEY variable identifies encrypted CA-1 tapes. 
  TYPERMFV 26.150  SPG variables too small due to typo.                 
  TYPEBVIR 26.143  TS7700 Statistical dataset BVIR32 was trashed.       
  TYPE110  26.141  CICS STID=74 dataset CICIMQ ERROR message removed.   
  BUILDPD3 26.164  JES3 BUILDPD3 variable JOBCLASS could be blank.      
  WEEKxxxx 26.157  NOTSORTED condition due to inconsistent BY lists.    
  TYPE77   26.139  TYPE77 QUEUE1-QUEUE4 were wrong, over 100%.          
  TYPE70PR 26.154  SMF70LAC missing in PDB.TYPE70PR after offline LPAR. 
                                                                        
    Major enhancements added in MXG 26.05, dated Jun 18, 2008           
                                                                        
  TYPESVIE 26.133  Support for CA SYSVIEW, CICS, IMS, MVS in one member.
                   replaces partial support (2005) TYPESYSV, TYPESYSI.  
                                                                        
  ASMTAPEE 26.135  ML-42 of MXGTMNT, backs out JOB error in ML-41.      
  ASUMTAPE 26.122  SYSLOG JOB parse failed with 3 commas in TRANWRD.    
  TYPETMNT 26.128A Correction for DEFECT in ASMTAPEE ML-41, CRITICAL.   
                   users of MXGTMNT need all three changes above.       
                                                                        
  ASUMMIPS 26.131  MIPS/MSU analysis adds IFAs/zAAPs and zIIPs MIPS.    
  TYPEPRPR 26.128  Prisma SMF record change in April was not documented.
  TYPENTSM 26.125  Support for BITS NET UTIL, PACER PIPE, USB objects.  
  TYPENTSM 26.123  Support for new fields in MEMORY, PROCESS objects.   
  TYPEOMAU 26.121  Support for OMEGAMON Audit Records in CICS record.   
  TYPE120  26.126  WebSphere allocfails wrong, invalid triplets, st 3.  
  UTILEXCL 26.130  Documentation for IMACICEZ/E1/E2 tailoring enhanced. 
  VMACDB2  26.136  Corrections to IFCID 119 and IFCID 225 variables.    
                                                                        
    Major enhancements added in MXG 26.04, dated Jun  4, 2008           
                                                                        
  TYPE70   26.112  26.03: TYPE70 CPUMVSTM/PCTMVSBY/SHORTCPS missing.    
  TYPE74   26.117  TYPE747C was missing most observations, now enhanced.
  TYPE42   26.103  INPUT EXCEEDED ID=42 SUBTYPE=15 if more than one S2. 
  TYPE23   26.116  Support for APAR OA22414 new variables.              
  TYPETMVS 26.111  Full support for TMVS Release 4.1, INCOMPATIBLE.     
  TYPEINFO 26.098  Support for Informatics STAT user SMF record.        
  TYPE80A  26.107  INPUT EXCEEDED due to new ASSIZMAX in TOKDANAM.      
  TYPE7xxx 26.115  Inconsistent BY list for RMF data are now consistent.
  TYPETMNT 26.103  TYPETASK='J  ' in TYPETMNT corrected in VGETJEXN.    
  TYPEVMXA 26.114  MONWRITE BAD CONTORL RECORD, with 6.24 record        
  MONTHxxx 26.115  Inconsistent BY list for RMF data are now consistent.
  WEEKxxxx 26.115  Inconsistent BY list for RMF data are now consistent.
                                                                        
    Major enhancements added in MXG 26.03, dated May 11, 2008           
                                                                        
  ==Support for SAS Version 9.2: COMPATIBLE, no ERRORS, new WARNings==  
                                                                        
    See revised note for Hot Fix F9BA07 in MXG 26.07 Major Enhancements 
                                                                        
    All recent MXG Versions execute WITHOUT error with SAS Version V9.2.
    V9.2 libraries are read/written by SAS V8.2 or V9.1.3, & vice versa.
    SAS V9.2 Phase I Foundation Level on z/OS and ASCII SAS was tested. 
                                                                        
    These MXG Versions WILL print a new SAS V9.2 WARNING, that sets CC=4
    (condition/return code), but that warning is harmless (to MXG code),
    so all MXG output SAS datasets are correct, even with that warning. 
                                                                        
    So the ONLY exposure with prior MXG Versions under V9.2 is on z/OS, 
    and ONLY if condition code tests are used in your MXG jobstreams.   
                                                                        
     This new-in-SAS V9 "MULTIPLE LENGTHS OF A VARIABLE" warning message
     surfaced in MXG delivered code primarily in these two cases:       
                                                                        
      a.The intended shortening of the LENGTH of a numeric variable, but
        only when the LENGTH statement precedes the SET/MERGE/UPDATE.   
        This occurs in VMXGSUM where the fixed-length-8 variables output
        by PROC MEANS were reduced to 4-bytes, prior to option KEEPLEN. 
        The VMXGSUM utility is invoked in all MXG summarization, like   
        ASUMxxxx and TRNDxxxx, many ANALxxxx members, and in summarizing
        RMFINTRV and CICINTRV programs included in BUILDPDB.            
        It is pervasive in MXG.                                         
        MXG Version 26.03 relocated its LENGTH statement to eliminate.  
                                                                        
      b.A JOIN of multiple datasets (SET MON.JOBS TUE.JOBS ...) where   
        a variable has different lengths in different datasets.         
        This also occurs in VMXGSUM, when multiple input datasets are to
        be combined, like TRENDing, where TREND had shortened LENGTHs   
        but the "NEWTREND" internally has fixed, pre-KEEPLEN LENGTHs.   
        MXG 26.03 adds KEEPLEN option to PROC MEANS to eliminate.       
                                                                        
    MXG Version 26.03 eliminated the new SAS V9.2 WARNING internally,   
    in all MXG code members that generated that message.                
      In member VMXGINIT:                                               
        Change 26.065 (MXG 26.03) added OPTION VARLENCHK=NOWARN.        
        Change 26.189 (MXG 26.07) removed that option.                  
                                                                        
    Without VARLENCHK=NOWARN, EVEN at 26.03+V9.2 the WARNING can OCCUR: 
                                                                        
      a. If you have tailoring members in "USERID.SOURCLIB" from old MXG
         versions, that need the same code revisions to eliminate.      
                                                                        
      b. In user-written SAS programs, this could actually be a valid   
         warning that a variable was truncated.                         
                                                                        
     or, at any time in the future, the WARNING can still occur:        
                                                                        
      c. When an MXG Version that changed variable LENGTHs is installed,
         subsequent WEEKLY or MONTHLY jobs create the WARNING because   
         some PDB's have the old length and some have the new length,   
         when those multiple datasets are joined.  Previous to V9.2,    
         length were changed with no WARNING nor CC.  Between MXG 24.24 
         and 25.25 1206 variable's lengths were changed.                
                                                                        
    The Hot Fix is F9BA07.                                              
                                                                        
    Changes 26.191,26.189,26.090,26.078,26.065,26.060 have V9.2 details.
                                                                        
    Note: Originally, MXG 26.02 claimed it supported V9.2, but changes  
          26.078 and 26.090 are required to eliminate the new WARNING   
          in MXG-delivered code, but there were no errors in 26.02/9.2. 
                                                                        
  VMXGSUM  26.090  Support for SAS V9.2 - See 26.078, 26.065, 26.060.   
  VMXGSUM  26.078  26.02 ONLY - VARIABLE NOT FOUND corrected.           
  ASUMTAPE 26.083  MAJOR rewrite of ASUMTAPE matches more, adds SPIN.   
  ASMTAPEE 26.095  ML-41 of MXGTMNT, TYPEARCV Allocation Recovery event 
  TYPEAFOP 26.086  Support for AF/Operator SMF record.                  
  TYPECTMU 26.089  Support for Control-M log records on unix/open sys.  
  TYPECTMZ 26.089  Support for Control-M log records on z/OS.           
  TYPE112  26.088  Support for SMF 112 MQ segment (subtype 0200x).      
  ANALHSM  26.084  New MIGRATE/RECALL/BACKUP HSM report example added.  
  TYPE30   26.077  Negative CPUUNITS from zAAPs calculations eliminated.
                                                                        
                                                                        
    Major enhancements added in MXG 26.02, dated Apr 22, 2008           
                                                                        
  Doc      26.060  Cosmetic SAS V9.2 differences with SAS V9.1.3.       
  TYPE7072 26.039  Support for APAR OA24074, corrected Parked Time.     
  ANALACTM 26.064  Implementation of Rich Olcott's The ACTuals Map.     
  TYPEACF2 26.051  Support for ACF2 Release 6.2.                        
  TYPEMGCR 26.047  Support for Version 6 of MegaCryption SMF record.    
  IMAC6ESS 26.046  Support for GPARMKY=0050x ESSPRTA variable.          
  TYPEIMS7 26.045  Support for IMS Version 10 '08'x Log Record.         
  TYPECIMS 26.058  IMF dataset TYPECIMS variable INPUTCLS corrected.    
                                                                        
    Major enhancements added in MXG 26.01, dated Mar 11, 2008           
                                                                        
  TYPE7072 26.025  Support for APAR OA12774 new z10 RMF data (COMPAT).  
                   MXG 25.25 supports the z10 hardware platform, but    
                   did not know about this new APAR with TYPE70 data.   
  TYPE7072 26.031  Support/Correction Dedicated zAAPs/Dedicated zIIPs.  
  TYPE7072 26.006  Support for 64 CP Engines.                           
  TYPE78CU 26.023  MXG 25.07-25.25. Last LCUID not output in TYPE78CU.  
  TYPE79   26.036  R723RCUT was .062 when it should have been 62.       
  TYPEIMSA 26.026  Support for new variables in IMS Version 9 and 10.   
  TYPEHSM  26.028A HSM FSR updated for z/OS 1.8 and 1.8 new variables.  
  TYPE102  26.011  Support for IFCID 22 APAR PK38803.                   
  TYPEMPLX 26.014  IMPLX Version 4.1 is now supported.                  
  VMXGINIT 26.012  SOURCLIB,SASAUTOS dsnames now printed at MXG INIT.   
  TYPE110  26.007  CICDS Dispatcher Statistics and PCTREGBY created.    
  ASUM70PR 26.003  LPARCPUS in ASUM70PR summary is not always integer.  
  TYPERMFV 26.032  Debugging PUT statement removed.                     
                                                                        
                                                                        
    Please read CHANGESS for the complete list of major enhancements.   
                                                                        
  See member NEWSLTRS or the Newsletters frame at http://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.     
                                                                        
II.   SAS Version requirement information:                              
                                                                        
      MXG 26.26 executes with SAS V8.2 or SAS V9.1.3 or SAS V9.2, on any
      supported platform.  It has not executed under SAS V6 in years.   
                                                                        
      The "PDB" libraries (i.e., SAS data libraries) must be created by 
      one of those listed SAS versions, but any of those data libraries 
      can be read or updated by any of those versions.                  
                                                                        
                                                                        
      For SAS Version V9.2 (TS1M0):                                     
                                                                        
        Big Picture: SAS Version V9.2 is COMPATIBLE with MXG Software.  
                                                                        
        On z/OS, new DSNAMES for SAS libraries are in the new MXGSAS92  
        JCL procedure example.                                          
                                                                        
        All recent MXG Versions execute WITHOUT error with SAS Version  
        V9.2.  V9.2 libraries are read/written by SAS V8.2 or V9.1.3, & 
        vice versa.                                                     
                                                                        
        Without SAS Hot Fix F9BA07, MXG versions prior to 26.03 will    
        print a new SAS V9.2 WARNING, that sets CC=4 (condition/return  
        code), but that warning is harmless (to MXG code) so all MXG    
        output SAS datasets are correct, even with that warning.  So the
        ONLY exposure with prior MXG Versions is only on z/OS, only if  
        condition code tests are used in your MXG jobstreams.           
                                                                        
                                                                        
      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 was fixed in V9.1.3; it has been 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 26.09 QA tests were executed on z/OS with SAS V9.1.3 and V9.2 
      and also both V9.1.3 and V9.2 on Windows XP.                      
      (I can no longer run QA tests with "archaic" SAS Version 8.2.)    
                                                                        
      Prior QA tests have been run with all SAS releases available at   
      that time on Linux RH8 on Intel, on Solaris v2.8 on a Model V880, 
      and on HP-UX v11.11 model rp5470, confirming full compatibility.  
                                                                        
      MXG should execute under SAS V9.1.3 or V9.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.                 
                                                                        
III.  WPS Version requirement information:                              
                                                                        
      WPS Version 2.3.4 is required for MXG.  See Change 26.258.        
                                                                        
      See NEWSLETTERS for "MXG Support for WPS Software"                
                                                                        
IV.   MXG Version Required for Hardware, Operating System Release, etc. 
                                                                        
    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        
      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      Mar  8, 2008       *26.01        
      z/OS Dedicated zAAP Support      Mar  8, 2008        26.01        
      z/OS 1.8 (COMPATIBLE CHANGES)    Sep 20, 2006       *24.24        
      z/OS 1.9 (INCOMPAT, 54 CPs)      Sep 27, 2007        25.10        
      z/OS 1.9 MXGTMNT at ML-39 reASM  Sep 27, 2007        25.10        
      z/OS new z10 variables           Mar  5, 2008        26.01        
      z/OS 1.8 With HiperDispatch      Sep 15, 2008       *26.10        
      z/OS 1.9 With HiperDispatch      Sep 15, 2008       *26.10        
      z/OS 1.10 (INCOMPAT, MXG code)   Sep 15, 2008        26.07        
      z/OS 1.10 With HiperDispatch     Sep 15, 2008       *26.10        
      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        
      z10  CPUs - CPUTYPE '2097'x      Dec  7, 2008        25.11        
      z10  HiperDispatch/Parked Time   Mar  3, 2008       *26.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 V2R2  CICS/TS 2.2        Feb  9, 2002        19.19        
      CICS-TS V2R3  CICS/TS 2.3        Aug 13, 2004        22.04        
      CICS-TS V3R1  CICS/TS 3.1        Jan 18, 2005        22.22        
      CICS-TS V3R2  CICS/TS 3.2        Dec  6, 2007        25.11        
      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 8.1 +PK47659                 Sep 12, 2008        26.08        
      DB2 9.1 See Change 25.265.       Dec  7, 2007        25.11        
      DB2 9.1 Full Support +PK/56356   Sep 12, 2008        26.08        
      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 TOLERATE             Jun  7, 2007        25.05        
      z/VM    5.3 NEW VARIABLES        Sep 12, 2008        26.08        
      z/VM    5.4 (COMPATIBLE)         Sep 12, 2008        26.08        
      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                      Mar 96, 2004        26.01*       
      IMS log 10.0                     Mar 06, 2007        26.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)                               26.02*       
      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        
                                                                        
V.    Incompatibilities and Installation of MXG 26.26.                  
                                                                        
                                                                        
 1. Incompatibilities introduced in MXG 26.26:                          
                                                                        
  a- Changes in MXG architecture made between 26.26 and prior versions  
     that can introduce known incompatibilities.                        
                                                                        
     ASUMTAPE:  You must delete SPIN.SPINMOUN before using the revised  
                ASUMTAPE program.  See change 26.083.                   
                                                                        
 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 now-archaic SAS Version 8.2).       
                                                                        
    MXG Definitions with regard to MXG Software Changes:                
                                                                        
    COMPATIBLE   A change in a data record which did not alter either   
    COMPAT       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.    
                                                                        
    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.                               
                                                                        
    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.     
                                                                        
                                                                        
VI.   Online Documentation of MXG Software.                             
                                                                        
    MXG Documentation is now described in member DOCUMENT.              
    See also member INDEX, but it may be overwhelming.                  
                                                                        
                                                                        
VII.  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 26.26 after MXG 25.25:    
                                                                        
  Dataset/                                                              
  Member   Change    Description                                        
                                                                        
  ANALACTM 26.064  Implementation of Rich Olcott's The ACTuals Map.     
  ANALDB2R 26.256  %ANALDB2R(PDB=SMF); failed with error.               
  ANALDBJO 26.278  Example analysis JOins DB2ACCT + DB2ACCTP, expensive.
  ANALHSM  26.084  New MIGRATE/RECALL/BACKUP HSM report example added.  
  ANALZPCR 26.283  zPCR failed with z/OS V1R9. SELECT=CECTIME supported.
  ANALZPCR 26.297  Execution errors in mismatched Tags corrected.       
  ASMIMSL6 26.190  Support for IMS Log record 0A (CPI-CI Drive PGM).    
  ASMTAPEE 26.095  ML-41 of MXGTMNT, TYPEARCV Allocation Recovery event 
  ASMTAPEE 26.095  ML-41 of MXGTMNT, TYPEARCV Allocation Recovery event 
  ASMTAPEE 26.135  ML-42 of MXGTMNT, backs out JOB error in ML-41.      
  ASMTAPEE 26.148  MXGTMNT ML-43 captures IEF233D mount event, improved.
  ASMTAPEE 26.317  Enhanced SYSLOG message capture, no reassembly.      
  ASUM70PR 26.003  LPARCPUS in ASUM70PR summary is not always integer.  
  ASUM70PR 26.031  Support/Correction Dedicated zAAPs/Dedicated zIIPs.  
  ASUM70PR 26.041  Default INTERVAL in ASUM70PR restored to QTRHOUR.    
  ASUMCEC  26.188  HiperDispatch subtracts SMF70PAT from SMF70ONT       
  ASUMDB2P 26.183  Revised summary/trending of DB2ACCTP example.        
  ASUMMIPS 26.131  MIPS/MSU analysis adds IFAs/zAAPs and zIIPs MIPS.    
  ASUMMIPS 26.216  ZIPUSED MSU was incorrect, ZIP/ZAP metrics fixed.    
  ASUMSTGP 26.228  Example to report DASD storage by Storage Group.     
  ASUMTAPE 26.083  MAJOR rewrite of ASUMTAPE corrects errors, adds SPIN.
  ASUMTAPE 26.122  SYSLOG JOB parse failed with 3 commas in TRANWRD.    
  ASUMUOW  26.282  APPLID could be blank in PDB.ASUMUOW.                
  BLDSMPDB 26.275  New WEK2KEEP=,MTH2KEEP= controls for keeping PDBs.   
  BUILDPD3 26.164  JES3 BUILDPD3 variable JOBCLASS could be blank.      
  BUILDPDB 26.208  Variables SMF30MLS, MEMLIMIT now kept in PDB.STEPS.  
  BUILDPDB 26.281  IFAUNITS,IFEUNITS added to PDB.STEPS and PDB.JOBS.   
  Doc      26.060  Cosmetic SAS V9.2 differences with SAS V9.1.3.       
  FORMATS  26.231  MEMLIMIT '00000FFFFFFFF000'x value is NOLIMIT.       
  FORMATS  26.304  Internal format $MGUTILD for DOCVER created.         
  GRAFWRKX 26.244  MIPS was not calculated for WORKLOAD=0, uncaptured.  
  IEBUPDTE 26.235  INFILE option TERMSTR=CRLF reads unix LF-only files. 
  IMAC6ESS 26.046  Support for GPARMKY=0050x, new ESSPRTAT variable.    
  IMACICMD 26.284  BMC Optional CMRDB2 segment increased to 256 INCOMPAT
  IMACICMR 26.206  Optional BMC CMRDATA increased in CICS/TS 3.2.       
  MONTHBL3 26.293  NOT SORTED for JES3 MONTHBL3.                        
  MONTHxxx 26.115  Inconsistent BY list for RMF data are now consistent.
  MXGSAS92 26.191  New JCL Proc for SAS V9.2, new z/OS DSNAMES.         
  Many     26.065  Support for no-WARNING execution under SAS V9.2.     
  Many     26.252  %QUPCASE(xxx) vs %UPCASE for forward slash protect.  
  Many     26.259  QA Stream revised to eliminate return code & warnings
  Many     26.289  QA Cleanup, variable LENGTHs changed, zdate added.   
  Many     26.300  Conflict Resolution, variables RE-NAMed,RE-LENGTHed  
  READDB2  26.233  Dataset DB2STAT4 and T102S225 created for IFCID=225. 
  READDB2  26.311  TEXT EXPRESSION LENGTH (65545) EXCEEDS corrected.    
  RMFINTRV 26.165  New RMFWKLRV: RMFINTRV Workload-only dataset created.
  RMFINTRV 26.295  New WKLDIOCN and WKLDIORT variables added to RMFWKLRV
  RMFINTRV 26.303  Capture Ratios for zAAPs,zIIPs added to PDB.RMFINTRV 
  TYEPRMFV 26.246  RMF III ASIPHTxx SRB CPU times wrong by x1000.       
  TYPE102  26.011  Support for IFCID 22 APAR PK38803.                   
  TYPE102  26.096  Variables QW0227FG/PG were always missing.           
  TYPE102  26.298  DB2 IFCID=22 INPUT STATEMENT EXCEEDED error fixed.   
  TYPE110  26.007  CICDS Dispatcher Statistics and PCTREGBY created.    
  TYPE110  26.052  Protection for SMF 110 St 2 STID 31 short segments.  
  TYPE110  26.141  CICS STID=74 dataset CICIMQ ERROR message removed.   
  TYPE112  26.088  Support for SMF 112 MQ segment (subtype 0200x).      
  TYPE112  26.257  TYPE112 now reads both V550 & V560 subtype 203 data. 
  TYPE113  26.247  SMF 113 data records needed to finish support.       
  TYPE119  26.067  ID=119 ST=21 INPUT STATEMENT EXCEEDED, NTHOSTTN short
  TYPE120  26.126  WebSphere allocfails wrong, invalid triplets, st 3.  
  TYPE120  26.262  Support for WebSphere Version 7, new subtype 9 data. 
  TYPE1415 26.199  INVALID SMF1415 RECORD, even with Change 25.228, fix.
  TYPE1415 26.214  Invalid extended segment protection enhanced.        
  TYPE23   26.116  Support for APAR OA22414 new variables.              
  TYPE23   26.312  Support for APAR OA27163, new interval variables.    
  TYPE28   26.151  Support for APAR OA24416, 'D6'x NPM record.          
  TYPE30   26.077  Negative CPUUNITS from zAAPs calculations eliminated.
  TYPE42   26.103  INPUT EXCEEDED ID=42 SUBTYPE=15 if more than one S2. 
  TYPE42   26.187  Support for APAR OA25205 adds SMF 42 subtypes, data. 
  TYPE70   26.112  26.03: TYPE70 CPUMVSTM/PCTMVSBY/SHORTCPS missing.    
  TYPE70   26.236  HiperDispatch CPUPATTM, PCTMVSBY can be wrong TYPE70.
  TYPE70   26.269  CPUWAIxx/MVSWAIxx for CP Engines 33-63 were missing. 
  TYPE70   26.270  NRCPUS redefined, online-non-parked, value changed.  
  TYPE70   26.308  TYPE70 PARTNICF/IFA/IFL/ZIP variables added.         
  TYPE7072 26.025  Support for APAR OA12774 new z10 variables (COMPAT). 
  TYPE7072 26.031  Support/Correction Dedicated zAAPs/Dedicated zIIPs.  
  TYPE7072 26.039  Support for APAR OA24074, corrected Parked Time.     
  TYPE7072 26.0781 Support for z/OS 1.10 (INCOMPAT, due to MXG code).   
  TYPE7072 26.222  Large CPUIFATM IFAUNITS when op varied CP on/offline.
  TYPE70PR 26.154  SMF70LAC missing in PDB.TYPE70PR after offline LPAR. 
  TYPE70PR 26.243  Support for OA21140 RMF HiperDispatch enhancements.  
  TYPE71   26.069  TYPE71 HIUICMN,HIUICMX had wrong UIC values.         
  TYPE72GO 26.276  Negative one value for CPUUNITS due to resolution.   
  TYPE72GO 26.299  MXG 26.10-26.11. PERFINDX missing for R723TYPE=2.    
  TYPE73   26.243  Support for OA21140 zHPF High Performance FICON.     
  TYPE74   26.115  RMF BYLIST is SYSPLEX SYSTEM SYSNAME STARTIME.       
  TYPE74   26.117  TYPE747C was missing most observations, now enhanced.
  TYPE77   26.139  TYPE77 QUEUE1-QUEUE4 were wrong, over 100%.          
  TYPE77   26.271  INVALID THIRD ARGUMENT TO FUNCTION SUBSTR in RMF 77. 
  TYPE78   26.288  TYPE78CU variables for Aliases could be wrong.       
  TYPE78CU 26.023  MXG 25.07-25.25. Last LCUID not output in TYPE78CU.  
  TYPE79   26.036  Variable R793CUT was 0.062, should have been 62.     
  TYPE80A  26.107  INPUT EXCEEDED due to new ASSIZMAX in TOKDANAM.      
  TYPE92   26.277  Support for APAR OA24208 new subtype 15 for ID=92.   
  TYPE99   26.155  Support for SMF 99 Subtype 11 Group Capacity Limits. 
  TYPEACF2 26.051  Support for ACF2 Release 6.2.                        
  TYPEACF2 26.324  Enhancement for ACF2 support adds IHDRACF2 exit.     
  TYPEAFOP 26.086  Support for AF/Operator SMF record.                  
  TYPEBVIR 26.018  BVIR30 now contains both PG0 and Preference Grp 1.   
  TYPEBVIR 26.143  TS7700 Statistical dataset BVIR32 was trashed.       
  TYPEBVIR 26.198  All BVIR32 Pool 00-31 are now Pool 01-32 variables.  
  TYPEBVIR 26.250  Support for eight clusters in BVIR33 dataset.        
  TYPECIMS 26.058  IMF dataset TYPECIMS variable INPUTCLS corrected.    
  TYPECTLG 26.255  Enhancements to processing Catalog records.          
  TYPECTMU 26.089  Support for Control-M log records on unix/open sys.  
  TYPECTMZ 26.089  Support for Control-M log records on z/OS.           
  TYPEDB2  26.201  Support for DB2 V9.1 SMF 100,101 (COMPAT MXG 25.25+) 
  TYPEDB2  26.274  Some DB2 V9-only QWACxxxx vars were INPUT with V8.   
  TYPEDB2  26.311  DB2STATS4 for IFCID=225 in DB2 V9 corrections.       
  TYPEDCOL 26.142  DCOLDSET identifies 'HFS' and 'PDSE' datasets.       
  TYPEENQM 26.323  Support for IBM's ENQ/DEQ Monitor flat file.         
  TYPEHSM  26.028A HSM FSR updated for z/OS 1.8 and 1.8 new variables.  
  TYPEHSM  26.249  Sorting HSM ABARS datasets caused NOT SORTED errors. 
  TYPEIMS7 26.026  Support for new variables in IMS Version 9 and 10.   
  TYPEIMS7 26.045  Support for IMS Version 10 '08'x Log Record.         
  TYPEIMS7 26.190  Support for IMS Log record 0A (CPI-CI Drive PGM).    
  TYPEIMSA 26.026  Support for new variables in IMS Version 9 and 10.   
  TYPEINFO 26.098  Support for Informatics STAT user SMF record.        
  TYPEINSY 26.182  Support for MACRO4 INSYNC SMF user record.           
  TYPEIPAC 26.290  View Direct subtype 3 record error, needs ptf?       
  TYPEITRF 26.034  ITRF x'10' INPUT STATEMENT EXCEEDED with LENGTH=251. 
  TYPEMGCR 26.047  Support for Version 6 of MegaCryption SMF record.    
  TYPEMPLX 26.014  IMPLX Version 4.1 is now supported.                  
  TYPEMVCI 26.145  Support for BMC Mainview CICS CMRTYPE=109 (ABENDS).  
  TYPEMVCI 26.254  Support for MAINVIEW for CICS 6.1 CMRDETL (INCOMPAT).
  TYPENDM  26.215  NDM-CDI subtype 'UC' is now output in NDMAE.         
  TYPENMON 26.100  Invalid MEM header record protected.                 
  TYPENMON 26.224  NMON variables without decimal point may be wrong.   
  TYPENMON 26.279  DISKSERV,DISKWAIT,MEMPAGESxxx supported, some fixes. 
  TYPENTSM 26.123  Support for new fields in MEMORY, PROCESS objects.   
  TYPENTSM 26.125  Support for BITS NET UTIL, PACER PIPE, USB objects.  
  TYPENTSM 26.213  Support for new data in NTDS and ASP.NET App objects.
  TYPEOMAU 26.121  Support for OMEGAMON Audit Records in CICS record.   
  TYPEOMCI 26.160  Support for Omegamon CICS User records in SMF 112.   
  TYPEOMCI 26.257  TYPEOMCI supports subtype 200,201,203, but only V550.
  TYPEOMMQ 26.319  Support for Omegamon XE MQ Export File               
  TYPEOPCN 26.280  Support for Open Connect user SMF record.            
  TYPEPRPR 26.128  Prisma SMF record change in April was not documented.
  TYPEQACS 26.166  Support for AS/400 Version 6.1.0 (COMPATIBLE).       
  TYPERACF 26.022  TYPERACF supports ASCII execution with EBCDIC ftp.   
  TYPERMFV 26.032  Debugging PUT statement removed.                     
  TYPERMFV 26.053  Calculations of ASIxxxxx variables to match RMF.     
  TYPERMFV 26.150  SPG variables too small due to typo.                 
  TYPERMFV 26.178  RMF III z/OS 1.9 changed length of ASI segment.      
  TYPERMFV 26.218  RMF III ASIRNM,ASIRDE (reporting class) names blank. 
  TYPERMFV 26.287  Support for RMF III CPUG3 z/OS 1.9 (INCOMPAT).       
  TYPESHDW 26.204  Support for new subtypes, fields Shadow USER SMF.    
  TYPESRDF 26.059  SPDMXUSE is character, SRDMXUPS is new numeric pct.  
  TYPESVC  26.221  Support for IBM DS8000 2107 SAN Disk SVCPerfStats.   
  TYPESVIE 26.133  Support for CA SYSVIEW, CICS, IMS, MVS in one member.
  TYPETMDB 26.210  Support for ASG/Landmark DB2 Monitor V4.1 raw data.  
  TYPETMDB 26.313  New subtypes for TMON for DB2 V4 and V4.1.           
  TYPETMNT 26.103  TYPETASK='J  ' in TYPETMNT corrected in VGETJEXN.    
  TYPETMNT 26.128A Correction for DEFECT in ASMTAPEE ML-41, CRITICAL.   
  TYPETMS5 26.161  New BESKEY variable identifies encrypted CA-1 tapes. 
  TYPETMVS 26.111  Full support for TMVS Release 4.1, INCOMPATIBLE.     
  TYPETNG  26.033  Support for more new VMware Objects in CA NSM.       
  TYPETNG  26.172  Support for VMware Virtual Center Servers in NSM.    
  TYPETNG  26.223  NSM VMWARE ESX 2.5.5 new objects supported.          
  TYPETPF  26.163  Support for TPF PUT22 changes, and corrections.      
  TYPETPMX 26.207  Support for Thruput Manager Subtype 7, new fields.   
  TYPETPMX 26.245  ERROR VARNAME=$JXSLMJ_ in Thruput Mgr SMF corrected. 
  TYPEVMXA 26.114  MONWRITE BAD CONTORL RECORD, with 6.24 record        
  TYPEVMXA 26.203  Support for z/VM 5.4 (COMPATIBLE with MXG 25.04+).   
  TYPEVMXA 26.241  LINUXKRNL '02'x caused BROKEN CONTROL RECORD error.  
  TYPEXAM  26.272  Variable SIZE in HSTMEM incorrectly INPUT, is RB4.   
  UNDUPSMF 26.152  Utility removes duplicate SMF records, output is VBS.
  UPRINDOC 26.238  Utility to PROC PRINT the LABEL and VARIABLE NAME.   
  UTILBLDP 26.212  SAS V9.2 only, %ELSE %THEN %DO correction overlooked.
  UTILBLDP 26.294  SUPPRESS=CICSTRAN or DB2ACCT options added.          
  UTILCVRT 26.322  UTILCVRT utility for z/OS to ASCII conversion revised
  UTILEXCL 26.130  Documentation for IMACICEZ/E1/E2 tailoring enhanced. 
  VMACDB2  26.136  Corrections to IFCID 119 and IFCID 225 variables.    
  VMXGCAPT 26.001  Typo VMUM corrected to VWUM.                         
  VMXGINIT 26.012  SOURCLIB,SASAUTOS dsnames now printed at MXG INIT.   
  VMXGINIT 26.189  SAS V9.2 Hot Fix F9BA07 eliminates new WARNINGs      
  VMXGINIT 26.252  Forward Slash in a unix libref for WORK supported.   
  VMXGINIT 26.310  The MXGWORK= argument of VMXGINIT is removed.        
  VMXGOPTR 26.242  Internal utility enhanced for multiple options.      
  VMXGPRAL 26.293  Print all datasets with variable name + label heading
  VMXGSUM  26.078  26.02 ONLY - possible VARIABLE NOT FOUND internally. 
  VMXGSUME 26.227  Now invokes normal VMXGSUM, no longer needed.        
  WEEKBLDT 26.205  SYSNAME incorrectly added to BY List for TYPE892.    
  WEEKxxxx 26.115  Inconsistent BY list for RMF data are now consistent.
  WEEKxxxx 26.157  NOTSORTED condition due to inconsistent BY lists.    
  WPS      26.258  WPS 2.3.4 now required for MXG, ARRAY(256,512) error.
  WPS      26.291  Circumvention for CCHHR, not supported in WPS.       
                                                                        
  See member CHANGESS for all changes ever made to MXG Software.        
                                                                        
                                                                        
Inverse chronological list of all Changes:                              
                                                                        
NEXTCHANGE: Version 26.                                                 
                                                                        
====== Changes thru 26.326 were in MXG 26.26 dated Feb 12, 2009=========
                                                                        
Change 26.326  Two Errors in the First MXG 26.26 dated Feb 3 were fixed 
READDB2        by replacement of READDB2 and VMXGRMFI:                  
VMXGRMFI      -READDB2 in MXG 26.26: might not create all datasets that 
Feb 12, 2009   you requested, and could impact ANALDB2R(PDB=SMF,...) as 
               the READDB2 member is invoked by ANALDB2R to read SMF.   
               Last minute changes for IFCID=255 and DB2STAT4 were made 
               but validation focused only on that correction.          
              -If VMXGTIME was being used, when READDB2 tried to resolve
               a local macro variable it got a bad value placed in a    
               local macro variable by VMXGTIME.  This generated a      
               WARNING: MACRO VARIABLE NOT RESOLVED.  The macro variable
               name was changed in READDB2 to prevent the conflict.     
   Thanks to Raff Rushton, Kaiser Foundation Hospitals, USA.            
               MXG 26.26 ONLY: PDB.RMFINTRV negative PCTCPUBY, HiperDsp.
               But ONLY if HiperDispatch is active, plus negative values
               in variables PCTOVHTD CPUACTTM CPUOVHTM MSUINTRV MSUPERHR
               MSU4HRAV and PCTOFHDW.  A recalculation of CPUACTTM was  
               not tested with RMF data with HiperDispatch active (i.e.,
               when SMF70PAT/CPUPATTM were GT zero).  That recalculation
               was removed by this change.                              
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
                                                                        
====== Changes thru 26.325 were in MXG 26.26 dated Feb  3, 2009=========
                                                                        
Change 26.325  The calculation of RDHITPCT in TYPE42SR was corrected by 
VMAC42         Change 19.006, but other instances (TYPE42VT,TYPE42DS)   
Feb  3, 2009   were still divided by CACHCAND vs (CACHCAND-WRITCAND),   
               so the read hit percentage was wrong in those datasets.  
   Thanks to Scott Chapman, American Electric Power, USA.               
                                                                        
Change 26.324  Enhancement for ACF2 support creates IHDRACF2 Header exit
IHDRACF2       taken after the header variables for ACF2 have been INPUT
VMACACF2       so record selection based on existing ACF2 variables can 
VMXGINIT       be used.  The "instream" &MACACFH can be used to access  
Feb  2, 2009   the same exit point. IHDRACF2 lists all vars that exist. 
   Thanks to Jerry Urbaniak, Acxiom, USA.                               
                                                                        
Change 26.323  Support for IBM's ENQ/DEQ monitor, described in IBM      
EXENQMON       Publication SA22-7600-07, "z/OS MVS Planning: Global     
IMACENQM       Resource Serialization", Chapter 3, creates a flat       
TYPEENQM       file that is read by this support from //ENQM DDname,    
TYPSENQM       creating dataset ENQMONIT.                               
VMACENQM       The IBM ISGAJE1A report can be printed using the         
VMXGINIT       example PROC PRINT in the VMACENQM comments.             
Jan 30, 2009                                                            
FORMATS                                                                 
Feb 24, 2009                                                            
   Thanks to Debby Blackey, HCH Healthcare, USA.                        
                                                                        
Change 26.322  The UTILCVRT utility is used if you transfer SAS datasets
FORMATS        from z/OS to an ASCII platform (XPORT,CPORT), if a data  
Jan 30, 2009   set contains CHAR variables that are FORMATted $HEX.  In 
Feb 13, 2010   transferring the values, SAS unilaterally converts all   
               CHAR variables from EBCDIC to ASCII, so a CPUTYPE='2086'x
               gets translated to '8766'x in the ASCII SAS dataset.  The
               format used by UTILCVRT was completely wrong, because it 
               was based on the IND$FILE programs EBCDIC to ASCII table.
               The $MGAS2EB format used in UTILCVRT is now based on the 
               TRANTAB SAS V9.1.3 CPORT mapping on z/OS at a USA site.  
               Feb 13, 2010:  UTILCVRT is no longer needed. The new     
               TRANSCODE attribute, added by MXG Change 27.014 to all   
               $CHAR variables containing $HEX values, eliminates the   
               unwanted translation so downloaded values are valid.     
   Thanks to Roman Gudz, Penske, USA.                                   
                                                                        
Change 26.321  Corrections to IBM RMF-like reports for zIIPs, zAAPs and 
ANALRMFR       IFLs, and revised sort order to match IBM's reports.     
Jan 28, 2009                                                            
   Thanks to Kim Westcott, OFT State of New York, USA.                  
                                                                        
Change 26.320  Variable EZA01A13 for the optional EZA01-A CICS segment  
UTILEXCL       was not in the generated KEEP statement.                 
Jan 28, 2009                                                            
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.319  Support for Exported Data from Omegamon XE MQ records.   
EXOMAA10       This is non-standard, since an export file can contain a 
EXOMDD10       number of datasets to be recreated.  The MXG logic reads 
EXOMDD20       the initial control records (AA10,DD10,DD20,DD30) and    
EXOMDD30       writes the needed old-style macros to //INSTREAM which   
IMACOMMQ       is then processed by the second pass in _2NDOMMQ macro,  
TYPEOMMQ       to read the ROW1 records and create all datasets.  This  
TYPSOMMQ       iteration doesn't label the variables nor datasets.      
VMACOMMQ       The EXPORT files cannot be concatenated, since they      
VMXGINIT       may have different tables/datasets to be created.  The   
Jan 29, 2009   JCL to process these export files is                     
                 // EXEC MXGSASV9                                       
                 //OMMQ DD DSN=YOUR.EXPORT.FILE,DISP=SHR                
                 //PDB  DD DSN=THE.OUTPUT.sASDATA.LIBRARY,DISP=OLD      
                 //SYSIN DD *                                           
                   %INCLUDE SOURCLIB(TYPSOMMQ);                         
               These eleven datasets have been created:                 
                  QMCHANIN QMCH_LH QMEVENTH QMLHBM   QMLHLM   QMLHMM    
                  QMPS_LH  QMQ_LH  QM_APAL  QM_APQL  QM_APTL            
               This implementation automatically creates a dataset for  
               every table in the DD20/DD30 records, and will convert   
               the known 16-character datetime fields into datetime     
               variables, and formats known duration and hex-containing 
               fields, but new variables in new datasets will require   
               updates to MXG code to properly convert or format them,  
               because the AA10/DD10/DD20/DD30 control records do not   
               contain any intelligence describing contents of fields.  
   Thanks to Frank Cortell, Credit-Suisse, USA.                         
   Thanks to Michael Reffler, Credit-Suisse, USA.                       
                                                                        
Change 26.318  Message "ARRAY SIZE TOO SMALL" added by Change 25.177 is 
VMXGRMFI       now only printed three times.                            
Jan 26, 2009                                                            
   Thanks to Ed Long, FMR, USA.                                         
                                                                        
Change 26.317  Enhanced SYSLOG message capture in SMF record subtype 9, 
ASMTAPEE       no longer requires a re-assembly to add or change the    
Jan 25, 2009   MSGIDs to be written to SMF.  Now, the list of MSGIDs is 
               read at MXGTMNT Start Up from the text file of messages  
               pointed to by the //MXGMSGID DD name in the MXGTMNT JCL. 
               See comments in the ASMTAPEE member for details.         
               This is now ML-44 maintenance level of the monitor.      
               (Previously, you had to list the MSGIDs in the ASMTAPEE  
               assembly source code; that table no longer exists, as it 
               is replaced by the external file of MSGIDs.)             
                                                                        
Change 26.316  Variable RNAMEHEX contained the "hex of the hex" instead 
VMAC77         of the hex value of the RNAME, for those cases in which  
Jan 25, 2009   the RNAME/MINORQCB contains non-printable characters.    
   Thanks to Joe Kimberly, Kansas City Southern Railway Co., USA.       
                                                                        
Change 26.315  Using MACDB2H= or MAC110H tailoring and UTILBLDP was not 
UTILBLDP       correctly coded, causing execution messages              
Jan 23, 2009        *ERROR: OPEN CODE STATEMENT RECURSION DETECTED.     
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.314  Enhancement for CMRDETL records from BMC TMON for CICS.  
IHDRMVCI      -The INFILE "Header" EXIT IHDRMVCI is created, so records 
VMACMVCI       can be selected after the header has been read. The full 
VMXGINIT       list of variables that exist are listed in comments.     
Jan 23, 2009  -The IHDRMVCI exit can be invoked with %LET MACMVCH=.     
              -The option JFCB=MVCIJFCB is added to INFILE CMRDETL so   
               that the JFCB is stored in variable MVCIJFCB, from which 
               the z/OS DSNAME can be retrieved. This is similar to the 
               existing SMFJFCB variable created with INFILE SMF.       
               For example, adding this code                            
                //SYSIN DD *                                            
                 %LET MACMVCH=                                          
                  %QUOTE(                                               
                     IF MVCIDSN=' ' THEN DO;                            
                       MVCIDSN=STRIP(SCAN(MVCIJFCB,1,' ');              
                       MVCIGDG=SCAN(MVCIDSN,-1);                        
                       RETAIN MVCIDSN MVCIGDG;                          
                     END;                                               
                     CALL SYMPUT('MVCIDSN',MVCIDSN);                    
                  );                                                    
                  %INCLUDE SOURCLIB(TYPEMVCI);                          
                  %PUT INPUT DSNAME WAS:  &MVCIDSN;                     
               would create variables MVCIDSN,MVCIGDG, and would create 
               a macro variable &MVCIDSN with the DSNAME that was read. 
   Thanks to Henk van der Veur, Fortis, THE NETHERLANDS.                
                                                                        
Change 26.313  Revisions to support for TMON for DB2 V4 and V4.1.       
VMACTMDB      -Dataset TMDBDB2 had misalignments corrected.             
Jan 23, 2009  -Support for BF variables in dataset TMDBBF.              
              -Support for BG variables in dataset TMDBBG.              
              -Support for BH variables in dataset TMDBBH.              
              -Support for BI variables in dataset TMDBBI.              
   Thanks to Ernie Amador, University of California Davis Health, USA.  
                                                                        
Change 26.312  Support for APAR OA27161 which adds interval variables   
VMAC23         to the SMF 23 record. Change 26.116 supported OA22414,   
Jan 22, 2009   which added cumulative variables for the same metrics.   
                                                                        
Change 26.311 -In DB2 V9, IFCID=225 creates the DB2STAT4 dataset and    
READDB2        DB2 V8 creates the T102S255 dataset, but DB2STAT4 had    
VMACDB2        all missing values for the QW0225xx variables in the     
Jan 22, 2009   DB2STAT4 dataset because QWS02R1O was spelled with a     
Jan 28, 2009   zero instead of an oh in VMACDB2.                        
Feb  2, 2009  -READDB2 could cause error messages                       
                THE TEXT EXPRESSION LENGTH (65545)                      
                EXCEEDS MAXIMUM LENGTH (65534).                         
              -READDB2 did not create both T102S225 and DB2STAT4 when   
               IFCIDS=225 was specified, in spite of the claim made in  
               Change 26.233.  Now, both datasets are created.          
              -Because T102S225 is created from SMF ID=102 but the      
               DB2STAT4 is created from SMF ID=100 subtype 4, there     
               are still some limitations in READDB2 using WANTONLY.    
              -New-in-DB2-V9 variables added and kept in DB2STAT4:      
                 QW0225SF='FIXED*VIRTUAL*64BIT*SHARED'                  
                 QW0225SG='GETMAINED*VIRTUAL*64BIT*SHARED'              
                 QW0225SV='VARIABLE*VIRTUAL*64BIT*SHARED'               
                 QW0225SU='STACK*STORAGE*IN USE'                        
                 QW0225L2='ALLOC STORAGE*CACHED*THREADCPYS*ABOVE POOLS' 
                 QW0225H2='HWMALLOCSTORE*CACHED*THREADCPYS*ABOVE POOLS' 
                 QW0225F1='SERVICEABILITY*QW0225F1'                     
                 QW0225F2='SERVICEABILITY*QW0225F2'                     
                 QW0225S2='STATEMENT*CACHE*BLOCK*STORAGE*GT 2GB'        
              -This example shows how you can use MXG macros instead    
               of using READDB2 if you only wanted the DB2 Statistics   
               datasets (DB2STATS/DB2STATB/DB2STATR/DB2STAT4/DB2GBPAT   
               DB2GBPST) and T102S225 (i.e., you have both V8 and V9    
               IFCID=225 records in your SMF); the example reads only   
               the SMF 100 and 102 records and does not create any of   
               the DB2ACCTx datasets.                                   
                  %LET MACFILE=                                         
                   %QUOTE( IF ID=100 OR ID=102; );                      
                  %LET MACKEEP=                                         
                    _N102                                               
                    MACRO _W102225 PDB.T102S225 %                       
                    MACRO _EDB2ACC     %                                
                    MACRO _EDB2ACB     %                                
                    MACRO _EDB2ACP     %                                
                    MACRO _EDB2ACG     %                                
                    MACRO _WDB2ACC _NULL_    %                          
                    MACRO _WDB2ACB _NULL_    %                          
                    MACRO _WDB2ACP _NULL_    %                          
                    MACRO _WDB2ACG _NULL_    %                          
                  ;                                                     
                  %LET PDB2ST0=WORK;                                    
                  %LET PDB2ST1=WORK;                                    
                  %LET WDB2PAT=PDB;                                     
                  %LET WDB2PST=PDB;                                     
                  %LET WDB2STR=PDB;                                     
                  %LET WDB2ST2=PDB;                                     
                  %LET WDB2ST4=PDB;                                     
                  %INCLUDE SOURCLIB(VMACDB2,VMAC102,IMACKEEP);          
                  DATA _VARDB2 _V102225;                                
                  _SMF                                                  
                  _CDEDB2                                               
                  _HDR102 _C102225 _END102;                             
                  _SDB2STB                                              
                  _SDB2STS;                                             
                 RUN;                                                   
   Thanks to Rachel Holt, Fidelity Systems, USA.                        
   Thanks to Dan Case, Mayo Clinic, USA.                                
                                                                        
Change 26.310  The MXGWORK= argument of VMXGINIT hasn't worked for many 
VMXGDEL        years (Change 18.148, Jun 2000, Change 17.060, 1999) as  
VMXGINIT       a way to change the //WORK destination, and it was the   
Jan 21, 2009   cause of errors reported in Change 26.252, so it has     
               been removed as an argument and is now a GLOBALed macro  
               variable name in VMXGINIT, and the now-redundant GLOBAL  
               statement in VMXGDEL is removed.                         
   Thanks to Chris Weston, SAS ITRM Development, USA.                   
                                                                        
Change 26.309  Variable TMNTJOBC='JOB*CANCELLED*BY*OPERATOR' was wrong  
VMACTMNT       and always was the same as TMNTJOBI, because TMNTJOBC    
Jan 21, 2009   was set 'Y' from the x'02' bit instead of the x'01' bit. 
   Thanks to Michael Creech, Lender Processing Services, USA.           
                                                                        
====== Changes thru 26.308 were in MXG 26.12 dated Jan 20, 2009=========
                                                                        
Change 26.308  The TYPE70 dataset is enhanced with these counts of the  
VMAC7072       specialty engines:                                       
Jan 17, 2009      PARTNICF='PARTITION*NUMBER OF*ICF*ENGINES'            
                  PARTNIFA='PARTITION*NUMBER OF*ZAAP*ENGINES'           
                  PARTNIFL='PARTITION*NUMBER OF*IFL*ENGINES'            
                  PARTNZIP='PARTITION*NUMBER OF*ZIIP*ENGINES'           
   Thanks to Jim S. Horne, Lowe's Companies, USA.                       
                                                                        
Change 26.307  The CLIST to process RMF III files had an incorrect GOTO 
CLRMFV         in line 943 that should be GOTO DONE.  Fortunately, this 
Jan 16, 2009   path thru the CLIST is seldom-to-never used.             
   Thanks to Jerry Urbaniak, Acxiom, USA.                               
                                                                        
Change 26.306 -If the new operand COPYONLY=YES was specified, READDB2   
READDB2        tried to read the header using VMACDB2H, but that read   
Jan 15, 2009   required prerequisites.  Code now uses _CDEDB2 which     
               then calls VMACDB2H with all datasets to _NULL_ via the  
               _NDB2 to read only the headers if COPYONLY=YES.          
              -READDB2 was enhanced to allow selection by QWHCEUTX,     
               the End User Transaction Name, which might be useful     
               in the classification of DDF work in WLM, but only       
               if it is filled in by the calling application with       
               something other than a default value. It must also be    
               the first piece of the unit of work that is seen by WLM. 
   Thanks to Becky Clark, Bank of America, USA.                         
                                                                        
Change 26.305  CICSTRAN variables RTYPE and RRTYPE contain $EBCDIC text 
VMAC110        but some of the INPUT statements in VMAC110, and in code 
UTILEXCL       built by UTILEXCL, incorrectly had $CHAR inputs. As long 
Jan 15, 2009   as MXG is executed on z/OS, there was no difference, but 
               for ASCII execution, the INPUTs must be $EBCDIC.         
   Thanks to Glenn Bowman, Wakefern, USA.                               
                                                                        
Change 26.304  Internal changes for DOCVER enhancements and CONFLICTs.  
FORMATS        New $MGUTILD format maps each MXG-built DATASET name in  
UTILVREF       member DOCVER to both the INFILE that was read, and the  
Jan 14, 2009   MXG member name that created that dataset, and a flag    
               for "second-level" datasets that are not created from an 
               infile but are created from SAS datasets.  The format is 
               now used to add that information in the DOCVER member.   
               Also, the format is used in the new QA CONFLICTs report  
               to cluster datasets by INFILE to eliminate conflicts in  
               variable's type, length, format, or maybe even labels.   
              -So, if FORMAT $MGUTIL has been updated, but the QA Job   
               has NOT been rerun, the new datasets in DOCVER will NOT  
               have their INFILE identified; that line will be blank.   
                                                                        
   Thanks to Freddie Arie, Merrill Consultants, USA.                    
                                                                        
Change 26.303  Capture Ratios for zAAPs and zIIPs are now calculated in 
VMXGRMFI       PDB.RMFINTRV and TREND.TRNDRMFI datasets, and the total  
Jan 13, 2009   Service Class zAAP and zIIP CPU times are creates:       
                CPUIFATM - IFA (zAAP) CPU TIME in Service Classes       
                CPUZIPTM - ZIP (zIIP) CPU TIME in Service Classes       
                IFAACTTM - IFA (zAAP) CPU TIME in TYPE70 (Hardware)     
                ZIPACTTM - ZIP (zIIP) CPU TIME in TYPE79 (Hardware)     
                CAPIFART - CAPTURE RATIO FOR ZAAP ENGINES               
                            100*CPUIFATM/IFAACTTM                       
                CAPZIPRT - CAPTURE RATIO FOR ZIIP ENGINES               
                            100*CPUZIPTM/ZIPACTTM                       
   Thanks to Brian Harvey, HCL America, USA.                            
                                                                        
Change 26.302  INPUT STATEMENT EXCEEDED for unexpected AAA record with  
VMACNMON            AAA,LPARNumberName,none                             
Jan 13, 2009   MXG expected LPARNumberName to be followed by the LPAR   
               number and the LPAR name.  Why the LPARNumberName tag    
               exists when its value is "none" is unknown, but now, the 
               LPARNAME='none' will be output.                          
   Thanks to Steven Olmstead, Northwestern Mutual, USA.                 
                                                                        
Change 26.301  Debugging PUT statements were always printed, because    
UDB2GTF        the  IF DEBUG GE 2 THEN statement did not precede PUT.   
Jan 13, 2009                                                            
   Thanks to Steve Wood, DST Systems Inc, USA.                          
                                                                        
Change 26.300  Conflict Resolution of variable's TYPE/LENGTH/FORMAT.    
VMAC94        -In MXG 26.11, I made changes to eliminate exposures to   
VMAC89         possible conflicts (none had actually occurred), but     
VMACTPMX       did not document all of the changes in Change 26.289.    
DOC            One impacting change is now reversed: variable PRODREL   
Jan 18, 2009   in TYPE892 has been restored (it was renamed PRODRL89 in 
               MXG 26.11, but that impacted the LCS product); it length 
               is now $6 to match other PRODREL variables, eliminating  
               any exposure.                                            
              -In MXG 26.11, TYPETPMX variable ACCT was renamed ACCTJOB 
               to avoid conflict with the older TYPE26J2 ACCT variable, 
               but incorrectly, causing an VARNAME ACCTJOB NOT FOUND.   
               Since ACCTJOB is then stored into the actual ACCOUNTn,   
               it should probably not have been kept, and is unlikely   
               that the change from ACCT to ACCTJOB has any impact.     
               But the new ACCTJOB variable is length $16 and all 16    
               converted into $EBCDIC, so individual ACCOUNTn fields of 
               16 are now supported; actual length is set in IMACACCT.  
              -In TYPE94, an actual conflict was reported by Ken and is 
               now fixed: the format of variables STARTIME and DURATM   
               was DATETIME18.0 and TIME8., because the SMF 94 records  
               only have seconds resolution; however, adding type 94 to 
               your BUILDPDB caused all of the RMF datasets to have the 
               shorter format for their STARTIME and DURATM variables,  
               as SAS uses the last instance of a FORMAT statement.  By 
               changing the FORMAT in VMAC94 to match the "standard"    
               DATETIME21.2 and TIME12.2 formats the full RMF precision 
               is printed.                                              
                  However, this is truly ONLY cosmetic; the FORMAT is   
                  only used when values are printed, and they do NOT    
                  change the stored data values; you can ALWAYS use a   
                  FORMAT statement in your PROC PRINT, etc., to show    
                  as many or as few decimals as you want displayed.     
              -The below variables were renamed to eliminate conflicts. 
               Many of these datasets are no longer even creatable, and 
               none are created from common IBM SMF records - most are  
               created from optional user SMF records and none of these 
               renamed variables are likely to be used in your reports. 
                                                                        
                  Dataset    Variable Name    Dataset    Variable Name  
                                                                        
                  AIM098_R  was    FILENAME   SAMONASR  was    APPLNAME 
                            now    FILENAAI             now    APPLNASA 
                  CCCDAT    was    ACCOUNT    SAMONAUR  was    APPLNAME 
                            now    ACCTCCC              now    APPLNASA 
                  CMHMEVNT  was    EXPDT      SAMONTSR  was    APPLNAME 
                            now    EXPDTDAT             now    APPLNASA 
                  FILTEKID  was    GROUP      SAMONUSR  was    APPLNAME 
                            now    GROUPSM1             now    APPLNASA 
                  ICEBRGDE  was    RELEASID   SUPERIND  was    TERMINAL 
                            now    RELEASIC             now    TERMSUIN 
                  ICEBRGUT  was    VDEVTYPE             was    USERNAME 
                            now    VDEVTYIC             now    USNASUIN 
                  ILKVCONN  was    USERDATA   SV08THRE  was    ABEND    
                            now    USDAILKV             now    ABENDTSK 
                  ILKVDISC  was    USERDATA             was    CLASS    
                            now    USDAILKV             now    CLASSVIE 
                  LDMSBASE  was    FUNCTION             now    GROUPTH3 
                            now    FUNCLDMS             was    GROUP    
                  LDMSDIST  was    FUNCTION             was    STATUS   
                            now    FUNCLDMS             now    STATSVIE 
                  LDMSPC    was    SERVER     SV25TSUM  was    RESPTIME 
                            now    SERVLDMS             now    RESPSVIE 
                  MEMOACCT  was    ACCTCODE   SV27TRAN  was    NETNAME  
                            now    ACCTCOME             now    NTNMSVIE 
                            was    SESSION              was    OFCTYNME 
                            now    MEMOSESS             now    OFCTYTCP 
                            was    USERNAME             was    RTYPE    
                            now    USNAMEMO             now    RTYPSVIE 
                  MVTPN     was    MTU                  was    TRANPRI  
                            now    MAXMTU               now    TRANPRIS 
                  MVTPS     was    LOCATION             was    TERMINFO 
                            now    LOCNMVTP             now    TERMINFS 
                            was    NAME       T112MQCO  was    MQTRAN   
                            now    NAMEADMN             now    MQTRANID 
                  NAFENTVA  was    TERMINAL   T112MQCT  was    MQTRAN   
                            now    NAFTERM              now    MQTRANID 
                  NAFGPSTO  was    VLU        TYPE1031  was    SUBSYS   
                            now    VLUNAF               now    SUBSY103 
                  NAFGPSTR  was    VLU        TYPE1032  was    SUBSYS   
                            now    VLUNAF               now    SUBSY103 
                  OMCIADA   was    AFNAME     TYPE6367  was    ACTION   
                            now    AFNAMECI             now    ACTIONRQ 
                  OMCIBOTL  was    ESTTIME    TYPEACC   was    MESSAGE  
                            now    ESTDTIME             now    MESSGACC 
                  OMCIFIXD  was    ESTTIME    TYPEDLMN  was    NEWNAME  
                            now    ESTDTIME             now    NWNMDLMN 
                  OMCIRTA   was    ESTTIME              was    USERNAME 
                            now    ESTDTIME             now    USNADLMN 
                  OMCITITL  was    ESTTIME    TYPESTRS  was    VERSION  
                            now    ESTDTIME             now    VERSSTRS 
                  OMCITRAL  was    ESTTIME    TYPETPMX  was    ACCT     
                            now    ESTDTIME             now    ACCTJOB  
                  OMCITRAN  was    ESTTIME    TYPEX37   was    ACCTNO   
                            now    ESTDTIME             now    ACCTNO37 
                  OMCIVDCT  was    ESTTIME              was    MESSAGE  
                            now    ESTDTIME             now    MESSGX37 
                  OMCIVENQ  was    ESTTIME              was    PRODREL  
                            now    ESTDTIME             now    PRODRL37 
                  OMCIVFCT  was    ESTTIME    XCOMDATA  was    USERID   
                            now    ESTDTIME             now    USERXCOM 
                  OMCIVIO   was    ESTTIME    XPTR10    was    ACCOUNT  
                            now    ESTDTIME             now    ACCTXPTR 
                  OMCIVJCT  was    ESTTIME    XPTR21    was    ACCOUNT  
                            now    ESTDTIME             now    ACCTXPTR 
                  OMCIVPCP  was    ESTTIME              was    LOCATION 
                            now    ESTDTIME             now    LOCNXPTR 
                  OMCIVVSA  was    ESTTIME    XPTR45    was    ACTION   
                            now    ESTDTIME             now    ACTNXPTR 
                  PRORECOV  was    PRODREL    ZARAERRV  was    VOLPOOL  
                            now    PRODRLPR             now    VOLPOOLZ 
                  ROSCOAUD  was    USERID     ZARAVOL   was    VOLPOOL  
                            now    USERROSC             now    VOLPOOLZ 
                  ROSCOE    was    USERID                               
                            now    USERROSC                             
                            was    TERM                                 
                            now    TERMIOS                              
                  ROSCORPS  was    USERID                               
                            now    USERROSC                             
                  ROSCOSTA  was    USERID                               
                            now    USERROSC                             
                  ROSCOVPE  was    USERID                               
                            now    USERROSC                             
   Thanks to Al Sherkow, I/S Management Strategies, Ltd.                
   Thanks to Scott Wigg, U.S. Bank, USA.                                
   Thanks to Kenneth D. Jones, Bell Aliant, CANADA.                     
                                                                        
Change 26.299  MXG 26.10-26.11. PERFINDX=. for all service classes with 
VMAC7072       R723TYPE=2:ADDRESS SPACE WITH NO TIME GOAL. A "cosmetic" 
Jan 12, 2009   Change 26.269, eliminated "missing value" value messages 
               but accidentally setting PERFINDX to a missing value for 
               those service classes.                                   
   Thanks to Dan Melton, Lowe's Companies, USA.                         
                                                                        
Change 26.298  DB2 ID=102 IFCID=22 INPUT STATEMENT EXCEEDED RECORD      
VMAC102        error when length in the header field was zero; the      
Jan 11, 2009   actual length is 2 bytes longer than stored in the       
               start of each segment.  MXG logic revised to support.    
   Thanks to Tom Buie, Southern California Electric, USA.               
                                                                        
Change 26.297 -Case in zPCR and ExternalSource tags were inconsistent   
ANALZPCR       and caused configuration errors.                         
Jan 13, 2009  -SELECT=CECTIME created multiple HOST tags.               
              -Printed ONLPCPUS in reports was correct, but the LCPs    
               tag value could be one higher than true number of CPs    
               in the LPAR, if ONLPCPUS was an integer.  MXG algorithm  
               ONLPCPUS=CEIL(ONLPCPUS) now ONLPCPUS=CEIL(ONLPCPUS-.01)  
               to protect for both 3.0 and 2.999 values, and relocated  
               so the printed and tag values are the same.              
              -An "External Study File" can ONLY be LOADed from zPCR's  
               FUNCTION SELECTION window, using its FILE pulldown LOAD  
               option to browse/select the MXG-built xxxx.zpcr file.    
   Thanks to David Bixler, FISERV, USA.                                 
                                                                        
====== Changes thru 26.296 were in MXG 26.11 dated Jan  5, 2009=========
                                                                        
Change 26.296  The BLSR option for IMS VSAM files is not supported; the 
ANALBLSR       ANALBLSR analysis created pages of reports for IMS VSAM  
Jan  5, 2009   files, with PROGRAM='DFSRRC00', so this change deletes   
               all files that were accessed with that program name.     
   Thanks to Stephen Hughes, Excellus, USA.                             
                                                                        
Change 26.295  The RMFWKLRV interval workload dataset build by RMFINTR  
VMXGRMFI       creates two new variables WKLDIOCN and WKLDIORT, the     
Jan  2, 2009   I/O count and I/O rate from R723CIRC.                    
   Thanks to Don Goulden, SAS ITRM Development, USA.                    
                                                                        
Change 26.294  Two new arguments, CICSTRAN & DB2ACCT can be specified   
UTILBLDP       in the SUPPRESS= argument if you do not want the detail  
Jan  2, 2009   CICSTRAN or any of the DB2ACCTx datasets to be created.  
               With SUPPRESS=CICSTRAN, SMF 110 subtype 1 records are    
               skipped, with SUPPRESS=DB2ACCT, SMF 101 records are.     
                                                                        
Change 26.293  %VMXGPRAL(DDNAME=PDB,NOBS=20) prints ALL datasets in a   
VMXGPRAL       SAS data library, but now, it uses new VMXGPRNT to print 
VMXGPRNT       both the variable's LABEL and the variable's NAME in the 
Jan  2, 2009   heading.  The new VMXGPRNT macro can also be used alone  
               to print a single SAS dataset, or it can be used to      
               create a Comma-Separated-Variable file from a single SAS 
               dataset.  I find VMXGPRAL very useful to print a few obs 
               with all of the variables to validate a new MXG-built    
               dataset.  The logic for VMXGPRNT was originally posted   
               to MXG-L by John, and Mike recently reminded me of it.   
               The old UPRINDOC member did print the label and name,    
               and is used to create the ADOCxxxx prints/means, but     
               the new VMXGPRAL and VMXGPRNT is much nicer syntax.      
   Thanks to Mike O'Brien, Bank of America, USA.                        
   Thanks to John Parkes, Experian, USA.                                
                                                                        
Change 26.292  MONTHBL3 was overlooked when Change 24.064 added simpler 
MONTHBL3       override for NOT SORTED errors in creating MONTH PDB.    
Jan  1, 2009   It is now updated to match MONTHBLD logic.               
   Thanks to Douglas G. Wells, First National Bank of Omaha, USA.       
                                                                        
Change 26.291  WPS does not support the INFILE CCHHR nor CCHHR= options 
VMACEREP       which is required to read LOGREQ with TYPEEREP, and was  
VMXGVTOC       used in VMXGVTOC (now archaic, replaced by DCOLLECT), and
UTILSPAC       also used in the UTILSPACE reporting utility.  This      
Jan  1, 2009   change removes the CCHHR options when MXG is executed    
               under WPS, so that the QAWPS QA test stream can run, to  
               test the compiler using only DUMMY INFILES.  This change 
               will be revised if/when CCHHR support is in WPS.         
               See Change 27.239.                                       
                                                                        
Change 26.290  The View Direct, Mobius, Infopac-RSD, etc., product's    
VMACIPAC       user SMF record, subtype 3 was INCOMPATIBLY restructured 
Dec 30, 2008   with R3CALLER field relocated, the LUNAME field removed, 
               and seven extra bytes inserted.  MXG was recoded to read 
               the new format with a heuristic test of the old location 
               of R3CALLER, pending response from support@asg.com, who  
               now owns this product.                                   
               Jan 5: A PTF has been provided, but not yet installed,   
               but even if it does correct the invalid SMF record, I    
               will leave the circumvention in place, since it will     
               protect sites without the correcting ptf.                
   Thanks to Jim S. Horne, Lowe's Companies, USA.                       
                                                                        
Change 26.289 -Cleanup of inconsistent LENGTHs and CHAR/NUM conflicts   
ANALCISH       for variables created from the same INFILE.  CHAR/NUM    
VMAC112        conflicts were resolved by renaming the variable from    
VMACFTEK       the more obscure product.  Lengths were mostly increased 
VMACQACS       with &MXGLEN replacing 4s, but some 8s are now &MXGBYLN. 
DIFFROSC       These LENGTH changes may cause WARNINGs with SAS V9.2,   
VMACSVIE       when creating WEEK or MONTH PDBs with PDBs built by MXG  
VMXG70PR       versions before/after this change, but by installing now 
VMACSVIE       if still under SAS V9.1.3, then your migration to V9.2   
VMAC7072       could be warning-free.                                   
               No CHAR/NUM conflicts had been reported, so changes were 
Jan  5, 2009   made to prevent future errors.                           
              -Data Set Labels were added where they were blank.        
              -Variable ZDATE was added where it was not being created. 
              -Member DOCVER26 lists all of the changed variable names: 
               Variables TERMINFO TRANPRI were Numeric in SV27TRAN data 
               set built by TYPESVIE from SMF, which conflicted with    
               IBM SMF 110 records, so TYPESVIE was changed to create   
               them as character to avoid conflict if 110s and SVIE     
               were ever (unlikely) combined in a single DATA step.     
               ANALCISH, typo, CICSCONSR changed to CICCONSR.           
               VMACFTEX, variable GROUP renamed to GROUPSM1.            
               VMAC112, variable MQTRAN renamed to MQTRANID.            
               DIFFROSC, variable TERM renamed to TERMIOS.              
               VMACQAPM, variable XIDTYP changed to CHAR.               
               VMXG70PR, variable IFAUPTM LPARNUM SMF70CSF PCTIFABY     
               PCTZIPBY changed from length 8.                          
               VMAC7072, variables NRPRCS, NRPHYCPS changed from len 8. 
                                                                        
Change 26.288  TYPE78CU variables for Aliases could be wrong, as they   
VMAC78         were retained but not initialized, so devices without an 
Dec 29, 2008   alias could incorrectly have values in these variables:  
                 R783HCNT R783HIX R783HLCU R783HCU R783HNAI R783HTIO    
                 R783HAIU R783HCAD R783HIOQ                             
   Thanks to Peter Schubert, CITEC, AUSTRALIA.                          
                                                                        
Change 26.287  Support for RMF III CPUG3 z/OS 1.9 (INCOMPATIBLE - zero  
VMACRMFV       observations in ZRBLCP without this change).             
Dec 28, 2008   New variable in ZRBLCP: LCPUCURW - Current SHARE weight. 
                  LCPUCURW='CURRENT*SHARE*WEIGHT'                       
               New variables in ZRBCPU:                                 
                  CPCGRPNM='CAPACITY*GROUP*NAME'                        
                  CPCGRPLM='CAPACITY*GROUP*MSU*LIMIT'                   
                  CPGRPJOI='DATETIME WHEN*LPAR JOINED*GROUP'            
   Thanks to Stephen Hoar, Lloyds TSB, ENGLAND.                         
                                                                        
Change 26.286  Very strange error messages in 26.08 and 26.10, where    
VMXGRMFI       the "x" is a non-printable character:                    
Dec 23, 2008     ERROR: LIBNAMES ARE RESTRICTED TO EIGHT CHARACTERS.    
                        x HAS BEEN TRUNCATED.                           
               Removal of an unneeded %VGETENG call in VMXGRMFI has     
               eliminated the strange errors, but still researching.    
   Thanks to Dan Case, Mayo Clinic, USA.                                
                                                                        
Change 26.285  Enhanced to do the dynamic allocation of DAYS based on   
VMXGALOC       the DAYSKEEP= value.  On ASCII this creates a pseudo-GDG 
Dec 23, 2008   architecture were days a DddMMMyy, weeks are Wddmmyy and 
Jan  3, 2009   months are Mddmmmyy, and a variable number of each can   
               be kept, with old ones being deleted and new ones being  
               created over time.                                       
               So, if today is 22DEC08, the directory names would be    
                  PDB   - c:\MXG\D21DEC08                               
                  MON   - c:\MXG\D15DEC08                               
                  TUE   - c:\MXG\D16DEC08 ....                          
                  WEEK  - c:\MXG\W15DEC08                               
                  WEEK1 - c:\MXG\W15DEC08                               
                  WEEK2 - c:\MXG\W08DEC08                               
                  WEEK3 - c:\MXG\W01DEC08 ....                          
                  MONTH - c:\M01DEC08                                   
                                                                        
               In addition, TREND databases can be allocated based on   
               doing TRENDing on a daily or weekly basis.               
                                                                        
                 TRENDING=DAILY creates                                 
                  TRENDIN - c:\MXG\T20DEC08                             
                  TREND   - c:\MXG\T21DEC08                             
                                                                        
                 TRENDING=WEEKLY creates                                
                  TRENDIN - c:\MXG\T08DEC08                             
                  TREND   - c:\MXG\T15DEC08                             
                                                                        
                 TRENDING=WTD creates                                   
                  TRENDIN - c:\MXG\T15DEC08                             
                  TREND   - c:\MXG\T22DEC08                             
                                                                        
               The SPIN and TREND directory management follows the      
               pattern specified in DAYSKEEP WEEKKEEP.  Older           
               directories will be erased/deleted based on the          
               numbers in those two arguments.                          
                                                                        
               For those times when you may need to go back and rerun a 
               day's processing, FORCEDAY=22DEC08 will set the correct  
               directories for that day's processing to be allocated.   
                                                                        
               The basedir= argument defaults to c:\mxg\ but can be any 
               disk device and directory available to your system.      
                                                                        
Change 26.284  The BMC Optional CMRDB2 segment was increased from 172   
IMACICMD       to 256 bytes in CICS/TS 3.2. The IMACICMD code is now    
Dec 22, 2008   updates to support both lengths, based on SMFPSRVR.      
   Thanks to Jane Dickenson, Produban, ENGLAND.                         
                                                                        
Change 26.283 -zPCR failed with PDB=SMF, or SCP not 'z/OS V1R10', the   
ANALZPCR       SELECT=CECTIME option is now implemented, and new notes  
Dec 21, 2008   have been added:                                         
Dec 31, 2008  -PDB=SMF option had not been fully tested and caused a    
               180 underscoring a percent sign; the UTILBLDP logic is   
               revised to read only required SMF records and subtypes.  
              -zPCR support worked fine when SCP='z/OS V1R10' was set,  
               but I discovered XML doesn't tolerate extra blanks, so   
               SCP='z/OS V1R9 ' created an XML file that caused zPCR    
               configuration errors "UNKNOWN SCP".  Now, trailing       
               blanks in the generated XML text are removed.            
              -The XML text is very case sensitive, so the ANALZPCR     
               member is also, and it must NOT be case-changed.         
              -Support for SELECT=CECTIME is now implemented.  To be    
               valid, all SYSTEMs in each CEC must have the same RMF    
               Interval Duration, and must all have the same SYNC(0)    
               or the same SYNC(59) value.  The CPU Dispatch Time for   
               all CP engines in the CECSER is summed and the interval  
               with the largest total is created for each CECSER as     
               the input.  The file name has the CECSER value instead   
               of the SYSTEM name.                                      
              -MXG will create the external study file for any CPU type 
               but the zPCR tool will only accept data from a z9 or     
               above (CPUTYPE 2094, 2096, 2097, 2098).  If you attempt  
               to load a file with an earlier CPU model, zPCR will not  
               accept it, and a zPCR warning box will display           
                  Host LPAR Definition errors exist, please refer to    
                  file "configuration errors" and correct the errors.   
               That configuration.errors file is in the \CPSTOOLS\ZPCR\ 
               directory, and for this error condition will state       
                  The following errors were found in the study file:    
                  C:\CPSTOOLS\zPCR\s1942.d17dec08.t0130.zpcr            
                  Unsupported Host processor specified;                 
                  It must be a z9 or above (2094, 2096, 2097, 2098)     
               Report any other error messages to support@mxg.com.      
              -The zPCR tool uses the TYPE70 CPU Utilization and the    
               TYPE74 DASDIOrate to select "workload" type for the      
               model. If there is no TYPE74 data, then zPCR will set    
               the workload type to "unknown" and you will have to then 
               manually change the workload type after you load the     
               MXG-created external study file.                         
   Thanks to Warren Hayward, TJX, USA.                                  
   Thanks to David J. Schumann, Blue Cross Blue Shield of Minnesota, USA
                                                                        
Change 26.282  APPLID could be blank in PDB.ASUMUOW if the first part   
VMXGUOW        of a Unit of Work came from MQ rather than CICS.  This   
Dec 19, 2008   could also cause blank APPLID in PDB.CICS when ASUMCICX  
Dec 23, 2008   is used.                                                 
   Thanks to Douglas G. Wells, First National Bank of Omaha, USA.       
                                                                        
Change 26.281  Variables IFAUNITS and IFEUNITS are now added to both    
BUILD005       the PDB.STEPS and PDB.JOBS datasets from the SMF 30s.    
BUIL3005       They should have been added with ZIP units were added.   
Dec 19, 2008                                                            
   Thanks to Jansson Ingegerd, Volvo IT, SWEDEN.                        
                                                                        
Change 26.280  Support for Open Connect user SMF record.  New dataset   
EXOPCNCL       OPENCONN is created, but with these problems:            
FORMATS         - Records with DISP=00 have completely different format 
IMACOPCN          that the other records.                               
TYPEOPCN        - Records with DISP GT 0 have hex text where JOB should 
TYPSOPCN          be, and JCTJOBID is not populated.                    
VMACOPCN        - Value of DISP=4 occurs, but is not documented; guess  
VMXGINIT          is that it is NEW.                                    
Dec 19, 2008                                                            
   Thanks to Robert Brosnam, Goldman Sachs & Co., USA.                  
                                                                        
Change 26.279  Enhancement/correction to support for Nigel's Monitor.   
VMACNMON      -DISKSERV and DISKWAIT records supported and same named   
Dec 18, 2008   variables are added to NMONDISK dataset:                 
                  DISKSERV='DISK*SERVICE*TIME*MSEC/XFER'                
                  DISKWAIT='DISK*WAIT*QUEUE*TIME*MSEC/XFER'             
               -MEMPAGES4KB,MEMPAGES64KB,MEMPAGES16MB and MEMPAGES16GB  
                records are now supported, adding four sets of those    
                variables to NMONINTV dataset.                          
               -Short AAA record protected.                             
               -Invalid JFSFILE and JFSINODE records that have fewer    
                counters that described are detected and diagnostics    
                and print of the defective record is printed on the     
                log so you can send to and resolve with Nigel.          
                                                                        
Change 26.278  Example analysis program joins DB2ACCT and DB2ACCTP, but 
ANALDBJO       must be used with extreme caution, as the resources to   
Dec 18, 2008   sort both datasets first for the merge, can be extreme.  
                                                                        
Change 26.277  Support for APAR OA24208 adds new subtype 15 to ID=92    
EXTY9215       SMF record.  The new subtype audits changes to USS file  
IMAC92         security attributes for APF Authorized, Program Control, 
VMAC92         and Shared Library that are maintained by USS and thus   
VMXGINIT       were not audited by RACF.                                
Dec 18, 2008                                                            
                                                                        
Change 26.276  CPUUNITS value of minus one in TYPE72GO has resulted in  
VMAC7072       type 72 subtype 3 records for service classes that used  
Dec 16, 2008   only a zIIP engine. The raw CPUUNITS field contains the  
               sum of CP, zIIP, and zAAP units, but MXG calculates the  
               ZIPUNITS and subtracts it from the raw CPUUNITS to store 
               only the CP engine units in CPUUNITS variable that is    
               output.  These cases have a calculated ZIPUNITS that is  
               exactly one unit larger than the raw CPUUNITS, causing   
               the negative value.   This is clearly not a real error,  
               and may be related to Change 26.222 in which IBM noted   
               small problems with IFAUNITS.  So, to avoid confusing    
               negative values for CPUUNITS (and CPUTM and CPUTCBTM     
               for these cases) I have reset CPUUNITS to zero if the    
               value after removal of zAAP and zIIP units is -3 to 0.   
   Thanks to Douglas C. Walter, CITIGROUP, USA.                         
                                                                        
Change 26.275  There was a conflict in parameters between VMXGALOC and  
BLDSMPDB       BLDSMPDB. BLDSMPDB uses WEEKKEEP MNTHKEEP to specify the 
Dec 16, 2008   datasets to be kept in the WEEK/MONTH PDB library, but   
               VMXGALOC uses those parameters to specify how many weeks 
               or months to keep.  BLDSMPDB is modified with two new    
               parameters to resolve the conflict:                      
                  WEK2KEEP=12      KEEP 12 WEEKS                        
                  MTH2KEEP=100     KEEP 100 MONTHS                      
                                                                        
               Additionally, BLDSMPDB now supports concatenated SMF     
               INPUT files on an ASCII platform, internally.  Now, they 
               can be specified as                                      
                  SMFIN=FULLYQUALIFIEDDSN1 FULLYQUALIFIEDDSN2 ...       
               Up to 99 SMF datasets can be named to be read in.        
   Thanks to Lisa Lawver, Land's End, USA.                              
                                                                        
Change 26.274  DB2 V9-only variables added by Change 26.210 were INPUT  
VMACDB2        when they should not have been, causing very large and   
Dec 16, 2008   very wrong values for these 11 variables:                
                  QWACSPZI QWACUDZI QWACSPZE QWACSPZC QWACUDZE          
                  QWACUDZC QWACSPC1 QWACSPC2 QWACUDC1 QWACUDC2          
                  QWACTRSE                                              
               These variables should have had a missing value with V8. 
   Thanks to Roger A. Webster, State of Oregon, USA.                    
                                                                        
Change 26.273  Statement ELSE IF MRHDRDM=8 and MRHDRRC=1 was relocated  
VMACVMXA       to preceed the LABEL statement; WPS got confuses, but the
Dec 15, 2008   location was inconsistent with the normal ELSE location. 
                                                                        
Change 26.272  Variable SIZE in XAM dataset HSTMEM was incorrectly INPUT
VMACXAM        as PIB4., but it is a floating point (RB4.) value.       
Dec 15, 2008                                                            
   Thanks to Roger Stock, Boston University, USA.                       
                                                                        
====== Changes thru 26.271 were in MXG 26.10 dated Dec 21, 2008=========
                                                                        
Change 26.271  INVALID THIRD ARGUMENT TO FUNCTION SUBSTR in RMF 77 is   
VMAC77         harmless, but resulted when there was no RNAME value.    
Nov 27, 2008   Change 26.159 (MXG 26.06) decoded RNAME into RNAMHX but  
               didn't test for a non-zero length in MINORQCB (SMF77RLN).
   Thanks to Barbara Nitz, Deutsche-Boerse, GERMANY.                    
                                                                        
Change 26.270  NRCPUS in PDB.TYPE70 is redefined for HiperDispatch/IRD  
VMAC7072       as the AVERAGE NUMBER OF ONLINE, NON-PARKED CP ENGINES   
Nov 27, 2008   during the interval.   For IRD, it was redefined as the  
               average number of online engines, but now, any CP parked 
               time CPUPATTM/SMF70PAT is subtracted from the online time
               SMF70ONT, so the NRCPUS will be smaller if any CP engines
               were parked during the interval, i.e., if HiperDispatch  
               is active.  These variables are recalculated/impacted    
                NRCPUS PCTCPUBY PCTCPUEF CPUUPTM                        
               but ONLY IF HIPERDISPATCH IS ACTIVE.                     
              -SHORTCPS in PDB.TYPE70PR was protected for erratic large 
               value when online and parked times were almost identical,
               by requiring 10 seconds of CPUACTTM to be calculated.    
                                                                        
Change 26.269 -Missing value messages for CPUWAITY-CPUWAIYC and for     
VMAC7072       MVSWAITY-MVSWAIYC, wait times for CPUID/LPARADDR 33-63   
Nov 26, 2008   WERE true errors, as those variables were not properly   
               set when support for more than 32 engines was added; for 
               systems with more than 33 engines, the MVSWAITM, CPUWAITM
               could have been understated causing PCTMVSBY to be higher
               that was correct.                                        
              -Missing value messages for OMVSWAIT were only cosmetic,  
               but are eliminated by test prior to calculation.         
              -Missing value messages for PERFINDX were also only       
               cosmetic, occurring when ACTELPTM was missing, as for    
               R723TYPE=2 or when TRAN=0, and are eliminated.           
                 Jan 12 2009:  This last part of this change was wrong; 
                 see Change 26.299.                                     
                                                                        
                                                                        
Change 26.268  Circumvention for defective NDM-CD CT user SMF record.   
VMACNDM        The Accounting Data length (bytes 969-970) is '00B9'x,   
Nov 25, 2008   decimal 185, but the record is only 1020 bytes long.     
               This circumvention uses the MIN of NDMLENSA,LENLEFT      
               to only input what's left in the record while the        
               vendor is contacted to resolve their error.              
   Thanks to Arthur Sy, Depository Trust, USA.                          
                                                                        
Change 26.267  Hardcoded "PDB" DDNAME/LIBREF in the old-style macro refs
ASUMMIPS       were changed to the dataset's Pdddddd macro variable, and
Nov 21, 2008   the reads changed to use the old-style macro reference:  
                  MACRO _RMFIN   &PDBRMFI..RMFINTRV %                   
                  MACRO _RMF72GO &PTY72GO..TYPE72GO %                   
                  MACRO _SMFIN   &PDB30UV..SMFINTRV %                   
                  MACRO _RMFOUT  &PDBRMFI..RMFMSUSE %                   
                  MACRO _SMFOUT  &PDBRMFI..SMFMSUSE %                   
               for easier building of RMFMSUSE/SMFMSUSE under ITRM.     
               But since the MSU-to-MIPS factors are also hardcoded,    
                  MACRO _MIPSMSU MIPSFACT=5.8; %                        
                  MACRO _MIPSIFA IFAFACT=5.8;  %                        
                  MACRO _MIPSZIP ZIPFACT=5.8;  %                        
               sites using different factors (for different hardware)   
               can override them "instream", using MACKEEP:             
                 //SYSIN DD *                                           
                 %LET MACKEEP=                                          
                   %QUOTE(                                              
                    MACRO _MIPSMSU MIPSFACT=5.8; %                      
                    MACRO _MIPSIFA IFAFACT=5.8;  %                      
                    MACRO _MIPSZIP ZIPFACT=5.8;  %                      
                    )                                                   
                 ;                                                      
                 %INCLUDE SOURCLIB(ASUMMIPS);                           
                 _RMFMIPS                                               
                 _SMFMIPS                                               
                to create both RMFMSUSE and SMFMSUSE in the same data   
                library where RMFINTRV lives.                           
                Minor note:  since the MACKEEP text contains semicolons,
                the %LET MACKEEP= %QUOTE ( text ) ; syntax is required. 
   Thanks to Nicholas Ward, Centrelink, AUSTRALIA.                      
                                                                        
Change 26.266  Reserved Change Number.                                  
                                                                        
Change 26.265  Change 20.112 corrected instances of '1A'x in ASCII MXG  
PROCSRCE       source, which are translated to '3F'x in EBCDIC source.  
Nov 20, 2008   That hex character shows up as non-printable text, and in
               some cases, caused a SAS syntax error.  But eight more   
               have slipped in over time, all now manually removed.     
               This change to he PROCSRCE program used to build the MXG 
               master source adds detection of '1A'x characters, along  
               with other invalid data and long line tests, to eliminate
               future re-occurrences of these invalid text.             
   Thanks to Chris Weston, SAS ITRM Development, USA.                   
                                                                        
Change 26.264  Support for IBM zPCR capacity tool to use MXG PDB data.  
ANALZPCR       MXG creates an "External Study File", a new zPCR feature 
Nov 25, 2008   that can be used as input in zPCR Version C5.2b or later.
                                                                        
               Implemented as %MACRO, %ANALZPCR reads MXG RMF datasets  
               PDB.TYPE70 and PDB.TYPE70PR and PDB.TYPE74 (or optionally
               will read SMF data to create only those datasets) and    
               creates one ".zpcr" output text file of XML tags/values  
               for each SYSTEM and STARTIME interval that you select.   
                                                                        
               The default selection, SELECT=PEAK, will select the      
               interval with the highest PCTCPUBY for each SYSTEM.      
                                                                        
               The name of the .zpcr file identifies each SYSTEM and its
               STARTIME, and contains the LPAR Configuration for all of 
               the LPARs in the same SYSPLEX, including engine counts,  
               z/OS SCP, utilizations and z/OS DASDIOrates.             
                                                                        
               The .zpcr files can be created on Windows or on z/OS and 
               copied to your zPCR Windows system, since they are simple
               text files.  You start zPCR, select LOAD option from the 
               FILE pulldown and you will be presented with each of the 
               file names, so you can select the specific system and    
               interval to be modeled.                                  
                                                                        
               You can then examine the configuration, by opening the   
               Configure LPAR option from the Function Selection page,  
               and then opening Detail under Reports.  For all LPARs for
               which utilization and DASDIOrate were found, you will see
               their WORKload column will be populated; you will have to
               enter your workload choice for those with "unknown".     
                                                                        
               The %ANALZPCR program has these execution parameters:    
                                                                        
               PARAMETER   DESCRIPTION/SYNTAX                           
                                                                        
               PDB=PDB      USE PDB.TYPE70 AND PDB.TYPE70PR for INPUT.  
               PDB=SMF      UTILBLDP READ SMF TO CREATE TYPE70,TYPE70PR.
                                                                        
               SELECT=PEAKTIME                                          
                     CREATE a .zpcr file for each STARTIME for each     
                     SYSPLEX-SYSTEM with the highest total CPU          
                     Dispatch Time for CP engines in a full interval.   
                     THIS IS THE DEFAULT.                               
                                                                        
               SELECT=PEAKPCT                                           
                     CREATE a .zpcr file for each STARTIME for each     
                     SYSPLEX-SYSTEM with the highest percent CPU busy,  
                     based on the average number of online, non-parked  
                     CP engines in a full duration interval.            
                                                                        
               SELECT=CECTIME                                           
                     Select the STARTIME for each LPAR in a CECSER with 
                     the highest total CPU Dispatch Time across all     
                     LPARs and all engines.  Not yet implemented.       
                                                                        
               SELECT=PEAK  Create a .zpcr file for each system for the 
                            interval with peak PCTCPUBY in PDB.TYPE70.  
                            SELECT=PEAK is the default.                 
                                                                        
               SELECT=ALL   CREATE a .zpcr file for each RMF interval   
                            for each SYSTEM in PDB.TYPE70.              
                                                                        
               SELECT=      If non-blank and NOT PEAK nor ALL, text is  
                            use as SAS CODE FOR SELECTION. For example: 
                              IF (SYSTEM='9K01' AND                     
                               '01APR2008:07:44:00.00'DT LE STARTIME    
                               '01APR2008:07:44:00.00'DT );             
                              OR (SYSTEM='DL08' AND                     
                              '02APR2008:12:59:00.00'DT LE STARTIME     
                              '02APR2008:12:59:00.00'DT );              
                                                                        
               PCDIRNAM     For ASCII execution of %ANALZPCR, the name  
                            of the directory to which the .zcpr files   
                            will be written.                            
                            Default=C:\CPSTOOLS\ZPCR\                   
                                                                        
                            The dsnames/filenames of MXG's .zpcr files  
                            are structured to display the variables:    
                                                                        
                                SYSTEM.DDMONYY.HHMM.zpcr                
                                                                        
                                sprd1.d02apr08.t0959.zpcr               
                                ssysa.d02apr08.t2359.zpcr               
                                                                        
                            so that the zPCR "LOAD" pulldown presents   
                            the list of configuration's descriptive name
                            for this zPCR model's configuration.        
                                                                        
               ZOSDSN       For Z/OS, the high-level qualifier of the   
                            DSNAME to be created.                       
                            Each (very small) .zpcr file is created as a
                            sequential file, so that the full name with 
                            system and date/time can be seen when these 
                            MXG-created .zpcr files are ftp/downloaded  
                            and then viewed in the zPCR "LOAD" Window.  
                                                                        
                               DSN=MXG.Ssyst.Dddmonyy.Ttime.zpcr        
                                                                        
                               DSN=MXG.SPRD1.D02APR08.T0959.zpcr        
                               DSN=MXG.SSYSA.D02APR08.T2359.zpcr        
                                                                        
              -Additional note:                                         
                Sorting TYPE70 by SYSTEM STARTIME DESCENDING PCTCPUBY to
                select the maximum CPU Busy percent interval sometimes  
                found max in an interval with short (2-3 min) duration, 
                which were the initial interval of an IPL, not the real 
                workload peak interval, so the SELECT=PEAK algorithm now
                finds the MAX(DURATM) for each system, and then selects 
                only the peak PCTCPUBY with DURATM GE 95% of MAXDUR     
                ( 95% = 14:15 for 15:00 interval) to be modeled.        
                                                                        
                For each z/OS LPAR, the Number of Logical CPs is the    
                average number of online-not-parked engines:            
                   ONLCPUS=(SMF70ONT-SMF70PAT)/DURATM;                  
                and Utilization also accounts for IRD and HiperDispatch:
                   ZPCRCPBY=100*LCPUPDTM/(SMF70ONT-SMF70PAT);           
                The MXG variable LPARCPUS, the count of engines that    
                were online for any part of an interval, is used for non
                z/OS LPARs.  %ANALZPCR prints reports with these details
                from TYPE70/TYPE70PR/TYPE74 so you can see what values  
                were found in your data.                                
                                                                        
                The IFL engines require the SCP (Linux or z/VM) to be   
                input, but there is no indication in the TYPE70PR data  
                as to which SCP is in use.  I considered trying to parse
                the LPARNAME for "V" or "L" but neither is safe, so I've
                set the SCP to z/VM                                     
                                                                        
                Since ANALZPCR builds a model file for each z/OS SYSTEM,
                there will be multiple files created for a CEC that has 
                multiple z/OS systems.  Using SELECT=PEAK could create  
                different STARTIMEs, since SYSA's peak might not be at  
                the same time when SYSB peak utilization occurred.      
                                                                        
                                                                        
Change 26.263   Thales e-Security's Security Resource Manager for IBM   
VMACSRMH        MVS RG1100, HSM Device Name field S04HSM is decoded into
EXSRMHCD        four new variables depending on the device type:        
EXSRMHDE          S04HSMCH='HSM*CHANNEL*DEVICE*NAME'                    
EXSRMHHS          S04HSMIP='HSM*IP*ADDRESS'                             
EXSRMHSN          S04HSMAX='HSM*IP*AUXILLARY*PORT'                      
EXSRMHSV          S04HSMVT='HSM*VTAM*DEVICE*NAME'                       
IMACSRMH       -Additional subtypes are now supported, with five SMF    
VMACSRMH        record ID's possible.                                   
VMXGINIT          RECORD ID MACRO FOR EACH OF THE FIVE POSSIBLE RECORDS:
Nov 19, 2008        MACRO _IDSRM1   237  %  /*CDS PARAMETER*/           
Dec 20, 2008        MACRO _IDSRM2   238  %  /*DETAIL EXCEPTION*/        
                    MACRO _IDSRM3   236  %  /*SECURITY VIOLATION*/      
                    MACRO _IDSRM4   240  %  /*SUMMARY*/                 
                    MACRO _IDSRM5   239  %  /*SRM SNAPSHOT*/            
                                                                        
                    DDDDDD     MXG       MXG                            
                    DATASET    DATASET   DATASET                        
                    SUFFIX     NAME      LABEL                          
                                                                        
                    SRMHAP     SRMHSMAP  SRM HOST SECURITY MODULE APPL  
                    SRMHCD     SRMHCDSP  CDS PARAMETER                  
                    SRMHDE     SRMHSMDE  SRM HOST DETAIL EXCEPTION      
                    SRMHDV     SRMHSMDV  SRM HOST SECURITY MODULE DEVICE
                    SRMHHS     SRMHHSMD  CDS HSMD SEGMENT               
                    SRMHNU     SRMHSMNU  SRM HOST SECURITY NULL RECORD  
                    SRMHSN     SRMHSMSN  SRM SNAPSHOT                   
                    SRMHSV     SRMHSEVI  SECURITY VIOLATION             
   Thanks to Yves Cinq-Mars, CIE IBM Canada Ltee, CANADA.               
                                                                        
Change 26.262   Support for WebSphere Version 7, new subtype 9 event.   
FORMATS         The new subtype 9 and its usage is discussed in this    
IMAC120         IBM TecDocs paper                                       
VMAC120            HTTP://WWW-03.IBM.COM/SUPPORT/TECHDOCS/              
VMXGINIT                ATSMASTR.NSF/WEBINDEX/WP101342                  
Nov 20, 2008    and its internal format is documented at                
                   HTTP://PUBLIB.BOULDER.IBM.COM/INFOCENTER/WASINFO/    
                        V7R0/TOPIC/COM.IBM.WEBSPHERE.ZSERIES.DOC/INFO/  
                        ZSERIES/AE/RTRB_SMFSUBTYPE9.HTML                
                MXG creates four new datasets from the subtype 9 record:
                   dddddd  dataset   description                        
                   T1209E  TYP1209E  WEBSPHERE SUBTYPE 9 EVENT          
                   T1209C  TYP1209C  WEBSPHERE SUBTYPE 9 CLASSIFICATION 
                   T1209S  TYP1209S  WEBSPHERE SUBTYPE 9 SECURITY       
                   T1209U  TYP1209U  WEBSPHERE SUBTYPE 9 CPU USAGE      
                There is one subtype 9 record for each request event, so
                dataset TYP1209E contains all data from these sections  
                   Platform Neutral Server Information Section          
                   Platform Neutra  Server Request     Section          
                   z/OS             Server Information Section          
                   z/OS             Server Request     Section          
                   Network                 Information Section          
                which only exist once per SMF record.   The other three 
                datasets can all have one or more observations for each 
                subtype 9 record.  The "TIMESTAMPS" section is decoded  
                but it's variables are duplicates of the datetimestamps 
                in the z/OS section, so they are not kept in TYP1209E.  
               -Several new MG1209x formats were created in FORMATS to  
                decode new subtype 9 variables.                         
               -Variables added to existing TYP120SI dataset:           
                 SM120NPA='SIP*SESSIONS*ATTACHED AND*ACTIVE'            
                 SM120BPT='BYTES*XFER*TO SERVER*FROM SIP'               
                 SM120BFP='BYTES*XFER*FROM SERVER*TO SIP'               
                                                                        
Change 26.261  Variables MSGSW, ='Y' or 'N', 'INPUT BY*MESSAGE*SWITCH'  
TYPECIMS       is now created in the _CHAIN macro to flag IMSTRAN obs.  
Nov 17, 2008                                                            
   Thanks to Shantha Hallett, CapGemini, ENGLAND.                       
                                                                        
Change 26.260  Variables CMF27CCU & CMF27CHN added to CMF27C93 dataset. 
VMACCMF        The were previously only output in dataset CMF27CAR.     
Nov 17, 2008                                                            
   Thanks to Shantha Hallett, CapGemini, ENGLAND.                       
                                                                        
Change 26.259  QA Stream revisions and some corrections to eliminate    
ANALDB2R       return codes and other issues unique to QA testing.      
ANALDBTR      -WARNING: VARIABLE IN DROP KEEP RENAME WAS NOT REFERENCED 
ANALDMON       was eliminated.  Some were spelling errors for variables 
ANALNPMR       that should have been, and now are, kept.  Some were just
ASUMAPAF       spurious messages, for example, when a variable in the   
JCLPDB92       KEEP= list was also (intentionally) in a DROP statement. 
JCLTES92       In SPUNJOBS, a DKROCOND=NOWARN was inserted where the I/O
JCLTEST8       variables for archaic devices needed protection.         
JCLTEST9       Interestingly, in the case of VMAC7072, where KEEP= list 
MXGSAS92       had PCTCIBY0-PCTCIBY9 PCTCIBYA PCTCIBYB ... for variables
MXGSASV9       that were not created until the subsequent SORT/MERGE for
SPUNJOBS       the SPLIT70 logic, the hyphenated variable's message was 
TYPEIMSA         WARNING: Not all variables in the list                 
TYPETNG                   PCTCIBY0-PCTCIBY9 were found.                 
TYPSTNG        while the message for the individual variables was.      
UNIXSAR1         WARNING: The variable PCTCIBYA in the DROP, KEEP,      
UTILBLDP                  or RENAME list has never been referenced.     
UTILXRF1      -z/OS QA job's JCL uses referbacks to eliminate PROC COPYs
VMAC112        that took time and CPU, but an error in SAS V9.2 (that   
VMAC7072       is to be corrected) caused the referback to fail when a  
VMAC92         LIBNAME xxx CLEAR was used (only to determine if xxx was 
VMAC99         on a tape device, for performance), so the cases where   
VMACBBMQ       CLEAR is used in the QA stream, ANALDB2R, and VMXGTAPE   
VMACBVIR       (invoked by ANALDB2R and TYPECIMS) are now bypassed, but 
VMACEVTA       only under SAS V9.2, temporarily.                        
VMACIMS       -Most "MXG" warnings printed MXGWARN: but now all MXG     
VMACSFTA       warnings print MXGWARN: instead of WARNING:.             
VMACSVC       -Dec 20: //TEMPSVC DD replaced //SVCTEMP DD in JCLTESxx.  
VMACSVIE                                                                
VMACSYNC                                                                
VMACTMVS                                                                
VMACTNG                                                                 
VMACTPF                                                                 
VMACTPMX                                                                
VMACXAM                                                                 
VMXGRMFI                                                                
VMXGTAPE                                                                
Nov 18, 2008                                                            
Dec 20, 2008                                                            
                                                                        
Change 26.258  WPS 2.3.3 failed in UTILGETM due to a WPS Error (#6276)  
JCLQASAS       in an ARRAY (256,512) statement; that error is corrected 
JCLQAWPS       in WPS 2.3.4, now the required release of WPS for MXG.   
QASAS          UTILGETM was originally used only in the JCLTESTx job, to
UTILGETM       create the SMFSMALL file of 10 records per ID, but it was
VMXGGETM       not included in the MXG QA tests until now.  UTILGETM    
Nov 15, 2008   invokes %VMXGGETM with JCLTEXTx defaults, but VMXGGETM   
Nov 18, 2008   was previously enhanced (with no Change) to also print an
QAWPS          excellent report of the SMF record ID and Subtypes found,
               with both record count AND record BYTES.  You can use:   
                  // EXEC MXGSASV9                                      
                  //SMF DD DSN=YOUR.SMF,DISP=SHR                        
                    %VMXGGETM(SMFOUT=,FREQ=YES);                        
              to produce only the report.                               
             -PROC TABULATE generated an innocuous, yet annoying        
              WARNING: Dimension crossing has multiple format modifiers.
              message that was eliminated by the addition of a separate 
              FORMAT statement for ID and SUBTYPE variables, thanks to  
              SAS Technical Support.                                    
   Thanks to Alf-Terje Thomassen, Ergo Group, NORWAY.                   
                                                                        
Change 26.257  Corrections/enhancements for Omegamon CICS user SMF data.
VMAC112        Previously, three subtypes, 200 (INTR), 201 (SYSR) and   
VMACOMCI       203 (ONDV) were written as user SMF records, supported   
Nov 16, 2008   by MXG TYPEOMCI code, in Versions V550 and earlier, but  
               now, in Version V560, only subtype 203 is created, and it
               is written as SMF ID=112 (now that Candle was absorbed   
               into IBM, they can use "IBM" SMF record numbers!).       
               MXG has supported the SMF 112 for some time, but in this 
               revisions, errors in the DataCom and MQ count/clocks were
               found and corrected, so this change is now required.     
              -Only TYPEOMCI supports all three (200,201,203) subtypes, 
               but only for Version V550 and earlier.                   
              -TYPE112 supports only subtype 203, because V560 only     
               creates that subtype, and only as SMF ID=112 records.    
               However, with this change, the TYPE112 code reads both   
               the new V560 and old V550 format subtype 203 records.    
               This change in VMAC112 tests ID=112 OR ID=_IDOMCI, so if 
               you have defined   MACRO _IDOMCI nnn %   in IMACKEEP for 
               your current OMCI User SMF record number, those records  
               and new SMF 112s will be read automatically.             
                -Or, you can set _IDOMCI "instream" using:              
                   //SYSIN DD *                                         
                    %LET MACKEEP=   MACRO _IDMOCI  nnn  % ;             
                    %INCLUDE SOURCLIB(TYPE112);                         
                -The dataset names created for TYPE112 Subtype 203 are  
                 different in TYPE112, starting with T112xxxx, instead  
                 of the old OMCIxxxx dataset names, but all old variable
                 names are still created in the new-named datasets.     
               This text replaces Change 26.160, as it is/was incorrect.
              -The Datacom counts/clocks were wrong in TYPEOMCI support 
               but were correct in TYPE112; four pairs of variables,    
               DTCNT/DTCLK/DTFCNT/DTFCLK 02,07,09,14 did not exist in   
               the records, but the old OMCI code input them, causing   
               other variables to have incorrect values.                
              -The 24 MQ counts did not exist; there are 8 pairs of MQ  
               clocks and counters now correctly input, and the MQ      
               filename was truncated.                                  
   Thanks to Richard Schwartz, State Street Bank, USA.                  
                                                                        
Change 26.256  MXG 26.09 only.  %ANALDB2R(PDB=SMF); i.e., reading SMF to
ANALDB2R       create DB2 reports, caused many errors, starting with    
TESTANAL        ERROR: OLD-STYLE MACRO NAME % MUST CONTAIN ONLY LETTERS,
Nov 13, 2008           DIGITS, AND UNDERSCORES.                         
               The error has existed for some time, caused by recursive,
               mis-located include of VMACDB2 when SMF is read, and it  
               can be circumvented by using %READDB2 to read SMF, and   
               then use %ANALDBR only to create reports.  The default   
               reports with %ANALDB2R(PDB=SMF); can be created using    
                  %READDB2(PDB=SMF,PDBOUT=WORK,IFCIDS=ACCOUNT 106);     
                  %ANALDB2R(PDB=WORK);                                  
                  RUN;                                                  
               until you install this corrected ANALDB2R.  The MXG QA   
               stream tested only %ANALDB2R(PDB=PDB,...), but now a     
               new test of %ANALDB2R(PDB=SMF,...) is added.             
   Thanks to Dan Almagro, Automobile Club of South California, USA.     
                                                                        
Change 26.255 -ASMVTOC updated to prevent ABEND when it scanned a device
ASMVTOC        that was pending offline.                                
VMACCTLG      -VMACCTLG syntax error for missing "B" in two bit tests   
VMXGINIT       for IF GDGATTR='1.......'.                               
EXCTLGE4      -User coded enhancements to Catalog Processing:           
Nov 11, 2008   (a) Write observation to CTLGDSN for each Generation     
Dec 23, 2008       Dataset (GDS) so this dataset includes an observation
                   for each non-vsam dataset.                           
               (b) Write observation to CTLGVSAM for each AIX dataset.  
                   Since AIX datasets exist in a Cluster Sphere, the    
                   cluster gets written to the CTLGVSAM with the last   
                   AIX data and index component names.                  
               (c) When writing out the observation for CTLGVSAM, write 
                   out the volumes used for the index separate from     
                   the volumes used for the data component.             
               (d) Added support for Connector Records (a user catalog  
                   connected to the master catalog). A Connector Record 
                   is composed of a Name Cell c'U', an Owner Cell x'01',
                   0 or more Association Cells x'03', and a Volume Cell 
                   x'04'.                                               
               (e) Use of the CATRECNR to merge the observations        
                   together in the different datasets is problematic    
                   when AIX datasets are involved.  This change tracks  
                   the sphere cluster name, the aix cluster name, and   
                   the component name; these are output into the Vsam,  
                   Association, and Volume datasets. Also, the          
                   Generation Dataset (GDS) Name is output when writing 
                   the Volume dataset, updating the tracking of volumes,
                   so that the volumes are associated with the specific 
                   Generation Dataset.                                  
                  -Additional protection/corrections made Dec 23, 2008. 
   Thanks to Ken Sharpe, Oklahoma Dept of Human Services, USA.          
                                                                        
Change 26.254  Support for MAINVIEW for CICS 6.1 CMRDETL (INCOMPATIBLE).
EXMVCIC1       and support for 6.2 new data.                            
EXMVCIC2       The new 'F7'x records contain expanded 12-byte time data,
EXMVCICC       so this change is required to process the new release.   
EXMVCICE       The support for the File segments is enhanced, with new  
EXMVCICO       datasets for CONNECT/SESSION, DB2, DBCTL, MQ and OTHER,  
EXMVCICQ       with their unique variables, so the existing CMRFILE     
IMACMVCI       dataset now contains only the CICS FILE segment data.    
VMACMVCI       The complete set of datasets now created are:            
VMXGINIT         dddddd     Dataset   Description                       
Nov  9, 2008     MVCICS     CMRCICS   MAINVIEW CICS CMRDETL DATA        
Nov 10, 2008     MVCICC     CMRFCON   MAINVIEW CICS CMRDETL FILE CONNECT
                 MVCICE     CMRFSES   MAINVIEW CICS CMRDETL FILE SESSION
                 MVCICF     CMRFILE   MAINVIEW CICS CMRDETL FILE CICS   
                 MVCICO     CMRFCON   MAINVIEW CICS CMRDETL FILE OTHER  
                 MVCICQ     CMRFCON   MAINVIEW CICS CMRDETL FILE MQ     
                 MVCIC1     CMRFCON   MAINVIEW CICS CMRDETL FILE DBCTL  
                 MVCIC2     CMRFCON   MAINVIEW CICS CMRDETL FILE DB2    
   Thanks to Henk van der Veur, Fortis, THE NETHERLANDS.                
                                                                        
Change 26.253  VM/ESA 2.5 1.22 record caused BROKEN CONTROL RECORD error
VMACVMXA       as the support for that record was added for z/VM 5.3    
Nov  7, 2008   and expected an 88-byte, versus 84 byte, record segment. 
               Note that this was VERY archaic VM/ESA data being tested 
               as part of a QA job, and is NOT a current z/VM error.    
                                                                        
Change 26.252  In VMXGDEL, IF %UPCASE(&USERWORK) function caused ERROR: 
ANALACTM          A character operand was found in the %EVAL function   
GRAFWORK          or %IF condition where a numeric operand is required. 
GRAFWRKX       when the SAS WORK option was WORK=HFS:/usr/lpp/.../work. 
GRAFWORX       Those forward slashes were seen as divide-by operations  
READDB2        by the macro compiler.  By replacing IF %UPCASE(&xxx)    
VMXGDEL        syntax with  %IF %QUPCASE(&xxx) function, that %QUPCASE  
VMXGGETM       function "quotes" the text strings, preventing the macro 
Nov  7, 2008   compiler from seeing the slashes as an operator.  Only   
VMXGINIT       VMXGDEL caused an error, but all   IF %UPCASE(&xxx)      
Nov 10, 2008   statements, where &xxx could contain a libref text, were 
               identified and corrected in the other listed members.    
               However, in addition, VMXGINIT was revised, to add a test
               for a forward slash for unix (like the existing test for 
               a back slash for NT) when it sets the "WORK" librefs.    
   Thanks to Brian Watts, Dept of Education, Employment, AUSTRALIA.     
   Thanks to Chris Weston, SAS ITRM Development, USA.                   
                                                                        
Change 26.251  Cosmetic, but wrong.  The $MG110TT format for TRANTYPE   
FORMATS        had  'E2C4'X='SD:BY ADI WITH DATA' but that is changed to
Oct 31, 2008   have 'E2C4'X='SD:BY ATI WITH DATA'.                      
   Thanks to Clayton Buck, UniGroup, Inc, USA.                          
                                                                        
Change 26.250 -The four variable sets G1vvvvvv-G4vvvvvv in BVIR33 have  
VMACBVIR       the data for the first four clusters, but documentation  
Oct 31, 2008   of this Hnode Grid Historical Record says there can be a 
Nov 13, 2008   maximum of eight clusters, so new sets G5vvvvvv-G8vvvvvv 
               are now created, labeled, and kept.                      
              -Variable DVMXMT00 was not kept due a typo in the KEEP=.  
   Thanks to Harald Seifert, HUK-COPBURG, GERMANY.                      
   Thanks to Jens Mohring, HUK-COPBURG, GERMANY.                        
   Thanks to Francois Vancoppenolle, Rainbow ICT, BELGIUM.              
                                                                        
Change 26.249  The Two _Sdddddd Data Set SORT macros for ABARS HSM data,
VMACHSM        _SHSMWWF and _SHSMWWV still contained DATA steps rather  
Oct 30, 2008   than PROC SORTs, which could cause NOT SORTED errors.    
               The DATA step is coded when new datasets are created, as 
               the PROC SORT NODUP can't be added until I have test data
               to know what BY variables are required for duplicate     
               removal. I assume I just forgot to go back when I finally
               got ABARS test data to validate their _Bdddddd macros.   
   Thanks to Christine Wong, MMSA, USA.                                 
                                                                        
Change 26.248  Member IMACKEEP is now included by ANALSMF after the     
ANALSMF        MACRO _MYCISIZ is defined, so &MACKEEP can be used to    
Oct 29, 2008   change that definition.  Last update to ANALSMF was 1996!
   Thanks to Stephen Hoar, Lloyds TSB, ENGLAND.                         
                                                                        
Change 26.247  Support for SMF 113.  Incomplete, do not use.            
VMAC113        Test SMF data is needed to finish writing the support    
Oct 29, 2008   for this new monitor record.  See Change 27.002.         
                                                                        
Change 26.246  Three RMF III pre-emptable SRB CPU time variables were   
VMACRMFV       wrong, by a factor of 1000, because their informat was   
Oct 28, 2008   incorrect.  Now, all three are correctly input as        
                 ASIPHTMA    &PIB.4.3 /*PREEMTEABLE*CLASS*SRB*TIME*/    
                 ASIPHTZA    &PIB.4.3 /*PREEMPTABLE*SRB*FOR ZAAPS*/     
                 ASIPHTZI    &PIB.4.3 /*PREEMPTABLE*SRB*FOR ZIIPS*/     
               ASIPHTMA was informat PIB4., and is now TIME12.2 format, 
               ASIPHTZA and ASIPHTZI were informat PIB4.6.              
   Thanks to Graham Harris, Royal Bank of Scotland, ENGLAND.            
   Thanks to Matt Ellis, Royal Bank of Scotland, ENGLAND.               
   Thanks to Rob D'Andrea, Royal Bank of Scotland, ENGLAND.             
                                                                        
Change 26.245  Change 26.207 (MXG 26.08) added variables JXSLMJ1 JXSLMJ2
VMACTPMX       in dataset TYPETPMX, but labeled them as UNKNOWN.  They  
Oct 27, 2008   now renamed and correctly labeled:                       
                 JXSLMNGD='JXSLM*MANAGED'                               
                 JXSLSRVC='JXSLM*SERVICE'                               
               Using an old MXG Version (prior to 26.08) to read SMF    
               records with either field caused this MXG message:       
                  ***ERROR.VMACTPMX. VARNAME=$JXSLMJ_ NOT FOUND,        
                  TOKFIELD=$JXSLMJ_  WAS NOT INPUT.                     
                  TOKENID=53613 TOKENID=D16D TOKNAME=$JXSLM FLENGTH=1   
   Thanks to ???, BOA, USA.                                             
   Thanks to Nancy DiFilippo, MVS Solutions Inc, USA.                   
                                                                        
Change 26.244  Variable MIPS was not being calculated for WORKLOAD=0,   
GRAFWRKX       the uncaptured work, causing confusing graphs when the   
Oct 27, 2008   MSU and MIPS were compared.                              
   Thanks to Jorge Fong, DOITT NYC, USA.                                
                                                                        
Change 26.243  Support for OA21140 - High Performance FICON (zHPF) and  
FORMATS        RMF HiperDispatch enhancements.                          
VMAC7072      -TYPE70 existing SMF70Q00-SMF70Q12 counts of IN AND READY 
VMAC73         users previously were based on the number of processors  
VMAC74         that were online; now, with this APAR installed and with 
VMAC79         HiperDispatch Active, the count is based on the number of
Oct 27, 2008   processors being ONLINE AND NOT PARKED when the sample   
Nov  2, 2008   was taken.                                               
Nov 10, 2008  -TYPE70 new variable SMF70NRM='zIIP*NORMALIZATION*FACTOR*/
              -TYPE70PR field SMF70POF creates two new variables:       
                POLARITY='POLARIZATION'                                 
                  0='0:Horizontally Polarized or not indicated'         
                  1='1:Vertically Polarized Low Entitlement'            
                  2='2:Vertically Polarized Medium Entitlement'         
                  3='3:Vertically Polarized High Entitlement'           
                  Variable POLARITY is decoded by new MG070PO format.   
                POLARCHG='POLARITY*CHANGED?'                            
                 value of Y if polarization was changed during interval.
              -TYPE73 dataset has these new zHPF variables:             
                 CHFACTV ='FICON*OPERATIONS*CONCURRENTLY*ACTIVE'        
                 CHFDFER ='FICON*OPERATIONS*DEFERRED*PER SEC'           
                 CHFRATE ='FICON*OPERATIONS*PER SEC'                    
                 CHFXACTV='ZHPF*OPERATIONS*CONCURRENTLY*ACTIVE'         
                 CHFXDFER='ZHPF*OPERATIONS*DEFERRED*PER SEC'            
                 CHFXRATE='ZHPF*OPERATIONS*PER SEC'                     
                 SMF73ECP='CHANNEL*PATH*IDENTIFICATION'                 
                 SMF73EIX='INDEX TO*EXTENDED*CHANNEL*MEASUREMENTS'      
                 SMF73EOC='FICON*COMMAND MODE*OPERATIONS*ATTEMPTS'      
                 SMF73EOD='FICON*COMMAND MODE*OPERATIONS*NOT INIT'      
                 SMF73EOS='SUM COUNT OF*COMMAND MODE*OPERATIONS'        
                 SMF73ETC='FICON*TRANSPORT MODE*OPERATIONS*ATTEMPTS'    
                 SMF73ETD='FICON*TRANSPORT MODE*OPERATIONS*NOT INIT'    
                 SMF73ETS='SUM COUNT OF*TRANSPORT MODE*OPERATIONS'      
              -TYPE74 dataset has this new variable:                    
                 R744FLPN='PARTITION*IDENTIFIER*OF CF'                  
              -TYPE79C dataset for subtype 12 has the same new zHPF     
               fields as those added to TYPE73, above, but the SMF73    
               is changed to R79 to be consistent with existing TYPE79s.
   Thanks to Dr. H. Pat Artis, Performance Associates, USA.             
   Thanks to Brian Currah, Independent Consultant, CANADA.              
                                                                        
Change 26.242  Enhancements to internal utility functions/programs.     
ANAL115       -VMXGOPTR is used to store, set, and restore SAS options, 
ANALCISH       but only supported one option.  Now, multiple options can
ANALRMFR       be handled, but multiple new values must be separated by 
ANALTCP        exclamation points, because values can contain blanks:   
VGETOBS          %VMXGOPTR(OPTNAME=OP1 OP2 OP3,NEWVALUE=V1!V2!V3);      
VMXGOPTR      -VGETOBS could fail if no DDNAME was specified.           
Oct 27, 2008  -ANALCISH, ANALRMFR, ANALTCP, and ANAL115 all now use the 
               VGETOBS macro instead of the archaic internal OBSCHEK.   
                                                                        
Change 26.241  Extra data in LINUXKRNL '02'x Processor Record caused the
VMACVMXA       BROKEN CONTROL RECORD error message.  The CONTROL RECORD 
Oct 23, 2008   was fine: any MXG out-of-alignment in z/VM MONWRITE data 
Oct 30, 2008   surfaces with that error.  The MXG circumvention to skip 
               the hundreds of extra bytes in the record based on NRCPUS
               was defective and those extra bytes are now unilaterally 
               skipped, to eliminate the circumvention and exposure.    
               This problem was only observed in Release 3.5 data; the  
               data from z/VM 5.4 does not have any extra bytes.        
              -Divide by zero in daccumulation of VXAPLTCP dataset due  
               to insufficient BY list - variable CLUSNAME must be used.
   Thanks to Nick Altieri, Wachovia Bank, USA.                          
   Thanks to David Schumann, Blue Cross Blue Shield of Minnesota, USA.  
                                                                        
====== Changes thru 26.240 were in MXG 26.09 dated Oct 20, 2008=========
                                                                        
Change 26.240  Variable TRNOTCON is a time of day, and not a datetime   
VMACCIMS       value, even though it's input as TODSTAMP8, so it is now 
Oct 20, 2008   TIMEPARTed and formatted TIME12.2.                       
   Thanks to Kenneth D. Jones, Bell Aliant, CANADA                      
   Thanks to Bruce Perry, Bell Aliant, CANADA                           
                                                                        
Change 26.239  Cosmetic.  The CASE THREE example, in comments only in   
IMACUOW        VMXGUOW, is now in comments in IMACUOW, and all three of 
Oct 17, 2008   the examples are documented completely in both members.  
   Thanks to Chris Weston, SAS ITRM Development, USA.                   
                                                                        
Change 26.238  Utility to PROC PRINT with the LABEL and VARIABLE NAME as
UPRINDOC       the header is enhanced so you can select how many obs are
Oct 17, 2008   printed and change the Line Size if desired.  This is NOT
               an elegant implementation, but it works, and is very good
               for investigation of new data sources so you can see both
               the name and the label.  Every dataset in the PDB library
               is PRINTed, and a PROC MEANS N MEAN MIN MAX; is run with 
               all observations in each dataset, to show the statistics 
               of each numeric variable.                                
               Previously, it was hard-coded to print only the first 9  
               obs, (for the ADOC members) with fixed line size.        
                                                                        
Change 26.237  Support for MACRO _GRPNAME was incomplete in ASUMTAPE but
ASUMTAPE       is now corrected, and the ASUMTAPE dataset now is output 
Oct 17, 2008   with the _LSUTAPE macro, defined as &PSUTAPE..ASUMTAPE,  
               to be more consistent with MXG naming conventions.  The  
               previous output was just to &PDBMXG..ASUMTAPE, but as the
               default for PDBMXG and PSUTAPE are both //PDB, and it is 
               unlikely that you would have changed, this change SHOULD 
               be transparent.                                          
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.236  Sites with HiperDispatch enabled, only. The Parked Time, 
VMAC7072       CPUPATTM could be missing in PDB.TYPE70, causing PCTMVSBY
Oct 17, 2008   to be too large and CPUMVSTM to be too SMALL, with wrong 
               values also in variables SHORTCPS & PLCPRDYQ, if a system
               had offline CP engines (see Changes 26.197 and 26.192).  
               Those engines have IFARRAY=CP, but their parked time is a
               missing value.  The real culprit was this add statement: 
                  IF IFARRAY(LCPUADDR+1)=0 THEN                         
                      CPUPATTM=CPUPATTM+PATWAIT(LCPUADDR+1);            
               which sets CPUPATTM to missing when PATWAIT is missing.  
               I should have added a test for PATWAIT non-missing, but I
               instead now use the SUM() function in this revision:     
                  IF IFARRAY(LCPUADDR+1)=0 THEN                         
                    CPUPATTM=SUM(CPUPATTM,PATWAIT(LCPUADDR+1));         
               to preserves the CPUPATTM value when PATWAIT is missing. 
                                                                        
               Your existing PDB.TYPE70 data can be corrected without   
               re-reading the SMF data, using this program:             
                                                                        
                DATA NEW.TYPE70;                                        
                 SET OLD.TYPE70;                                        
                 IF CPUPATTM=. THEN DO;                                 
                   CPUPATTM=SUM(OF                                      
                   CPUPATM0-CPUPATM9 CPUPATMA CPUPATMB CPUPATMC CPUPATMD
                   CPUPATME CPUPATMF CPUPATMG CPUPATMH CPUPATMI CPUPATMJ
                   CPUPATMK CPUPATML CPUPATMN CPUPATMO CPUPATMP CPUPATMQ
                   CPUPATMR CPUPATMS CPUPATMT CPUPATMU CPUPATMV CPUPATMW
                   CPUPATMX CPUPATMY CPUPATMZ CPUPATZA CPUPATZB CPUPATZC
                   CPUPATZD CPUPATZE CPUPATZF CPUPATZG CPUPATZH CPUPATZI
                   CPUPATZJ CPUPATZK CPUPATZL CPUPATZM CPUPATZN CPUPATZO
                   CPUPATZP CPUPATZQ CPUPATZR CPUPATZS CPUPATZT CPUPATZU
                   CPUPATZV CPUPATZW CPUPATZX CPUPATZY CPUPATZZ CPUPATYA
                   CPUPATYB CPUPATYC );                                 
                   IF CPUPATTM GT 0 THEN                                
                     CPUMVSTM=CPUUPTM-MVSWAITM-CPUPATTM;/*-SMF70PAT*/   
                   ELSE CPUMVSTM=CPUUPTM-MVSWAITM;                      
                   IF CPUUPTM GT 0 THEN DO;                             
                     PCTCPUBY=100*CPUACTTM/CPUUPTM;                     
                     PCTCPUEF=100*CPUEFFTM/CPUUPTM;                     
                     IF CPUPATTM GT 0 THEN  /*PER OA24074*/             
                      PCTMVSBY=100*CPUMVSTM/(CPUUPTM-CPUPATTM);         
                     ELSE PCTMVSBY=100*CPUMVSTM/CPUUPTM;                
                   END;                                                 
                   IF CPUACTTM=. AND CPUPDTTM=. AND PCTCPUBY=. AND      
                     PCTMVSBY GT 0 AND CPUMVSTM GT 0 THEN DO;           
                     PCTCPUBY=PCTMVSBY;                                 
                     CPUACTTM=CPUMVSTM;                                 
                   END;                                                 
                   IF PCTMVSBY GT 0 AND PCTCPUBY GT 0 THEN DO;          
                     SHORTCPS=PCTMVSBY/PCTCPUBY;                        
                     PLCPRDYQ=100*(PCTMVSBY-PCTCPUBY)/PCTMVSBY;         
                     IF . LT PLCPRDYQ LT 0 THEN DO;                     
                       SHORTCPS=1;                                      
                       PLCPRDYQ=0;                                      
                     END;                                               
                   END;                                                 
                   ELSE DO;                                             
                     SHORTCPS=.;                                        
                     PLCPRDYQ=.;                                        
                   END;                                                 
                 END;                                                   
                 RUN;                                                   
   Thanks to Frank De Bree, DEXIA, BELGIUM.                             
   Thanks to Christine De Clercq, DEXIA, BELGIUM.                       
                                                                        
Change 26.235  Running the IEBUDPTE.SAS program on Linux to read a file 
IEBUPDTE       that was created on Windows caused characters '0D'x (CR  
Oct 15, 2008   or Carriage Return) to be treated as a data byte.  This  
               is because when unix files are written, only a '0D'x CR  
               is written to terminate each line, while Windows files   
               are terminated with a '0D0A'x CRLF (CR plus Line Feed).  
               So SAS under unix only looks for an LF line terminator.  
               To get SAS under unix/linux to read a Windows file and   
               not store the '0D'x as data, the TERMSTR=CRLF option     
               must be specified on the INFILE statement.  This id      
               documented in the SAS Companion for unix INFILE note at: 
                   http://support.sas.com/documentation/cdl/en/         
                          hostunx/59542/HTML/default/chifoptfmain.htm   
               Fortunately, TERMSTR=CRLF works under Windows, so it can 
               be added unconditionally to the INFILE statement and now 
               that program will run on all ascii platforms.            
   Thanks to Steve Clark, DHL IT Services Americas, USA.                
   Thanks to Jan Squillace, SAS Technical Support, USA.                 
                                                                        
Change 26.234  Strange ORACLE SMF records, with none of the offsets that
VMACORAC       are expected, but with an offset in a formerly reserved  
Oct 15, 2008   field, followed by variable length text data, are now    
               detected and the first 500 instance printed for tests.   
   Thanks to Diane Eppestine, IBM Global Services, USA.                 
                                                                        
Change 26.233  Dataset DB2STAT4 contains IFCID=225 in DB2 V9 as noted in
READDB2        the text of Change 25.090; now, READDB2 is enhanced to   
Oct 14, 2008   create both datasets T102S225 and DB2STAT4 when IFCID=225
               has been requested; observations from DB2 V8 or V7 will  
               be in T102S225 and from V9 or later in DB2STAT4, but the 
               variable names are the same.  Jan 2009: See Change 26.311
               which actually made the change correctly in READDB2.     
                                                                        
Change 26.232  Reserved Change Number                                   
                                                                        
Change 26.231  Variable MEMLIMIT printed ERROR for '00000FFFFFFFF000'x, 
FORMATS        but the Installation Exits manual discussion of MEMLIMIT 
VMAC30         under IEFUSI (how's that for obscure SMF documentation)  
Oct 10, 2008   notes that that value is set when MEMLIMIT is NOLIMIT.   
               Unfortunately, there's no easy way out, to print NOLIM   
               for that value, because MEMLIMIT is FORMATted with the   
               standard MGBYTES decoding format, used for all byte vars.
               So, new MG030ME format is created MEMLIMIT, and the above
               hex value sets MEMLIMIT=. so NOLIM is printed.           
   Thanks to Dan Case, Mayo Clinic, USA.                                
                                                                        
Change 26.230  Variable QPACPAC was incorrectly set in DB2ACCTP whenever
VMACDB2        variable QPACCLS7='Y'.  QPACPAC was set from the same bit
Oct  7, 2008   in QPACFLGS after QPACCLS7 had been set.                 
   Thanks to Don Cleveland, Wellpoint, USA.                             
                                                                        
Change 26.229  MQ variables QWHCPST and QWHCPSB for IMS access were     
VMAC116        only correct for WTIDATYP=3; the MXG test for IMS should 
Oct  4, 2008   have input those fields for 3 or 4, but code had 2 and 3.
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.228  Example to report DASD Storage Group summarization using 
ASUMSTGP       MXG's DCOLLECT data.                                     
GRAFSTGP        - ASUMSTGP creates PDB.ASUMSTGP summary by storage group
TRNDSTGP          and DSNAME.                                           
Oct  3, 2008    - TRNDSTGP creates PDB.TRNDSTGP trending summary        
                - GRAFSTGP produces graph of allocated and used space   
                  from the TREND data.                                  
   Larry Douty, ExxonMobile, USA.                                       
                                                                        
Change 26.227  Previously, VMXGSUME protected for variables that did not
VMXGSUME       exist in the incoming datasets, but changes to VMXGSUM   
Oct  3, 2008   now provide that same protection, so there is no need for
               a separate VMXGSUME member.  So now, VMXGSUME will just  
               bring in the standard VMXGSUM member, and any references 
               in your code to use %VMXGSUME can be changed to %VMXGSUM,
               or any %INCLUDE SOURCLIB(VMXGSUME); can be removed, but  
               those statements do not HAVE to be changed, as long as   
               you do NOT have your own VMXGSUME member in tailoring    
               libraries.                                               
                                                                        
Change 26.226  Reserved Change Number.                                  
Oct  2, 2008                                                            
                                                                        
Change 26.225  Variable QPACAAFG was still wrong after Change 26.080, as
VMACDB2        it is INPUT in two places, but only the first was fixed. 
Oct  2, 2008                                                            
   Thanks to Glenn Bowman, Wakefern, USA.                               
                                                                        
Change 26.224  NMON variables that did not have a decimal point in the  
VMACNMON       data were incorrectly input by MXG's 6.1 format, so they 
Oct  2, 2008   were small by a factor of 10, and fields with more than  
               6 digits were truncated; both errors were due to the use 
               of INPUT(field,6.1) syntax, which divides by 10 when the 
               field does not contain a decimal point, and only reads in
               the first six digits.  Each variable in each MXG dataset 
               has now been validated against the NMON xls file after   
               this (embarrassing!) correction, and all are created with
               INPUT(field,16.0) syntax.                                
   Thanks to Steven Olmstead, Northwestern Mutual, USA.                 
                                                                        
Change 26.223  Support for NSM VMWARE ESX 2.5.5 formerly a/k/a TNG has  
EXTVW020       ten new datasets for these new objects:                  
EXTVW021                                                                
EXTVW022        dddddd  dataset    description                          
EXTVW023                                                                
EXTVW024        VW020     VW020     VMWARE ENGINE CPU                   
EXTVW025        VW021     VW021     VMWARE ENGINE DISK                  
EXTVW026        VW022     VW022     VMWARE ENGINE MEMORY                
EXTVW027        VW023     VW023     VMWARE ENGINE NETWOR                
EXTVW028        VW024     VW024     VMWARE ENGINE SYSTEM                
EXTVW029        VW025     VW025     VMWARE VM CPU                       
FORMATS         VW026     VW026     VMWARE VM DISK                      
IMACTNG         VW027     VW027     VMWARE VM MEMORY                    
VMACTNG         VW028     VW028     VMWARE VM NETWORK                   
VMXGINIT        VW029     VW029     VMWARE VM SYSTEM                    
Oct  3, 2008                                                            
   Thanks to Michael Kynch, International Paper, USA.                   
                                                                        
Change 26.222  Extremely large values in CPUIFATM, CPUIFETM, IFAUNITS in
VMAC7072       TYPE72GO observations in an interval in which an operator
Sep 30, 2008   varies a CP engine on or offline were caused by invalid  
               values in R723IFAT and R723IFCT.  IBM determined that the
               CONFIG command invokes IRAEVCFG to recalculate RMCTADJC, 
               and when IWMRCOLL is invoked, IRAWRARC converts these    
               service units into microseconds using RMCTADJC (SU_SEC). 
               In the specific case, RMCADJC was x'194' prior to vary   
               and was x'166' after, which caused IFAT and IFCT to be   
               lower in the second IWMRCOLL, creating a "negative" value
               i.e., first bit on, which MXG sees as a large positive.  
               IBM said it is not possible to fix because the microsecs 
               are correct based on the current RMCTADJC value; however 
               IBM support noted that the service unit values in fields 
               R723CIFA and R723CIFC were correct because they are not  
               adjusted by RMCTADJC, so IBM's permanent solution is for 
               MXG to recalculate CPUIFATM and CPUIFETM from service    
               units and to no longer use R723IFAT and R723IFCT values. 
                 The defective fields, R723IFAT and R723IFCT were the   
                 original IFA times, from which MXG IFAUNITS/IFEUNITS   
                 were originally created.  The recommended fields now   
                 used, R723CIFA and R723CIFC were added by the APAR     
                 that also added the zIIP service unit values that MXG  
                 has always used to create the zip CPU times, so it is  
                 consistent now to use all those service unit fields for
                 both zAAP and zIIP CPU times and service units.        
               This change implements that IBM solution.                
               Jul 29, 2010:  Variables R723IFAT and R723IFCT are set to
                              a missing value to avoid confusion.  The  
                              APAR mentioned was OA13499, Change 24.046!
   Thanks to Dianne Gamarra, IBM Level 2 Support, USA.                  
   Thanks to Frank De Bree, DEXIA, BELGIUM.                             
   Thanks to Christine De Clercq, DEXIA, BELGIUM.                       
   Thanks to Eugent Van Ossalaer, DEXIA, BELGIUM.                       
                                                                        
Change 26.221  Support for IBM DS8000 2107 SAN Disk Controller stats in 
EXSVCCP        SVCPerfStats xml files, creates five statistics datasets:
EXSVCMD            MACRO     INFILE     DDDDDD     DATASET              
EXSVCNO                                                                 
EXSVCPO           _TSVCMD   SVCMDISK    SVCMD      SVCMDISK             
EXSVCVD                                                                 
IMACSVC           _TSVCNOD  SVCNODE     SVCCP      SVCCPBSY             
TYPESVC                                 SVCNO      SVCNODE              
TYPSSVC                                 SVCPO      SVCPORT              
VMACSVC                                                                 
VMXGINIT          _TSVCVD   SVCVDISK    SVCVD      SVCVDISK             
Sep 28, 2008                                                            
Oct 20, 2008   The support for this data source requires an extra file, 
               named TEMPSVC, which is written to and read from, to     
               prevent thousands of lines to be written on the SAS log. 
               For ASCII execution,                                     
                    FILENAME TEMPSVC 'C:\tempsvc' LRECL=52;             
               For z/OS execution,                                      
                  //TEMPSVC  DD UNIT=SYSDA,SPACE=(CYL,(100,100)),       
                  //            RECFM=VB,LRECL=512,BLKSIZE=0            
                                                                        
               Both SVC 4.1 and SVC 4.2 data has been tested.           
                                                                        
                   The order of the SVCMDISK, SVCNODE, or SVCVDISK DD is
                   not important; use DD DUMMY if you don't want to read
                   an XML file.  Example JCL to process SVC data:       
                                                                        
                   // EXEC MXGSASV9                                     
                   //PDB DD DSN=YOUR.SVC.OUTPUT.PDB,DISP=(NEW .....     
                   //TEMPSVC  DD UNIT=SYSDA,SPACE=(CYL,(100,100)),      
                   //            RECFM=VB,LRECL=512,BLKSIZE=0           
                   //SVCMDISK DD DSN=YOUR.MDISK.FILE01.DATA,DISP=SHR    
                   //         DD DSN=YOUR.MDISK.FILE02.DATA,DISP=SHR    
                   //         DD DSN=YOUR.MDISK.FILENN.DATA,DISP=SHR    
                   //SVCNODE  DD DSN=YOUR.MDISK.FILE01.DATA,DISP=SHR    
                   //         DD DSN=YOUR.MDISK.FILE02.DATA,DISP=SHR    
                   //         DD DSN=YOUR.MDISK.FILENN.DATA,DISP=SHR    
                   //SVCVDISK DD DSN=YOUR.MDISK.FILE01.DATA,DISP=SHR    
                   //         DD DSN=YOUR.MDISK.FILE02.DATA,DISP=SHR    
                   //         DD DSN=YOUR.MDISK.FILENN.DATA,DISP=SHR    
                   //SYSIN    DD *                                      
                      %INCLUDE SOURCLIB(TYPSSVC);                       
                                                                        
               This was my first venture into reading XML files; these  
               are directly created by the disk controller monitor, and 
               no predecessor "flat file" exists.  Unfortunately, these 
               XML documents are not "well-formed" which could have been
               directly read with the SAS XML engine; a well-formed XML 
               document has a matching end-tag for each start-tag, but  
               these documents often have only the start-tag.  SAS does 
               provide a separate facility for these "non-generic" XML  
               documents, but it involves writing a tag-specific XML map
               document that tells SAS how to read the XML document, but
               that would require a significant redesign of MXG to have 
               a matching pair of "documents", a program and an XML map,
               for each of the XML files to be read, with new naming  . 
               conventions, etc.  Instead, I wrote this support in SAS  
               data steps, using SAS NAMED INPUT (well suited to the XML
               data format of  tag1="value1" tag2=="value2").  Also, as 
               the monitor data is accumulated, additional DATA steps   
               would be required after the initial input.               
                                                                        
               One real negative of having to read XML documents instead
               of a simple binary file is the massive increase in data  
               volume.  For example, the VDISK file contained 1,143,405 
               physical records, but there were only 70,160 observations
               created from that XML file.                              
               Part of that volume is due to the monitor's design: it   
               creates a separate document for each interval, but all of
               the documents must be read and sorted so the values can  
               be deaccumulated.  There were 400 mdisk documents daily, 
               which were concatenated and read in a single data step,  
               but that generated 160,000 lines of the SAS log, because 
               each of those 400 input events not only print the file   
               name being read, but repeats the full "file list" of all 
               400 files!  As a result, that first data step is wrapped 
               in an OPTIONS NONOTES to suppress that unwanted printing.
                                                                        
               Users HAVE experienced problems attempting to ftp the xml
               files to z/OS, because the files are "unix-format" files 
               that are created on Windows, and they are terminated ONLY
               with LF (0Ax) and not the normal-for-windows-files CRLF  
               (0D0Ax).                                                 
                                                                        
               One user was able to ftp the xml files to z/OS using:    
                 ascii                                                  
                 quote site recfm=fb lrecl=2000 blksize=2000            
                 put stats.xml 'uuuuuuuu.stats.xml' lf                  
               where the z/OS ftp server was IBM FTP CS V1R8.           
                                                                        
               However, another user's ftp failed with IBM FTP CS V1R7. 
               (The ftp executed, but created a single record with the  
               '0A'x treated as data, and that record was truncated at  
               the LRECL length.  That user found this IBM documentation
               note in the IP User's Guide and Commands manual:         
                 "The z/OS FTP server supports only the CRLF value for  
                  incoming data."                                       
               After using a hex editor to change '0A'x to '0D0A'x they 
               were able to ftp the IBM xml file to the IBM ftp server. 
                                                                        
               This Windows command will change the '0A'x to '0D0A'x:   
                   TYPE unix_file | FIND "" /V > dos_file               
               so the file can be ftp'd to an IBM ftp server on z/OS.   
                                                                        
               And for completeness, if the LF-only file is on a unix   
               system, you can use this Unix command to convert to CRLF:
                 unix2dos old.xml new.xml                               
               prior to the ftp-ing.                                    
                                                                        
   Thanks to Stephen Hoar, Lloyds TSB, ENGLAND.                         
   Thanks to Steve Foskett, Lloyds TSB, ENGLAND.                        
   Thanks to MP Welch, SPRINT, USA.                                     
                                                                        
Change 26.220  Example report for Service Class percent CPU busy revised
ANALSRVC       to show how to change the interval of the report, and the
Sep 27, 2008   default now produces hourly percent busy, and EXCSP are  
               added to the totals for each interval.                   
   Thanks to Lisa Lawver, Land's End, USA.                              
                                                                        
Change 26.219  Change 26.101 was not implemented; the semicolon at the  
VMXGFOR        end of %VMXGFOR was still present.  However, only very   
Sep 26, 2008   old user code in tailoring library are exposed, since    
               all %VMXGFOR calls were removed in all MXG code in 2003  
               by Change 20.327.  Note that Change 23.127 also claimed  
               of have removed this semicolon, but it didn't!           
   Thanks to Pius Nwaobasi, IBM Global Services, USA.                   
                                                                        
Change 26.218  RMF III variables ASIRNM, Reporting Class Name and ASIRDE
VMACRMFV       Reporting Class Description were blank due to a misplaced
Sep 24, 2008   IF statement.                                            
   Thanks to Betty Wong, Bank of America, USA.                          
                                                                        
Change 26.217  Revised QA JOB stream example, and cosmetic cleanups.    
ANALCNCR       The old multi-step JCL used for MXG QA tests were needed 
BATDOIT        back in SAS V6 because it couldn't handle a single step, 
JCLQASAS       but for some time the PC QA stream has run only a single 
JCLQAWPS       SAS datastep.  First one-step z/OS runs failed with JCL  
PRODSRCE       issues, because the QA "PDB" data library is used with   
PRODTEST       multiple LIBREFs (PDB,MON,TUE..,WEEK1..,MONTH...) but on 
QASAS          z/OS you couldn't use the same temporary DSN.  Finally,  
TESTANAL       Chuck figured out what JCL referbacks were needed, so the
TRNDCICX       PROC COPYs (a holdover from when the multi-step required 
UTILVREF       them) could be eliminated, and they were really a killer;
VMXGCICI       PC run time of the QA dropped from over an hour to only  
Oct 21, 2008   10 minutes; z/OS run time dropped from xx to yy.         
Nov 15, 2008   QASAS now documents the MXG QA job stream in comments.   
               BATDOIT is the batch file I use to run QASAS.            
               PRODTEST is the IEBUPDTE-format directory used in QA job.
               PRODSRCE creates PRODTEST from c:\QA\prodtest directory. 
              -Many members still had SASAUTOS=SOURCLIB in OPTIONS or in
               JCL examples, but MXG's CONFIGV9 or AUTOEXEC now set all 
               options, including SASAUTOS=(SASAUTOS SOURCLIB) so these 
               old examples were actually wrong.  Their existence in the
               ANALxxxx member actually caused errors when they reset   
               SASAUTOS to only SOURCLIB, preventing %TRIM and other SAS
               %MACROs that are provided in their SASAUTOS to be found. 
              -JCL with // EXEC SAS and  // EXEC SAS,OPTIONS= ... were  
               replaced, where appropriate, with // EXEC MXGSASV9.      
               Many of these old examples also had //SOURCLIB or even   
               //SASLIB (archaic since SAS V5); all of those DDs were   
               deleted from examples as they are contained in MXGSASV9  
               JCL procedure example.                                   
               These members were cosmetically revised:                 
                  achap21  achap31  achap32  adoctrnd aixpds   analbnc1 
                  analbnch analcm29 analnpmr analnspy analpdsm analrrtm 
                  analturn analvary analvm   analvmdy analvmos asummips 
                  docgraf  doctrend exitmon6 grafhsm  grafregr graftalo 
                  graftmnt graftrnd grafwork grafworx jclpdb   multivol 
                  newsltrs rexxtes6 rexxwlm  sas5fix1 senddata trndtmnt 
                  typedms  typeslri typsims1 utildocv utilspac utilvone 
                  vmacndm  vmxguse  vmxgvtoc vmxgvtof xcompall xibmfdp  
                  xjclcomp xmacsar  xnpmsess xsyslog  zrbbuild zrbjcl   
                  zrbrpt1  zrbrpt2  analsupr                            
              -VMXGCICI caused WARNING on COLLTIME when VMXGSUME used;  
               COLLTIME should be only in SUMBY and DATATIME= so it was 
               removed from ID statement.                               
              -ANALCNCR caused WARNING on TIMESTMP when VMXGSUME used;  
               old logic similar to VMXGCICI was revised.               
              -COMPALL was tested, creating 1871 datasets in a single   
               DATA step compiling all MXG datasets created from SMF:   
                                                                        
                  Compiler    Platform    Run Time      Memory Required 
                                                                        
                  SAS 9.1.3    Win/XP       75 seconds     1100 MB      
                  WPS 2.2      Win/XP      120 seconds     same box     
                                                                        
                  SAS 9.1.3    z/OS         93 seconds     1145 MB      
                  WPS 2.2      z/OS         32 minutes     1024 MB      
   Thanks to Chuck Hopf, Bank of America, USA.                          
   Thanks to MP Welch, SPRINT, USA.                                     
   Thanks to Rich Anderson, SAS Technical Support, USA.                 
                                                                        
Change 26.216 -The ZIPUSED MSU was incorrect; obviously, CPUZIPTM should
ASUMMIPS       have been used instead of CPUIFATM.                      
Sep 23, 2008  -If the same name was used for both a Service Class and a 
Sep 28, 2008   Reporting Class, the PDB.RMFMSUSE dataset had incorrect  
               values in RPRTCLAS, CPUTM, and the MSU and MIPS used.    
              -Change 26.131 added ZIP/ZAP metrics, but only to _RMFMIPS
               causing UNINITIALIZED VARIABLE messages when _SMFMIPS was
               executed.  Now, both _RMFMIPS and _SMFMIPS report on all 
               three engine types.                                      
   Thanks to Don Goulden, SAS Institute, USA.                           
   Thanks to Robert Kuhne, Excelon Corp, USA.                           
                                                                        
Change 26.215  NDM-CDI subtype 'UC' was not output, because it was not  
VMACNDM        in the initial test for known subtypes, but it was in the
Sep 23, 2008   test and is now output in the NDMAE dataset.             
   Thanks to Jerry Urbaniak, Acxiom, USA.                               
                                                                        
Change 26.214  Protection for invalid extended segment did not cover    
VMAC1415       all cases; protection and error message revised, could   
Sep 17, 2008   still cause INPUT STATEMENT EXCEEDED RECORD error.       
   Thanks to Mayer Rosenthal, Infocrossing, USA.                        
                                                                        
Change 26.213  Support for new data in NTDS and ASP.NET Applications    
VMACNTSM       objects in NTSM adds these new variables:                
Sep 16, 2008  -Dataset ASPNETAP new variables:                          
Sep 17, 2008     ASPARWTB ASPACMLU ASPACMLB ASPACPLU                    
                 ASPACPLB ASPACTTR ASPACATR ASPAOCTR                    
              -Dataset NTDS new variables:                              
                 NTDSLNCS NTDSLCCS NTDSLNSC NTDSDPRO NTDSTGNC NTDSTGHS  
                 NTDSLVUR NTDSTURP NTDSDWFN NTDSDSFN NTDSDRFN NTDSSAEL  
                 NTDSSREL                                               
                 Also, the XDS and LDAP Binds variables no longer exist.
              -Dataset MEMORY had all variables missing when NRDATA=40, 
               due to my careless testing.                              
   Thanks to Lisa E. Van Allen, Boeing, USA.                            
   Thanks to James A. Young, Boeing, USA.                               
                                                                        
Change 26.212  Change 25.308 for SAS V9.2 corrected three instances of  
VMXGSUME       %ELSE %THEN %DO statements to %ELSE %DO, but two members 
UTILBLDP       were overlooked, VMXGSUME and UTILBLDP.                  
Sep 16, 2008   The symptoms of the V9.2-only error is this message      
Sep 18, 2008   ERROR: THERE IS NO MATCHING %IF STATEMENT FOR THE %THEN. 
                      A DUMMY MACRO WILL BE COMPILED.                   
   Thanks to Kim Westcott, OFT, State of New York, USA.                 
   Thanks to Stan Dylnicki, Royal Bank of Canada, CANADA.               
                                                                        
Change 26.211  Cosmetic.  Labels for G3DTIN01-07, G4DTIN01-07 were blank
VMACBVIR       (they were caught in QA reports, but I overlooked them!).
Sep 16, 2008   Some duplicate labels were also removed.                 
   Thanks to Markus Bansemir, HUK-Coburg, GERMANY.                      
                                                                        
Change 26.210  Support for Landmark The Monitor for DB2 V 4.1 raw data. 
VMACTMDB      -Dataset TMDBD7P adds new variables:                      
Sep 18, 2008     D7QAASC  D7QAAWLG D7QAAWTI D7QAAWTJ D7QAAWTL D7QABPID  
                 D7QADBID D7QAOBID D7QAOCUR D7QAOTSN D7QAOTTY D7QASDB2  
                 D7QASDYN D7QASFL1 D7QASFL2 D7QASTAB D7QASTET D7QATRET  
                 D7QAUDEA                                               
              -Dataset TMDBDB adds new variables:                       
                 DBACTRTE DBACTREE DBACSVPT DBACRLSV DBACRBSV DBACAWTK  
                 DBACAWTM DBACAWTN DBACAWTO DBACAWTQ DBACARNK DBACARNM  
                 DBACARNN DBACARNO DBACARNQ DB1ZIIP  DB2ZIIP  DBTZIIP   
                 DBEZIIP  DBFIL71  DBFIL72  DBFIL73  DBFIL74  DBAXAWFC  
                 DBAXFCCT DBAXIXLE DBAXIXLT DBSETCPR DBDCLGTT DBDEGDTT  
                 DBCRESEQ DBALTSEQ DBDROSEQ DBPRRESI DBALTVW  DB0112IW  
                 DB0112SC DB0112CC DB0112OF DB0112LN DB0112OH DBASHSQL  
                 DBASLSQL SQLIDLEN SQLIDNAM                             
              -Dataset TMDBDA2 adds new variables:                      
                 DAMSPSRB DAMSZSRB DADSPSRB DADSZSRB DAISPSRB DAISZSRB  
                 DXSPSRB  DAXSZSRB DASSPSRB DASSZSRB DAXSETCP DAXDCLGT  
                 DAXDEGDT DAXCRESQ DAXALTSQ DAXDROSQ DAXPRESI DAXALTVW  
                 DASEDFAL DASEDPGE DASEDFRE DASEDYNP DASECFAL DASECPGE  
                 DASECFRE DAISTCOL DADNDBA  DADPOOL  DAGSFLMG DABSTLPL  
                 DABPFIX  DABVDQB  DABSLA   DABPGST  DABGLGG  DABGLHS   
                 DABGL2H  DABGLP1  DABGLP2  DABGLP3  DABGLU1  DABGLS1   
                 DABGLS2  DABGLS3  DABGLN1  DABGLN2  DABGLN3  DA3STHWB  
                 DA3STHWF DA3STHWC DA9STCX4 DAJSLSUS DAJSLOGW DAJSCIWR  
                 DAJSSERW DAJSTHRW DAJSBPAG                             
   Thanks to Martin Legendre, Regie des rentes du Quebec, CANADA.       
                                                                        
====== Changes thru 26.209 were in MXG 26.08 dated Sep 12, 2008=========
                                                                        
Change 26.209  Enhancement for reading DB2 SMF records adds new parms:  
READDB2         SMFOUT=  DDNAME to which SMF records that met selection 
Sep 12, 2008             criteria will be written                       
                                                                        
Change 26.208  Variables SMF30MLS and MEMLIMIT are now kept in BUILDPDBs
BUILD005       PDB.STEPS dataset.  Previously, they were kept only in   
BUIL3005       PDB.SMFINTRV and PDB.TYPE30U6.                           
Sep 11, 2008                                                            
   Thanks to Paul Naddeo, FISERV, USA.                                  
                                                                        
Change 26.207  Support for Thruput Manager Subtype 7, and new fields:   
EXTPM701      -Dataset TPMXSLM new variables                            
EXTPM702          TPMSLXGN='EXECUTION*START*TIME'                       
EXTPM703          TPMSLXGF='EXECUTION*END*TIME'                         
EXTPM704       While the DSECT used LXTN,LXTF, those datetime fields do 
EXTPM705       already exist, and these new fields, while DSECT'd as    
EXTPM706       TODSTAMP, in fact, contain only TIME12.2 time-of-day.    
IMACTPMX      -Support for subtype 7 creates six new datasets:          
VMACTPMX         dddddd     Dataset   Description:                      
VMXGINIT         TPM701     TPM0701   SERVER ENVIRONMENT                
Sep 12, 2008     TPM702     TPM0702   GENERAL SERVICES QUEUE            
                 TPM703     TPM0703   1ST DISCRETIONARY QUEUE           
                 TPM704     TPM0704   SERVICES GROUP QUEUE              
                 TPM705     TPM0705   JESPLEX MEMBER STATUS             
                 TPM706     TPM0706   INTERVAL DATA                     
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.206  CICS/TS 3.2 BMC optional CMRDATA increased to 256 bytes  
IMACICMR       as CPU time fields were increased from 4 to 8 bytes, but 
Sep  5, 2008   MXG's IMACICMR had not been updated for 3.2, causing     
               ERROR: INVALID STRTTIME when IMACICMR was tailored and   
               read 3.2 data.  Turns out IMACICMR never decoded times   
               correctly, even with earlier CICS releases, but now both 
               old and new records are correctly decoded.  There are 16 
               undocumented bytes at the end of the CMRDATA segment that
               will be decoded if they are ever populated by BMC.       
   Thanks to Barry T. Mueller, RiteAid, USA.                            
                                                                        
Change 26.205  Change 26.115 erroneously added SYSNAME to the BY list   
WEEKBLDT       for TYPE892 dataset, causing WEEKBLDT to fail  with      
Sep  4, 2008   ERROR: VARIABLE SYSNAME NOT FOUND.                       
   Thanks to Mark W. Brown, CapGemini, ENGLAND.                         
                                                                        
Change 26.204  New fields and new subtypes for Shadow USER SMF records: 
EXSHDW05      -New variables in SHADOW01 dataset:                       
EXSHDW18         SM01ADCT=*ADABAS*COMMAND*COUNT'                        
IMACSHDW         SM01CLRC=*CLIENT*READ*DATA*COUNT'                      
VMACSHDW         SM01CLWT=*CLIENT*WAIT*TIME'                            
VMXGINIT         SM01HONA=*HOST*NAME*CLMI'                              
Sep  3, 2008     SM01LNID=*CLIENT*LAN*NETWORK*USERID'                   
                 SM01SRCP=*SRB*CPU*TIME'                                
              -New variables in SHADOW02 dataset:                       
                 SM02CLRC='CLIENT*READ*DATA*COUNT'                      
                 SM02CLWT='CLIENT*WAIT*TIME'                            
                 SM02ENZC='ENCLAVE*ZIIP*TIME*ON CP'                     
                 SM02ENZI='ENCLAVE*ZIP*CPU*TIME'                        
                 SM02ENZQ='ENCLAVE*ZIP*QUALIFIED*CPU TIME'              
                 SM02MXUS='MAX*INTERVAL*CONCURRENT*USERS'               
                 SM02RPCU='CURRENT*NUMBER*EXECUTING*RPCS'               
                 SM02RPHW='RPC*HIGH*WATER*MARK'                         
                 SM02SLCP='SSL*CPU*TIME'                                
                 SM02SRCP='SRB*CPU*TIME'                                
              -New SHADOW05 dataset for SHADOW NON SOAP REQUEST:        
                 SM0501CR='WWW RULE*CRITERION*MATCH*STRING'             
                 SM0501EU='RUNTIME*MVS*USERID*IN EFFECT'                
                 SM0501RL='WWW RULE*EVENT*PROCEDURE*MEMBER NAME'        
                 SM0501RS='WWW*RULE EVENT*PROCEDURE*SET NAME'           
                 SM05ABCD='TRANSACTION*ABEND*CODE'                      
                 SM05ABRS='TRANSACTION*REASON*CODE'                     
                 SM05ADLT='TRANSACTION*CONNECT*TIME*LOCAL'              
                 SM05AUTH='CLIENT*AUTHORIZATION*STATUS'                 
                 SM05CLIP='CLIENT*IP*ADDRESS'                           
                 SM05CLIP='CLIENT*IP*ADDRESS'                           
                 SM05CLUS='CLIENT*USER*ID'                              
                 SM05CNID='CONNECTION ID'                               
                 SM05DBCP='DB2*CPU*TIME'                                
                 SM05ELTM='TRANSACTION*ELAPSED*TIME'                    
                 SM05ENCP='ENCLAVE*CPU*TIME'                            
                 SM05INUR='ORIGINAL*INBOUND*URL*VALUE'                  
                 SM05IPAC='IPADDRESS*OF*CLIENT*HEX'                     
                 SM05IPAD='IP*ADDRESS'                                  
                 SM05LGTM='TRANSCTION*CONNECT*TIME*GMT'                 
                 SM05LSCR='WWW RULE*CRITERION*MATCH*STRING'             
                 SM05LSEU='RUNTIME*MVS*USERID*IN EFFECT'                
                 SM05LSRL='WWW RULE*EVENT*PROCEDURE*MEMBER NAME'        
                 SM05LSRS='WWW*RULE EVENT*PROCEDURE*SET NAME'           
                 SM05MTCT='COUNT OF*URL*MATCHES*PROCESSED'              
                 SM05NTCP='NETWORK*CPU*TIME'                            
                 SM05OHCP='OTHER*CPU*TIME'                              
                 SM05PDSS='PRODUCT*SUBSYSTEM*NAME'                      
                 SM05RDTO='TOTAL*BYTES*SENT*INBOUND'                    
                 SM05RESC='COUNT OF*URL*RE-SCANS'                       
                 SM05RPCP='USER*PROGRAM*CPU*TIME'                       
                 SM05RXCP='SHADOW/REXX*CPU*TIME'                        
                 SM05SLCP='SSL*PROCESSING*CPU*TIME'                     
                 SM05SMID='HOST*SYSTEM*SMFID'                           
                 SM05SRCP='SRB*CPU*TIME'                                
                 SM05TRRC='OVERALL*RETURN*CODE'                         
                 SM05TRRS='REASON*CODE'                                 
                 SM05TRST='HTML*STATUS*CODE'                            
                 SM05USR1='USER*DATA*AREA*1'                            
                 SM05USR2='USER*DATA*AREA*2'                            
                 SM05WRTO='TOTAL*BYTES*WRITTEN'                         
              -New SHADOW05 dataset for SHADOW Z/SERVICES:              
                 SM18ABCD='TRANSACTION*ABEND*CODE'                      
                 SM18ABRS='TRANSACTION*REASON*CODE'                     
                 SM18ADLT='TRANSACTION*CONNECT*TIME*LOCAL'              
                 SM18AUTH='CLIENT*AUTHORIZATION*STATUS'                 
                 SM18CLIP='CLIENT*IP*ADDRESS'                           
                 SM18CLUS='CLIENT*USER*ID'                              
                 SM18CNID='CONNECTION ID'                               
                 SM18DBCP='DB2*CPU*TIME'                                
                 SM18ELTM='TRANSACTION*ELAPSED*TIME'                    
                 SM18ENCP='ENCLAVE*CPU*TIME'                            
                 SM18ENZC='ENCLAVE*ZIIP*TIME*ON CP'                     
                 SM18ENZI='ENCLAVE*ZIIP*CPU TIME'                       
                 SM18ENZQ='ENCLAVE*ZIIP*QUALIFIED*CPU TIME'             
                 SM18INUR='ORIGINAL*INBOUND*URL*VALUE'                  
                 SM18IPAC='IPADDRESS*OF*CLIENT*HEX'                     
                 SM18IPAD='IP*ADDRESS'                                  
                 SM18LGTM='TRANSCTION*CONNECT*TIME*GMT'                 
                 SM18MTCT='COUNT OF*URL*MATCHES*PROCESSED'              
                 SM18NASP='WEB*SERVICE*NAME*SPACE'                      
                 SM18NTCP='NETWORK*CPU*TIME'                            
                 SM18OHCP='OTHER*CPU*TIME'                              
                 SM18PDSS='PRODUCT*SUBSYSTEM*NAME'                      
                 SM18PORT='CLIENT*AUTHORIZATION*STATUS'                 
                 SM18RCCT='TRANSACTION*COUNT*FOR*SUMMARY*RECORD'        
                 SM18RCTY='CLIENT*AUTHORIZATION*STATUS'                 
                 SM18RDTO='TOTAL*BYTES*SENT*INBOUND'                    
                 SM18RPCP='USER*PROGRAM*CPU*TIME'                       
                 SM18RXCP='SHADOW/REXX*CPU*TIME'                        
                 SM18SLCP='SSL*PROCESSING*CPU*TIME'                     
                 SM18SMID='HOST*SYSTEM*SMFID'                           
                 SM18SRBT='SRB*CPU*TIME'                                
                 SM18SRCP='SRB*CPU*TIME'                                
                 SM18TRFX='SOAP*FAULT*TEXT'                             
                 SM18TRRC='OVERALL*RETURN*CODE'                         
                 SM18TRRS='REASON*CODE'                                 
                 SM18TRSE='SOAP*FAULT*LENGTH'                           
                 SM18TRST='HTML*STATUS*CODE'                            
                 SM18TYPE='CLIENT*AUTHORIZATION*STATUS'                 
                 SM18VDIR='VIRTUAL*DIRECTORY'                           
                 SM18WRTO='TOTAL*BYTES*WRITTEN'                         
                 SM18WSNA='WEB*SERVICE'                                 
                 SM18WSOP='OPERATION*NAME'                              
                 SM18WSTG='TARGET*SYSTEM*NAME'                          
   Thanks to Scott Chapman, American Electric Power,USA.                
                                                                        
Change 26.203  Support for z/VM 5.4 (COMPATIBLE back to MXG 25.05) adds 
EXMTRMCC       new 5.4 variables and two new datasets, but there are    
EXSTOADD       600 variables added by z/VM 5.3, now supported by MXG in 
FORMATS        this change.                                             
IMACVMXA      NEW MONWRITE DATASETS CREATED BY z/VM 5.4:                
VMACVMXA                                                                
VMXGINIT      -Dataset VXMTRMCC (1.21) MEMORY CONFIGURATION CHANGE:     
Sep  1, 2008     SYSGSTBY='STANDBY*CENTRAL*STORAGE*SIZE'                
                 SYSGSTRS='RESERVED*CENTRAL*STORAGE*SIZE'               
                                                                        
              -Dataset VXMTRMCC (1.21) MEMORY CONFIGURATION CHANGE:     
                 CALMEMAD='ADDITIONAL*CENTRAL*STORAGE'                  
                 CALSXSAD='ADDITIONAL*SXS*STORAGE'                      
                                                                        
              UPDATES TO EXISTING MONWRITE DATASETS FOR 5.3 and 5.4:    
                                                                        
              -Dataset VXSYTPRP (0.2) new variables in 5.4:             
                 PFXFST44='FASTPATH*SIMULATIONS*OF DIAGNOSE*X44'        
                 PFXFSTPX='FASTPATH*PARTIAL*EXECUTE*INTERRUPTS'         
                 PFXFSTSG='FASTPATH*SIMULATIONS*SIGP EXT CALL*INTS'     
                 PFXFSTXC='FASTPATH*REFLECTIONS*GUEST EXT CALL*INTS'    
              -Dataset VXSYTRSG (0.3) new variables (added in 5.3):     
                 RSADRMA1='STOLEN*GT 2G*DORMANT*PASS 1='                
                 RSADRMA2='STOLEN*GT 2G*DORMANT*PASS 2='                
                 RSADRMAE='STOLEN*GT 2G*DORMANT EMERG*PASS='            
                 RSADRMB1='STOLEN*LT 2G*DORMANT*PASS 1='                
                 RSADRMB2='STOLEN*LT 2G*DORMANT*PASS 2='                
                 RSADRMBE='STOLEN*LT 2G*DORMANT EMERG*PASS='            
                 RSADRMC1='STOLEN*CONTIG GT 2G*DORMANT*PASS 1='         
                 RSADRMC2='STOLEN*CONTIG GT 2G*DORMANT*PASS 2='         
                 RSADRMCE='STOLEN*CONTIG GT 2G*DORM EMERG*PASS='        
                 RSADRMD1='STOLEN*CONTIG LT 2G*DORMANT*PASS 1='         
                 RSADRMD2='STOLEN*CONTIG LT 2G*DORMANT*PASS 2='         
                 RSADRMDE='STOLEN*CONTIG LT 2G*DORM EMERG*PASS='        
                 RSADSPA1='STOLEN*GT 2G*DISPATCH*PASS 1='               
                 RSADSPA2='STOLEN*GT 2G*DISPATCH*PASS 2='               
                 RSADSPAE='STOLEN*GT 2G*DISPATCH EMERG*PASS='           
                 RSADSPB1='STOLEN*LT 2G*DISPATCH*PASS 1='               
                 RSADSPB2='STOLEN*LT 2G*DISPATCH*PASS 2='               
                 RSADSPBE='STOLEN*LT 2G*DISPATCH EMERG*PASS='           
                 RSADSPC1='STOLEN*CONTIG GT 2G*DISPATCH*PASS 1='        
                 RSADSPC2='STOLEN*CONTIG GT 2G*DISPATCH*PASS 2='        
                 RSADSPCE='STOLEN*CONTIG GT 2G*DISPATCH EMERG*PASS='    
                 RSADSPD1='STOLEN*CONTIG LT 2G*DISPATCH*PASS 1='        
                 RSADSPD2='STOLEN*CONTIG LT 2G*DISPATCH*PASS 2='        
                 RSADSPDE='STOLEN*CONTIG LT 2G*DISPATCH EMERG*PASS='    
                 RSAELGA1='STOLEN*GT 2G*ELIGIBLE*PASS 1='               
                 RSAELGA2='STOLEN*GT 2G*ELIGIBLE*PASS 2='               
                 RSAELGAE='STOLEN*GT 2G*ELIGIBLE EMERG*PASS='           
                 RSAELGB1='STOLEN*LT 2G*ELIGIBLE*PASS 1='               
                 RSAELGB2='STOLEN*LT 2G*ELIGIBLE*PASS 2='               
                 RSAELGBE='STOLEN*LT 2G*ELIGIBLE EMERG*PASS='           
                 RSAELGC1='STOLEN*CONTIG GT 2G*ELIGIBLE*PASS 1='        
                 RSAELGC2='STOLEN*CONTIG GT 2G*ELIGIBLE*PASS 2='        
                 RSAELGCE='STOLEN*CONTIG GT 2G*ELIGIBLE EMERG*PASS='    
                 RSAELGD1='STOLEN*CONTIG LT 2G*ELIGIBLE*PASS 1='        
                 RSAELGD2='STOLEN*CONTIG LT 2G*ELIGIBLE*PASS 2='        
                 RSAELGDE='STOLEN*CONTIG LT 2G*ELIGIBLE EMERG*PASS='    
                 RSALTDA1='STOLEN*GT 2G*LONG TERM*DORMANT*PASS 1='      
                 RSALTDA2='STOLEN*GT 2G*LONG TERM*DORMANT*PASS 2='      
                 RSALTDAE='STOLEN*GT 2G*LNGTRMDORM EMERG*PASS='         
                 RSALTDB1='STOLEN*LT 2G*LONG TERM*DORMANT*PASS 1='      
                 RSALTDB2='STOLEN*LT 2G*LONG TERM*DORMANT*PASS 2='      
                 RSALTDBE='STOLEN*LT 2G*LNGTRMDORM EMERG*PASS='         
                 RSALTDC1='STOLEN*CONTIG GT 2G*LNGTRMDORM*PASS 1='      
                 RSALTDC2='STOLEN*CONTIG GT 2G*LNGTRMDORM*PASS 2='      
                 RSALTDCE='STOLCONTIG GT 2G*LNGTRMDORM EMERG*PASS*      
                 RSALTDD1='STOLEN*CONTIG LT 2G*LNGTRMDORM*PASS 1='      
                 RSALTDD2='STOLEN*CONTIG LT 2G*LNGTRMDORM*PASS 2='      
                 RSALTDDE='STOLCONTIG LT 2G*LNGTRMDORM EMERG*PASS='     
                 RSARESAC='RESIDENT*PTRM PAGES GT 2G='                  
                 RSARESBC='RESIDENT*PTRM PAGES LT 2G='                  
                 RSASHRA1='STOLEN*GT 2G*SHARED*PASS 1='      ='         
                 RSASHRA2='STOLEN*GT 2G*SHARED*PASS 2='                 
                 RSASHRAE='STOLEN*GT 2G*SHARED EMERG*PASS='             
                 RSASHRB1='STOLEN*LT 2G*SHARED*PASS 1='                 
                 RSASHRB2='STOLEN*LT 2G*SHARED*PASS 2='                 
                 RSASHRBE='STOLEN*LT 2G*SHARED EMERG*PASS='             
                 RSASHRC1='STOLEN*CONTIG GT 2G*SHARED*PASS 1*='/        
                 RSASHRC2='STOLEN*CONTIG GT 2G*SHARED*PASS 2*='/        
                 RSASHRCE='STOLEN*CONTIG GT 2G*SHARED EMERG*PASS='      
                 RSASHRD1='STOLEN*CONTIG LT 2G*SHARED*PASS 1*='/        
                 RSASHRD2='STOLEN*CONTIG LT 2G*SHARED*PASS 2*='/        
                 RSASHRDE='STOLEN*CONTIG LT 2G*SHARED EMERG*PASS='      
              -Dataset VXSYTRSP (0.4) new variables (added in 5.3):     
                 PLSALECG='TIMES WHEN*GT 2G*CONTIG LIST*EMPTY'          
                 PLSALECL='TIMES WHEN*LT 2G*CONTIG LIST*EMPTY'          
                 PLSALEMG='TIMES WHEN*AVAIL GT 2G*LIST EMPTY'           
                 PLSGCLEM='TIMES WHEN*GLOBAL*CLEAR LIST*EMPTY'          
                 PLSMVABV='TIMES WHEN*PAGE LT 2G*MOVED GT 2G'           
                 PLSMVB2G='PAGE TRANS*MOVED GT 2G*TO LT 2G'             
              -Dataset VXSYTSCG (0.10) new variables (added by 5.3):    
                 SRME0ETF='ELAPSED*TIME*SLICE*TIME FACTOR'              
              -Dataset VXSYTCOM (0.11) new variables (added by 5.3):    
                 PLSISEAS='TIMES WHEN*XFER*FROM*ASYNCMD*TO A VM'        
                 PLSISESC='TIMES WHEN*XFER*FROM*SCLP*TO A VM'           
                 PLSISEVE='TIMES WHEN*XFER*FROM*VMEVENT*TO A VM'        
                 PLSISEVS='TIMES WHEN*XFER*FROM*VSWITCH*TO A VM'        
                 PLSISTAS='TIMES WHEN*TRANSFER*TO*ASYNCMD'              
                 PLSISTSC='TIMES WHEN*TRANSFER*TO*SCLP'                 
                 PLSISTVE='TIMES WHEN*TRANSFER*TO*VMEVENT'              
                 PLSISTVS='TIMES WHEN*TRANSFER*TO*VSWITCH'              
                 PLSISUAS='TIMES WHEN*FROM ASYNCMD*NOT*XFERED'          
                 PLSISUSC='TIMES WHEN*FROM SCLP*NOT*XFERED'             
                 PLSISUVE='TIMES WHEN*FROM VMEVENT*NOT*XFERED'          
                 PLSISUVS='TIMES WHEN*FROM VSWITCH*NOT XFERED'          
              -Dataset VXSYTUWT (0.12) new variables in 5.4:            
                 CALCFICF='VMDBKS*DSP LIST*WAIT ICF*CONSOLE*FUNCTON*/   
                 CALCRICF='VMDBKS*DSP LIST*RUNNING*ON REAL ICF*/        
                 CALCWICF='VMDBKS*DSP LIST*WAIT ICF*CPU WAIT*/          
                 CALLLICF='VMDBKS*DSP LIST*WAIT ICF*MAX SHARE DELAY*/   
                 CALSWICF='VMDBKS*DSP LIST*WAIT ICF*SIMULATE*WAIT*/     
              -Dataset VXSYTSCP (0.13) new variables (added by 5.3):    
                 PLXCPUTH='CPU*TYPE'                                    
                 PLSDSPCN='TIME WHEN*DSP LOOPED*200 TIMES'              
              -Dataset VXSYTSCP (0.14) new variables in 5.4:            
                 TCMPINVA='PAGE FAULTS*RESOLVED*NO-4K*CASE'             
                 TCMSTKEX='CPEBK*DEFERRED*WRITES'                       
                 TCMSTKPF='CPEBK*DEFERRED*PAGE FAULT*PRIORITY'          
              -Dataset VXSYTSYG (0.19) new variables in 5.4:            
                 MAIMISS ='MISSING*ADAPTER*INTERRUPTIONS'               
                 MAIUREC ='UNRECOVERABLE*ADAPTER*INTERRUPTIONS'         
              -Dataset VXSYTSXG (0.21) new variables (added in 5.3):    
                 RSARSVSY='TOTAL*RESERVED*PAGES'                        
                 RSASXACT='SYS EXEC SPACE*BACKED*GT 2G*AVAIL Q'         
                 RSASXALI='SYS EXEC SPACE*ALIAS*FRMTES*PAGES'           
                 RSASXAVL='SYS EXEC SPACE*AVAILABLE*PAGES'              
                 RSASXBCT='SYS EXEC SPACE*BACKED*LT 2G*AVAIL Q'         
                 RSASXBKA='SYS EXEC SPACE*BACKED*GT 2G*PAGES'           
                 RSASXBKB='SYS EXEC SPACE*BACKED*LT 2G*PAGES'           
                 RSASXCLA='SYS EXEC SPACE*ALIAS*LOCKED*PAGES'           
                 RSASXNOP='SYS EXEC SPACE*ALIAS*NO-OWNED*PAGES'         
                 RSASXQCT='SYS EXEC SPACE*UNBLOCKED*AVAIL*PAGES'        
                 RSASXUCP='SYS EXEC SPACE*INUSE*AS CP*PAGES'            
                 RSASXUFG='SYS EXEC SPACE*BACKING*GT 2G*PAGES'          
                 RSASXUFS='SYS EXEC SPACE*LT 2G*PAGES'                  
                 RSASXUID='SYS EXEC SPACE*ID-MAPPED*PAGES'              
                 RSASXUSD='SYS EXEC SPACE*INUSE*DEFERRED*PAGES'         
                 SXSSIZE ='SYS EXEC SPACE*SIZE IN*PAGES'                
              -Dataset VXSYTSXP (0.22) now supported (added in 5.3):    
                 PFXCPUAD='PROCESSOR*ADDRESS'                           
                 PFXCPUTY='CPU TYPE'                                    
                 PLSSPFSC='HCPSXPFS*CALLS'                              
                 PLSSPGCC='CONTIG*SYS EXEC SPACE*GT 2*PAGE REQUESTS'    
                 PLSSPGCT='CONTIG*SYS EXEC SPACE*GT 2*GIVEN OUT'        
                 PLSSPGFC='FREE STORAGE*PAGES*GIVEN OUT'                
                 PLSSPGPC='SINGLE*NON-CONTIGUOUS*PAGES*GIVEN OUT'       
                 PLSSPRCC='CONTIG*SYS EXEC SPACE*GT 2*RETURNS'          
                 PLSSPRCT='CONTIG*SYS EXEC SPACE*GT 2*RETURNED FOR'     
                 PLSSPRFC='FREE STORAGE*PAGES*RETURNED'                 
                 PLSSPRPC='SINGLE*NON0CONTIG*PAGES*RETURNED'            
                 PLSSPRQC='SYS EXEC SPACE*RETURNS*OF QUEUES'            
                 PLSSPRQT='SYS EXEC SPACE*RETURNS*VIA QUEUES'           
                 PLSSXACC='CREATE*ALIAS*REQUESTS'                       
                 PLSSXAQC='QUEUE*SXSTE*REQUESTS*TO REQUEUE'             
                 PLSSXARC='REMOVE*ALIAS*REQUESTS'                       
                 PLSSXREP='AVAILABLE*REPLENISHMENTS*ATTEMPTED'          
              -Dataset VXSYTSLCK(0.23) now supported (added in 5.3):    
                 CALLCKID='IDENTIFIER*FOR THIS*LOCK'                    
                 CALSSCNT='TIMES LOCK*SPUN FOR*SHARED*MODE'             
                 CALSTIME='ELAPSED*SPIN TIME*FOR*SHARED*MODE'           
                 CALXSCNT='TIMES LOCK*SPUN FOR*EXCLUSIVE MODE'          
                 CALXTIME='ELAPSED*SPIN TIME*FOR*EXCLUSIVE'             
              -Dataset VXSYTSXP (0.24) now supported (added in 5.3):    
                 CALTYPE ='PROCESSOR*TYPE'                              
                 SRXABSDL='ABSOLUTE*SHARES*DSPLIST*VMDBKS'              
                 SRXATOD ='ARTIFICIAL*TOD*SYSTEM*RUNNING'               
                 SRXATOD2='ARTIFICIAL*TOD2*USER TIME*AND CPU WAIT'      
                 SRXCONLL='USERS*ACTUALLY*ON LIMIT*LIST'                
                 SRXLLCNT='ADDS*TO THE*LIMIT*LIST'                      
                 SRXRELDL='TOTAL*RELATIVE*SHARES*DSPLIST*VMDBKS'        
              -Dataset VXMTRSYS (1.4) new variable in 5.4:              
                 SYSCMODE='PROCESSOR*CONFIGURATION*MODE'                
              -Dataset VXMTRDEV (1.6) new variables (added by 5.3):     
                 CDVFLAGS='CALDEVFLAGS'                                 
                 DVPTHCN1='EDEVPATHCONN 1'                              
                 DVPTHCN2='EDEVPATHCONN 2'                              
                 DVPTHCN3='EDEVPATHCONN 3'                              
                 DVPTHCN4='EDEVPATHCONN 4'                              
                 DVPTHCN5='EDEVPATHCONN 5'                              
                 DVPTHCN6='EDEVPATHCONN 6'                              
                 DVPTHCN7='EDEVPATHCONN 7'                              
                 DVPTHCN8='EDEVPATHCONN 8'                              
                 EDEVATTR='EDEV ATTRIBUTES                              
                 EDEVTABL='SCSI*DISK*ATTRIB*TABLE NAME'                 
                 PREFPATH='PREFERRED PATH MASK                          
                 RDEVHPPL='HYPERPAV POOL NUMBER                         
              -Dataset VXMTRMEM (1.7) new variables added (by 5.3):     
                 PFXFTLEN='FRAME*TABLE*LENGTH'                          
                 PFXSTLEN='SYS EXEC SPACE*MGMT TABLE*LENGTH'            
                 RSAFNOTI='NOT*INITIALIZED*FRAMES GT 2G'                
                 RSAGOFFL='OFFLINE*FRAMES*GT 2G'                        
                 RSALGFRM='USEABLE*FRAMES*GT 2G'                        
                 SXSSIZE ='SYS EXEC SPACE*SIZE IN*PAGES'                
              -Dataset VXMTRMEM (1.7) new variables added by 5.4:       
                 SYSGSTBY='STANDBY*REAL*STORAGE*SIZE'                   
                 SYSGSTRS='RESERVED*REAL*STORAGE*SIZE'                  
              -Dataset VXMTRUSR (1.15) new variables in 5.4             
                 CALCPCT ='GUEST*DEFINED*CP*CPUS'                       
                 CALICFCT='GUEST*DEFINED*ICF*CPUS'                      
                 CALIFLCT='GUEST*DEFINED*IFL*CPUS'                      
                 CALZAPCT='GUEST*DEFINED*ZAAP*CPUS'                     
                 CALZIPCT='GUEST*DEFINED*ZIIP*CPUS'                     
                 CPHABSSH='CP*ABSOLUTE*SHARE*SETTING'                   
                 CPHFLG1 ='CP*SHARE*FLAGS'                              
                 CPHMXSHR='CP*MAX*SHARE*SETTING'                        
                 CPHRELSH='CP*RELATIVE*SHARE*SETTING'                   
                 ICHABSSH='ICF*ABSOLUTE*SHARE*SETTING'                  
                 ICHFLG1 ='ICF*SHARE*FLAGS'                             
                 ICHMXSHR='ICF*MAX*SHARE*SETTING'                       
                 ICHRELSH='ICF*RELATIVE*SHARE*SETTING'                  
                 IFHABSSH='IFL*ABSOLUTE*SHARE*SETTING'                  
                 IFHFLG1 ='IFL*SHARE*FLAGS'                             
                 IFHMXSHR='IFL*MAX*SHARE*SETTING'                       
                 IFHRELSH='IFL*RELATIVE*SHARE*SETTING'                  
                 VMDCFGEM='VIRTUAL*CONFIGURATION*INDICATORS'            
                 VMDPUST ='CPU*STATUS*FLAG'                             
                 ZAHABSSH='ZAAP*ABSOLUTE*SHARE*SETTING'                 
                 ZAHFLG1 ='ZAAP*SHARE*FLAGS'                            
                 ZAHMXSHR='ZAAP*MAX*SHARE*SETTING'                      
                 ZAHRELSH='ZAAP*RELATIVE*SHARE*SETTING'                 
                 ZIHABSSH='ZIIP*ABSOLUTE*SHARE*SETTING'                 
                 ZIHFLG1 ='ZIIP*SHARE*FLAGS'                            
                 ZIHMXSHR='ZIIP*MAX*SHARE*SETTING'                      
                 ZIHRELSH='ZIIP*RELATIVE*SHARE*SETTING'                 
              -Dataset VXSCLADL (2.04) new variables added by 5.3:      
                 SRXABSDL='ABSOLUTE*SHARES*DSPLIST*VMDBKS'              
                 SRXATOD ='ARTIFICIAL*TOD*SYSTEM*RUNNING'               
                 SRXATOD2='ARTIFICIAL*TOD2*USER TIME*AND CPU WAIT'      
                 SRXCONLL='USERS*ACTUALLY*ON LIMIT*LIST'                
                 SRXLLCNT='ADDS*TO THE*LIMIT*LIST'                      
                 SRXRELDL='TOTAL*RELATIVE*SHARES*DSPLIST*VMDBKS'        
                 VMDCFGEM='VIRTUAL*CONFIGURATION*INDICATORS'            
                 VMDPUST ='CPU*STATUS*FLAG'                             
                 VMDTTMP ='USER*VTIME AND*SIMTIME*ON PRIMARY'           
                 VMDTTMS ='USER*VTIME AND*SIMTIME*ON SECONDARY'         
                 VMDVTMP ='USER*VTIME ON*PRIMARY*PROCESSOR'             
                 VMDVTMS ='USER*VTIME ON*SECONDARY*PROCESSOR'           
              -Dataset VXSCLDDL (2.05) new variables added by 5.3:      
                 VMDCFGEM='VIRTUAL*CONFIGURATION*INDICATORS'            
                 VMDPUST ='CPU*STATUS*FLAG'                             
                 VMDTTMP ='USER*VTIME AND*SIMTIME*ON PRIMARY'           
                 VMDTTMS ='USER*VTIME AND*SIMTIME*ON SECONDARY'         
                 VMDVTMP ='USER*VTIME ON*PRIMARY*PROCESSOR'             
                 VMDVTMS ='USER*VTIME ON*SECONDARY*PROCESSOR'           
              -Dataset VXSCLAEL (2.06) new variables added by 5.3:      
                 VMDCFGEM='VIRTUAL*CONFIGURATION*INDICATORS'            
                 VMDPUST ='CPU*STATUS*FLAG'                             
              -Dataset VXSTORSG (3.01) new variables added by 5.3:      
                 CALSSUBG='GT 2G*BLOCKS*FREE STORAGE*SUBPOOL*LIST'      
                 RSA2GDCT='REQUESTS*AWAIT*ANY AVAILABLE*FRAME'          
                 RSAAFSDB='LT 2G*HOST LOGICAL*ALIGNED*FREE STORAGE'     
                 RSAAFSDW='GT 2G*HOST LOGICAL*ALIGNED*FREE STORAGE'     
                 RSAAFSIB='LT 2G*HOST LOGICAL*ALIGNED*IN USE*BACKED'    
                 RSAAFSIU='GT 2G*HOST LOGICAL*ALIGNED*IN USE*BACKED'    
                 RSAALFMF='HCPALFMF*FREXSCAN*FRAMES*SCANNED'            
                 RSAAVCHG='GT 2G CONTIG AVAIL LIST HI THRESH'           
                 RSAAVCHT='LT 2G CONTIG AVAIL LIST HI THRESH'           
                 RSAAVCLG='GT 2G CONTIG AVAIL LIST LOW THRES'           
                 RSAAVCLT='LT 2G CONTIG AVAIL LIST LOW THRES'           
                 RSAAVLHG='GT 2G*SINGLE FRAME*AVAIL*HIGH*THRESHOLD'     
                 RSAAVLLG='GT 2G*SINGLE FRAME*AVAIL*LOW*THRESHOLD'      
                 RSABLKGC='TASKS REQUESTING*OR DEFERRED*RSABLKGF'       
                 RSACALLT='LOW THRESH*NON-NEGATIVE*FRMTES*NOT FREQUENT' 
                 RSACALMT='MID THRESH*NON-NEGATIVE*FRMTES'              
                 RSACALUT='UP THRES: NON-NEGATIVE*TARGET*FRMTES'        
                 RSACPLKG='GT 2G*LOCKED*FRAMES*BY CP LOCK'              
                 RSAEMBLO='TIMES*POOL BELOW*RSAEMLO'                    
                 RSAEMCPC='PGMBKS IN*EMERGENCY*POOL'                    
                 RSAEMDFR='TIMES*GUEST*DEFERRED*FOR EMERGENCY'          
                 RSAEMERG='TIMES REQUEST*FOR*EMERGENCY*POOL'            
                 RSAEMHI ='HI  THRESH*EMERGENCY*PGMBK POOL'             
                 RSAEMLO ='LOW THRESH*EMERGENCY*PGMBK POOL'             
                 RSAEMPTY='TIMES*POOL*WENT*EMPTY'                       
                 RSAFRQDF='DEFERRED MULTIPLE FRAME REQUESTS'            
                 RSAFRQDL='DELAYED*MULTIPLE*FRAME*REQUESTS'             
                 RSAFRQMW='TASKS*ATTEMPTING*MULTIPLE*FRAMES*PGMBKS'     
                 RSAFRQWT='LT 2G DEFERRED REQUESTS*NONE AVAIL'          
                 RSAFRRDA='LT 2G*ATTEMPTS*TO REDRIVE*TASKS'             
                 RSAFRRDC='LT 2G*REDRIVED*PERFORMED'                    
                 RSAFVMUB='LT 2G*VMDBK FREE STORAGE*IN USE'             
                 RSAFVMUD='GT 2G*VMDBK FREE STORAGE*IN USE'             
                 RSANOLKA='NO-OWNED*LOCKED PAGES*ABSOLUTE*STORAGE'      
                 RSANOLKL='NO-OWNED*LOCKED PAGES*HOST LOCAL*STORE'      
                 RSANPGCT='CONSECUTIVE*SXPFS*FAILURES'                  
                 RSANPGHI='HWM*CONSECUTIVE*SXPFS*FAILURES'              
                 RSAPLPCB='PROCESSORS*LOOPING*IN HCPFRFGP*LT 2G'        
                 RSAPLPCT='PROCESSORS*LOOPING*IN HCPFRFGP*GT 2G'        
                 RSAPPTCS='ALB/TLB PURGES USING CSP'                    
                 RSAPPTPF='ALB/TLB*PURGES*FINISHED PRIOR TO'            
                 RSAPPTPS='ALB/TLB*PURGES*PRIOR TO*ENTERING WAIT        
                 RSARSVSY='PAGES*RESERVED*PER*PROCESSOR'                
                 RSASTLWT='LT 2G*AVAIL LIST*REPLENISH*STEAL WRITES'     
                 RSASWG2G='GT 2G*AVAIL LIST*REPLENISH*STEAL WRITES'     
                 RSASWP2G='GT 2G REPLENIS*PAGE WRITES*TO DASE'          
                 RSASWPWT='LT 2G REPLENIS*PAGE WRITES*TO DASE'          
                 RSASXCLA='LOCKED*SYSEXSP*ALIAS*LOGICAL*IN LOGICAL'     
                 RSASXCPL='LOCKED*SYSEXSP*ALIAS*LOGICAL*VIA CP LOCK'    
                 RSASXNOP='NO-OWNED*SYS EXEC SPACE*ALIASES'             
                 RSASYSFB='LT 2G*PAGES*IN USE FOR*SYSTEM*FREE STORE'    
                 RSASYSFR='GT 2G*PAGES*IN USE FOR*SYSTEM*FREE STORE'    
                 RSASYSUB='LT 2G*IN USE*SYSTEM*FREE STORAGE'            
                 RSASYSUD='GT 2G*IN USE*SYSTEM*FREE STORAGE'            
                 RSAVCBDB='LT 2G*VERIFIABLE*FREE*STORAGE*BACKED'        
                 RSAVCBDW='GT 2G*VERIFIABLE*FREE*STORAGE*BACKED'        
                 RSAVCBIB='LT 2G*VERIFIABLE*IN USE*FREE STORAGE'        
                 RSAVCBIU='GT 2G*VERIFIABLE*IN USE*FREE STORAGE'        
                 RSAVFSDW='VIRTUAL*FREE*STORAGE'                        
                 RSAVFSIU='VIRTUAL*FREE*STORAGE*IN USE'                 
                 RSAVMXFB='LT 2G*PAGES*USER FREE*IN USE'                
                 RSAVMXFR='GT 2G*VMDBK*USER FREE*PAGES*ALLOCATED'       
                 RSAVMXUB='LT 2G*IN USE*USER FREE*STORAGE'              
                 RSAVMXUD='GT 2G*IN USE*USER FREE*STORAGE'              
              -Dataset VXSTOSHR (3.03) new variables added by 5.3:      
                 ASCCTPRG='GT 2G*RESIDENT*PAGES'                        
                 ASCHLLC ='PAGES LOCKED*HOST LOG STORE'                 
                 ASCHLRC ='HOST*LOGICAL*RESIDENT*COUNT'                 
              -Dataset VXSTOXSG (3.09) new variables added by 5.4:      
                 XSTCTPGM='PGMBKS*SELECTED*WHILE*MIGRATING'             
                 XSTMAXCT='TIMES*TARGET TIME*IS LOWERED'                
                 XSTRHICT='TIMES*MIGRATE*THRES*BUFFER*DECREASED'        
                 XSTRLOCT='TIMES*MIGRATE*THRES*BUFFER*INCREASED'        
                 XSTUSRCY='NON-DORM*GUEST OWNED*ASIDS*MIGR TARGETS'     
                 XSTUSRDM='DORM*GUEST OWNED*ASIDS*MIGR*TARGETS'         
              -Dataset VXSTOASI (3.14) new variables added by 5.3:      
                 ASCCTPLK='GT 2G*PAGES*LOCKED*BY THIS*ASID'             
                 ASCCTPRG='GT 2G*RESIDENT*PAGES*FOR ASID'               
                 ASCHLLC ='PAGES LOCKED*IN HOST*LOGICAL*STORAGE'        
                 ASCHLRC ='HOST*LOGICAL*RESIDENT*COUNT'                 
              -Dataset VXSTOSCS (3.18) new variables added by 5.3:      
                 CURRENT ='CURRENTLY*ALLOCATED*SUBPOOL*SIZE'            
                 FREEF   ='FAILED*FREE()*CALLS TO*SUBPOOL'              
                 FREES   ='FREE()*CALLS TO*SUBPOOL'                     
                 FRXPLEN ='SCSI*SUBPOOL*SIZE'                           
                 FRXROOT ='SSSI*SUBPOOL*ADDRESS'                        
                 MALLOC  ='MALLOC()*CALLS TO*SUBPOOL'                   
                 MALLOCF ='FAILED*MALLOC()*CALLS TO*SUBPOOL'            
                 MAXALLOC='HIGH WATER MARK*BYTES*ALLOCATED'             
                 POOLNAME='POOL*NAME'                                   
              -Dataset VXSTOSXG (3.19) new variables added by 5.3:      
                 RSASXAMX='GT 2G*MAX PAGES*BACKED'                      
                 RSASXBMX='LT 2G*MAX PAGES*BACKED'                      
                 RSASXCPL='SYSEXECSP*LOCKED*ALIAS*CP LOCK'              
                 RSASXCTG='SYSEXECSP*IN USE*PAGES*CONTIG*REQ'           
                 RSASXDCA='SYSEXECSP*CREATE*ALIAS*NOW DEFERRED'         
                 RSASXDCT='SYSEXECSP*PAGE REQUESTS*NOW DEFERRED'        
                 RSASXDFA='SYSEXECSP*PAGE REQUESTS*DEFERRED*ANY'        
                 RSASXDFB='SYSEXECSP*LT 2G*REQUESTS*DEFERRED NOW'       
                 RSASXDPA='SYSEXECSP*WITH BACKING*NOW DEFERRED'         
                 RSASXDPB='SYSEXECSP*LT 2G*CURRENTLY*DEFERRED'          
                 RSASXPCT='SYSEXECSP*POTENTIAL*STEALABLE*QUEUE'         
                 RSASXQMN='THRESH*TRIGGER*REPLACEMENT*UNBACKED'         
                 RSASXQRA='ALIASES*STOLEN*DURING*SINGLE*REPLEN'         
                 RSASXRDA='ATTEMPTS*TO REDRIVE*TASKS*WAITING'           
                 RSASXRDC='INDIVIDUAL*TASK*REDRIVES'                    
                 RSASXRPM='MIN NUMBER*ON UNBACKED*SXS PAGE QUEUE'       
                 RSASXUOT='OTHER*CP*TYPE*PAGES'                         
              -Dataset VXSTOSXP (3.20) new variables added by 5.3:      
                 PFXCPUAD='PROCESSOR*ADDRESS'                           
                 PFXCPUTY='CPU*TYPE'                                    
                 PLSSAPUC='GT 2G*AVAIL BACKED*WAS PREFERRED*AND USED'   
                 PLSSAQMT='GT 2G*AVAIL BACKED*WAS PREFERRED*BUT EMPTY'  
                 PLSSARTC='GT 2G*PAGES RETURNED TO*BACKED*AVAIL QUEUE'  
                 PLSSATKC='GT 2G*TAKEN FROM*BACKED*AVAIL QUEUE'         
                 PLSSBPUC='LT 2G*AVAIL BACKED*WAS PREFERRED*AND USED'   
                 PLSSBQMT='LT 2G*AVAIL BACKED*WAS PREFERRED*BUT EMPTY'  
                 PLSSBRTC='LT 2G*PAGES RETURNED TO*BACKED*AVAIL QUEUE'  
                 PLSSBTKC='LT 2G*TAKEN FROM*BACKED*AVAIL QUEUE'         
                 PLSSPDQC='HCPFRFDQ*CALLS*TO RELEASE*A PAGE'            
                 PLSSPGBD='LT 2G*PAGE REQUEST*DEFERRED*ON FRAME'        
                 PLSSPGFD='PAGE REQUESTS*DEFERED*ANY FRAME'             
                 PLSSPGPD='PAGE REQUESTS*DEFERRED*ON PAGE'              
                 PLSSPNDF='NON-DEFERRABLE*REQUESTS*FAILED*FRAME LACK'   
                 PLSSPNDP='NON-DEFERRABLE*REQUESTS*FAILED*PAGE LACK'    
                 PLSSUPUC='TIMES*AVAIL UNBACKED*WAS PREFERRED*AND USED' 
                 PLSSUQMT='TIMES*AVAIL UNBACKED*WAS PREFERRED*BUT EMPTY'
                 PLSSURTC='PAGES*RETURNED TO*UNBACKED*AVAIL QUEUE'      
                 PLSSUTKC='PAGES*TAKEN FROM*UNBACKED*AVAIL QUEUE'       
                 PLSSXADC='LOCKED*ALIASES*DEQUEUED'                     
                 PLSSXAFC='NON-DEFERABLE*ALIAS*REQUEST*NOT FULFILLED'   
                 PLSSXALD='CREATE*ALIAS*REQUESTS*DEFERRED'              
                 PLSSXALS='ALIAS*STEALS*FROM POTENTIAL*AVAIL WAS EMPTY' 
                 PLSSXASC='ALIAS STOLEN'                                
                 PLSSXCSP='CSP INSTRUCTIOS*TO INVALIDATE'               
                 PLSSXIPC='IPTE INSTRUCTIONS*TO INVALIDATE'             
                 PLSSXNST='RSASXNST*FLAG*TURN ONS'                      
              -Dataset VXUSELON (4.01) and dataset VXUSELOF new         
                variables added by 5.4:                                 
                 CPHABSSH='CP*ABSOLUTE*SHARE*SETTING'                   
                 CPHFLG1 ='CP*SHARE*FLAGS'                              
                 CPHMXSHR='CP*MAX*SHARE*SETTING'                        
                 CPHRELSH='CP*RELATIVE*SHARE*SETTING'                   
                 ICHABSSH='ICF*ABSOLUTE*SHARE*SETTING'                  
                 ICHFLG1 ='ICF*SHARE*FLAGS'                             
                 ICHMXSHR='ICF*MAX*SHARE*SETTING'                       
                 ICHRELSH='ICF*RELATIVE*SHARE*SETTING'                  
                 IFHABSSH='IFL*ABSOLUTE*SHARE*SETTING'                  
                 IFHFLG1 ='IFL*SHARE*FLAGS'                             
                 IFHMXSHR='IFL*MAX*SHARE*SETTING'                       
                 IFHRELSH='IFL*RELATIVE*SHARE*SETTING'                  
                 ZAHABSSH='ZAAP*ABSOLUTE*SHARE*SETTING'                 
                 ZAHFLG1 ='ZAAP*SHARE*FLAGS'                            
                 ZAHMXSHR='ZAAP*MAX*SHARE*SETTING'                      
                 ZAHRELSH='ZAAP*RELATIVE*SHARE*SETTING'                 
                 ZIHABSSH='ZIIP*ABSOLUTE*SHARE*SETTING'                 
                 ZIHFLG1 ='ZIIP*SHARE*FLAGS'                            
                 ZIHMXSHR='ZIIP*MAX*SHARE*SETTING'                      
                 ZIHRELSH='ZIIP*RELATIVE*SHARE*SETTING'                 
              -Dataset VXUSEACT (4.03) new variables added by 5.4:      
                 VMDCACHN='MINIDISK*CACHE*INSERTS'                      
                 VMDCTSTA='TIMES*CPU START*BY SIGP'                     
                 VMDCTSTO='TIMES*CPU STOP*BY SIGP'                      
                 VMDCUPGM='UNREFERENCED*PGMBKS*AT REORDER'              
              -Dataset VXUSEINT (4.04) new variables added by 5.4:      
                 VMDCTSTA='TIMES*STARTED*BY SIGP'                       
                 VMDCTSTO='TIMES*STOPPED*BY SIGP'                       
              -Dataset VXPRCAPC (5.09) new variables added by 5.3:      
                 CRYNOFDQ='REAL*DQ*REQUESTS'                            
                 CRYNOFNQ='REAL*NQ*REQUESTS'                            
                 CRYNORPR='REAL*DQ*COMPLETIONS' (guess, mis-documented) 
                 CRYNOVNQ='VIRTUAL*NQ*REQUESTS'                         
                 CRYNOVPC='VIRTUAL*DQ*COMPLETIONS'                      
                 CRYNOVPR='VIRTUAL*DQ*REQUESTS'                         
                 CRYNOWNQ='MESSAGES*WAITING*FOR NQ'                     
                 CRYNOXRN='REJECTED*REAL*NQ*REQUESTS'                   
                 CRYNOXVN='REJECTED*VIRTUAL*NQ*REQUESTS'                
                 CRYRSERV='TIME FROM*REAL*NQ TO DQ'                     
                 CRYVSERV='TIME FROM*GUEST*NQ TO DQ'                    
              -Dataset VXPRCINS (5.11) new variables added by 5.3:      
                 PFXCPUAD='PROCESSOR*ADDRESS'                           
                 PLS0EPSW='EPSW*(B98D)'                                 
                 PLS0ESEA='ESEA*(B99D)'                                 
                 PLS0STFL='STFL*(B2B1)'                                 
                 PLSBISAS='STAP*(B212)'                                 
                 PLSBISBT='TB*(B22C)'                                   
                 PLSBISCP='STIDP*(B202)'                                
                 PLSBISIU='IUCV*(B2F0)'                                 
                 PLSBISPB='PTLB*(B20D)'                                 
                 PLSBISSI='SIE*(B214)'                                  
                 PLSBISST='STSI*(B27D)'                                 
                 PLSBISTE='SCK*(B204)'                                  
                 PLSBISXE='SPX*(B210)'                                  
                 PLSBISXS='STPX*(B211)'                                 
                 PLSCTCS ='REAL*CSCHS*EXECUTED'                         
                 PLSCTHS ='REAL*HSCHS*EXECUTED'                         
                 PLSCTRS ='REAL*RSCHS*EXECUTED.'                        
                 PLSCTSS ='REAL*SSCHS*EXECUTED.'                        
                 PLSESSA ='ESSA*(B9AB)'                                 
                 PLSKEYIE='ISKE*(B229)'                                 
                 PLSKEYIK='ISK*(09)'                                    
                 PLSKEYRE='RRBE*(B22A)'                                 
                 PLSKEYRR='RRB*(B213)'                                  
                 PLSKEYSE='SSKE*(B22B)'                                 
                 PLSKEYSK='SSK*(08)'                                    
                 PLSLPSWE='LPSWE*(B2B2)'                                
                 PLSPCVSC='SERVC*(B220)'                                
                 PLSPRVGP='SIGP*(AE)'                                   
                 PLSPRVLC='LCTL*(B7)'                                   
                 PLSPRVLG='LCTLG*(EB2F)'                                
                 PLSPRVLP='LPSW*(82)'                                   
                 PLSPRVMN='STNSM*(AC)'                                  
                 PLSPRVMO='STOSM*(AD)'                                  
                 PLSPRVMS='SSM*(80)'                                    
                 PLSPRVSG='STCTG*(EB25)'                                
                 PLSPRVSV='SVC*(0A)'                                    
                 PLSPRVTC='STCTL*(B6)'                                  
                 PLSPRVTP='TPROT*(E501)'                                
                 PLSPRVVN='GUEST*SVC*76-S*REFLECTED'                    
                 PLSPTFF ='PTFF*(0104)'                                 
                 PLSRSCHC='VIRTUAL*RSCHS*EXECUTED'                      
                 PLSSCKPF='SCKPF*(0107)'                                
                 PLSSIOCT='VIRTUAL*SIOS*EXECUTED'                       
                 PLSSIOFC='VIRTUAL*SIOFS*EXECUTED'                      
                 PLSSSCHC='VIRTUAL*SSCHS*EXECUTED'                      
                 PLSSTFLE='STFLE*(B2B0)'                                
                 PLSTCCC ='VIRTUAL*TEST AND CLEAR*CHANNELS'             
                 PLSVIDTE='IDTE*(B98E)'                                 
                 PLSVIESB='IESBE*(B259)'                                
                 PLSVPTNV='IPTE*(B221)'                                 
                 PLSXPG5A='BSA*(B25A)'                                  
                 PLSXPGIN='PGIN*(B22E)'                                 
                 PLSXPGOU='PGOUT*(B22F)'                                
              -Dataset VXPRCDIA (5.12) new variables added by 5.3:      
                 PFXCPUAD='PROCESSOR*ADDRESS'                           
                 PLSDG200='DIAGNOSE*X200'                               
                 PLSDG204='DIAGNOSE*X204'                               
                 PLSDG208='DIAGNOSE*X208'                               
                 PLSDG20C='DIAGNOSE*X20C'                               
                 PLSDG210='DIAGNOSE*X210'                               
                 PLSDG214='DIAGNOSE*X214'                               
                 PLSDG218='DIAGNOSE*X218'                               
                 PLSDG21C='DIAGNOSE*X21C'                               
                 PLSDG220='DIAGNOSE*X220'                               
                 PLSDG224='DIAGNOSE*X224'                               
                 PLSDG228='DIAGNOSE*X228'                               
                 PLSDG22C='DIAGNOSE*X22C'                               
                 PLSDG230='DIAGNOSE*X230'                               
                 PLSDG234='DIAGNOSE*X234'                               
                 PLSDG238='DIAGNOSE*X238'                               
                 PLSDG23C='DIAGNOSE*X23C'                               
                 PLSDG240='DIAGNOSE*X240'                               
                 PLSDG244='DIAGNOSE*X244'                               
                 PLSDG248='DIAGNOSE*X248'                               
                 PLSDG24C='DIAGNOSE*X24C'                               
                 PLSDG250='DIAGNOSE*X250'                               
                 PLSDG254='DIAGNOSE*X254'                               
                 PLSDG258='DIAGNOSE*X258'                               
                 PLSDG25C='DIAGNOSE*X25C'                               
                 PLSDG260='DIAGNOSE*X260'                               
                 PLSDG264='DIAGNOSE*X264'                               
                 PLSDG268='DIAGNOSE*X268'                               
                 PLSDG26C='DIAGNOSE*X26C'                               
                 PLSDG270='DIAGNOSE*X270'                               
                 PLSDG274='DIAGNOSE*X274'                               
                 PLSDG278='DIAGNOSE*X278'                               
                 PLSDG27C='DIAGNOSE*X27C'                               
                 PLSDG280='DIAGNOSE*X280'                               
                 PLSDG284='DIAGNOSE*X284'                               
                 PLSDG288='DIAGNOSE*X288'                               
                 PLSDG28C='DIAGNOSE*X28C'                               
                 PLSDG290='DIAGNOSE*X290'                               
                 PLSDG294='DIAGNOSE*X294'                               
                 PLSDG298='DIAGNOSE*X298'                               
                 PLSDG29C='DIAGNOSE*X29C'                               
                 PLSDG2A0='DIAGNOSE*X2A0'                               
                 PLSDG2A4='DIAGNOSE*X2A4'                               
                 PLSDG2A8='DIAGNOSE*X2A8'                               
                 PLSDG2AC='DIAGNOSE*X2AC'                               
                 PLSDG2B0='DIAGNOSE*X2B0'                               
                 PLSDG2B4='DIAGNOSE*X2B4'                               
                 PLSDG2B8='DIAGNOSE*X2B8'                               
                 PLSDG2BC='DIAGNOSE*X2BC'                               
                 PLSDG2C0='DIAGNOSE*X2C0'                               
                 PLSDG2C4='DIAGNOSE*X2C4'                               
                 PLSDG2C8='DIAGNOSE*X2C8'                               
                 PLSDG2CC='DIAGNOSE*X2CC'                               
                 PLSDG2D0='DIAGNOSE*X2D0'                               
                 PLSDG2D4='DIAGNOSE*X2D4'                               
                 PLSDG2D8='DIAGNOSE*X2D8'                               
                 PLSDG2DC='DIAGNOSE*X2DC'                               
                 PLSDG2E0='DIAGNOSE*X2E0'                               
                 PLSDG2E4='DIAGNOSE*X2E4'                               
                 PLSDG2E8='DIAGNOSE*X2E8'                               
                 PLSDG2EC='DIAGNOSE*X2EC'                               
                 PLSDG2F0='DIAGNOSE*X2F0'                               
                 PLSDG2F4='DIAGNOSE*X2F4'                               
                 PLSDG2F8='DIAGNOSE*X2F8'                               
                 PLSDG2FC='DIAGNOSE*X2FC'                               
                 PLSDG300='DIAGNOSE*X300'                               
                 PLSDG304='DIAGNOSE*X304'                               
                 PLSDG308='DIAGNOSE*X308'                               
                 PLSDG30C='DIAGNOSE*X30C'                               
                 PLSDG310='DIAGNOSE*X310'                               
                 PLSDG314='DIAGNOSE*X314'                               
                 PLSDG318='DIAGNOSE*X318'                               
                 PLSDG31C='DIAGNOSE*X31C'                               
                 PLSDG320='DIAGNOSE*X320'                               
                 PLSDG324='DIAGNOSE*X324'                               
                 PLSDG328='DIAGNOSE*X328'                               
                 PLSDG32C='DIAGNOSE*X32C'                               
                 PLSDG330='DIAGNOSE*X330'                               
                 PLSDG334='DIAGNOSE*X334'                               
                 PLSDG338='DIAGNOSE*X338'                               
                 PLSDG33C='DIAGNOSE*X33C'                               
                 PLSDG340='DIAGNOSE*X340'                               
                 PLSDG344='DIAGNOSE*X344'                               
                 PLSDG348='DIAGNOSE*X348'                               
                 PLSDG34C='DIAGNOSE*X34C'                               
                 PLSDG350='DIAGNOSE*X350'                               
                 PLSDG354='DIAGNOSE*X354'                               
                 PLSDG358='DIAGNOSE*X358'                               
                 PLSDG35C='DIAGNOSE*X35C'                               
                 PLSDG360='DIAGNOSE*X360'                               
                 PLSDG364='DIAGNOSE*X364'                               
                 PLSDG368='DIAGNOSE*X368'                               
                 PLSDG36C='DIAGNOSE*X36C'                               
                 PLSDG370='DIAGNOSE*X370'                               
                 PLSDG374='DIAGNOSE*X374'                               
                 PLSDG378='DIAGNOSE*X378'                               
                 PLSDG37C='DIAGNOSE*X37C'                               
                 PLSDG380='DIAGNOSE*X380'                               
                 PLSDG384='DIAGNOSE*X384'                               
                 PLSDG388='DIAGNOSE*X388'                               
                 PLSDG38C='DIAGNOSE*X38C'                               
                 PLSDG390='DIAGNOSE*X390'                               
                 PLSDG394='DIAGNOSE*X394'                               
                 PLSDG398='DIAGNOSE*X398'                               
                 PLSDG39C='DIAGNOSE*X39C'                               
                 PLSDG3A0='DIAGNOSE*X3A0'                               
                 PLSDG3A4='DIAGNOSE*X3A4'                               
                 PLSDG3A8='DIAGNOSE*X3A8'                               
                 PLSDG3AC='DIAGNOSE*X3AC'                               
                 PLSDG3B0='DIAGNOSE*X3B0'                               
                 PLSDG3B4='DIAGNOSE*X3B4'                               
                 PLSDG3B8='DIAGNOSE*X3B8'                               
                 PLSDG3BC='DIAGNOSE*X3BC'                               
                 PLSDG3C0='DIAGNOSE*X3C0'                               
                 PLSDG3C4='DIAGNOSE*X3C4'                               
                 PLSDG3C8='DIAGNOSE*X3C8'                               
                 PLSDG3CC='DIAGNOSE*X3CC'                               
                 PLSDG3D0='DIAGNOSE*X3D0'                               
                 PLSDG3D4='DIAGNOSE*X3D4'                               
                 PLSDG3D8='DIAGNOSE*X3D8'                               
                 PLSDG3DC='DIAGNOSE*X3DC'                               
                 PLSDG3E0='DIAGNOSE*X3E0'                               
                 PLSDG3E4='DIAGNOSE*X3E4'                               
                 PLSDG3E8='DIAGNOSE*X3E8'                               
                 PLSDG3EC='DIAGNOSE*X3EC'                               
                 PLSDG3F0='DIAGNOSE*X3F0'                               
                 PLSDG3F4='DIAGNOSE*X3F4'                               
                 PLSDG3F8='DIAGNOSE*X3F8'                               
                 PLSDG3FC='DIAGNOSE*X3FC'                               
                 PLSDGUCT='ALL*USER*DIAGNOSE*OPERATIONS*/               
                 PLSDGX00='DIAGNOSE*X00'                                
                 PLSDGX04='DIAGNOSE*X04'                                
                 PLSDGX08='DIAGNOSE*X08'                                
                 PLSDGX0C='DIAGNOSE*X0C'                                
                 PLSDGX10='DIAGNOSE*X10'                                
                 PLSDGX14='DIAGNOSE*X14'                                
                 PLSDGX18='DIAGNOSE*X18'                                
                 PLSDGX1C='DIAGNOSE*X1C'                                
                 PLSDGX20='DIAGNOSE*X20'                                
                 PLSDGX24='DIAGNOSE*X24'                                
                 PLSDGX28='DIAGNOSE*X28'                                
                 PLSDGX2C='DIAGNOSE*X2C'                                
                 PLSDGX30='DIAGNOSE*X30'                                
                 PLSDGX34='DIAGNOSE*X34'                                
                 PLSDGX38='DIAGNOSE*X38'                                
                 PLSDGX3C='DIAGNOSE*X3C'                                
                 PLSDGX40='DIAGNOSE*X40'                                
                 PLSDGX44='DIAGNOSE*X44'                                
                 PLSDGX48='DIAGNOSE*X48'                                
                 PLSDGX4C='DIAGNOSE*X4C'                                
                 PLSDGX50='DIAGNOSE*X50'                                
                 PLSDGX54='DIAGNOSE*X54'                                
                 PLSDGX58='DIAGNOSE*X58'                                
                 PLSDGX5C='DIAGNOSE*X5C'                                
                 PLSDGX60='DIAGNOSE*X60'                                
                 PLSDGX64='DIAGNOSE*X64'                                
                 PLSDGX68='DIAGNOSE*X68'                                
                 PLSDGX6C='DIAGNOSE*X6C'                                
                 PLSDGX70='DIAGNOSE*X70'                                
                 PLSDGX74='DIAGNOSE*X74'                                
                 PLSDGX78='DIAGNOSE*X78'                                
                 PLSDGX7C='DIAGNOSE*X7C'                                
                 PLSDGX80='DIAGNOSE*X80'                                
                 PLSDGX84='DIAGNOSE*X84'                                
                 PLSDGX88='DIAGNOSE*X88'                                
                 PLSDGX8C='DIAGNOSE*X8C'                                
                 PLSDGX90='DIAGNOSE*X90'                                
                 PLSDGX94='DIAGNOSE*X94'                                
                 PLSDGX98='DIAGNOSE*X98'                                
                 PLSDGX9C='DIAGNOSE*X9C'                                
                 PLSDGXA0='DIAGNOSE*XA0'                                
                 PLSDGXA4='DIAGNOSE*XA4'                                
                 PLSDGXA8='DIAGNOSE*XA8'                                
                 PLSDGXAC='DIAGNOSE*XAC'                                
                 PLSDGXB0='DIAGNOSE*XB0'                                
                 PLSDGXB4='DIAGNOSE*XB4'                                
                 PLSDGXB8='DIAGNOSE*XB8'                                
                 PLSDGXBC='DIAGNOSE*XBC'                                
                 PLSDGXC0='DIAGNOSE*XC0'                                
                 PLSDGXC4='DIAGNOSE*XC4'                                
                 PLSDGXC8='DIAGNOSE*XC8'                                
                 PLSDGXCC='DIAGNOSE*XCC'                                
                 PLSDGXD0='DIAGNOSE*XD0'                                
                 PLSDGXD4='DIAGNOSE*XD4'                                
                 PLSDGXD8='DIAGNOSE*XD8'                                
                 PLSDGXDC='DIAGNOSE*XDC'                                
                 PLSDGXE0='DIAGNOSE*XE0'                                
                 PLSDGXE4='DIAGNOSE*XE4'                                
                 PLSDGXE8='DIAGNOSE*XE8'                                
                 PLSDGXEC='DIAGNOSE*XEC'                                
                 PLSDGXF0='DIAGNOSE*XF0'                                
                 PLSDGXF4='DIAGNOSE*XF4'                                
                 PLSDGXF8='DIAGNOSE*XF8'                                
                 PLSDGXFC='DIAGNOSE*XFC'                                
                 PLSTOTDI='ALL Z/VM*DEFINED*DIAGNOSE*OPERATIONS*/       
              -Dataset VXIODDEV (6.03) new variables added by 5.3:      
                 PAVCC3S ='INITIAL*CMR*TIME'                            
              -Dataset VXVNDSES (8.01) new variables added by 5.3:      
                 MSVCMAC ='VDEV*MAC*ADDRESS'                            
              -Dataset VXAPLTC1 (10.01) TCP/IP SUBTYPE '01' added:      
                 FORNIPV6='FOREIGN*IP*ADDRESS*IPV6'                     
                 LOCLIPV6='LOCAL*IP*ADDRESS*IPV6'                       
              -Dataset VXAPLTC4 (10.02) TCP/IP SUBTYPE '04' added:      
                 FPSPAV2G='FPSP*AVAILABLE*LOCKED PAGES*GT 2G'           
                 FPSPALUS='FPSP*ALLOCATED*LOCKED PAGES*GT 2G'           
              -Dataset VXAPLTC9 (10.02) TCP/IP SUBTYPE '09' added:      
                 ACBSSC00='PROCESS 00*ACBS SCHEDULED'                   
                 ELAPSE00='PROCESS 00*ELAPSED TIME ACB'                 
                 VIRTCP00='PROCESS 00*VIRTUAL CPU TIME ACB'             
                 ELAPSM00='PROCESS 00*MAXIMUM ELAPSED TIME ACB'         
                 VIMXCP00='PROCESS 00*MAXIMUM VIRTUAL CPU TIME ACB'     
                            thru                                        
                 ACBSSC80='PROCESS 80*ACBS SCHEDULED'                   
                 ELAPSE80='PROCESS 80*ELAPSED TIME ACB'                 
                 VIRTCP80='PROCESS 80*VIRTUAL CPU TIME ACB'             
                 ELAPSM80='PROCESS 80*MAXIMUM ELAPSED TIME ACB'         
                 VIMXCP80='PROCESS 80*MAXIMUM VIRTUAL CPU TIME ACB'     
                  for all 81 "Process Name Types".                      
                                                                        
              UPDATES PENDED FOR ADDITIONAL IBM DOC/ASSISTANCE:         
                                                                        
              -Dataset VXPRCAPM (5.10) is skipped as the documentation  
                is insufficient.  The PRCAPM segment does not contain   
                the CMB Entry Type, which sets the size of the CMB:     
                   Entry type 3, 5, 6 are  64 bytes                     
                   Entry type 4 is        336 bytes                     
                   Entry type 6 is         80 bytes                     
                plus                                                    
                 - the length of the variable data depends on the type  
                   of AP (determined by the PRCAPM_CT field in the      
                   CMB Header, and the number of APs installed,         
                   But: neither that PRCAPM_CT fields, nor is the number
                        of APs in the PRCAPM segment in MONWRITE data.  
                Fortunately, the PRCAPM 5.10 segment only exists if     
                there are PCI Crypto Cards installed.                   
                                                                        
              -Dataset VXAPLTC9 (10.02) SUBRECORD '09'X, TCP/IP ACB is  
               still not understood sufficiently for complete support.  
                                                                        
               All of the datasets listed above have been tested with   
               data from z/VM 5.4.  There are a few other records that  
               have new data fields, but they did not exist in the test 
               files, so they won't be updated until a user request is  
               accompanied by test data with those segments.            
                                                                        
                                                                        
Change 26.202  Creating RMFINTRV or BUILDPDB with //PDB DD on tape fails
VMXGRMFI       because both PDB.TYPE78 and PDB.TYPE78IO were opened in a
Aug 30, 2008   VMXGSUM invocation, but PDB.TYPE78 has always had zero   
Oct 15, 2008   observations (with 3090's or later), so it was removed   
               from that step.  PDB.TYPE78 is still VMXGSUM'd separately
               to create these PDB.RMFINTRV variables, always missing   
               values, but there so your old report programs won't fail:
                  NRATTMPS NRSAMPLE SIO78CNT PCTDEFCU PCTDEFDV          
                  PCTSUCES PCTALLBY                                     
               Oct 15: Using PDB=SMF with %VMXGRMFI failed because the  
                       _STY78 had been inadvertently removed.           
   Thanks to Jorge Fong, DOITT NYC, USA.                                
   Thanks to Atle Mjelde, Ergo Group, NORWAY.                           
                                                                        
Change 26.201  Support for DB2 V9.1 (COMPAT) SMF 100/101 + new V8 data: 
FORMATS                                                                 
VMACDB2        WOW: New Z/OS metrics in PDB.DB2STATS are added to both  
Aug 30, 2008        DB2 V8.1 (APAR PK47659) and DB2 V9.1 (APAR PK56356).
Sep  1, 2008        Both DB2 APARs also need RMF APAR PK62116 (which has
                    prereq APARs PK66373 and OA24404), and PK62116 has  
                    these installation notes from IBM:                  
                     Please be aware that there can be situations when  
                      the z/OS metrics don't get provided at all or only
                      partially in the DB2 trace.  The reason for this  
                      is that there are setup problems related to RMF.  
                     Please verify that actions 1 to 4 were completed   
                      after installation of the PTF for PK62116:        
                      1. Make sure that the PTF for the prereq APAR     
                         PK66373 has been applied.                      
                      2. Verify that the fix for Resource Measurement   
                         Facility (RMF), PTF for APAR OA24404 has been  
                         installed.  If this step is omitted, an abend  
                         will occur in RMF.                             
                      3. Set DB2 subsystem parameter ZOSMETRICS to YES. 
                      4. Start Resource Measurement Facility and RMF    
                         Monitor 3 sysplex data retrieval service.      
                                                                        
              -Dataset DB2STATS new variables from DB2STAT0 in V8 & V9: 
                 New z/OS variables in PDB.DB2STATS with above APARs:   
                 QWOSDB2U='DB2*SUBSYSTEM*CPU*UTILIZATION'               
                 QWOSDBMU='DB2*DBM1*CPU*UTILIZATION'                    
                 QWOSDPIR='DB2 SUBSYS*PAGE-IN*RATE'                     
                 QWOSDRSU='DB2 SUBSYS*USED REAL STORAGE*IN MB'          
                 QWOSDVSU='DB2 SUBSYS*USED VIRTUAL*STORAGE*IN MB'       
                 QWOSLNCP='CPS*IN*LPAR'                                 
                 QWOSLPIR='LPAR*PAGE-IN*RATE'                           
                 QWOSLPRU='LPAR*CPU*UTILIZATION'                        
                 QWOSLRSF='LPAR*FREE REAL*STORAGE*IN MB'                
                 QWOSLRST='LPAR*REAL STORAGE*IN MB'                     
                 QWOSLVSF='LPAR*FREE*VIRTUAL*STORAGE*IN MB'             
                 QWOSLVST='LPAR*VIRTUAL*STORAGE*IN MB'                  
                 QWOSMSTU='DB2*MSTR*CPU*UTILIZATION'                    
                 NOTE: DB2 Parameter ZOSMETRICS=YES must be specified to
                 populate these variables.  APAR PK62116 applies.       
                 With the default NO value, fields contain 'FFFFFFFF'x. 
              -Dataset DB2ACCT  new variables added by V9:              
                 QWACALBW='WAIT TIME*TCP/IP LOB*MATERIALIZATION'        
                 QWACALBC='WAITS FOR*TCP/IP LOB*MATERIALIZATIONS'       
                 QWACSPC1='SP_CLS1SE*STORED PROC*CLASS 1*ON ZIIP'       
                 QWACSPC2='SP_CLS2SE*STORED PROC*CLASS 2*ON ZIIP'       
                 QWACSPZC='SPNF_CP*STORED PROC*CPU TIME*ON CP'          
                 QWACSPZE='SPNF_ELAP*STORED PROC*ELAPSED*TIME'          
                 QWACSPZI='SPNF_ZIIP*STORED PROC*CPU TIME*ON ZIIP'      
                 QWACTRSE='TRTE_SE*NESTED*TRIGGER*CPU ON ZIIP'          
                 QWACUDC1='UDF_CLS1SE*UDF STORED PROC*CLS 1*ZIIP'       
                 QWACUDC2='UDF_CLS2SE*UDF STORED PROC*CLS 2*ZIIP'       
                 QWACUDZC='UDFNF_CP*FUTURE*FUNCTION'                    
                 QWACUDZE='UDFNF_ELAP*FUTURE*FUNCTION'                  
                 QWACUDZI='UDFNF_ZIIP*FUTURE*FUNCTION'                  
              -Dataset DB2ACCTP new variables added by V9:              
                 QPACALBC='TCP/IP LOB*WAIT*TRACE*EVENTS'                
                 QPACALBW='CPU TIME*ON ZIIP'                            
                 QPACSWIT='TIMES*PACKAGE WAS*SWITCHED TO'               
              -Datasets DB2ACCT, DB2ACCTP, DB2ACCTB, DB2ACCTG           
                new QWHC (Header) variables added:                      
                 QWHCOAUD='ORIGINAL*APPLICATION*USERID'                 
                 QWHCROLE='ROLE*NAME'                                   
                 QWHCTCXT='TRUSTED*CONTEXT*NAME'                        
              -Dataset DB2STATS new variables from DB2STAT0 in V9:      
                 Q9STCTX5='DISPLAY*DDF*COMMANDS'                        
                 Q9STCTAD='ACCESS*DATABASE*COMMANDS'                    
                 Q9STCTSS='START*PROFILE*COMMANDS'                      
                 Q9STCTST='STOP*PROFILE*COMMANDS'                       
                 Q9STCTSD='DISPLAY*PROFILE*COMMANDS'                    
              -Dataset DB2STATB and DB2STATS changes:                   
                These DB2STATB variables are (or have been) reserved    
                   QBSTALX QBSTARA QBSTARF QBSTAWA QBSTAWF QBSTDWC      
                   QBSTDWX QBSTHBE QBSTHPA QBSTHPL QBSTHRA QBSTHRE      
                   QBSTHRF QBSTHWA QBSTHWF QBSTHWR QBSTWEE              
                 and all are now set to a missing value in DB2STATB.    
                 Additionally, their QB1xxxx-QB4xxxx counterpart        
                 variables in DB2STATS are now also missing values.     
                New variables in DB2STATB:                              
                 QBSTCIO ='PAGES*OF I/O*ON CASTOUT'                     
                 QBSTPCO ='PAGES*ON*UNLOCK*CASTOUT'                     
                New variables in DB2STATS:                              
                 QB1TCIO ='1ST PAGES*OF I/O*ON CASTOUT'                 
                 QB1TPCO ='1ST PAGES*ON*UNLOCK*CASTOUT'                 
                 QB2TCIO ='2nd PAGES*OF I/O*ON CASTOUT'                 
                 QB2TPCO ='2nd PAGES*ON*UNLOCK*CASTOUT'                 
                 QB3TCIO ='3rd PAGES*OF I/O*ON CASTOUT'                 
                 QB3TPCO ='3rd PAGES*ON*UNLOCK*CASTOUT'                 
                 QB4TCIO ='4th PAGES*OF I/O*ON CASTOUT'                 
                 QB4TPCO ='4th PAGES*ON*UNLOCK*CASTOUT'                 
              -Dataset DB2STATB new variable in V9:                     
                 QDBPASIZ='AUTOSIZE*ATTRIBUTE'                          
              -Dataset DB2STATS new variables from DB2STAT1:            
                 QISECTA ='PAGES*USED IN CT*ABOVE BAR'                  
                 QISEKFAL='FAIL*DUE TO*STMT SKEL*POOL FULL'             
                 QISEKFRE='FREE PG*IN SKEL*EDM POOL*FRE CH'             
                 QISEKNFA='NOT-FOUND*RECORD*ADDED*TO CACHE'             
                 QISEKNFM='CACHED*NOT-FOUND*RECORD*LOCATED'             
                 QISEKNFR='NOT-FOUND*RCRD*REMOVED*FRM CACHE'            
                 QISEKPGE='PAGES*IN SKEL*EDM POOL'                      
                 QISEKTA ='PAGES*USED IN PT*ABOVE BAR'                  
                 QISESFAL='FAIL*DUE TO*STMT ABV*POOL FULL'              
                 QISESFRE='FREE PG*IN STMT*ABV EDM*POL FRE'             
                 QISESKCT='PAGES*USED*FOR SKCT'                         
                 QISESKPT='PAGES*USED*FOR SKPT'                         
                 QISESPGE='PAGES*IN STMT*ABV EDM*POOL'                  
              -Dataset DB2STATS new variables from DB2STAT1:            
                 QISTW04K='TOT 4KB*TABLESPACE*USED*FRACT MB'            
                 QISTW32K='TOT 32KB*TABLESPACE*USED*FRACT MB'           
                 QISTWF04='TOT 4KB*TABLESPACE*USED*WHOLE MB'            
                 QISTWF32='TOT 32KB*TABLESPACE*USED*WHOLE MB'           
                 QISTWFCK='CUR TOTAL*FRACT MB*USED IN*WF IN KB'         
                 QISTWFCU='CUR TOTAL*WHOLE MB*USED IN*WF DB'            
                 QISTWFMU='MAX TOT*USED IN*WF DB (MB)'                  
                 QISTWFMX='MAX*ALLOWABLE*USE LIMIT*P/AG MB'             
                 QISTWFNE='TIMES MAX*ALLOWABLE*LIMIT*EXCEEDED'          
                 QISTWFP1='TIMES 32KB*PAGE TS*USED WHEN*4KB SHOULD'     
                 QISTWFP2='TIMES 4KB*PAGE TS*USED WHEN*32K SHOULD'      
              -Dataset DB2STATS new variables from DB2STAT1:            
                 QXALTCTX='ALTER*TRUSTED*CONTEXT'                       
                 QXALTJR ='ALTER*JAR'                                   
                 QXCRCTX ='CREATE*TRUSTED*CONTEXT'                      
                 QXCRROL ='CREATE*ROLE'                                 
                 QXDRPCTX='DROP*TRUSTED*CONTEXT'                        
                 QXDRPROL='DROP*ROLE'                                   
                 QXMERGE ='TIMES*MERGE*STATEMENT*WAS EXECUTED'          
                 QXRNIX  ='RENAME*INDEX'                                
                 QXSTXMLV='MAX STORAGE*USED FOR*XML VALUES'             
                 QXTRTBL ='TIMES*TRUNCATE*TABLE*WAS EXECUTED'           
              -Dataset DB2ACCTP documentation.                          
                 Variables QPACCAST, QPACCANM, QPACUDST are always      
                 missing in both V8 and V9, as they are Account level,  
                 not package, metrics.                                  
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.200  NO CHANGE. Only documentation of the cause of message:   
BUILDPDB        ERROR:Variable SYSPLEX defined as both char and numeric.
Aug 28, 2008    ERROR:Variable SYSTEM  defined as both char and numeric.
                ERROR:Variable SYSNAME defined as both char and numeric.
               followed by                                              
                WARNING: The data set WORK.MSU4HRAV may be incomplete.  
               The error is a broken SPIN.SPINRMFI, from an earlier test
               job that failed; PROC CONTENTS DATA=SPIN.SPINRMFI will   
               show the three variables as NUMERIC instead of CHARACTER.
               PROC DELETE DATA=SPIN.SPINRMFI and a rerun resolved.     
                                                                        
Change 26.199  Change 25.228 added protection for invalid 14, 15 records
VMAC1415       that had only one NUCB while NUCB=2 in the record, but   
Aug 28, 2008   the protection failed when the NUCB segment was the last 
               in the record.  The protection itself CAUSED message:    
               ERROR: INVALID SMF1415 RECORD. INVALID UCB SEGMENT ERROR 
               which prevented those records from being output, so it   
               really is an ERROR, albeit caused by MXG and not a bad   
               record.  Most 14/15s have the extended segments, and the 
               protection worked fine for those records.                
   Thanks to Herbert Sweeney, Verizon Data Services, USA                
                                                                        
Change 26.198  All Pool 00 variables in BVIR32 are changed to Pool 32,  
VMACBVIR       as all IBM Virtualization Engine TS7700 reporting now    
Aug 25, 2008   reports pools 1 thru 32 instead of the pool 0 thru 31 in 
               the DSECTS from which I wrote the original MXG code.     
               Variable names and labels are changed.                   
   Thanks to Leendert Keesmaat, UBS, SWITZERLAND.                       
                                                                        
====== Changes thru 26.197 were in MXG 26.07 dated Aug 24, 2008=========
                                                                        
Change 26.197  PCTMVSBY in PDB.TYPE70PR is now calculated for all engine
VMAC7072       types (CPs,zIIPs,zAAPs), because SMF70PAT parked time is 
Aug 24, 2008   now recorded for the specialty engines.  The existence of
               SMF70PAT field required heuristic circumvention code when
               it was discovered that a fully parked engine did not have
               the SMF70PAT exactly equal to the SMF70ONT Online Time;  
               my first test for ONT-PAT GT .02 seconds was not enough  
               and caused PCTMVSBY greater than 100% when data with ONT 
               of ONT 15.00.01 and PAT of 14:59:97 was found, so that   
               heuristic was raised to 0.10 seconds.  CPUWAITM greater  
               than DURATM by 0.01 seconds with SMF70PAT nearly DURATM  
               also required heuristic protection to prevent negative   
               PCTCPU calculations for individual engines in TYPE70PR.  
                                                                        
Change 26.196  Variable DVRCP032 was removed from the KEEP list; there  
VMACBVIR       are only 31 pools. But now see Change 25.198.            
Aug 24, 2008                                                            
   Thanks to Jens Mohring, HUK-COBURG, GERMANY.                         
                                                                        
Change 26.195  The Multi-System Enclave Remote System dataset TYPE30MR  
VMAC30         always had zero observations, because MXG's test for the 
Aug 22, 2008   13 bytes remaining should have been 12, so the offset was
               always missing and the segment was never read.  This also
               caused variables CPUMRDTM/CPUMRITM in TYPE30xx, PDB.JOBS,
               PDB.STEPS, and PDB.SMFINTRV to always be zero.  However, 
               fortunately, even IBM doesn't expect many (or any?) sites
               to actually have these segments, so no one had noticed   
               their absence.                                           
   Thanks to Stephen Hughes, Excellus, USA.                             
                                                                        
Change 26.194  The MXGWPSV2 JCL procedure example was inconsistent in   
MXGWPSV2       the example DSNAMEs, and the JCLINSTW example notes were 
JCLINSTW       clarified on the JCL Procedure Name to be used.          
Aug 24, 2008                                                            
                                                                        
Change 26.193  Lots of cosmetic cleanup. Labels added, variables that   
DOC            should not have been kept aren't, formats added, etc.,   
Aug 21, 2008   as a result of SAS ITRM Dictionary Build, MXG QA runs,   
               and user detected inconsistencies.  Members touched:     
                 IMACCICS IMAC110  VMAC110  VMAC6156 VMACTPMX VMAC116   
                 VMACSMF  VMACHSM  VMACCMF  VMXGCICI VMAC30   VMXGRMFI  
                 JCLROCS  ASUMTAPE CHANGESS VMACSUSE VMXGINIT IMACQAPM  
                 VMAC7072 VMACNTSM VMACTPF                              
   Thanks to Nick Johns, Sainsbury Supermarkets Ltd., ENGLAND.          
   Thanks to Chris Weston, SAS ITRM Development, USA.                   
   Thanks to Freddie Arie, Merrill Consultants QA Guy, USA.             
                                                                        
Change 26.192  Support for APAR OA24074.  IBM recalculates PCTMVSBY when
VMAC7072       HIPERDISPATCH has parked an engine(s), by subtracting the
Aug 21, 2008   Parked Time (SMF70PAT) from both the numerator and the   
               denominator:                                             
                              Online Time - (Wait + Parked Time)        
                 MVS UTIL(%)=---------------------------------- * 100   
                              Online Time - Parked Time                 
               so MXG's calculation of PCTMVSBY is revised to match IBM.
               This was noted in the MXG Newsletter discussion of Parked
               time, but was not implemented in code until now.         
   Thanks to Brian Currah, Independent Consultant, CANADA.              
   (In 1972, the first person I ever called with a question about an    
    SMF record's contents was Brian; the late Steve Cullen knew him     
    to be an SMF guru at GUIDE!  And, he knew the answer, then and now!)
                                                                        
Change 26.191  A new MXGSAS92 JCL Procedure for MXG under z/OS SAS V9.2 
MXGSAS92       is provided because SAS changed their DSNAMES for CNTL   
Aug 22, 2008   and SASMSG datasets:                                     
              -If you use the SAS Deployment Wizard (SDW) to install the
               SAS V9.2 for z/OS release, the DSNAME of their CNTL      
               dataset is changed by the addition of a new qualifier    
               with the SAS Version, year, and julian date of install,  
               with this syntax                                         
                  DSN=&SASHLQ..V92DYJJJ.CNTL(BAT&YY.)                   
               or a specific DSNAME, for example, of                    
                  DSN=&SASHLQ..V92D8208.CNTL(BATW0)                     
               for an install in 2008 on julian date 208, in the USA.   
               The MXGSAS92 JCL procedure now has                       
                //CONFIG DD DISP=SHR,DSN=&SASHLQ..V92DYJJJ.CNTL(BAT&YY.)
                //       DD DISP=SHR,DSN=&MXGHLQ..MXG.SOURCLIB(CONFIGV9)
               Get that exact YJJJ value from your SAS Installer.       
              -Also the SASMSG DSNAME with .SL. no longer exists, so the
               SASMSG DD only has these two DDs:                        
                //SASMSG    DD DISP=SHR,DSN=&SASHLQ..&XX.&YY..SASMSG    
                //          DD DISP=SHR,DSN=&SASHLQ..EN&YY..SASMSG      
   Thanks to Tom C. Frohnapfel, AAFES, USA.                             
   Thanks to MP Welch, SPRINT, USA.                                     
                                                                        
Change 26.190 -Support for IMS Log record 0A (CPI-CI Driven Program)    
ASMIMSL6       records 0A07x (Terminate) & 0A08x (Start) creates IMS0A78
EXIMS0A7       dataset in both ASMIMSL6/TYPEIMSA and TYPEIMS7 programs. 
EXIMS0A8      -For ASMIMSL6/TYPEIMSA log processing:                    
EXIMSA78        _IMSVERS defined in IMACIMSA now default is IMS 10.0.   
IMACIMS         Comments in IMACIMSA document how to change DDNAMES and 
IMACIMS7          which   %LET Wdddddd=  or %LET Pdddddd you use for    
IMACIMSA          each of the six output IMS datasets.                  
TYPEIMS7        ASMIMSL6 was modified to pass the 0A records and report 
TYPEIMSA         the total count of those records written.              
VMACIMS       -For TYPEIMS7 processing:                                 
Aug 23, 2008   _IMSVERS defined in IMACIMS7 now default is IMS 10.0.    
               Member IMACIMS is NO LONGER USED.                        
               In _IMSUMRY macro CTR array was increased from 55 to 67. 
               These DDname Macros were previously defined in IMACIMS7: 
                        _IMSTRAN, _IMSBMP, and _IMSWORK                 
                but they are no longer used in IMS processing, as the   
                simpler Pdddddd and Wdddddd macro variables are now     
                fully implemented in the MXG IMS processing. They are   
                still defined, in case they exist in your user code.    
               All TYPEIMS7 output datasets are written to //WORK, but  
                comments in TYPEIMS7 show how to send its output to     
                other DDNAMES.                                          
   Thanks to Cornelia Dorr, Lufthansa Systems Infratec GmbH, GERMANY.   
   Thanks to Gero Wohlsperger, Lufthansa Systems, Infratec GmbH, GERMANY
                                                                        
Change 26.189  SAS V9.2 with Hot Fix F9BA07 removed the need for MXG to 
VMXGINIT       enable the (non-existent, as of now) VARLENCHK option, so
Aug 20, 2008   it was removed.  See MXG Newsletter FIFTY-TWO, SAS Note 7
               which discusses the Hot Fix for SAS V9.2.                
   Thanks to MP Welch, SPRINT, USA.                                     
                                                                        
Change 26.188  The datasets ASUM70PR/ASUM70LP/ASUMCEC/ASUMCELP built by 
DOC            the ASUM70PR member currently do NOT subtract SMF70PAT,  
Aug 19, 2008   Parked Time, from the SMF70ONT, Online Time, so the count
               of LPnNRPRC (CP Engines) is not the average online count.
               It might not be possible, easily, to modify ASUM70PR to  
               account for Parked Time in the two System-Level datasets 
               ASUM70PR and ASUM70LP, because the SMF70PAT only exists  
               in the per-MVS-system observations in TYPE70PR from the  
               parked MVS system records.                               
               However, the two CEC-Level datasets, ASUMCEC and ASUMCELP
               already use only the per-MVS-system observations, so it  
               appears that you could use the below example to create   
               two new PARKCEC and PARKCELP datasets in your PDB library
               with the SMF70PAT parked time removed from SMF70ONT time,
               which then causes the calculation of LPnNRPRC and related
               related variables to account for the parked time of each 
               LPAR:                                                    
                  //REALPDB DD DSN=YOUR.REAL.PDB.DATASET,DISP=SHR       
                  //PDB     DD UNIT=SYSDA,SPACE=(CYL,(50,50))           
                  //SYSIN DD *                                          
                    DATA PDB.TYPE70PR;  SET REALPDB.TYPE70PR;           
                    IF SMF70PAT GT 0 THEN SMF70ONT=SMF70ONT-SMF70PAT;   
                    %INCLUDE SOURCLIB(ASUM70PR);                        
                    DATA REALPDB.PARKCEC;  SET PDB.ASUMCEC;             
                    DATA REALPDB.PARKCELP; SET PDB.ASUMCELP;            
                                                                        
Change 26.187  Support for APAR OA25205 for SMF 42 record, adds subtypes
EXTY4224       24 and 25, and to subtypes 20, 21, 24 and 25, the fields 
EXTY4225       defined by IBM's ICHRUTKN DSECT are added to the record. 
EXTY422A       These new datasets are created:                          
EXTY424A          DDDDDD    DATASET    DESCRIPTION                      
FORMATS           TY422A    TYPE422A   SUBTYPE 21 DELETE MEMBER ALIAS   
IMAC42            TY4224    TYPE4224   DFSMS MEMBER ADD/REPLACE ST24    
VMAC42            TY42A4    TYPE42A4   DFSMS SUBTYPE 24 DELETE ALIAS    
VGETUTKN          TY4225    TYPE4225   DFSMS MEMBER RENAME ST25         
VMXGINIT       These MXG variables are created by VGETUTKN:             
Aug 19, 2008      UTKNFLG1='UTKNFLG1*MISCELLANEOUS FLAGS'               
                    Bit values, not (yet?) decoded by MXG:              
                    TOKENCR   X'80'   TOKEN IS ENCRYPTED                
                    TOKLT19   X'20'   TOKEN CREATED BY PRE RACF 1.9 CALL
                    TOKVXPRP  X'10'   VERIFYX PROPAGATION OCCURRED      
                    TOKUNUSR  X'08'   NJE UNKNOWN USER                  
                    TOKLOGU   X'04'   LOG USER INDICATOR                
                    TOKRSPEC  X'02'   RACF SPECIAL INDICATOR            
                  UTKNFLG2='UTKNFLG2*MISCELLANEOUS*FLAGS'               
                    Bit values, not (yet?) decoded by MXG:              
                    TOKDFLT   X'80'   DEFAULT TOKEN                     
                    TOKUDUS   X'40'   UNDEFINED USER                    
                    TOKERR    X'10'   TOKEN IN ERROR                    
                    TOKTRST   X'08'   PART OF TRUSTED COMPUTER BASE     
                    TOKSUS    X'04'   SURROGATE USERID                  
                    TOKREMOT  X'02'   REMOTE JOB INDICATOR              
                    TOKPRIV   X'01'   PRIVILEDGED USER INDICATOR        
                  UTKNFLG3='UTKNFLG3*MISCELLANEOUS*FLAGS'               
                    TOKDGRP   X'80'   DEFAULT GROUP ASSIGNED            
                    TOKDSEC   X'40'   DEFAULT SECLABEL ASSIGNED         
                    TOKNETF   X'20'   NETWORK NAME SPECIFIED            
                    TOKIPV    X'10'   IP VALUE FOR SERVAUTH POE         
                    TOKWDWN   X'08'   WRITE-DOWN IS ALLOWED             
                  UTKNGRUP='SESSION*OWNER*GROUPID'                      
                  UTKNLEN ='UTOKEN*RTOKEN*LENGTH'                       
                  UTKNNETW='REMOTE*NETWORK*NAME'                        
                  UTKNPOE ='PORT*OF*ENTRY'                              
                  UTKNPOEX='PORT OF ENTRY*CLASS*INDEX'                  
                    Decimal values not (yet?) decoded by MXG:           
                    TOKTERM  EQU   1  TERMINAL CLASS                    
                    TOKCON   EQU   2  CONSOLE  CLASS                    
                    TOKJESI  EQU   3  JESINPUT CLASS                    
                    TOKAPORT EQU   4  APPCPORT CLASS                    
                    TOKSERV  EQU   5  SERVAUTH CLASS                    
                  UTKNSCL ='SECLABL'                                    
                  UTKNSGRP='SUBMITTING*GROUPID'                         
                  UTKNSNOD='SUBMITTER*NODE'                             
                  UTKNSTYP='SESSION*TYPE'                               
                    Decimal values decoded by MGUTKNT format:           
                      1=' 1:SYSTEM ADDRESS SPACE'                       
                      2=' 2:COMMAND'                                    
                      3=' 3:CONSOLE OPERATOR'                           
                      4=' 4:STARTED PROCEDURE'                          
                      5=' 5:MOUNT'                                      
                      6=' 6:TSO LOGON'                                  
                      7=' 7:INTERNAL READER BATCH JOB'                  
                      8=' 8:EXECUTION BATCH MONITOR'                    
                      9=' 9:RJE OPERATOR'                               
                     10='10:NJE OPERATOR'                               
                     11='11:VERIFYX UNKNOWN USER TOKEN'                 
                     12='12:EXTERNAL READER BATCH JOB'                  
                     13='13:RJE BATCH JOB'                              
                     14='14:NJE BATCH JOB'                              
                     15='15:NJE SYSOUT'                                 
                     16='16:EXTERNAL XBM'                               
                     17='17:RJE XBM'                                    
                     18='18:NJE XBM'                                    
                     19='19:APPCTP'                                     
                     20='20:OMVSSRV'                                    
                     21='21:IPLOOKUP VALUE'                             
                  UTKNSUSR='SUBMITTING*USERID'                          
                  UTKNUSER='SESSION*OWNER*USERID'                       
                  UTKNVERS='UTOKEN*RTOKEN*VERSION*NUMBER'               
                  UTKNXNOD='EXECUTION*NODE'                             
               APAR OA25068 is the Parent APAR for APAR OA25205, and    
               this change supports both APAR numbers.                  
                                                                        
Change 26.186  WPS did not tolerate a FORMAT statement between an END   
VMACVMXA       and an ELSE IF statement.  The FORMAT statement should   
Aug 18, 2008   normally have been prior to that END statement in MXG, so
               it was relocated to eliminate the WPS-only error.        
                                                                        
Change 26.185  Mostly zero observations in TMDBDB2 dataset, because no  
EXTMDDB2       one had use the TYPETMDB code to read the native Landmark
IMACTMDB       for DB2 records with TYPETMDB code since 2004.  Change   
VMACTMDB       22.121 corrected MXG handling of DB2 Rollup records for  
Aug 16, 2008   IBM DB2 SMF records, but that change had not been applied
               to the Landmark DB2 records.  This change removed the DO 
               group in EXTMDDB2 that deleted most observations, added  
               the logic that creates DB2PARTY='R' for rollups, and also
               removed the _TMDBVER macro that is no longer required, as
               only Version 4+ records now exist.                       
   Thanks to Charles Savikas, DCF, State of Florida, USA.               
                                                                        
Change 26.184  Circumvention for defective SMF 101 subtype 0 record from
VMACDB2        Landmark reconstructed SMF records.  Their error is in   
Aug 13, 2008   the QPAC segment, which caused INPUT STATEMENT EXCEEDED  
               error because the offsets to the "truncated" name fields 
               are less than the QPACLEN value, and the offset should   
               not have been populated, since the name fields are not   
               "truncated".  In addition, these fields prior to those   
               offsets are trashed, as the record contains character    
               text where these numbers are input (but since any text   
               is a valid PIB value, there was no error, only bad data  
               values in the DB2ACCP dataset):                          
                 QPACAWTK QPACAWTM QPACAWTN QPACAWTO QPACAWTQ           
                 QPACARNK QPACARNM QPACARNN QPACARNO QPACARNQ           
               The MXG circumvention detects the record is created by   
               Landmark rather than IBM (by the location of the Product 
               segment, which Landmark puts at the beginning of the     
               SMF record, while IBM puts it at the end), and the       
               data starting at QPACAWTK is not input, so the variables 
               listed above will be missing, rather than wrong, until   
               a correction is available from Landmark.                 
   Thanks to Howard Curtis, Progress Energy, USA.                       
                                                                        
Change 26.183  This change was rescinded by Change 27.039 as wrong.     
Aug 13, 2008   The QBAC and QTXA variables have always existed in the   
Mar 16, 2009   DB2ACCTP dataset in DB2 V8.1 or later. Change 27.039     
               restored those variables to the ASUMDB2P and TRNDDB2P    
               programs.  Mar 16, 2009.                                 
                                                                        
               Below is the original (AND INCORRECT) change text:       
               Summary and trending of DB2ACCTP Package Dataset revised.
ASUMDB2P       The QBACxxxx and QTXAxxxx variables are always missing in
TRNDDB2P       DB2ACCTP (ever since DB2 V7.1, which moved Package Data  
Aug 12, 2008   to IFCID 239 (SMF 101 Subtype 1) records, so they have   
               been removed from both ASUMDB2P and TRNDDB2P summaries.  
               They can be removed from your DB2ACCTP dataset, but I    
               can not remove them without risk of causing a failure    
               if any of your reports reference them in DB2ACCTP.       
               You can copy this macro definition into your IMACKEEP    
               member and they will no longer exist in your DB2ACCTP.   
                 MACRO _KDB2ACP                                         
                  QBACGET  QBACSWS  QBACRIO  QBACSEQ  QBACIMW  QBACLPF  
                  QBACDPF  QBACNGT  QBACSIO                             
                  QTXACHG  QTXACHUS QTXACLMT QTXACLNO QTXACLUN QTXADEA  
                  QTXADRNO QTXADRUN QTXAFLG1 QTXAILMT QTXAIRLM QTXALES  
                  QTXALEX  QTXALOCK QTXANPL  QTXANRUN QTXAPREC QTXAQRY  
                  QTXARLID QTXASLAT QTXASLMT QTXASLOC QTXASOTH QTXATIM  
                  QTXAUNLK                                              
                 %                                                      
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
Change 26.182  Support for MACRO4 INSYNC SMF user record creates new    
EXINSYDB       datasets:                                                
EXINSYDI          DATASET   DDDDDD    DESCRIPTION                       
EXINSYDS                                                                
EXINSYDU          INSYDB2   INSYNC    DB2                               
EXINSYZO          INSYDBDI  INSYNC    DB2 - D OR I                      
EXINSYZC          INSYDBDS  INSYNC    DB2 - SQL TEXT                    
EXINSYZF          INSYDBDU  INSYNC    DB2 - U                           
FORMATS           INSYZOS   INSYNC    ZOS                               
IMACINSY          INSYZOSC  INSYNC    ZOS FORMAT                        
TYPEINSY          INSYZOSF  INSYNC    ZOS SELECTION CRITERIA            
TYPSINSY       This is the first iteration and further investigation is 
VMACINSY       needed with the vendor, as there are invalid SMF records 
VMXGINIT       (the number of segments exceeds the physical record size)
Aug 13, 2008   and there are unexpected numerous duplicate records that 
               need to be investigated).                                
   Thanks to Josep Miquel Oliver, La Caixa, SPAIN.                      
                                                                        
Change 26.181  Accidentally skipped change number                       
   Thanks to Brent Turner, CitiGroup, USA.                              
                                                                        
Change 26.180 -The circumvention for invalid UWD record to avoid a USER 
ASMRMFV        ABEND, by skipping over it, is now permanent.            
Aug  8, 2008  -Warning RMFV106W was incorrectly issued, and CPD table   
               entries could be not-processed, but only if GEI records  
               were selected.  The SSH register pointer was not reloaded
               but now are.                                             
   Thanks to Jerry Urbaniak, Acxiom, USA.                               
                                                                        
Change 26.179  The typo in VMAC7072 that had a nine-character variable  
VMAC7072         ELSE IFAHONRPR=' ';                                    
Aug  8, 2008   is corrected to                                          
                 ELSE IFAHONPR=' ';                                     
               This does not cause an error with MXG's CONFIGV9, which  
               sets SAS option VALIDVARNAME=V7 to permit long names, but
               if the SAS option VALIDVARNAME=V6 is used, error message 
               VARIABLE NAMED IFAHONRPR CONTAINS MORE THAN 8 CHARACTERS 
               is printed.  The typo was introduced in MXG 26.03.       
   Thanks to Brian Cummings, Federal Reserve Information Technology USA 
                                                                        
Change 26.178  z/OS 1.9 changed length of RMF III ASI segment, adding   
VMACRMFV       eight bytes, which caused ASICNM (Service Class Name)    
Aug  8, 2008   and subsequent ASI variables to be wrong.  The added     
               eight bytes are now decoded and kept in ZRBSI as         
                 ASILMEMO='MEMORY*OBJECTS*ALLOCATED'                    
                 ASILPGSZ='LARGE PAGE*BYTES BACKED*IN REAL*STORE'       
               While ASILPGSZ is in pages in the raw record, MXG has    
               converted it to bytes and formatted it with MGBYTES to   
               display that size in KB/MB/etc.                          
   Thanks to Jerry Urbaniak, Acxiom, USA.                               
                                                                        
Change 26.177  Cleanup of MXG as a result of ITRM Dictionary build:     
ASUMTAPE      -ASUMTAPE: Dataset HELDMOUN was not deleted from //WORK.  
VMXGRMFI      -RMFINTRV: New RMFWKLRV dataset had these variables       
VMAC85           WKLDCPU WKLDHPT  WKLDIFA  WKLDIFE  WKLDIIP  WKLDRCT    
VMAC99           WKLDSRB WKLDTCB  WKLDZIE  WKLDZIP.                     
Aug  7, 2008   that are now FORMATed TIME12.2;                          
              -TYPE85RE: Variables R85BT R85MT R85RCDY R85TKN R85VT     
               were unlabeled.                                          
                  R85BT   ='BACKUP*TYPE'                                
                  R85MT   ='VOLUME*MEDIA*TYPE*OF FROM'                  
                  R85RCDY ='DAYS*SPECIFIED*FOR OBJECT*RECALL'           
                  R85TKN  ='VOLUME*LOCATION*TOKEN OF*FROM'              
                  R85VT   ='VOLUME*TYPE'                                
              -TYPE99: Variable S99BPDTM is FORMATted TIME12.3.         
   Thanks to Chris Weston, SAS ITRM Development, USA.                   
                                                                        
====== Changes thru 26.176 were in MXG 26.06 dated Aug  8, 2008=========
                                                                        
Change 26.176  First MXG 26.06 of Aug 6 worked fine on PCSAS but FORMATS
FORMATS        failed on z/OS with one specific line in MGTNGVN that is 
Aug  6, 2008   to be investigated with SAS Technical Support, but this  
               iteration split the line and the FORMATS member now does 
               successfully execute on z/OS and PC SAS.                 
   Thanks to Jerry Urbaniak, Acxiom, USA.                               
   Thanks to Christian Hodel, SWISScom, SWITZERLAND.                    
                                                                        
Change 26.175  Support for NMON BBBP configuration records creates new  
EXNMONBP       NMONBBBP dataset.  The LSCONF and LPARSTAT-I entries are 
IMACNMON       stored in variables BBBP001-BBBP047, with their labels   
VMACNMON       as the identifier of the item.                           
VMXGINIT                                                                
Aug 22, 2008                                                            
   Thanks to John Keenam, Boeing, USA.                                  
                                                                        
Change 26.174  First MXG 26.06's only.  TYPE99_1 DATASET NOT FOUND in   
TESTIBM2       JCLTEST8/JCLTEST9 because the TYPE99 code now writes to  
VMACNMON       //PDB (because the data must be deaccumulated) but the   
Aug  5, 2008   TESTIBM2 member had PROC PRINT/PROC MEANS that expected  
Aug  6, 2008   those data to be in the //WORK file.                     
              -NMONBBBP By list had ENDTIME, now has STARTIME.          
   Thanks to Mike Rounceville, Blue Cross Blue Shield of NC, USA.       
                                                                        
====== Changes thru 26.173 were in MXG 26.06 dated Aug  4, 2008=========
                                                                        
Change 26.173  Support for Omegamon Tivoli Data Warehouse (TDW) data for
EXSUSELC       z/Linux (SUSE 9.3) creates seven new datasets:           
EXSUSELE         DDDDDD  DATASET   Description                  Filename
EXSUSELI         SUSELC  SUSELCPU  SUSE LINUX CPU               SUSELCPU
EXSUSELN         SUSELE  SUSELNET  SUSE LINUX NETWORK           SUSELNET
EXSUSELP         SUSELI  SUSELIOE  SUSE LINUX IO EXTERNAL       SUSELIOE
EXSUSELS         SUSELN  SUSELNFS  SUSE LINUX NFS STATISTICS    SUSELNFS
EXSUSELV         SUSELP  SUSELPRO  SUSE LINUX PROCESS           SUSELPRO
IMACSUSE         SUSELS  SUSELSWA  SUSE LINUX SWAP RATE         SUSELSWA
TYPESUSE         SUSELV  SUSELVMS  SUSE LINUX VM STATS          SUSELVMS
TYPSSUSE       Comments in member VMACSUSE show how to set up the       
VMACSUSE       FILENAME statements and then %INCLUDE SOURCLIB(TYPSSUSE);
VMXGINIT                                                                
Aug  4, 2008                                                            
   Thanks to Jim Flanagan, ISO, USA.                                    
                                                                        
====== Changes thru 26.172 were in MXG 26.06 dated Aug  1, 2008=========
                                                                        
Change 26.172 -Support for new NSM data fields NTCACHE, NTLOGICALDISK,  
FORMATS        NTMEMORY, NTPAGING FILE, NTPHYSICAL DISK, NTPROCESS and  
VMACTNG        NTSYSTEM datasets.                                       
EXTNT133      -Support for new VMwares objects by Active Dictionary and 
EXTNT134       VMware Virtual Center 2.5 Servers, VMware ESX 3.5.5 host 
EXTNT135       servers and VM guest servers creates new datasets:       
EXTNT136          TNT133    NT133     NSM CA INTERFACE GROUP            
EXTNT137          TNT134    NT134     NSM VMWARE VC CLUSTER             
EXTNT138          TNT135    NT135     NSM VMWARE VC DATASTORE           
EXTNT139          TNT136    NT136     NSM VMWARE VC ESX HOST            
EXTNT139          TNT137    NT137     NSM VMWARE VC ESX HOST C          
EXTNT140          TNT138    NT138     NSM VMWARE VC ESX HOST D          
EXTNT141          TNT139    NT139     NSM VMWARE VC ESX HOST M          
EXTNT142          TNT140    NT140     NSM VMWARE VC ESX HOST N          
EXTNT143          TNT141    NT141     NSM VMWARE VC EXX HOST P          
EXTNT144          TNT142    NT142     NSM VMWARE VC RESOURCE P          
EXTNT145          TNT143    NT143     NSM VMWARE VC SERVER              
EXTNT146          TNT144    NT144     NSM VMWARE VC VM                  
EXTNT147          TNT145    NT145     NSM VMWARE VC VM CPU              
EXTNT148          TNT146    NT146     NSM VMWARE VC VM DISK             
Aug  2, 2008      TNT147    NT147     NSM VMWARE VC VM MEMORY           
Aug  4, 2008      TNT148    NT148     NSM VMWARE VC VM NETWORK          
Aug  6, 2008      TNT149    NT149     NSM AD EVENTS                     
Aug 24, 2008      TNT150    NT150     NSM AD PERFORMANCE                
                  TNT151    NT151     NSM AD UTILIZATION                
                  TNT152    NT152     NSM DNS                           
                  TNT153    NT153     NSM FILEREPLICACONN               
                  TNT154    NT154     NSM FILEREPLICASET                
                  TNT155    NT155     NSM NTDS                          
               Added Aug 24 in 26.07:                                   
                  TNT156    NT156     NSM VMWARE VC COMPUTE RE          
   Thanks to Michael Kynch, International Paper, USA.                   
                                                                        
Change 26.171  Protection so that ANALDB2R doesn't fail with USER=PDB.  
ANALDB2R       While USER=PDB is dis-recommended for BUILDPDB, and has  
VMXGINIT       caused errors with other programs, this change protects  
Aug  2, 2008   but ONLY for ANALDB2R. DO NOT USE OPTIONS USER=PDB.      
   Thanks to Herbert Sweeney, Verizon Data Services Inc, USA.           
                                                                        
Change 26.170  Circumvention for zero length VBS record in OPC Log file.
VMACOPC                                                                 
Jul 31, 2008                                                            
   Thanks to Andrew Davis, Produban, ENGLAND.                           
                                                                        
Change 26.169  Circumvention for 24 byte PRCAPM segment.                
VMACXAM                                                                 
Jul 29, 2008                                                            
   Thanks to Tony Curry, BMC, USA.                                      
                                                                        
Change 26.168  Support for DB2 SMF 102 IFCID=342 adds these variables:  
VMAC102          QW0342TY ='DATABASE TYPE'                              
Jul 29, 2008     QW0342AT='AGENT TOKEN'                                 
                 QW0342CI='CURRENT*INDEX*SPACE*USAGE'                   
                 QW0342CT='CURRENT*TABLES*SPACE*USAGE'                  
                 QW0342DB='DATABASE*DBID'                               
                 QW0342MI='MAXIMUM*INDEX*SPACE*USAGE'                   
                 QW0342MT='MAXIMUM*TABLES*SPACE*USAGE'                  
                 QW0342PS='TABLE/INDEX*SPACE*PSID'                      
                 QW0342PT='PARENT TOKEN'                                
   Thanks to Steven Olmstead, Northwestern Mutual, USA.                 
                                                                        
Change 26.167  Debugging version for invalid UWD record segments will   
ASMRMFV        avoid the USER ABEND and write defective records to the  
Jul 29, 2008   //RMFSKIP DD (which needs to be added). ASMRMFVX, delete.
   Thanks to Robert Carballo, Office Depot, USA.                        
                                                                        
Change 26.166  Support for AS/400 Version 6 Release 1 adds 3 variables  
VMACQACS       to the QAPMDISK dataset:                                 
Jul 29, 2008      DSSECT  ='DISK*UNIT*SECTOR*SIZE'                      
                  DSIOARN ='STORAGE*ADAPTER*RESOURCE*NAME'              
                  DSSRLN  ='DISK*UNIT*SERIAL*NUMBER'                    
               and new variable to QAPMCONF dataset:                    
                  GDESXP  ='PM*AGENT*DATA*OBTAINED?'                    
   Thanks to David Bixler, FISERV, USA.                                 
                                                                        
Change 26.165  A new "RMF Interval - WORKLOAD " dataset RMFWLKRV is now 
EXRMFWKL       also created when RMFINTRV is created; the new dataset   
VMXGRMFI       contains only the workload variables from RMF72, but     
Jul 26, 2008   with one observation per workload, and only one set of   
               variables created, making workload analysis much easier. 
               The RMFWKLRV dataset has the same interval duration that 
               you chose for your RMFINTRV dataset; these are the       
               variables and labels in the new PDB.RMFWKLRV dataset:    
                  DURATM      DURATION*OF*INTERVAL                      
                  STARTIME    START OF*INTERVAL                         
                  SYSNAME     SYSNAME*FROM*IEASYSXX                     
                  SYSPLEX     SYSPLEX*FROM*IEASYSXX                     
                  SYSTEM      SYSTEM*ID                                 
                  WKLDACTV    WORKLOAD*ACTIVE*TIME                      
                  WKLDCPU     WORKLOAD*CPU*TIME                         
                  WKLDDESC    WORKLOAD*DESCRIPTION                      
                  WKLDEXCP    WORKLOAD*EXCP*RATE                        
                  WKLDFRTM    WORKLOAD*FRAME*TIME                       
                  WKLDHPT     WORKLOAD*HPT*TIME                         
                  WKLDID      WORKLOAD*ID                               
                  WKLDIFA     WORKLOAD*IFA*PROCESSOR*TIME               
                  WKLDIFE     WORKLOAD*IFA*ELIGIBLE*PROCESSOR*TIME      
                  WKLDIIP     WORKLOAD*IIP*TIME                         
                  WKLDIOTM    WORKLOAD*IO*CONNECT*TIME                  
                  WKLDMEMR    WORKLOAD*MEMORY*USAGE                     
                  WKLDPGIN    WORKLOAD*PAGEIN*RATE                      
                  WKLDRCT     WORKLOAD*RCT*TIME                         
                  WKLDRESD    WORKLOAD*RESIDENT*TIME                    
                  WKLDRESP    WORKLOAD*AVG*RESPONSE                     
                  WKLDSERV    WORKLOAD*SERVICE*UNITS                    
                  WKLDSRB     WORKLOAD*SRB*TIME                         
                  WKLDSVRT    WORKLOAD*SERVICE*RATE                     
                  WKLDSWAP    WORKLOAD*SWAP*RATE                        
                  WKLDTCB     WORKLOAD*TCB*TIME                         
                  WKLDTRAN    WORKLOAD*TRANSACTIONS                     
                  WKLDTRRT    WORKLOAD*TRANSACTION*RATE                 
                  WKLDWKST    WORKLOAD*WORKING*SET                      
                  WKLDZIE     WORKLOAD*ZIP*ELIGIBLE*PROCESSOR*TIME      
                  WKLDZIP     WORKLOAD*ZIP*PROCESSOR*TIME               
   Thanks to Don Goulden, SAS ITRM Development, USA.                    
                                                                        
Change 26.164  For the JES3 PDB, i.e., BUILDPD3, variable JOBCLASS was  
BUIL3005       not kept from the SMF 30 subtype 1 and subtype 5, causing
Jul 26, 2008   it to be blank in some cases.  It is now kept in both.   
Aug 12, 2008   Additionally, it is now correctly kept as 8-bytes in the 
               PDB.SMFINTRV dataset, as well as being non-blank.        
   Thanks to Keving McCandlish, IBM Global Services, USA.               
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.163  Support for TPF PUT22 changes, and corrections to current
VMACTPF        code.                                                    
Jul 21, 2008   New variables added by PUT22:                            
               Dataset TPFDX:                                           
                 DXNSDIN  DXLMTRKS DXLMRSTT  DXTSWB   DXMODL   DXCRYP   
               Dataset TPFSX:                                           
                 SX4KFRMS                                               
               Corrections:                                             
               -The first SLOTNR was always re-read for all eight slots,
                so dataset TPFMG never had data from the 2nd-8th slots. 
               -STARTIME was not populated for TPFMG dataset.           
               -The INPUT of SPXDISA1-4 and SPXRTRA1-4 were relocated to
                the end of the SPX record; those variables were always  
                wrong until now.                                        
   Thanks to Bob Wilcos, EDS, USA.                                      
                                                                        
Change 26.162  Reserved Change Number.                                  
Jul 21, 2008                                                            
                                                                        
Change 26.161  New variable BESKEY='TAPE*ENCRYPTION*KEY*INDEX' is added 
TYPETMS5       to dataset TMS to identify CA-1 encrypted tapes. This is 
VMACTMS5       a reference/index into the CA Tape Encryption Data base  
Jul 21, 2008   where the actual keys are stored, and it allows TMS to   
               determine when a key is no longer needed and can be      
               retired; TMS scans for non-scratch tapes that reference  
               a key, and if none are found for a specific index, that  
               key can then be safely retired.                          
   Thanks to Jeff Harder, Indiana Farm Bureau, USA.                     
                                                                        
Change 26.160  Support for Omegamon User SMF records in SMF 112.        
VMAC112        See Change 25.257, which replaced this text.             
VMACOMCI                                                                
Jul 20, 2008                                                            
   Thanks to Art Cuneo, Blue Cross Blue Shield of Illinois, USA.        
                                                                        
Change 26.159  TYPE77 QUEUE1 thru QUEUE4 were wrong and could be GT 100.
VMAC77         The correct denominator TOT77QUE=SUM OF (QUEUE1-QUEUE4)  
Aug 13, 2008   is now used to calculate those percentages, and is kept. 
               The calculation of Average Queue Length now matches IBMs 
               reports, using AVG77QUE=WAITS/TOT77QUE, where WAITS is   
               SMF77AQL, the total waiting requests, and new TOT77QUE   
               is the total number of waiters.                          
               New variable RNAMEHEX is the printable hex value of the  
               first MINORQCB bytes of RNAME, so those RNAMEs that have 
               hex values can be seen when printed as plain text.       
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
Change 26.158  Cosmetic, but confusing.  PDB.TYPE70 offline zip/zap     
VMAC7072       engines had CAIxx='20'x instead of '00'X, had PCTIFBYx   
Jul 17, 2008   and PCTZIPBx both 100%, had IFAWAITx and ZIPWAITx both 0,
               and IFAWAITM and ZIPWAITM were also both zeros if all of 
               the zIIP and zAAP engines were offline during interval.  
               The IFAUPTM and ZIPUPTM were both correct (missing) when 
               all of these engines were offline. the NRIFAS and        
               NRZIPCPU variables still count the number of engines     
               available to this MVS system, even when all are offline. 
   Thanks to Christine DeClercq, Dexia, BELGIUM.                        
                                                                        
Change 26.157  Change 26.115 made consistent the BY lists for RMF sorts,
MONTHASC       but only for the first three common variables.  The      
MONTHBL3       TYPE70 sort order was still inconsistent between BUILDPDB
MONTHBLD       and WEEKBLD/MONTHBLD.  Now, those combining jobs all have
MONTHBLS       been updated to match the BUILDPDB order, which is:      
MONTHDSK         SYSPLEX SYSTEM SYSNAME SMF70GIE GMTOFFTM STARTIME      
MONTHWEK                                                                
WEEKBL3D                                                                
WEEKBL3T                                                                
WEEKBLD                                                                 
WEEKBLDD                                                                
WEEKBLDT                                                                
Jul 15, 2008                                                            
   Thanks to Tom Kelman, Commerce Bank of Kansas City, USA.             
                                                                        
Change 26.156  Hex variable FSRDORG is decoded in new character variable
VMACHSM        FSRDSORG using the same logic used for DCOLLECT, except  
Jul 15, 2008   that DCOLLECT provides bits to identify PDSE vs PDS.     
   Thanks to James J. Byrnes, ???, ???                                  
                                                                        
Change 26.155  Support for SMF 99 Subtype 11 (Group Capacity Limits)    
EXTY99BG       creates two new datasets:                                
EXTY99BS         DDDDDD  DATASET   SUBTYPE  DESCRIPTION                 
IMAC99           TY99BG  TYPE99BG  99-11    CAPACITY GROUP              
VMAC99           TY99BS  TYPE99BS  99-11    SERVICE DATA                
VMXGINIT                                                                
Jul 23, 2008                                                            
   Thanks to Scott Chapman, American Electric Power,USA.                
                                                                        
Change 26.154  If an offline LPARNUM preceded this PARTISHN, SMF70LAC   
VMAC7072       was missing in PDB.TYPE70PR and PDB.ASUM70LP/PDB.ASUMCELP
Jul 10, 2008   and the corresponding LPnLAC in PDB.ASUM70PR/PDB.ASUMCEC.
   Thanks to Barry T. Mueller, RiteAid, USA.                            
                                                                        
Change 26.153 -Using ANALRMFR from MXG 26.01+ with PDB=PDB where that   
ANALRMFR       input PDB was created with an earlier MXG version caused 
Jul 18, 2008   a series of error messages that variables suffixed Y, Z, 
               ZA ... are missing; those new variables for CPs up to 64 
               were expected by ANALRMFR; rerun with PDB=SMF to correct.
              -ERROR: NO DATA SET OPEN TO LOOK UP VARIABLES corrected;  
               caused by hardcoded TYPE70SP instead of _WTY70SP.        
              -Updated to support 64 CP engines.                        
   Thanks to Bill Cheng, Toyota, USA.                                   
                                                                        
Change 26.152  New utility to remove duplicate SMF records from VBS data
UNDUPSMF       file.                                                    
Jul  9, 2008                                                            
   Thanks to Larry Stahl, IBM Global Services, USA.                     
                                                                        
Change 26.151  Support for APAR OA24416, which corrects overflow in     
VMAC28         GBLCRPSA by adding a four byte "high part" at the end of 
Jul  8, 2008   the 'D6'x NPM record.                                    
                                                                        
Change 26.150  A typo caused the values of three SPG variables to be    
VMACRMFV       one tenth of their true value; the three variables       
Jul  6, 2008   SPGTOTSP SPGFRESP SPGLGBLK are now multiplied by the     
               correct value of 1048576 instead of 104856.              
   Thanks to Roger Rush, Navistar, USA.                                 
                                                                        
Change 26.149  Protection so that if SMF 21s and TYPETMNT were not added
UTILBLDP       ASUMTAPE, ASUMTMNT and ASUMTALO are NOT included, but if 
Jul  6, 2008   TYPETMNT is created, the ASUMTMNT and ASUMTALO are.      
   Thanks to Charles Savikas, State of Florida, USA.                    
                                                                        
Change 26.148  Enhancement to ASMTAPEE/MXGTMNT's capture of SYSLOG info,
ASMTAPEE       now at ML-43 with this change, some revisions to ASUMTAPE
ASUMTAPE       processing logic that improves the accuracy of several   
VMACTMNT       SYSLOG timestamps, and the creation of new SYLVTIME,     
Jul  6, 2008   which is then used to improve the accuracy of variables  
               BEGTMNT, ENDTMNT, TOTMNTTM and TAPMTDTM values, some     
               variable labels were revised, and a new MXG Technical    
               Note to document what can still be missed by MXGTMNT.    
                                                                        
              -ML-43 of ASMTAPEE/MXGTMNT now captures the IEF233D mount 
               message in its subtype 8 records (output in TYPESYMT).   
               The IEF233D message is issued for non-ATL, non-VTS first 
               volume mounts from dynamic allocations that don't specify
               the DEFER option.  This message should have been in the  
               initial list (IEF233A, IEC501A, IEC501E) of mount events,
               but was never observed until now, perhaps because it is  
               relatively infrequent.                                   
              -ASUMTAPE's logic revises how SYLMTIME, the SYSLOG Mount  
               time is populated; previously, if there was no SYSLOG    
               mount event, the time of a SYSLOG verify message was used
               to populate SYLMTIME, but now, only mount event messages,
               IEF233A, IEF233D, IEC501A, or IEC501E, are used.         
              -New logic in ASUMTAPE instead creates variable SYLVTIME, 
               SYSLOG Verify time, using the maximum time value of he   
               IECTMS6, IECTMS9, or IEC7095I SYSLOG messages.           
              -And SYLVTIME is now used in the creation of the ENDTMNT  
               mount event time variable in ASUMTAPE.                   
              -The logic for BEGTMNT, ENDTMNT, TOTMNTTM and TAPMNDTM are
               corrected, revised, and re-labeled:                      
                 BEGTMNT='BEGIN TIME*OF TAPE*MOUNT EVENT'               
                    IF SYLMTIME GT 0 and TMNTTIME GT 0 THEN             
                       BEGTMNT=MIN(TMNTTIME,SYLMTIME);                  
                    ELSE iF SYLMTIME GT 0 THEN BEGTMNT=SYLMTIME;        
                    ELSE IF TMNTTIME GT 0 THEN BEGTMNT=TMNTTIME;        
                    ELSE                       BEGTMNT=.;               
                    It is the minimum timestamp of the start of         
                    the mount event, from SYSLOG or MXGTMNT.            
                 ENDTMNT='END TIME*OF TAPE*MOUNT EVENT'                 
                    IF SYLVTIME GT 0 AND TENDTIME GT 0 THEN             
                       ENDTMNT=MAX(TENDTIME,SYLVTIME);                  
                    ELSE IF SYLVTIME GT 0 THEN ENDTMNT=SYLVTIME;        
                    ELSE IF TENDTIME GT 0 THEN ENDTMNT=TENDTIME;        
                    ELSE                       ENDTMNT=.;               
                    It is the maximum verification time or mount        
                    end, from SYSLOG or MXGTMNT.                        
                 TOTMNTTM='TIME IT TOOK*TO MOUNT*TAPE VOLUME'           
                    IF ENDTMNT  GT 0 AND BEGTMNT  GT 0 THEN             
                       TOTMNTTM=ENDTMNT-BEGTMNT;                        
                    It is the duration the job was delayed for          
                    this tape mount.                                    
                 TAPMTDTM='DURATION*TAPE WAS*MOUNTED*TO DISMOUNT'       
                    IF (SYLKTIME GT 0 OR TY21TIME GT 0) AND             
                       BEGTMNT GT 0 THEN                                
                      TAPMTDTM=MAX(SYLKTIME,TY21TIME)-BEGTMNT;          
                    It is the duration that the tape volume was         
                    mounted on the device for this mount event.         
              -VMACTMNT: New variables, decoded bits from TMNTFLAG,     
               were added to make debugging a little easier:            
                  TMNTMSGI='MOUNT MESSAGE ISSUED'                       
                  TMNTJOBI='JOB*ENDED*EVENT'                            
                  TMNTJOBC='JOB*CANCELLED*BY*OPERATOR'                  
   Thanks to Yves Cinq-Mars, IBM Global Services, CANADA.               
                                                                        
Change 26.147  Cosmetic.  The LPnNRPRC variables that count the number  
VMXG70PR       of CP engines in the ASUM70PR and ASUMCEC datasets are   
Jul  2, 2008   now FORMATted 6.1 to match the LPARCPUS format that was  
               made in Change 26.003.                                   
   Thanks to Stan Dylnicki, Royal Bank of Canada, CANADA                
                                                                        
Change 26.146  Support for VXVNDSES dataset for zVM Domain 8 record 1.  
FORMATS                                                                 
VMACVMXA                                                                
Jul  2, 2008                                                            
   Thanks to Sharon Moir, JPMorgan Chase Bank, USA.                     
                                                                        
Change 26.145  Support for BMC Mainview for CICS CMR record CMRTYPE=109.
VMACMVCI       The CMRTYPE=109 records are written for ABENDs; only the 
Jul  2, 2008   CMRTYPE=110 records were previously processed by MXG.    
               Variable CMRTYPE was added to both datasets as well.     
   Thanks to David Edge, Thompson Reuters, USA.                         
                                                                        
Change 26.144  The example ftp instructions for sending data files were 
FTPSMF         all corrected; the syntax /yourname.xxx are all now      
FTPVB          changed to the syntax of just yourname.xxx; that leading 
JCLFTP         slash tried to write to the root directory, which was not
NEWSLTRS       the desired target destination.                          
SENDDATA                                                                
Jul  1, 2008                                                            
   Thanks to Trevor Ede, EDS, NEW ZEALAND.                              
                                                                        
Change 26.143  The Virtualization Engine TS7700 Statistical data in the 
VMACBVIR       MXG BVIR32 dataset was trashed; these 4 one-byte fields  
Jun 30, 2008   were not INPUT, causing subsequent variables to be out   
               of alignment:                                            
                 DVAVAD00='00*AVAILABLE*PHYSICAL*DEVICES'               
                 DVAVAD01='01*AVAILABLE*PHYSICAL*DEVICES'               
                 DVAVAD02='02*AVAILABLE*PHYSICAL*DEVICES'               
                 DVAVAD03='03*AVAILABLE*PHYSICAL*DEVICES'               
   Thanks to Josep Miquel Oliver, La Caixa, SPAIN.                      
                                                                        
Change 26.142  New variables added to DCOLLECT dataset DCOLDSET:        
VMACDCOL          DCDCKDSI='CHECKPOINT*DS*INDICATED?'                   
Jun 30, 2008      DCDCPOIT='CHECKPOINTED*DATASET?'                      
                  DCDGT64K='GT 64K*TRACK*DATASET?'                      
              and new values created for DCDDSORG for HFS and PDSE;     
              unfortunately, DCEDSORT is only three bytes, so the text  
              value for PDSE is set to PDS"                             
                  DCDDSORG='HFS'  for HFS dataset                       
                  DCDDSORG='PDS'  for PDSE dataset                      
              These two values are set based on IBM support's reply, as 
              only the bits are documented in the IDCDOUT DSECT, but not
              the logic:                                                
          IF DCDPDSE='Y' AND DCDPDSEX=' ' THEN DCDDSORG='PDS'; /*PDSE*/ 
          IF DCDPDSE='Y' AND DCDPDSEX='Y' THEN DCDDSORG='HFS'; /*HFS*/  
              However, there are several hundred DCOLDSET observations  
              that have DCDDSORG blank, because the three flag bytes    
              whose bits are used to define DCDDSORG, MXG variables     
              DCDSORG1, DCDSORG2 and DCDFLAG3, all contain hex zeroes;  
              a new query back to DCOLLECT technical support is raised. 
                These blank values are believed to be from datasets     
                that were allocated but never opened.                   
   Thanks to Trevor Ede, EDS, NEW ZEALAND.                              
                                                                        
Change 26.141  CICS STID=74 (SMF 110 Subtype 2 Statistics) length of 228
VMAC110        was incorrectly documented in DFHMQGDS, causing MXG to   
Jun 30, 2008   print ERROR (NEW DATA) SKIPPED message on the log.  But, 
               MXG's INPUT was off by 4 bytes (Queue Manager is only 4),
               The INPUT is corrected, the extra reserved bytes are now 
               skipped, that ERROR message is now a WARNING message, and
               dataset CICIMQ (CICS MQ STATISTICS) is now corrected.    
   Thanks to Ray Dunn, CIGNA, USA.                                      
   Thanks to Murray Town, Suncorp, AUSTRALIA.                           
   Thanks to MP Welch, SPRINT, USA.                                     
   Thanks to David J Schumann, Blue Cross of Minnesota, USA.            
                                                                        
====== Changes thru 26.140 were in MXG 26.05 dated Jun 18, 2008=========
                                                                        
Change 26.140  Example analysis of DB2 Package resources from DB2ACCTP. 
ANALPKGS                                                                
Jun 17, 2008                                                            
   Thanks to Myles M. Reed, NS Corp, USA.                               
                                                                        
Change 26.139  MXG's DOCVER and DOCVERnn members are limited to 72 bytes
UTILXRF1       per line, which permitted only 8-byte variable names; MXG
UTILVREF       now creates some datasets with variable names longer than
Jun 17, 2008   8-bytes, so the DOCVER and DOCVERnn members are revised; 
               if the length of the variable is more than 8 bytes, the  
               variable name is printed on a separate line.  SAS itself 
               limits variable names to 32 characters.                  
                                                                        
Change 26.138  EKC's EFT/R FIRECALL SMF 80 record was changed, causing  
VMAC80A        INPUT STATEMENT EXCEEDED RECORD length, because MXG      
Jun 17, 2008   didn't expect the changed record.                        
   Thanks to Yaohua Hu, ISO, USA.                                       
                                                                        
Change 26.137  For QA testing; setting TAPENGN to V9SEQ/V8SEQ is now    
VMXGINIT       only done for MXG under z/OS; MONTHBLD died in QA tests  
Jun 17, 2008.  because V9SEQ does not exist in ASCII versions of SAS.   
                                                                        
Change 26.136 -Variable QW0119GP, CURRENT GET PAGES, added to T102S199. 
VMACDB2       -Variable QW0225BB was mis-located in the MXG Input, and  
VMAC102        should not have been converted to bytes, it is blocks.   
Jun 17, 2008   Both VMACDB2 and VMAC102 process the IFCID=225 segment.  
   Thanks to Steve Wood, DST Systems Inc, USA.                          
                                                                        
Change 26.135  ASMTAPEE ML-42 backs out the incorrect JOBname that was  
ASMTAPEE       added in ML-41. Change 26.128 revised MXG TYPETMNT code  
Jun 16, 2008   to use JOB from the SYSLOG message text, while we still  
               try to find the location of that second JOB name.        
                                                                        
                                                                        
Change 26.134  Cosmetic change; test for length remaining for optional  
IMACICRD       DFHRMI segment for CICS/TS 3.2 added for length 96.      
Jun 16, 2008                                                            
   Thanks to Paul C. Gordon, Bank of America, USA.                      
                                                                        
Change 26.133  Complete rewrite of MXG support for CA SYSVIEW, replacing
EXSVEV01       the partial support (2005) in TYPESYSV and TYPESYSI.     
EXSVEV02       The new support now creates seventy-four datasets:       
EXSVEV03                                                                
EXSVEV04          DDDDDD     Dataset   Description                      
EXSVEV05           token      Name                                      
EXSVEV06                                                                
EXSVEV07          SVEV01     SV01EV01  SVEV01: SYSVIEW AUDIT 01 NOOP    
EXSVEV08          SVEV02     SV01EV02  SVEV02: SYSVIEW AUDIT 02 START   
EXSVEV09          SVEV03     SV01EV03  SVEV03: SYSVIEW AUDIT 03 SHUTDOWN
EXSVEV10          SVEV04     SV01EV04  SVEV04: SYSVIEW AUDIT 04 SESSION 
EXSVEV11          SVEV05     SV01EV05  SVEV05: SYSVIEW AUDIT 05 SESSION 
EXSVEV12          SVEV06     SV01EV06  SVEV06: SYSVIEW AUDIT 06 COMMAND 
EXSVEV13          SVEV07     SV01EV07  SVEV07: SYSVIEW AUDIT 07 COMMAND 
EXSVEV14          SVEV08     SV01EV08  SVEV08: SYSVIEW AUDIT 08 THRESHOL
EXSVEV15          SVEV09     SV01EV09  SVEV09: SYSVIEW AUDIT 09 STATE MO
EXSVEV16          SVEV10     SV01EV10  SVEV10: SYSVIEW AUDIT 10 MONITOR 
EXSVEV17          SVEV11     SV01EV11  SVEV11: SYSVIEW AUDIT 11 ASID ACT
EXSVEV18          SVEV12     SV01EV12  SVEV12: SYSVIEW AUDIT 12 CONSOLE 
EXSVEV19          SVEV13     SV01EV13  SVEV13: SYSVIEW AUDIT 13 WEB MQ C
EXSVEV20          SVEV14     SV01EV14  SVEV14: SYSVIEW AUDIT 14 IMS COMM
EXSVEV21          SVEV15     SV01EV15  SVEV15: SYSVIEW AUDIT 15 CICS CEM
EXSVEV22          SVEV16     SV01EV16  SVEV16: SYSVIEW AUDIT 16 DSN SERV
EXSVEV23          SVEV17     SV01EV17  SVEV17: SYSVIEW AUDIT 17 LPA MODI
EXSVEV24          SVEV18     SV01EV18  SVEV18: SYSVIEW AUDIT 18 SVCTABLE
EXSVEV25          SVEV19     SV01EV19  SVEV19: SYSVIEW AUDIT 19 SUBSYS M
EXSVEV26          SVEV20     SV01EV20  SVEV20: SYSVIEW AUDIT 20 PPT MODI
EXSVEV27          SVEV21     SV01EV21  SVEV21: SYSVIEW AUDIT 21 WTOR REP
EXSVEV28          SVEV22     SV01EV22  SVEV22: SYSVIEW AUDIT 22 LOGSTREA
EXSVEV29          SVEV23     SV01EV23  SVEV23: SYSVIEW AUDIT 23 LOGSTREA
EXSVEV30          SVEV24     SV01EV24  SVEV24: SYSVIEW AUDIT 24 PRODUCT 
EXSVEV31          SVEV25     SV01EV25  SVEV25: SYSVIEW AUDIT 25 LINKSET 
EXSVEV32          SVEV26     SV01EV26  SVEV26: SYSVIEW AUDIT 26 LINKLIST
EXSVEV33          SVEV27     SV01EV27  SVEV27: SYSVIEW AUDIT 27 STORAGE 
EXSVEV34          SVEV28     SV01EV28  SVEV28: SYSVIEW AUDIT 28 AMRF ACT
EXSVEV35          SVEV29     SV01EV29  SVEV29: SYSVIEW AUDIT 29 ESRTABLE
EXSVEV36          SVEV30     SV01EV30  SVEV30: SYSVIEW AUDIT 30 TSOTABLE
EXSVEV37          SVEV31     SV01EV31  SVEV31: SYSVIEW AUDIT 31 REGPROD 
EXSVEV38          SVEV32     SV01EV32  SVEV32: SYSVIEW AUDIT 32 DUMPDS M
EXSVEV39          SVEV33     SV01EV33  SVEV33: SYSVIEW AUDIT 33 CICSTRAN
EXSVEV40          SVEV34     SV01EV34  SVEV34: SYSVIEW AUDIT 34 CICS THR
EXSVEV41          SVEV35     SV01EV35  SVEV35: SYSVIEW AUDIT 35 CICS STA
EXSVEV42          SVEV36     SV01EV36  SVEV36: SYSVIEW AUDIT 36 MQ QUEUE
EXSVEV43          SVEV37     SV01EV37  SVEV37: SYSVIEW AUDIT 37 USER EVE
EXSVEV44          SVEV38     SV01EV38  SVEV38: SYSVIEW AUDIT 38 MQ CHAN 
EXSVEV45          SVEV39     SV01EV39  SVEV39: SYSVIEW AUDIT 39 CICS TS 
EXSVEV46          SVEV40     SV01EV40  SVEV40: SYSVIEW AUDIT 40 SET EXTN
EXSVEV47          SVEV41     SV01EV41  SVEV41: SYSVIEW AUDIT 41 SET GRAN
EXSVEV48          SVEV42     SV01EV42  SVEV42: SYSVIEW AUDIT 42 CICS STA
EXSVEV49          SVEV43     SV01EV43  SVEV43: SYSVIEW AUDIT 43 CICS SHU
EXSVPLOT          SVEV44     SV01EV44  SVEV44: SYSVIEW AUDIT 44 DATA SET
EXSVTHRE          SVEV45     SV01EV45  SVEV45: SYSVIEW AUDIT 45 TASK STA
EXSVSTAT          SVEV46     SV01EV46  SVEV46: SYSVIEW AUDIT 46 TASK STO
EXSVCEXC          SVEV47     SV01EV47  SVEV47: SYSVIEW AUDIT 47 JES2 JOB
EXSVTSUM          SVEV48     SV01EV48  SVEV48: SYSVIEW AUDIT 48 JES2 OUT
EXSVTRAN          SVEV49     SV01EV49  SVEV49: SYSVIEW AUDIT 49 JES2 OUT
EXSVPROG          SVPLOT     SV02PLOT  SVPLOT: SYSVIEW PLOT             
EXSVFILE          SVTHRE     SV08THRE  SVTHRE: SYSVIEW THRESHOLD EXCEPTI
EXSVTMPS          SVSTAT     SV09STAT  SVSTAT: SYSVIEW STATE EXCEPTION  
EXSVTDTA          SVCEXC     SV24CEXC  SVCEXC: SYSVIEW EXCEPTION        
EXSVABND          SVTSUM     SV25TSUM  SVTSUM: SYSVIEW CICS TRANS SUMMAR
EXSVEXCE          SVTRAN     SV27TRAN  SVTRAN: SYSVIEW CICS TRANSACTION 
EXSVMEMP          SVPROG     SV27PROG  SVPROG: SYSVIEW CICS PROGRAMS    
EXSVDLI           SVFILE     SV27FILE  SVFILE: SYSVIEW CICS FILES       
EXSVTHRS          SVTMPS     SV27TMPS  SVTMPS: SYSVIEW CICS TEMPORARY ST
EXSVRESM          SVTDTA     SV27TDTA  SVTDTA: SYSVIEW CICS TRANSIENT DA
EXSVDCOM          SVABND     SV27ABND  SVABND: SYSVIEW CICS ABENDS      
EXSVEXIN          SVEXCE     SV27EXCE  SVEXCE: SYSVIEW CICS EXCEPTIONS  
EXSVWBMQ          SVMEMP     SV27MEMP  SVMEMP: SYSVIEW CICS MONITOR EMPS
EXSVDB2           SVDLI      SV27DLI   SVDLI:  SYSVIEW CICS DL/I        
EXSVMEIE          SVTHRS     SV27THRS  SVTHRS: SYSVIEW CICS THRESHOLDS  
EXSVINTV          SVRESM     SV27RESM  SVRESM: SYSVIEW CICS RESOURCE MAN
EXSVIMST          SVDCOM     SV27DCOM  SVDCOM: SYSVIEW CICS DATACOM CSF 
EXSVIMSP          SVEXIN     SV27EXIN  SVEXIN: SYSVIEW CICS EXEC INTERFA
EXSVMQRR          SVWBMQ     SV27WBMQ  SVWBMQ: SYSVIEW CICS WEBSPHERE MQ
IMACSVIE          SVDB2      SV27DB2   SVDB2:  SYSVIEW CICS DB2         
TYPESVIE          SVMEIE     SV27MEIE  SVMEIE: SYSVIEW CICS MEI EVENT   
TYPSSVIE          SVINTV     SV28INTV  SVINTV: SYSVIEW CICS INTERVAL SUM
VMACSVIE          SVIMST     SV32IMST  SVIMST: SYSVIEW IMS TRANSACTION  
VMXGINIT          SVIMSP     SV33IMSP  SVIMSP: SYSVIEW IMS PROGRAM SUMMA
Jun 17, 2008      SVMQRR     SV48MQRR  SVMQRR: SYSVIEW MQ APP REGIONS   
                                                                        
Change 26.132  Minor correction; if optional RMFFILT DD was missing but 
ASMRMFV        RMFSKIP DD was present, ASMRMFV could fail with USER 998 
Jun 14, 2008   when attempting to close the nonexistent RMFFILT DDname. 
   Thanks to Jerry Urbaniak, Acxiom, USA.                               
                                                                        
Change 26.131  The reports on MIPS/MSU usage for CP engine is enhanced  
ASUMMIPS       to also report on zIIPs and zAAPs, by adding variables   
Jul 18, 2008   CPUIFATM CPUZIPTM NRIFAS NRZIPCPU IFAUSED ZIPUSED MIPSIFA
               MIPSZIP with _MIPSIFA and _MIPAZIP macros that define the
               factors in the same way as base CP conversion factors.   
   Thanks to Robert Kuhne, Exelon Corporation, USA.                     
                                                                        
Change 26.130  Notes for CICS IMACICEZ, IMACICE1, IMACICE2 tailoring.   
IMACICEZ       These notes originated in Change 24.033, then 25.xxx and 
IMACICE1       are repeated here, as well as in comments in UTILEXCL    
IMACICE2       These members are required to be tailored if your CICS   
UTILEXCL       records contain 'EZA01' or 'EZA01' optional segments:    
Jun 14, 2008                                                            
              -IMACICEZ always has these 5 fields, identified by their  
               CMODNAME='EZA01' and CMODTYPE='S':                       
                                                                        
                  EZA01       S       001      12      ooo     INIT     
                  EZA01       S       002      12      ooo     READ     
                  EZA01       S       003      12      ooo     WRITE    
                  EZA01       S       004      12      ooo     SELECT   
                  EZA01       S       005      12      ooo     OTHER    
                                                                        
               The CMODLENG=12 is from CICS/3.2; earlier CICS had only  
               CMODLENG=8, but IMACICEZ supports both lengths, so you   
               just remove the comment block to tailor IMACICEZ and it  
               will process data with either or both lengths.           
                                                                        
              -IMACICE1 can have up to 13 fields, identified by their   
               CMODNAME='EZA01' and CMODTYPE='A' (yes, CMODNAME is the  
               same 'EZA01' as IMACICEZ, but the CMODTYPE is different):
                                                                        
                  EZA01   A       001       4      ooo     TINIT        
                  EZA01   A       002       4      ooo     TREAD        
                  EZA01   A       003       4      ooo     TWRITE       
                  EZA01   A       004       4      ooo     TSELECT      
                  EZA01   A       005       4      ooo     TOTHER       
                  EZA01   A       006       4      ooo     REUSABLE     
                  EZA01   A       007       4      ooo     ATTACHED     
                  EZA01   A       008       4      ooo     OPENAPI      
                  EZA01   A       009       4      ooo     TCBLIM       
                  EZA01   A       010       4      ooo     TREUSABL     
                  EZA01   A       011       4      ooo     TATTACHE     
                  EZA01   A       012       4      ooo     TOPENAPI     
                  EZA01   A       013       4      ooo     TTCBLIM      
                                                                        
               You will have to examine REPORT THREE (which may have the
               last CMODHEAD field 'EZA01' instead of the names shown)  
               to know how many fields are in your data. If you have the
               expected 13 fields, then you just remove the one comment 
               block.  If you have fewer fields, then:                  
                  - Change the IF xxxx GE 52 THEN DO; statement so its  
                    test value is 4 times the number of fields, e.g.    
                    with seven fields change the "52" to "28".          
                  - Change the INPUT statement's suffix from EZA01A13 to
                    the number of fields you have; if there are seven:  
                       INPUT (EZA01A01-EZA01A07) (&PIB.4.) @;           
                  - Delete the LABELs for variables that don't exist.   
                                                                        
              -IMACICE2 has 22 fields with z/OS 1.7 TCP/IP data, but had
               only 11 fields with z/OS 1.4, which are identified by the
               CMODNAME='EZA02' and CMODTYPE='A:                        
                  EZA02       A       001       4      330     CONN     
                  EZA02       A       002       4      331     STARTED  
                  EZA02       A       003       4      332     INVALID  
                  EZA02       A       004       4      333     DISTRAN  
                  EZA02       A       005       4      334     DISPROG  
                  EZA02       A       006       4      335     GIVESOKT 
                  EZA02       A       007       4      336     SECEXIT  
                  EZA02       A       008       4      337     NOTAUTH  
                  EZA02       A       009       4      338     IOERR    
                  EZA02       A       010       4      339     NOSPACE  
                  EZA02       A       011       4      340     LENERR   
                  EZA02       A       012       4      341     TCONN    
                  EZA02       A       013       4      342     TSTARTED 
                  EZA02       A       014       4      343     TINVALID 
                  EZA02       A       015       4      344     TDISTRAN 
                  EZA02       A       016       4      345     TDISPROG 
                  EZA02       A       017       4      346     TGIVESOK 
                  EZA02       A       018       4      347     TSECEXIT 
                  EZA02       A       019       4      348     TNOTAUTH 
                  EZA02       A       020       4      349     TIOERR   
                  EZA02       A       021       4      350     TNOSPACE 
                  EZA02       A       022       4      351     TLENERR  
               You will HAVE to look at UTILEXCL REPORT THREE to confirm
               if you have 22 or 11 fields, and remove only one of the  
               two comment blocks in IMACICE2 to tailor it.             
                                                                        
              -You create REPORT THREE with the _RPTEXCL macro run      
               with or after your UTILEXCL execution:                   
                    //SYSIN DD *                                        
                     %INCLUDE SOURCLIB(UTILEXCL);                       
                     _BLDDICT;                                          
                     _BLDEXCL;                                          
                     _RPTEXCL;                                          
                                                                        
Change 26.129  Format TAOTRMCD existed in FORMATS (but did not have the 
FORMATS        OTHER='UNKNOWN' value statement), and it was not applied 
VMACTAO        to variable TAOTRMCD in VMACTAO until now.               
Jun 12, 2008                                                            
   Thanks to Steve Clark, DHL IT Services Americas, USA.                
                                                                        
Change 26.128A ASMTAPEE ML-41 (MXG 26.03-26.04) IS DEFECTIVE.           
VMACTMNT       But you do NOT need to replace the MXGTMNT monitor task  
Jun 12, 2008   if it is already installed, as this circumvention will   
               correct the error.  You will need to reprocess the SMF   
               records created with ML-41 with the new VMACTMNT from    
               this change.                                             
                                                                        
               The error impacts the PDB.ASUMTAPE dataset; the TYPETMNT 
               data is correct with ML-41 monitor.  However, to capture 
               ALL tape mount events, you must use the ASUMTAPE program 
               and then use PDB.ASUMTAPE dataset (and not PDB.TYPETMNT) 
               to capture the DFHSM mounts, 2nd mounts and other mounts 
               that do not go thru the IBM/STC exits; those events are  
               depend on the subtype 8 SYSLOG records in PDB.TYPESYMT   
               that ASUMTAPE combines with TYPETMNT and TYPE21 datasets 
               to capture EVERY mount in PDB.ASUMTAPE.                  
                                                                        
               The error is only in the PDB.TYPESYMT SYSLOG dataset; the
               JOB field in the subtype 8 record with ML-41 is in error 
               as it contains the JCTJOBID value, rather than JOB name, 
               which causes JESNR to be a missing value in PDB.TYPESYMT,
               which then causes ASUMTAPE to fail to match up the SYSLOG
               event data with the TYPETMNT and TYPE21 records.         
                                                                        
               This revision to VMACTMNT captures the JOB name from the 
               SYSLOG message text, rather than the JOB field, and the  
               VGETJESN was relocated to use the correct JOB name to    
               decode the JESNR from JCTJOBID.                          
                                                                        
               Not an error, but it was observed that the PROGRAM name  
               in the TYPETMNT dataset is always blank; that field was  
               only capturable when the (now archaic) cross-memory      
               XMEM=YES option was used, prior to the exit-driven       
               redesign. Since TYPETMNT has JOB READTIME and JESNR,     
               the PROGRAM can be acquired from the PDB.STEPS dataset.  
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.128  Prisma SMF record was changed by the vendor, by insertion
VMACPRPR       of a text field, subsequently identified as the PRINTER  
Apr 11, 2008   between ACCOUNT and SHEETS.  The change was made in April
Jun 12, 2008   as Change 26.067, but never made it into CHANGES, and the
               change number was reused.                                
   Thanks to Carl Sablon, KBC Bankverzekerinngsholding, BELGIUM.        
   Thanks to Siegfried Trantes, IDG, GERMANY.                           
                                                                        
Change 26.126  Support for WebSphere incorrect triplets in subtype 3.   
VMAC120        Instead of properly using the triplet SM120SRN field to  
Jun 11, 2008   count the number of Server Region Sections, IBM chose to 
               implement an aberrant design by instead creating 0-n new 
               triplets (offset, length, count) in the record header!   
               This "feature" caused MXG to only output the first data  
               section in dataset TYP120SR. Circumvention code now uses 
               SM120TRN-2 (number of triplets minus two) to loop across 
               the Server Regions.  This error was detected because the 
               total number of allocation failures, SM120HIC, was much  
               smaller than expected, and a detail trace identified that
               only one Server Region was being output.                 
   Thanks to Lisa Oulette, Wachovia Information Technology, USA.        
                                                                        
Change 26.125  Support for NTSMF new Objects:                           
EXNTBITS         DDDDDD   DATASET    DESCRIPTION/OBJECT NAME            
EXNTPACE         NTBITS   BITSNET    BITS NET UTILIZATION               
EXNTUSB          NTPACE   PACEPIPE   PACER PIPE                         
IMACNTSM         NTUSB    USB        USB                                
VMACNTSM      -Jun 17, 2008:  Variable PACEINST was misspelled          
VMXGINIT       as PACEPIPE in the _BNTPACE macro definition, causing    
Jun 17, 2008   the PROC SORT of dataset PACEPIPE to fail.               
Jun 11, 2008                                                            
   Thanks to Lisa E. Van Allen, Boeing, USA.                            
                                                                        
Change 26.124  INPUT STATEMENT EXCEEDED for short (possibly defective)  
VMACITRF       type '11'x ITRF record of only 176 bytes; current ITRF   
Jun 10, 2008   record should be 304 bytes long.  The record contains    
               only the Input Terminal and Date and Time and the 4-byte 
               "UNIQUE" hex field; all other fields are nulls or blanks.
               The observation is still output in ITRFMSGO dataset, and 
               short records can be identified/counted by the variables 
               COT, LOQT, OQT (and others) having missing values.       
   Thanks to Prashant Joshi, Perot Systems, USA.                        
                                                                        
Change 26.123 -Support for new fields added to NTSMF MEMORY object:     
VMACNTSM          FRZRPLBY='FREE AND ZERO*PAGE LIST*BYTES'              
Jun  9, 2008      MODFPLBY='MODIFIED*PAGE LIST*BYTES'                   
Jun 17, 2008      SBCACOBY='STANDBY*CACHE*CORE*BYTES'                   
                  SBCANPBY='STANDBY*CACHE*NORMAL*PRIORITY*BYTES'        
                  SBCARSBY='STANDBY*CACHE*RESERVE*BYTES'                
              -Support for new field added to NTSMF PROCESS object:     
                  WKSETPRV='WORKING*SET*PRIVATE'                        
   Thanks to Roger Zimmerman, Hewitt Associates, USA.                   
                                                                        
Change 26.122  Incorrect JOB name was parsed from SYSLOG text that had  
ASUMTAPE       three comma delimiters.  The SAS SCAN function treats all
Jun  5, 2008   repeated delimiters as a single delimiter (why, no one at
               SAS can explain, but that 'feature' is documented!), so  
               the use of TRANWRD(text,',,',', ,') ahead of the SCAN()  
               was suggested, which worked fine with two delimiters.    
               However, IEF234E messages with 'D 0F80,,,ZY11110,STEP099'
               (unexpected, a dismount with no volser nor PVT/PUB/STR on
               a 3590 device) were only expanded to 0F80, ,,ZY1110 so   
               the subsequent SCANs returned wrong values in WORD2-5.   
               Now, five TRANWRDs are executed to ensure the SCAN parse 
               properly decodes the JOB and STEP.                       
   Thanks to Paul Naddeo, FISERV, USA.                                  
   Thanks to David Bixler, FISERV, USA.                                 
                                                                        
Change 26.121  IBM/Candle/OMEGAMON Audit Records can be buried inside   
VMACOMAU       CICS records; this change protects so only Audit records 
Jun  4, 2008   are processed by TYPEOMAU.  Several variables that do not
               exist in the Audit records were removed.                 
   Thanks to Joe Faska, Depository Trust, USA.                          
                                                                        
                                                                        
====== Changes thru 26.120 were in MXG 26.04 dated Jun  4, 2008=========
                                                                        
Change 26.120  The CICSEXCE Exception Report examples have been useless 
ANALCICS       for years, as the individual wait/counts have not been   
Jun  4, 2008   been populated.  Only these variables are populated in   
               the CICSEXCE dataset:                                    
                  ENDTIME  EXCMNBTR EXCMNCPN EXCMNFCN EXCMNNID EXCMNNPX 
                  EXCMNNSX EXCMNRIL EXCMNRIL EXCMNRIX EXCMNRLU EXCMNRPT 
                  EXCMNRTY EXCMNSRV EXCMNTCN EXCMNTRF EXCMNTYP EXCMNURI 
                  EXCMNURI EXWAITTM LUNAME   OPERATOR STRTTIME TASEXCNR 
                  TASKNR   TCLASS   TERMINAL TRANNAME TRANPRI TRANTYPE  
                  USER                                                  
               A new report totals EXWAITCN and EXWAITM and calculates  
               the AVGWAITM for each APPLID EXCMNTYP EXCMNRTY EXCMNRIX  
               has been added to the examples in ANALCICS.              
   Thanks to Robert Carter, PNC Bank, USA.                              
                                                                        
Change 26.119  Variable LCU is added to TYPE74CA, by converting CSSSID  
VMAC74         from character to numeric, and variables CUSERIAL and    
Jun  4, 2008   CUVENDOR are created by substring from R745CCMT.         
               On IBM RMF reports, they print "CUID"-"CSDEVN" value and 
               "SSID"-"CSSSID" value (now, "SSID"-"LCU" value).         
   Thanks to Steven Olmstead, Northwestern Mutual, USA.                 
                                                                        
Change 26.118  Almost cosmetic; the TEST parameter (which writes MXGTMNT
ASMTAPEE       data to a flat file, instead of to SMF) did not work.    
Jun  4, 2008   This first ML-42 was never distributed see Change 26.136.
   Thanks to Alexander Raeder, ATOSORIGIN, GERMANY.                     
                                                                        
Change 26.117  Dataset TYPE747C was missing almost all observations; the
VMAC74         output statement was outside the DO loop over CUs.  And, 
Jun  4, 2008   variable R747SDEV is now KEPT in TYPE747C so it can be   
               matched up with TYPE747P observations.                   
   Thanks to Fabio Massimo Ottaviani, DTS Italia, ITALY.                
                                                                        
Change 26.116  Support for APAR OA22414 adds new variables to TYPE23    
VMAC23         SMF Statistics Records:                                  
Jun  4, 2008      SMF231RF='FIRST*REFERENCE*FAULTS'                     
                  SMF23NFR='FIX*REQUESTS*BELOW*2GM'                     
                  SMF23NGR='GETMAIN*REQUESTS*ISSUED'                    
                  SMF23NIO='TOTAL*I/O*OPERATIONS'                       
                  SMF23NRF='NON-FIRST*REFERENCE*FAULTS'                 
                  SMF23PBG='PAGES*BACKED*DURING*GETMAINS'               
                  SMF23PFX='FRAMES*FIXED*BELOW*2GB'                     
                  SMF23SRB='SRB*DISPATCHES'                             
                  SMF23TCB='UNLOCKED*TCB*DISPATCHES'                    
                  SMF23SFG='STATISTICS*SECTION*FLAG'                    
               The SMF23SFG bits 0 thru 8, if on, indicate that the     
               value in the corresponding nine variables were limited   
               to four bytes internally and could have wrapped if the   
               value was more than 4x10**9; MXG inputs all nine fields  
               as eight bytes.                                          
                                                                        
Change 26.115  Inconsistent BY list for RMF data are now consistent.    
VMAC7072       The correct sequence is SYSPLEX SYSTEM SYSNAME ... but   
WEEKBLD        SYSNAME was not always present, and in some cases it was 
MONTHBLD       SYSNAME, in others it was the &MXGSYSN macro variable    
Jun  3, 2008   name (needed only way back in Version 23 to protect for  
               earlier MXG versions).                                   
               Unless you have duplicate SYSTEM names in a SYSPLEX, the 
               SYSNAME is identical to SYSTEM, so its insertion will not
               have any impact on the actual sorted order.              
                (Of course, if you have multiple SYSTEMs with the same  
                 SYSTEM name, then the SYSNAMEs will be different, so   
                 there is a SMALL chance this could cause a NOT SORTED  
                 condition when you combine dailies into weekly/monthly 
                 PDB libraries).                                        
   Thanks to Brian Crow, BT, ENGLAND.                                   
                                                                        
Change 26.114  z/VM MONWRITE BAD CONTROL RECORD error because MXG didn't
VMACVMXA       protect the 6.24 correctly.                              
May 30, 2008                                                            
   Thanks to Sharon Moir, JPMorgan Chase Bank, USA.                     
                                                                        
Change 26.113  Variable IORATE=DVTSAMPA/DURATM is now created in the    
VMACRMFV       ZRBDVT dataset.                                          
May 30, 2008                                                            
   Thanks to Rodger Foreman, Acxiom, USA.                               
                                                                        
Change 26.112  MXG 26.03:  TYPE70 variables CPUMVSTM, PCTMVSBY, SHORTCPS
VMAC7072       and PLCPRDYQ are missing if not on a z10 processor; the  
May 30, 2008   support added for SMF70PAT (CPUPATTM, parked time) failed
               to protect those calculations when CPUPATTM was a missing
               value. Fortunately, you can recalculate from PDB.TYPE70: 
                   CPUMVSTM=CPUUPTM-MVSWAITM;                           
                   IF CPUUPTM GT 0 THEN PCTMVSBY=100*CPUMVSTM/CPUUPTM;  
                   IF PCTMVSBY GT 0 AND PCTCPUBY GT 0 THEN DO;          
                     SHORTCPS=PCTMVSBY/PCTCPUBY;                        
                     PLCPRDYQ=100*(PCTMVSBY-PCTCPUBY)/PCTMVSBY;         
                     IF . LT PLCPRDYQ LT 0 THEN DO;                     
                       SHORTCPS=1;                                      
                       PLCPRDYQ=0;                                      
                     END;                                               
                   END;                                                 
   Thanks to Charles Savikas, DCF State of Florida, USA.                
                                                                        
Change 26.111 -Support for TMVS Release 4.1, INCOMPATIBLE due to fields 
EXTMVCN        inserted in the "JD" records.  Many new variables for the
EXTMVCNM       zIIP and zAAP engines are created in the Job records.    
EXTMVCNP      -The code is enhanced to full "standard" structure, with  
EXTMVCNS       the _Vdddddd macros created, and the _Sdddddd sort macros
EXTMVCO        now invoking PROC SORT NODUP to remove duplicates instead
EXTMVCOF       of being simple DATA steps.                              
EXTMVCOH      -Redundant variables with STARTIME, ENDTIME and DURATM are
EXTMVCOP       removed.                                                 
EXTMVCOS      -Thirty new datasets are created, for all of the possible 
EXTMVCY        record types, and all datasets for which I have data     
EXTMVCYD       records are populated and duplicate-removal-validated.   
EXTMVEC       -New IHDRTMVS exist allows deletion of unwanted record    
EXTMVES        types.                                                   
EXTMVHC                                                                 
EXTMVHM                                                                 
EXTMVHS                                                                 
EXTMVMC                                                                 
EXTMVMCL                                                                
EXTMVMCV                                                                
EXTMVRG                                                                 
EXTMVX1                                                                 
EXTMVX3                                                                 
EXTMVX4                                                                 
EXTMVXC                                                                 
EXTMVXD                                                                 
EXTMVXN                                                                 
EXTMVXO                                                                 
EXTMVXP                                                                 
EXTMVXS                                                                 
EXTMVXW                                                                 
IHDRTMVS                                                                
IMACTMVS                                                                
VMACTMVS                                                                
VMXGINIT                                                                
Jun  2, 2008                                                            
   Thanks to Sam Bass, McLane Co., USA.                                 
                                                                        
Change 26.110  A new MXG ERROR message is printed for PDB.RMFINTRV if   
VMXGRMFI       there are no TYPE72GO observations that match the TYPE70 
May 28, 2008   observations.  The resultant PDB.RMFINTRV observation has
               PCTOVHD and CPUOVHTM and CPUTM missing values.           
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
Change 26.109  Cosmetic.  New values for QWACRINV were not formatted by 
ADOCDB2        the MGDB2RC format, and value 40 should have been ABNORM.
FORMATS                                                                 
May 22, 2008                                                            
   Thanks to Christa Neven, KBC Bankverzekerinngsholding, BELGIUM.      
                                                                        
Change 26.108  CICS optional IMS data segment with CMODNAME='USER' and  
UTILEXCL       CMODHEAD='SCHDPDS' or 'SCHDTIME' or 'CALLDLI' is now     
May 22, 2008   recognized and is supported by the existing IMACICDL     
               member.  Previously, all IMS segments had the values of  
               'PSB WAIT', 'PSB SCHD', 'DB CALL', and 'DB IO' for those 
               fields, and these unexpected text fields cause MXG to    
               NOT identify IMACICDL as needed when UTILEXCL ran.       
   Thanks to Robb Hermes, Sentry Insurance, USA.                        
                                                                        
Change 26.107  INPUT STATEMENT EXCEEDED with SMF 80 with new ASSIZMAX   
VMAC80A        value in TOKDANAM; that field is not INPUT as TOKASIZM   
May 21, 2008   and kept in all TYPE80xx datasets with extended data.    
   Thanks to Clayton Buck, UniGroup, USA.                               
                                                                        
Change 26.106  Enhancement for AF/OPER SMF record support.              
VMACAFOP       These variables are now INPUT and KEPT in all datasets:  
May 19, 2008   AFOMATNR AFOMATTY AFOTRNAM AFOCPUTM AFOEXECN AFOCONSN    
               The AFOCPUTM is now input as &PIB.4.3.                   
   Thanks to Joe Faska, Depository Trust, USA.                          
                                                                        
Change 26.105  The label for variable R723CSUP is clarified to read     
VMAC7072          R723CSUP='UN-NORMALIZED*ZIP*SERVICE*UNITS'            
May 19, 2008   because it contains the zip service units before their   
               normalization back to the same scale as the CPUUNITS.    
               The variable ZIPUNITS contains the normalized service    
               units.  ZIPUNITS and R723CSUP are different ONLY if the  
               CP engine speed is less than the ZIP engine speed.       
   Thanks to Bret Hoesly, Telephone & Data Systems, Inc, USA.           
                                                                        
Change 26.104  Variable SMF70PMU was not divided by NRSAMPLE and its    
VMAC7072       label was incorrect.  It now is                          
May 19, 2008      SMF70PMU='AVG BLKED*DISPATCH*UNITS*PROMOTED'          
   Thanks to Fabio Massimo Ottaviani, DTS Italia, ITALY.                
                                                                        
Change 26.103  INPUT STATEMENT EXCEEDED ID=42 SUBTYPE=15 when there were
VMAC42         more than one S2 segment.  MXG logic for LENGTH test was 
May 19, 2008   corrected.                                               
   Thanks to Dan Case, Mayo Clinic, USA.                                
                                                                        
Change 26.102  TYPETASK='J  ' occurred in TYPETMNT/TYPESYMT because the 
VGETJESN       VGETJESN logic when there is no SUBSYS, and the JCTJOBID 
May 19, 2008   contains 7 digits did not set TYPETASK='JOB'.            
   Thanks to Brian Felix, Wachovia Corporation, USA.                    
                                                                        
Change 26.101  The ending semicolon in the %VMXGVERS(VMXGFOR,xx.yy);    
VMXGFOR        statement caused a syntax error; that ending semicolon   
May 17, 2008   is not only not required, in this instance it was wrong: 
                                                                        
               In the VMXGFOR macro, the last line calls %VMXGVERS with 
               a semi-colon at the end. These types of semi colons are  
               never required, since the macro processor knows to       
               execute the macro when the tokenization sees the right   
               parenthesis. In this particular scenario, what happens   
               is that that trailing semi colon gets returned to the    
               input stream to the datastep - in the middle of the proc 
               sort statement, which is why is complains at DATA= being 
               a Statement that is not valid or out of order.           
   Thanks to James Hein, Erie Insurance, USA.                           
   Thanks to Chris Weston, SAS ITRM, USA.                               
                                                                        
Change 26.100  Invalid MEM header record with a missing comma caused    
VMACNMON       INPUT STATEMENT EXCEEDED RECORD LENGTH error.  The header
May 16, 2008   had only 7 fields, causing the error, but the actual MEM 
               data records are valid, so the handling of the header is 
               revised to protect for the invalid record.               
   Thanks to Angelo Pezzella, SAS Italy, ITALY.                         
                                                                        
Change 26.099  Variable ELAPSTM is now calculated instead of missing.   
VMACORAC                                                                
May 16, 2008                                                            
   Thanks to Bret Hoesly, Telephone and Data Systems, USA.              
                                                                        
Change 26.098  Support for Informatics STAT user SMF record.            
EXIFOCLI       Five datasets are created from the user SMF record:      
EXIFODB2          IFOLIS     INFOLISN  INFORMATICS LISTENER             
EXIFOEXC          IFOEXC     INFOEXCP  INFORMATICS EXCEPTION            
EXIFOFIL          IFOFIL     INFOFILE  INFORMATICS FILE                 
EXIFOLIS          IFODB2     INFODB2   INFORMATICS DB2                  
IMACINFO          IFOCLI     INFOCLIE  INFORMATICS CLIENT               
TESSUSR1       The datetimestamps of the INFO variables are still on the
TYPEINFO       GMT clock, because there is no GMT offset in the records.
TYPSINFO       The delta between the END (GMT) and SMFTIME (Local) can  
VMACINFO       not be used, because END is missing in many records.  The
VMXGINIT       vendor has been requested to add a GMT offset field so   
May 21, 2008   the GMT datetimestamps can be converted to local zone.   
   Thanks to Elizabeth Griesse, Securian Financial Group, USA.          
                                                                        
Change 26.097  Divide-by-zero for denominator CPUCPLEN is now protected.
VMACRMFV                                                                
May 13, 2008                                                            
   Thanks to Betty Wong, Bank of America, USA.                          
                                                                        
Change 26.096 -Variables QW0227FG and QW0227PG were always missing; the 
VMAC102        test for QWT02R1L should have been 17 and not 21.        
May 13, 2008  -Variables QW0226DB and QW0026OB are now $HEX4. format.   
   Thanks to Karthik Vinayagam, Morgan Stanley, USA.                    
                                                                        
====== Changes thru 26.095 were in MXG 26.03 dated May 11, 2008=========
                                                                        
Change 26.095 -ML-41 of ASMTAPEE the MXG Tape Mount Monitor corrects the
ASMTAPEE       JOB Name to use MDBGJBNM in the SMF records it writes for
May 10, 2008   WTO SYSLOG events; some records had HSM instead of VTCSS.
               The new ASUMTAPE logic in Change 26.083 corrects the JOB 
               when it is not the same as SYSLJOB, but this corrects the
               SMF records created by MXGTMNT monitor.                  
              -The Allocation Recovery Event subtype created by MXGTMNT 
               was not correct for the (typical, usually automated) WAIT
               event.  ML-41 corrects the logic for that subtype, so the
               observations in TYPEARCV contains job info and the delay 
               to that job due to insufficient tape devices, which is   
               what an Allocation Recovery Event describes.             
              -Some general performance enhancements were also made.    
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
Change 26.094  ERROR: LIBRARY PDB IS NOT IN A VALID FORMAT FOR ACCESS   
CONFIGV9              METHOD SASV6SEQ.                                  
May  9, 2008   occurs if  OPTIONS SEQENGINE=V6SEQ or TAPENGN=V6SEQ are  
               in effect; you can use PROC OPTIONS to display the value 
               of those options.  SEQENGINE is defined in CONFIGV9, and 
               TAPENGN is defined in VMXGINIT; both default to V9SEQ    
               (or V8SEQ if still using SASV8), but either option can   
               be changed with a %LET XXXX=VnSEQ, so searching your MXG 
               tailoring libraries for V6SEQ should locate that text.   
                                                                        
               The MXGSASV9 JCL procedure puts the MXG CONFIGV9 member  
               as the last datasets in the //CONFIG DD, so that any SAS 
               option I specify in CONFIGV9 will override the default   
               SAS options specified in its .CFG file.  However, there  
               are only these options that are in both the SAS BATW0 and
               the current MXG CONFIGV9 members:                        
                   Option        SAS Value              MXG Value       
                   BUFNO             3                      2           
                   BLKSIZE                               6144           
                   MEMLEAVE       512K                      10M         
                   SEQENGINE      TAPE                   V9SEQ          
                   NLSCOMPATMODE  NONNLSCOMPATMODE      NLSCOMPATMODE   
                   THREADS        THREADS               NOTHREADS       
                                                                        
====== Changes thru 26.093 were in MXG 26.03 dated May  8, 2008=========
                                                                        
Change 26.093  TESTOTHR step failed because DDNAMES CTMUUNIX, CTMZZOS   
JCLTESS9       were not added to support CONTROL-M support.             
JCLTEST9                                                                
JCLTEST8                                                                
JCLTESS8                                                                
May  9, 2008                                                            
   Thanks to Bernd Klawa, Stadwerke-Bielefeld, GERMANY.                 
                                                                        
Change 26.092  Divide By Zero warning in HyperPav SMF 74 when SMF74PSM  
VMAC74         was zero in an interval when the device was Varied.  The 
May  9, 2008   divide is now protected.                                 
   Thanks to Leendert Keesmaat, UBS, SWITZERLAND.                       
                                                                        
Change 26.091  Mis-alignment of the CS Server by four bytes caused very 
VMAC111        large values in some variables in CTG SMF 111 CS Server  
May  7, 2008   records.  The VMAC111 in 26.03 did not contain this      
Jun  3, 2008   change.                                                  
   Thanks to Ray Dunn, CIGNA, USA.                                      
                                                                        
Change 26.090  Support for SAS Version V9.2: WARNING could still occur  
VMXGSUM        if OUTCODE= was specified; Change 26.065 COPYed, rather  
May  7, 2008   than MOVEd the LENGTH statement to after the SET, so the 
               WARNING was still printed.  As a result, MXG 26.03 is    
               now the required MXG Version to eliminate the WARNING in 
               MXG delivered code.                                      
   Thanks to Bruce Widlund, Merrill Consultants, USA.                   
                                                                        
Change 26.089  Support for CONTROL-M logs from both Unix and z/OS.      
EXCTM065       Separate programs, TYPECTMU for Unix, TYPECTMZ for ZOS   
EXCTM100       read the "flat" log files to create new datasets.        
EXCTM101       From Unix data, TYPECTMU/TYPSCTMU reads CTMLUNIX to      
EXCTM133       create these datasets:                                   
EXCTM134                                                                
EXCTM203        DDDDDD  DATASET   DESCRIPTION                           
EXCTM206                                                                
EXCTM207        CTM065  CTMU5065  CTL-M UNIX MESSAGE ID 5065'           
EXCTM208        CTM100  CTMU5100  CTL-M UNIX MESSAGE ID 5100'           
EXCTM209        CTM101  CTMU5101  CTL-M UNIX MESSAGE ID 5101'           
EXCTM210        CTM133  CTMU5133  CTL-M UNIX MESSAGE ID 5133'           
EXCTM211        CTM134  CTMU5134  CTL-M UNIX MESSAGE ID 5134'           
EXCTM212        CTMUOT  CTMUOTHR  CTL-M UNIX OTHER MESSAGE ID'          
EXCTM213       From ZOS data, TYPECTMZ/TYPSCTMX reads CTMLZOS to        
EXCTM216       create these datasets:                                   
EXCTM217                                                                
EXCTM219        DDDDDD  DATASET   DESCRIPTION                           
EXCTM281                                                                
EXCTM511        CTM203  SEL203I   CTL-M ZOS MESSAGE ID SEL203I,220I,221I
EXCTM65A        CTM206  SEL206W   CTL-M ZOS MESSAGE ID 206W             
FORMATS         CTM207  SEL207E   CTL-M ZOS MESSAGE ID 207E             
IMACCTMU        CTM208  SEL208I   CTL-M ZOS MESSAGE ID 208I             
IMACCTMZ        CTM209  SEL209I   CTL-M ZOS MESSAGE ID 209I             
TYPECTMU        CTM210  SEL210E   CTL-M ZOS MESSAGE ID 210E             
TYPECTMZ        CTM211  SEL211W   CTL-M ZOS MESSAGE ID 211W             
TYPSCTMU        CTM212  SEL212W   CTL-M ZOS MESSAGE ID 212W             
TYPSCTMZ        CTM213  SEL213W   CTL-M ZOS MESSAGE ID 213W             
VMACCTMU        CTM216  SEL216W   CTL-M ZOS MESSAGE ID 216W             
VMACCTMZ        CTM217  SEL217W   CTL-M ZOS MESSAGE ID 217W             
VMXGINIT        CTM219  SEL219I   CTL-M ZOS MESSAGE ID 219I             
May  6, 2008    CTM281  SEL281I   CTL-M ZOS MESSAGE ID 281I             
                CTM511  JOB511I   CTL-M ZOS MESSAGE ID 511I             
                CTM65A  CTM64AI   CTL-M ZOS MESSAGE ID 65AI             
                CTMZOT  CTMZOTHR  CTL-M ZOS OTHER MESSAGE IDS           
   Thanks to John Toohey, IBM, AUSTRALIA.                               
                                                                        
Change 26.088  Support for sub-subtype '0200' MQ segment creates two new
EX112MQC       datasets from SMF 112 records:                           
EX112MQT         DDDDDD     DATASET   DESCRIPTION                       
IMAC112          112MQC     T112MQCO  OMEGAMON CICS MQ DETAIL           
VMAC112          112MQT     T112MQCT  OMEGAMON CICS MQ TOTALS           
VMXGINIT       There are also '0001' MQ Segments for which I do not yet 
May  5, 2008   have a DSECT, to be added when documentation received.   
May  9, 2008   May 9: Still no documentation for 0001 record, and the   
                      0200 documentation is wrong; there are 25 4-byte  
                      counters in the segment, but the DSECT from 2007  
                      documented only 8 pair of 4-byte clock/counters.  
                      For now, first 8 counters have the 8 labels from  
                      the 2007 documentation, the rest a counter number.
   Thanks to Ray Dunn, CIGNA, USA.                                      
                                                                        
Change 26.087  Flag variable UBFLAG1 in DCOLBKUP was decoded into these 
VMACDCOL       variables, but they were not kept until now:             
May  5, 2008     UBINCAT UBNOENQ UBBWO UBNQN1 UBNQN2                    
   Thanks to Michael Friske, Fidelity Systems, USA.                     
                                                                        
Change 26.086  Support for AF/Operator SMF Record creates four datasets:
EXAFOPEX          DDDDDD     MXG       MXG                              
EXAFOPFI          DATASET    DATASET   DATASET                          
EXAFOPIM          SUFFIX     NAME      LABEL                            
EXAFOPMA                                                                
IMACAFOP          AFOPEX     AFOPEXEC  AFOP EXEC                        
TYPEAFOP          AFOPFI     AFOPFILE  AFOP FILE                        
TYPSAFOP          AFOPIM     AFOPIMMED AFOP IMMED                       
VMACAFOP          AFOPMA     AFOPMATCH AFOP MATCH                       
VMXGINIT                                                                
May  5, 2008                                                            
   Thanks to David Kaplan, DTCC, USA.                                   
                                                                        
Change 26.085  Variable SMFTIME was not in the BY list for TYPE70PR and 
WEEKBLD        TYPE72MN in WEEKBLD, but was in the BY list for MONTHBLD.
May  5, 2008   The BY list in WEEKBLD was updated.  The absence of the  
               SMFTIME variable caused a NOT SORTED condition when the  
               clocks were set back one hour on April 6.                
   Thanks to Peter Krijger, ANZ National, NEW ZEALAND.                  
                                                                        
Change 26.084  Enhancements to HSM sample reports adds a new REPORT6, a 
ANALHSM        time-interval summary of MIGRATE/RECALL/BACKUP activity. 
May  2, 2008   about every tape mount event.                            
               Additionally, new filtering parameters are created in the
               RPTFILT1-RPTFILT6 macros.                                
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.083  Major rewrite of ASUMTAPE corrects errors and supports   
ASUMTAPE       SPIN logic to create PDB.ASUMTAPE with EVERYTHING        
May  2, 2008   possible about every tape mount event.                   
May  8, 2008                                                            
May 10, 2008   THIS IS AN INCOMPATIBLE CHANGE:                          
               You MUST delete your old SPIN.SPINMOUN dataset before you
               implement this revised ASUMTAPE algorithm.               
                                                                        
               The previous ASUMTAPE logic always correctly assembled   
               "complete" tape mount events, and most "incomplete"      
               mounts but there were cases with only a single SYSLOG    
               event (notable, from our friends HSM and DMS that do     
               their own unique thing!) in which the output was not     
               always correct or complete.                              
               In addition, as documented, ASUMTAPE never implemented   
               the full "SPIN" logic to hold incomplete events for the  
               next execution of ASUMTAPE.                              
               The TYPESYMT processing of SYSLOG records was reinvented,
               using the SYSTEM JOB JESNR DEVNR sequence, rather than   
               the insufficient DEVNR DESCENDING EVENTIME sequence that 
               was incapable of full protection for these end cases.    
              -May 10: Final logic errors due to LASTDEVN being kept in 
               SPINSYSL cleaned up match up of "full" vs "SPLIT SPIN" so
               observation counts again matched before and after tests. 
              -The unique DSNAMEs in the input TYPESYMT and TYPETMNT    
               were compared with the output DSNAMEs in PDB.ASUMTAPE and
               many were blank, and some were wrong, as SYSLDSN is only 
               populated in IEC233A,IEC705I, and IEC501A/IEC501E SYSLOG 
               messages; the blank values in the other records overlaid 
               DSNAME.  Now, all observations that had DSNAME in TMNT or
               SYSLOG have non-blank DSNAME.  Some events can never have
               a DSNAME (e.g., HSM only-234E KEEP); variable MNTHAVE    
               identifies which SYSLOG records were found for this mount
               event, and can be used to identify those cases where the 
               DSNAME is always blank.                                  
   Thanks to Paul Naddeo, FISERV, USA.                                  
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
   Thanks to Pat Jones, DST, USA.                                       
                                                                        
Change 26.082  The old IEFU84 sample SMF exit failed with z/OS 1.7 and  
IEFU84         z/OS 1.9; the addition of $CADDR after $HCCT in the ASM  
May  1, 2008   code eliminated the ASMA044E UNDEFINED SYMBOL messages   
               for symbols C@XMXSRB, and CADDR, thanks to excellent ASM 
               sleuthing by Dean.                                       
   Thanks to Dean Gambill, Lowe's Companies, USA.                       
   Thanks to Jim S. Horne, Lowe's Companies, USA.                       
                                                                        
Change 26.081 -The JCLDAYDS had a //PDB DD, but it is never used in the 
DAILYDSR       DAILYDSN or DAILYDSR programs, so it was removed from    
JCLDAYDS       that JCL example.                                        
Apr 30, 2008  -The DAILYDSR example for using DFSMS/RMM instead of TMS  
               did not create the DCOLCLUS dataset from DCOLLECT data.  
   Thanks to Diane Eppestine, IBM Global Services, USA.                 
                                                                        
Change 26.080  MXG 26.01 wrongly changed QPACAAFG INPUT to $CHAR2. as I 
FORMATS        thought it contained hex text.  The $EBCDIC2 input is now
VMACDB2        restored, a hex zero value is converted to blanks, and   
Apr 29, 2008   its $MGDB2PK format enhanced to decode that blank value: 
                   VALUE $MGDB2PK                                       
                    '  '='BLANK:NOT DEFINED'                            
                    '01'='01:STORED PROCEDURE'                          
                    '02'='02:USER DEFINED FUNCTION'                     
                    '03'='03:TRIGGER EXECUTING'                         
                   ;                                                    
   Thanks to Glenn Bowman, Wakefern, USA.                               
                                                                        
Change 26.079  Variable IFAHONOR could be blank when it should have     
VMAC7072       been 'Y'; typo in logic was corrected.                   
Apr 25, 2008                                                            
   Thanks to William Wailun Wong, HSBC, HONG KONG                       
                                                                        
Change 26.078  MXG 26.02 VMXGSUM caused VARIABLE NOT FOUND if variables 
VMXGSUM        that do not exist in the input dataset were named in one 
Apr 24, 2008   of the output lists (eg., in SUM= ).  This support was   
               accidentally deleted.  This would happen if you used an  
               unmodified MXG ASUMxxxx member that listed all variables 
               to be summed, but you had dropped variables from the     
               input dataset.  (Think ASUMDB2A which sums all DB2ACCT   
               variables).                                              
   Thanks to Jim Kovarik, Aegon, USA.                                   
                                                                        
Change 26.077  MXG printed a WARNING: NEGATIVE CPUUNITS when a type 30  
VMAC30         record had IFAUNITS greater than CPUUNITS, citing APAR   
Apr 29, 2008   OA24836 as the IBM correction.  But even with that APAR, 
               imprecision in zAAP and CP Service Units caused small    
               negative deltas equivalent to a few hundredths's of a CPU
               second, as confirmed by IBM Support, who pointed to new  
               SMF updates documenting these service unit issues, and   
               recommended the CPUUNITS and IFAUNITS be recalculated    
               based on the proportions of the CPUTCBTM and CPUIFATM,   
               when the subtraction returned a negative value. In so    
               doing, I discovered that all test cases with negative    
               deltas actually had CPUTCBTM=0, i.e., they were tasks    
               that only used zAAPs, so the resultant CPUUNITS=0 after  
               recalculation is correct and not an approximation!       
                 But, if the delta is greater than one CPU second, a    
                 revised warning is printed with the before and after   
                 service unit and cpu time values.                      
   Thanks to Janet Harris, Navistar, USA.                               
   Thanks to Roger Rush, Navistar, USA.                                 
                                                                        
Change 26.076  This JCL example had an extra space on the // EXEC       
JCLMQMCI       statement and the symbolic WORKNUM instead of WORKVOL.   
Apr 23, 2008                                                            
   Thanks to Gary Green, Dow Jones, USA.                                
                                                                        
====== Changes thru 26.075 were in MXG 26.02 dated Apr 22, 2008=========
                                                                        
Change 26.075 -MXG logic incorrectly handled back-to-back TYPE21 from   
ASUMTAPE       different systems in the interleave with TYPETMNT; this  
Apr 22, 2008   ultimately caused variable SYSTEM in PDB.ASUMTAPE to have
               the wrong system's name for these mount events.          
   Thanks to Paul Naddeo, FiServ, USA.                                  
                                                                        
Change 26.074  MXG 25.07-MXG 26.01 only. Fewer obs created in TYPE78CU, 
VMAC78         even with Change 26.023, which only partially solved the 
Apr 22, 2008   MXG error. The test for 58 should have been 56.          
   Thanks to Shantha Hallett, Capgemini, WALES.                         
                                                                        
Change 26.073  The SORTEDBY= attribute of DB2 datasets that are created 
VMACDB2        by a DATA step (instead of a PROC SORT, which sets the   
Apr 20, 2008   SORTEDBY list of BY variables automatically) is added to 
               DATA steps for DB2STATS, DB2GBPST, and DB2STATB, and for 
               DB2STAT0 and DB2STAT1, but they are already in DB2STATS. 
               SAS will bypass a subsequent PROC SORT of a dataset when 
               its SORTEDBY list matched the requested sort's BY list.  
                                                                        
Change 26.072  Example ANALTCP reports adds API (Socket) data report,   
ANALTCP        corrects the date selection code (it didn't work when    
Apr 20, 2008   both BEGTIME and ENDTIME were requested), and the SYSTEM 
May  6, 2008   selection is revised for a list of SYSTEMs and to allow  
               a prefix. Option 'ALL' was added for the DATA selection. 
               Additional enhancements made on May 6.                   
   Thanks to Steve Clark, DHL IT Services Americas, USA.                
                                                                        
Change 26.071  Support for z/OS 10.0 (INCOMPATIBLE due to MXG coding):  
VMAC1415      -New triplet in TYPE72GO - INCOMPATIBLE due to MXG test of
VMAC18         NRTRIPLT=7 (protected previous short-record IBM error)   
VMAC19         causes zero observations in TYPE72GO without this change.
VMAC30         The new Resource Delay segment is not yet coded, awaiting
VMAC42         test data records; R723RDNX, R723RDNN index/number added.
VMAC7072      -TYPE72GO new CPU times (subset in existing CPUTCBTM):    
VMAC71          CPUCRPTM='CPU TIME*AT CHRONIC*CONTENTION' (R723CPDP)    
VMAC74          CPUPRMTM='CPU TIME*AT PROMOTED*DISPATCH*PRTY'(R723TPDP) 
VMAC78          R723CPDP in TYPE72GO.                                   
VMXGINIT      -TYPE74. New variable:                                    
Apr 18, 2008    SMF74CAP - AVAILABLE*VOLUME*CAPACITY*IN CYLINDERS.      
Jul 21, 2008  -TYPE1415.  New variables:                                
Aug 22, 2008     SMF14EAV='EAV BAM*DETECTED*EXCP OR*XDAP?'              
                 DEB2XUPF='BSAM*PGFIX*OPTION*SPECIFIED?'                
                 EADSCBOK='DCBEADSCBOK*FLAG*OK*ON?'                     
              -TYPE1718.  New variable:                                 
                 SMF18CON='CONTINUATION*RECORD*INDICATOR*MULT-VOL'      
              -TYPE19.  New variables (actually added in z/OS 1.9):     
                 SMF19CYM='VOLUME*HAS*CYL-MANAGED*SPACE?'               
                 SMF19TRK='TOTAL*TRACKS ON*VOLUME'                      
                 SMF19TRM=*TOTAL*TRACKS IN*TRACK-MANAGED*SPACE'         
                 SMF19VLI='VOLUME*SIZE*INFORMATION'                     
              -TYPE30.  New variable added (by z/OS 1.9):               
                 SMF30SNF='ZIIP NORMALIZATION FACTOR'                   
              -TYPE42D2. New variable added:                            
                 SMF42GBQ='LOCK*STRUCTURE*NAME'                         
              -TYPE4222. New subtype 22 creates new TYPE4222 datset     
               for DFSMS Audit Record:                                  
                  JOB     ='JOB NAME'                                   
                  RACFUSER='RACF*USER*ID'                               
                  READTIME='READTIME'                                   
                  S42CNABL='CONTROL*RECORD*ENABLE*FLAG'                 
                  S42CSYNC='CATSYNCH*DATETIME*STAMP'                    
                  S42GMTOF='LOCAL TIME/DATE OFFSE'                      
                  S42JNEXT='NEXT*JOURNAL*RECORD*NUMBER'                 
                  S42JRECN='JOURNAL*RECORD*NUMBER'                      
                  S42MACTY='ACTIVITY*TYPE'                              
                  S42MCUPD='VSI*WHEN*MCUPDACT*SET ON'                   
                  S42MFG1 ='SMF42MFG1*FLAG*ONE'                         
                  S42MJRN ='JOURNAL*RECORD*AVAIL?'                      
                  S42MLIS ='LAST*IN*SET?'                               
                  S42VRLTK='VSREL*LAST*CHANGE*TOKEN'                    
                  S42VRSCN='CURRENT*VRS*CHANGE*COUNTER'                 
                  S42VRSUN='LAST*HSKP*VRS*CHANGE*COUNTER'               
                  S42VSICN='VSI*CONTROL*COUNT'                          
                  S42VTSFL='VIRTUAL*TAPE*SERVER*FLAG'                   
              -TYPE4223. New subtype 23 creates new TYPE4223 datset     
               for DFSMS Security Record:                               
                  DSNAME  ='DATA*SET*NAME'                              
                  DSSNO   ='DATASET*SEQUENCE*NUMBER'                    
                  JOB     ='JOB NAME'                                   
                  LOCLINFO='LOCAL*INFO'                                 
                  RACFGRUP='RACF*GROUP'                                 
                  RACFUSER='RACF*USER*ID'                               
                  READTIME='READ*TIME'                                  
                  S42DEVT ='DEVICE*TYPE'                                
                  S42GMTOF='LOCAL*TIME*OFFSET'                          
                  S42NACTY='ACTIVITY*TYPE'                              
                  S42NSTP ='SECURITY*TYPE'                              
                  S42NVER ='RECORD*VERSION*IDENTIFIER'                  
                  VOLSEQ  ='VOLUME*SEQUENCE*NUMBER'                     
                  VOLSER  ='VOLUME*SERIAL*NUMBER'                       
                  Note: Change 26.187 supports APAR OA25205 which adds  
                  subtype 24 and 25 and adds data to subtypes 20 and 21.
              -TYPE71. New variables added:                             
                 SMF71CFA='AVG*64BIT*COMMON MEM*OBJS*FIXED RSTORE'      
                 SMF71CFM='MIN*64BIT*COMMON MEM*OBJS*FIXED RSTORE'      
                 SMF71CFX='MAX*64BIT*COMMON MEM*OBJS*FIXED RSTORE'      
                 SMF71COA='AVG*64BIT*COMMON MEM*OBJS*ALLOCATED'         
                 SMF71COM='MIN*64BIT*COMMON MEM*OBJS*ALLOCATED'         
                 SMF71COX='MAX*64BIT*COMMON MEM*OBJS*ALLOCATED'         
                 SMF71CRA='AVG*64BIT*COMMON MEM*OBJS*BACKED RSTORE'     
                 SMF71CRM='MIN*64BIT*COMMON MEM*OBJS*BACKED RSTORE'     
                 SMF71CRX='MAX*64BIT*COMMON MEM*OBJS*BACKED RSTORE'     
                 SMF71CSA='AVG*64BIT*COMMON MEM*AUXSTOR*SLOTS'          
                 SMF71CSM='MIN*64BIT*COMMON MEM*AUXSTOR*SLOTS'          
                 SMF71CSX='MAX*64BIT*COMMON MEM*AUXSTOR*SLOTS'          
                 SMF71SOA='AVG*SHARED*MEM OBJ*ALLOCATED'                
                 SMF71SOM='MIN*SHARED*MEM OBJ*ALLOCATED'                
                 SMF71SOX='MAX*SHARED*MEM OBJ*ALLOCATED'                
                 SMF71SRA='AVG*HI VERT*SHARED*FRAMES BACKED*RSTORE'     
                 SMF71SRM='MIN*HI VERT*SHARED*FRAMES BACKED*RSTORE'     
                 SMF71SRX='MAX*HI VERT*SHARED*FRAMES BACKED*RSTORE'     
              -TYPE78PA (Private Area for jobs) new variables added:    
                 COBYHWM ='HWM*BYTES 64BIT COMMON 2GB'                  
                 COBYMAX ='MAX BYTES*64BIT COMMON*ABOVE 2GB'            
                 COBYMIN ='MIN BYTES*64BIT COMMON*ABOVE 2GB'            
                 COBYNTME='TIME STAMP*OF MIN*64BIT COMMON'              
                 COBYTOTL='TOTAL*SAMPLES*64BIT COMMON 2GB'              
                 COBYXTME='TIME STAMP*OF MAX*64BIT COMMON'              
                 COMOHWM ='HWM*BYTES 64BIT*COMMON'                      
                 COMOMAX ='MAX BYTES*64BIT*COMMON'                      
                 COMOMIN ='MIN BYTES*64BIT*COMMON'                      
                 COMONTME='TIME STAMP*OF MIN*64BIT COMMON'              
                 COMOTOTL='TOTAL*SAMPLES*64BIT*COMMON'                  
                 COMOXTME='TIME STAMP*OF MAX*64BIT COMMON'              
                 LGMOHWM ='HWM*BYTES LARGE*MEMOBJ'                      
                 LGMOMAX ='MAX BYTES*LARGE*MEMOBJ'                      
                 LGMOMIN ='MIN BYTES*LARGE*MEMOBJ'                      
                 LGMONTME='TIME STAMP*OF MIN*LARGE*MEMOBJ'              
                 LGMOTOTL='TOTAL*SAMPLES*LARGE*MEMOBJ'                  
                 LGMOXTME='TIME STAMP*OF MAX*LARGE*MEMOBJ'              
                 R782MEML='ADDRESS*SPACE*MEMLIMIT*MB'                   
                                                                        
Change 26.070  Support for SMF 102 IFCID 217 Storage Pool Stats changes.
VMAC102       -Dataset T102S217 new variables (GM existed, relabeled):  
Apr 16, 2008     QW0217GA='TOTAL*GETMAINED*STORAGE*ABOVE*THE BAR'       
                 QW0217GM='TOTAL*GETMAINED*STORAGE*BELOW*THE BAR'       
                 QW0217HF='FLAG*BITS*IN THE*HEADER'                     
                 QW021764='THE*ABOVE THE*BAR DATA*IS INCOMPLETE'        
              -The original IFICD=217 record was in error, with triplet 
               3's data in triplet 2, which MXG protected by hardcoded  
               tests for the segment length to figure out where is that 
               data?  IBM has increased the 02 segment with +24 blank   
               bytes, but that caused zero observations in T102U217.    
               The new 152 Length is now supported, even though no new  
               data was decoded!                                        
   Thanks to Matt Clarke, Charles Schwab & Co., Inc, USA.               
                                                                        
Change 26.069  Change 25.109 stored the new (0-65535) UIC values in the 
VMAC71         old a (0-2054) variables HIUICAV/HIUICMN/HIUICMX, but    
Apr 16, 2008   only HIUICAV=SMF71UAC matched the RMF Paging Report      
               HIGH UIC (AVG).  HIUICMN (MIN) was UAM instead of ULC,   
               HIUICMX (MAX) was UAX when it should have been UHC.      
   Thanks to Ray Dunn, CIGNA, USA.                                      
                                                                        
Change 26.068  This MXG utility to "PRINT/CONTENTS/MEANS" all datasets  
VMXGPRAL       in a SAS Data Library failed with NOCONT=PRINT because   
Apr 16, 2008   while PROC CONTENTS NOPRINT is valid, its counterpart    
               syntax PROC CONTENTS PRINT is NOT valid, and MXG had used
               macro variable &NOCONT to set CONTENT's PRINT/NOPRINT.   
   Thanks to David Schumann, Blue Cross Blue Shield of Minnesota, USA.  
                                                                        
Change 26.067  MXG assumed NTHOSTTN in ID=119 ST=21 to be 8-bytes, but  
VMAC119        this field at the end of the record is shortened to the  
Apr 14, 2008   host name length, and I now see that LEN11903=6, so it is
               now used in INPUT NTHOSTTN $VARYING8. LEN11903 @; code.  
               ERROR: INPUT STATEMENT EXCEEDED RECORD LENGTH occurred.  
   Thanks to Richard J. Schwartz, State Street Corporation, USA.        
   Thanks to Kathleen M. Hall, State Street Corporation, USA.           
                                                                        
Change 26.066  This MXG SAS utility gets z/OS PDS directory block counts
UTILLPDS       one dataset at a time.  Added by Change 25.136 with typos
Apr 14, 2008   in comments, its documentation and code matches examples.
               The one created dataset is now named UTILLPDS.           
   Thanks to Jeffrey A. Harder, Indiana Farm Bureau Insurance, USA.     
                                                                        
Change 26.065  Support for SAS Version 9.2: Revised August 20.          
ANALCNCR        The WARNING code issues originally discussed below are  
VMXGSUM         corrected by SAS Hot Fix F9BA07.  See Change 26.189 and 
ANALDOS         MXG Newsletter FIFTY-TWO, SAS Technical Note 7.         
ASUMDOS                                                                 
ASUMHSM        Except for RETURN/CONDITION CODE 4 for SAS V9.2 WARNINGs,
EXTYTPMX        (which ONLY impacts z/OS job processing, and ONLY if JCL
TYPEZARA         or a scheduling package checks step condition codes):  
UTILXRF1                                                                
VMACVMXA        MXG Software runs without error with SAS Version 9.2.   
VMXGUOW                              and                                
VMXGINIT        MXG Software Version 26.03 eliminates the new WARNING.  
Apr 20, 2008     (or Hot Fix F9BA07).                                   
Apr 22, 2008                                                            
Aug 20, 2008   SAS V9.2 created a new WARNING message and sets CC=4 for 
               changes in variable LENGTHs, but the WARNINGs in MXG code
               were NOT in error, the length changes were intended, the 
               output dataset was valid, so these warnings harmless:    
                                                                        
               "WARNING: Multiple lengths specified for variable XXXXXX"
                                                                        
               EXCEPT FOR: a non-zero condition code/return code can    
               make your z/OS job stream that test condition codes to   
               ABEND.                                                   
                                                                        
               MXG has enabled the new-in-SAS-V9.2 VARLENCHK option to  
               completely eliminate the existence of this WARNING.      
                 (Removed by Change 26.189, Aug 20, 2008).              
                                                                        
               These warnings (all for numeric variables) primarily     
               occurred inside VMXGSUM in two different cases:          
               a. Inside VMXGSUM where PROC MEANS is used to create an  
                  output (summary) dataset. The original MEANS created  
                  8-byte variables with no option to change them, so MXG
                  shortened numeric variable's stored lengths in a DATA 
                  step after the PROC MEANS (to save disk space).       
                  Now, SAS V9.2 detects that (intentional) decrease in  
                  variable length, and prints the above WARNING.        
                    But ONLY if the LENGTH statement precedes the SET!  
                    If the LENGTH statement is AFTER the SET statement, 
                    the warning is NOT printed, but either before or    
                    after, the numeric variable's LENGTH is changed!    
                       These LENGTH statements were located before the  
                       SET statement, because that is the only location 
                       where the length of a character variable can be  
                       changed; character variable's length are set by  
                       the first assignment or attribute statement.     
                       Since the before-the-SET-location also worked for
                       numeric variable, all LENGTH change statements   
                       were located there.                              
                       But all numeric variables are 8-bytes in memory  
                       and the LENGTH (from the last LENGTH statement)  
                       is only used when the observation is written, and
                       so relocating the numeric LENGTH changes to be   
                       after the SET statement eliminates the WARNING   
                       and still changes the variable's LENGTH.         
                                                                        
               b. A JOIN of multiple datasets (SET MON.JOBS TUE.JOBS...)
                  where a variable has different lengths in different   
                  datasets.                                             
                    But only if the variable length in the first dataset
                    is shorter than other lengths.  There is NO WARNING 
                    if the largest length is in that first dataset!     
                  This also occurred inside VMXGSUM, when multiple input
                  datasets are combined in a SET/MERGE/UPDATE/etc., like
                  TRENDing, where TREND has shortened LENGTHs but the   
                  "NEWTREND" internally had fixed, pre-KEEPLEN LENGTHs. 
                  MXG 26.03 added the KEEPLEN option to PROC MEANS to   
                  eliminate these inside-VMXGSUM-cases.                 
                                                                        
               HOWEVER: EVEN WITH MXG 26.03 AND SAS V9.2 THE WARNING CAN
               OCCUR NOW:                                               
                                                                        
               a. If you have tailoring members in "USERID.SOURCLIB"    
                  from old MXG versions, that need the same code        
                  revisions to eliminate.                               
                                                                        
               b. In user-written SAS programs, this could actually be a
                  valid warning that a variable was truncated.          
                                                                        
               OR AT ANY TIME IN THE FUTURE THE WARNING CAN STILL OCCUR:
                                                                        
               c. When an MXG Version that changed variable LENGTHs is  
                  installed, subsequent WEEKLY or MONTHLY jobs create   
                  the WARNING because some PDB's have the old length and
                  some have the new length, when those multiple datasets
                  are joined.  Previous to V9.2, length were changed    
                  with no WARNING nor CC.  Between MXG 24.24 and 25.25  
                  1206 variable's lengths were changed.                 
                  Note: installing a new MXG version on the first day of
                  the week is always safest, i.e., make Tuesday morning 
                  BUILPDB with the new MXG Version, so MON-SUN datasets 
                  are all the same; this will eliminate WEEKLY exposure,
                  but next MONTHLY is still exposed.                    
                                                                        
               THEREFORE: The only way to prevent job failure due to    
               the WARNING is that SAS Institute may provide a new      
               option for SAS V9.2 on z/OS to turn off the setting of   
               the condition code for this WARNING.  When this happens, 
               MXG will enable that new OPTION by default so that the   
               length of variables can be changed by MXG without this   
               failure.                                                 
                                                                        
              -Discovery of how SAS sets stored LENGTH of a variable.   
                                                                        
               A DATA step uses the last LENGTH statement to set length 
               of numeric variables, if there are multiple statements.  
                                                                        
               An existing numeric's variable's length can be changed in
               with a LENGTH statement; that statement can be put BEFORE
               or AFTER the SET statement, and can request the length be
               be SMALLER or LARGER in size.  A 7-byte numeric variable 
               was increased/decreased before/after with these results: 
                                                                        
                    LENGTH      NEW      RESULT  OUTPUT         WARNING 
                    STATEMENT   WANTED   OUTPUT  REQUESTED      MESSAGE 
                    LOCATION    LENGTH   LENGTH  LENGTH         PRINTED 
                                                                        
                    NUMERIC VARIABLES:                                  
                                                                        
                    BEFORE SET  SMALLER     6    YES,TRUNCATED   YES-1  
                    AFTER  SET  SMALLER     6    YES,TRUNCATED   NO     
                    BEFORE SET  LARGER      8    YES             NO     
                    AFTER  SET  LARGER      8    YES             NO     
                                                                        
                    CHARACTER VARIABLES:                                
                                                                        
                    BEFORE SET  SMALLER     6    YES,TRUNCATED   YES-1  
                    AFTER  SET  SMALLER     7    NOT CHANGED     YES-2  
                    BEFORE SET  LARGER      8    YES,INCREASED   NO     
                    AFTER  SET  LARGER      7    NOT CHANGES     YES-2  
                                                                        
               The output lengths are identical between V9.2 and V9.1.3,
               so this is not new behavior.  But further tests with both
               NUMERIC and CHARACTER variables discovered that:         
                                                                        
               NUMERIC: BEFORE SET SMALLER caused WARNING message and   
                        the length was truncated (as requested).        
                                                                        
               NUMERIC: AFTER SET SMALLER does NOT print WARNING, but   
                        the variable was truncated (as requested).      
                                                                        
               NUMERIC: BEFORE or AFTER SET LARGER worked, no WARNING.  
                                                                        
                                                                        
               CHAR:    BEFORE SET SMALLER caused WARNING message but   
                        the length was truncated (as requested).        
                                                                        
               CHAR:    AFTER SET SMALLER does NOT change the LENGTH,   
                        and it prints a different WARNING:              
                         "LENGTH OF CHAR VAR C HAS ALREADY BEEN SET."   
                        i.e., it does not work, yet it still WARNs you. 
                        Interestingly, this WARNING, if length is to be 
                        shortened, does NOT set a condition code, with  
                        either V9.2 or with SAS 9.1.3.                  
                                                                        
               CHAR:    AFTER SET LARGER also does NOT change LENGTH,   
                        and it prints that second WARNING,              
                         "LENGTH OF CHAR VAR C HAS ALREADY BEEN SET.",  
                        also not working and yet WARNING you.           
                        Very interesting, this WARNING, if length is to 
                        be increased, DOES set a condition code, with   
                        both SAS 9.1.3 or SAS 9.2.                      
                                                                        
               CHAR:    BEFORE SET LARGER worked, no WARNING.           
                                                                        
               For NUMERICs, the requested LENGTH is always created, so 
               moving the LENGTH statement to be AFTER the SET statement
               will eliminate the V9.2 WARNINGs and create same output. 
                                                                        
               For CHARs, only BEFORE changes LENGTHs, but BEFORE SMALL 
               prints the new-in-V9.2 WARNING that sets Condition Code: 
                There is NO way to shorten a CHARACTER VARIABLE's LENGTH
                with V9.2 on z/OS without that warning and setting CC=4.
               Neither AFTER SMALL nor AFTER LARGE change LENGTH, and   
               both print the WARNING: CHAR VAR ALREADY SET, which may  
               or may not set condition code, but it's a moot point,    
               since they don't change the variable lengths.            
                                                                        
                                                                        
               Details of the log messages and condition codes with     
               test with SAS V9.1.3 and SAS V9.2 on z/OS and Windows:   
                                                                        
                                                                NUM CHR 
                  1          CC  DATA BEFORE76SMALLER; NEW LEN: YES,YES 
                    PC  9.1       NO WARNING                            
                    PC  9.2       MULTIPLE LENGTHS SPECIFIED FOR VAR N,C
                    ZOS 9.1  00   NO WARNING                            
                    ZOS 9.2  04   MULTIPLE LENGTHS SPECIFIED FOR VAR N,C
                  2              DATA AFTER76SMALLER;  NEW LEN: YES,NO  
                    PC  9.1       LENGTH OF CHAR VAR C ALREADY BEEN SET.
                    PC  9.2       LENGTH OF CHAR VAR C ALREADY BEEN SET.
                    ZOS 9.1  00   LENGTH OF CHAR VAR C ALREADY BEEN SET.
                    ZOS 9.2  00   LENGTH OF CHAR VAR C ALREADY BEEN SET.
                  3              DATA BEFORE78LARGER;  NEW LEN: YES,YES 
                    PC  9.1       NO WARNING                            
                    PC  9.2       NO WARNING                            
                    ZOS 9.1  00   NO WARNING                            
                    ZOS 9.2  00   NO WARNING                            
                  4              DATA AFTER78LARGER;   NEW LEN: YES,NO  
                    PC  9.1       LENGTH OF CHAR VAR C ALREADY BEEN SET.
                    PC  9.2       LENGTH OF CHAR VAR C ALREADY BEEN SET.
                    ZOS 9.1  04   LENGTH OF CHAR VAR C ALREADY BEEN SET.
                    ZOS 9.2  04   LENGTH OF CHAR VAR C ALREADY BEEN SET.
                                                                        
                                                                        
               VMXGSUM is extensively used in MXG summarization programs
               (ASUMxxxx,TRNDxxxx,RMFINTRV,CICINTRV) and in many ANALxxx
               report examples.  If you have local reports that invoke  
               VMXGSUM/ANALCNCR, that have LENGTH statements in INCODE= 
               or OUTCODE= parms, you could generate the WARNINGS. So   
               TEST your REPORTS!!                                      
                                                                        
               This change also eliminated the LNSUMOUT macro variable  
               in Change 25.248 that was thought needed to eliminate the
               warnings.  It only worked in simple cases and ended up   
               with the output variable lengths different than input.   
                                                                        
               Changes made to MXG members to eliminate this WARNING:   
                                                                        
              -VMXGSUM was revised internally, adding the KEEPLEN option
               in PROC MEANS, to propagate the input length to output.  
               That option was added back in SAS Version 7, but only now
               is it needed to eliminate the WARNINGs inside VMXGSUM in 
               the MXGSUM1/MXGSUM2/MXGSUM3 temporary datasets.          
                                                                        
              -VMXGSUM LENGTH statements for NUMERIC variables was moved
               after SET statement to eliminate those WARNING messages. 
                                                                        
              -Other MXG programs listed had PROC MEANS/PROC SUMMARY and
               warning messages that are similarly eliminated now.      
                                                                        
              -ANALCNCR. LENGTH &DEFAULT added to CONCURR2 step.        
                                                                        
              Specific MXG summary programs that required modifications:
                                                                        
              -VMXGUOW   Variable TRANNAME was incorrectly set to $8 in 
                         several LENGTH statements, but CICS TRANNAME is
                         only four bytes long.  The output PDB.ASUMUOW  
                         dataset did have TRANNAME $4, but the $8 caused
                         WARNING messages.                              
              -ASUMDOS   LENGTH DEFAULT=&MXGLEN; needed in INCODE= for  
                         variable DATE.                                 
              -TYPEZARA  Invoked PROC MEANS, rather than VMXGSUM, so the
                         INHERIT option and &KEEPLEN were added.        
                         Fixed so QA would run; dunno if product exists!
              -VMACVMXA  PROC MEANS were updated with /INHERIT &KEEPLEN,
                         and LENGTH statements moved to after SETs.     
              -UTILXRF1  SAS V9.2 PROC CONTENTS changed the length of   
                         variables LABEL and MEMLABEL to $256, and      
                         MEMNAME/DATASET from $8 to $32, causing this   
                         MXG QA utility to generate WARNINGs due to hard
                         coded LENGTH statements.  The PROC CONTENTS    
                         output variable's length change also causes the
                         DOCVER step of QA job to print the WARNING,    
                         when creating DOCVERnn by comparing OLD and NEW
                         version's QA data libraries that have intended 
                         length changes.  This is unavoidable, but not  
                         an error, and only occurs in my QA job.        
              -ANALDOS   Last updated 18 years ago.  PROC MEANS and PROC
                         SUMMARY (same code as MEANS) needed INHERIT and
                         KEEPLEN options added.                         
              -ASUMHSM   Variable REQUEST needed LENGTH 8 when created  
                         in a DATA step; it is a datetimestamp.         
              -EXTYTPMX  The 99 optional TPMX User Character variables  
                         are each INPUT with a $VARYING50 statement, but
                         all are then listed in a default DROP statement
                         (that you would tailor in this exit member if  
                         you wanted one or more to be kept).  But there 
                         was a LENGTH TPMUC1-TPMUC99 $1.; statement, to 
                         minimize disk space if all variables were kept 
                         that generated the WARNING message. That LENGTH
                         statement is now inside comments.              
                                                                        
              The following note was superceded by Change 26.189:       
                                                                        
              -VMXGINIT  Enables OPTION VARLENCHK=NOWARN; for SAS V9.2. 
                         This requires a Hot Fix for Phase I Foundation 
                         but the new option will be in Phase II V9.2    
                                                                        
                   The OPTION VARLENCHK was added to Phase I by Hot Fix.
                   If that OPTION VARLENCHK does not yet exist, on your 
                   SAS V9.2 platform, this note will be printed         
                   NOTE: ARGUMENT 1 TO FUNCTION GETOPTION INVALID,      
                   on the SAS log, but it has no impact, except to tell 
                   you to install that Hot Fix to eliminate that note,  
                   but more importantly to suppress the warning.        
   Thanks to MP Welch, SPRINT, USA.                                     
                                                                        
Change 26.064  Implementation of Rich Olcott's "The Actuals Map" and the
ANALACTM       "WLM Service Goal Summary", as described in his paper,   
Apr 12, 2008   "Dimensions of Service - Exploring WLM's Solution Space".
               The Actuals Map uses SAS/GRAPH to display a daily graph  
               of interval service units consumed by each Service Class,
               color modulated by quality of service delivered (based on
               PERFINDX value: Green LT 0.6, Blue 0.6-1.4, Red GT 1.4). 
               with the graph arranged top to bottom by the Importance  
               of that Service Class. The PowerPoint paper is available 
               at    http://regions.cmg.org/regions/mcmg/               
                     Rich%20Olcott%20-%20Dimensions%20of%20Service%20   
                     -%20MCMG%20.ppt                                    
               The MXG implementation provides additional features and  
               creates html output for these reports, and will create a 
               report for each system, or report each sysplex, etc.     
               Reese is cited simply because he asked for the report!   
   Thanks to Rich Olcott, (now) IBM Global Services, USA.               
   Thanks to Chuck Hopf, Bank of America, USA.                          
   Thanks to Reese Bailey, Progress Energy, USA.                        
                                                                        
Change 26.063  Only DB2ACCT observations with QWACATYP=4, CICS Attach,  
VMXGUOW        will be considered for merge with CICSTRAN, and only if  
Apr 12, 2008   the UOWTIME is non-missing in the DB2ACCT dataset. Some  
               DB2ACCT observations that exceeded SPINCNT, because they 
               had a missing UOWTIME value, were inadvertently output.  
               Now, they are not output, but are counted and a note is  
               printed on the log with the number of these DB2ACCT obs  
               with QWACATYP=4 and UOWTIME=. were discarded by ASUMUOW. 
   Thanks to Diane Eppestine, IBM Global Services, USA.                 
                                                                        
Change 26.062  In some cases (from %UTILBLDP), where there were a lot of
VMXGPARS       special characters like ( ) ; ' % in the text, the parser
Apr 12, 2008   got sick on macro quoting function idiosyncrasies.  Using
               the %SUPERQ macro function appears to solve the parsing. 
   Thanks to Stan Dylnicki, Royal Bank of Canada, CANADA                
                                                                        
Change 26.061  Internal dataset TYPE70SP, added for the "SPLIT70" logic,
VMAC7072       was explicitly named and was not in _N7072, so it could  
VMXGINIT       not be "_NULL_"ed.  MACRO _WTY70SP &WTY70SP..TYPE70SP %  
Apr 12, 2008   is now defined and VMXGINIT updated and _N7072 updated.  
               Since it uses _VTY70 and _KTY70 definitions for content  
               tailoring, no other _xTY70SP macros are not defined.     
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
Change 26.060  COSMETIC SAS V9.2 differences with SAS V9.1.3.           
ANALRMFR       SAS V9.2 changed some text in SASLOG NOTES, but none have
Apr 12, 2008   any impact on MXG execution.  They do make comparison of 
               SAS logs of MXG QA runs from both versions a bit messy,  
               but these were noted in validating MXG execution .       
                                                                        
              -The FULLSTATS statistics at the end of each PROC/DATA    
               step is enhanced with new resource information:          
                                                                        
                  NOTE: The SAS System used:                            
                        real time           28:46.70                    
                        user cpu time       3:26.99                     
                        system cpu time     3:55.99                     
                        Memory                            89953k        
                        OS Memory                         101216k       
                        Timestamp            4/11/2008  6:39:31 PM      
                                                                        
                  The FULLSTIMER Statistics documentation states:       
                    Real Time  - amount of time spent to process the SAS
                                 job, also referred to as elapsed time. 
                    User CPU   - CPU time spent to execute SAS code     
                    System CPU - CPU time spent to perform operating    
                                 system tasks (system overhead tasks)   
                                 that support the execution of SAS code.
                    Memory     - the amount of memory required to run a 
                                 step.                                  
                    OS Memory  - the maximum amount of memory that a    
                                 step requested from the System.        
                    Timestamp  - the end date/time of the step.  Useful 
                                 in diagnosis of SAS run time issues,   
                                 and to correlate log events to time of 
                                 day.  Better than the OPTIONS DTRESET; 
                                 that prints time to the minute at each 
                                 new page, but I would have preferred to
                                 also see time to the milliseconds; a   
                                 simple data step with no variables runs
                                 in about 5 milliseconds.               
                                                                        
              -A new LIBREF, MAPS, exists with SAS V9.2 on Windows; this
               caused WORK.LIBNAMES and WORK.MXGENG datasets to have    
               observation count differences when %VGETENG was used to  
               get the engine type of a libname and saw the new libname.
               This has zero actual other impact.                       
              -The PROC CONTENTS output under SAS V9.1.3 printed only 42
               lines per page, while SAS V9.2 prints 54 lines when both 
               had the OPTIONS PS=54 default.  This caused the location 
               "printed pages 1-105" with 9.1.3 to be "pages 1-79" with 
               SAS V9.2, which, of course, then impacted the location in
               all subsequent "printed pages n-m" log messages.         
              -Inconsistencies in character text in these NOTEs:        
                 NOTE: The DATA step printed page 269.                  
                 NOTE: The DATASTEP printed page 325.                   
                 NOTE: No observations in input data set.               
                 NOTE: No observations in input dataset.                
              -The SPF compare showed four cases of '0c'x before MXGNOTE
               with SAS V9.2, and five different instances with V9.1.3. 
               The MXGNOTE text is a %PUT MXGNOTE statement, so having  
               any difference was quite confusing, until I realized that
               the '0c'x in column 1 of the SAS log file when written to
               a disk file under Windows, is the top-of-page control,   
               and these MXGNOTEs with '0c'x just happen to start a new 
               page, and with the PROC CONTENTS changing pages, there   
               were different lines at the top of each page, but nothing
               more nefarious.                                          
              -COMPRESSION DISABLED for RDHITSP RDHITSNP datasets in 9.2
               that was compressed in 9.1 suggest a minor change in the 
               internal when-to-compress algorithm.                     
              -ANALRMFR: Harmless note new in V9.2 printed on SAS log:  
                "NOTE: The array IN has the same name as a SAS-supplied 
                       or user-defined function.  Parentheses following 
                       this name are treated as array references and not
                       function references."                            
               The array name was changed to ININ to eliminate printing 
               of this new harmless (and useless?) NOTE on the SAS log. 
               I also made all FILE statements parameters consistent,   
               left to right, for ease in reading, before I had realized
               that '0c'x issue was NOT due to differences in the FILE  
               parameters in the ANALRMFR program itself!               
              -An additional NOTE: WORK.CICSUOW HAS 0 OBSERVATIONS when 
               datasets for ASUMUOW all has zero observations, possibly 
               due to use of VIEWs.                                     
                                                                        
Change 26.059  Variable SRDMXUSE was input $1 Format $HEX2., but it is  
VMACSRDF       the numeric Max Percent Cache.  New variable SRDMXUSP is 
Apr 10, 2008   created to avoid an ABEND due to CHAR and NUM conflict if
May  5, 2008   the name were reused and you combined differently built  
               PDB datasets.  The old variable is left unchanged, and   
               you can create the new numeric variable in old PDB's with
                 SRDMXUSP=INPUT(SRDMXUSE,&PIB.1.)/256;                  
               May 5: Flags 3 and 4 decoded into individual variables.  
                                                                        
Change 26.058  IMF dataset TYPECIMS variable INPUTCLS was increased to  
VMACCIMS       2 bytes, but the FORMAT INPUTCLS $HEX2. statement seen   
Apr 10, 2008   before INPUT defined the variable's length to one byte.  
               The $HEX2. was changed to $HEX4.  But the INPUT was also 
               now incorrect, as the two-byte value starts @76, instead 
               of @77 for the one-byte value.  An input class of ' T'   
               that would have been stored as INPUTCLS='T' in one byte  
               will now be stored as INPUTCLS=' T' in two bytes, so you 
               need to examine any tests for INPUTCLS in your reporting 
               programs.                                                
   Thanks to Geert De Batselier, KBC, BELGIUM.                          
                                                                        
Change 26.057  Change 25.090 added QW0225BB to the old T102S225 dataset,
VMACDB2        but it falsely said it was also added to DB2STAT4.  Now, 
Apr  8, 2008   it is kept in DB2STAT4.                                  
   Thanks to Kerry Sommers, Deere & Co., USA.                           
                                                                        
Change 26.056  Replaced by Change 26.264.                               
                                                                        
Change 26.055  SAS V8 only: ERROR: REQVECTOR DATAREP IN DROP, KEEP .... 
UTILCONT       because those two variables only exist with SAS V9.  As  
Apr  4, 2008   they were only referenced in a DROP statement for a temp 
               dataset, they are removed with no other impact.          
   Thanks to George Ellard, Fedex, USA.                                 
                                                                        
Change 26.054  Cosmetic. Format MGBYTES added to the byte-containing    
VMAC16         variables (BYTESORT ICEMOSIZ ICEFILSZ), and the format   
Apr  4, 2008   MGKILO is added to these count variables, which can have 
               large values, so they will "print pretty".               
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
Change 26.053  The ASIxxxxx percentages calculated by MXG in ZRBASI use 
VMACRMFV       ASISMPCT='NUMBER OF*VALID*SAMPLES*THIS ASID', but RMF III
Apr  2, 2008   reports use SSHSMPNR='NUMBER*OF VALID*MINTIME*SAMPLES'.  
               So if there are 2 samples for the job in question, in a  
               100 sample MINTIME interval, and one delay sample, MXG   
               calculated 1/2 = 50% while RMF reports 1/100 = 1%.       
               I could create 50 additional ASIxxxxx variables with the 
               RMF III percentage values, but I personally think the way
               MXG calculates is more useful, since it reflects delay or
               using only when the job is actually active.  However, if 
               you wish to match the IBM RMF III display, you can use   
                 IBMPCT=MXGPCT*ASISMPCT/SSHSMPNR;                       
               because I have added SSHSMPNR to the variables kept in   
               ZRBASI dataset.                                          
   Thanks to Susan Kent, Charles Schwab, USA.                           
   Thanks to Jerry Urbaniak, Acxiom, USA.                               
                                                                        
Change 26.052  IBM SMF 110 Subtype 2 Statistics STID=31 segments are not
VMAC110        always valid; the segment length of 808 indicates there  
Mar 31, 2008   are 16 segments, but many segments have a value of one in
               LDBNRDSN, so MXG now loops to MAX(LDRNRDSN,SKIP/44).     
               Impacts only the CICSDBDS dataset.                       
   Thanks to Diane Eppestine, IBM Global Services, USA.                 
                                                                        
Change 26.051  ACF2 changed the format of ACSMFREL from a packed numeric
VMACACF2       value ('62'x for Release 6.2) to a hex character ('C0'x  
Mar 28, 2008   for release 12), causing INVALID DATA FOR ACSMFREL, which
               cause ACSMFREL to be a missing value, causing additional 
               potential errors.  The INPUT was revised and 'C0'x will  
               now be converted to ACSMFREL=12.0;                       
   Thanks to Patrick Holloman, Zions Bank Corp, USA.                    
                                                                        
Change 26.050  Cosmetic. Variables VOLSER and STORGRUP can be hex zeros 
VMAC74         for tape devices (no volume mounted at end of interval); 
Mar 28, 2008   MXG now translates to blanks to avoid non-printables.    
                                                                        
Change 26.049  Transparent restructure of the _C102sss macros relocated 
VMAC102         IF QWHSIID= nnn THEN DO; statements to be the first in  
Mar 27, 2008   each definition, ahead of the LABEL, FORMAT, LENGTH, etc.
               This permits the use of the _CDExxxx syntax to construct 
               MXG programs for multiple SMF record processing, using:  
                   %INCLUDE SOURCLIB(VMACSMF,VMACID,VMAC110,VMAC26J2,   
                             VMAC30,VMAC74,VMACDB2,VMAC102,IMACKEEP);   
                   DATA                                                 
                    _VARID   _VAR110  _VAR26J2 _VAR30                   
                    _VAR74   _VARDB2  _V102022 _V102044                 
                    _V102063                                            
                    _SMF                                                
                    _CDEID                                              
                    ELSE _CDE26J2                                       
                    ELSE _CDE30                                         
                    ELSE _CDE74                                         
                    ELSE _CDEDB2                                        
                    ELSE _HDR102                                        
                      ELSE _C102022                                     
                      ELSE _C102044                                     
                      ELSE _C102063                                     
                    _END102                                             
                    RUN;                                                
   Thanks to Harald Seifert, HUK-COBURG, GERMANY.                       
   Thanks to Chris Weston, SAS ITRM Development, USA.                   
                                                                        
Change 26.048  If there was no SUM MIN MAX MINTIME MAXTIME or SUMLONG,  
VMXGSUM        VMXGSUM aborted, saying it had nothing to do, even if    
Mar 27, 2008   you had asked for other statistics.  Now corrected.      
                                                                        
Change 26.047  Support for Version 6 of MegaCryption SMF records added  
VMACMGCR       two new variables (INCOMPATIBLY, as they were inserted): 
Mar 27, 2008     MGCRCOMP='COMPRESS=*PARAMETER*IN MGCPARMS'             
                 MGCRTSKI='TCB*ADDRESS'                                 
               and increased the length of two character fields,        
               MGCRIV from $8 to $16, and MGCRKS from $40 to $64.       
   Thanks to Denise Willers, InfoCrossing, USA.                         
                                                                        
Change 26.046  Support for GPARMKY=0050x ESS data creates new variable  
IMAC6ESS         ESSPRTAT='ESSPRTAT*PRINT*ATTRIBUTE*IN ESS'             
VMAC6          Sample record has a value of "document-codepage=IBM-273".
Mar 28, 2008                                                            
   Thanks to Peter MacCarthy-Morrogh, ATOSORIGIN, GERMANY.              
   Thanks to Alexander Raeder, ATOSORIGIN, GERMANY.                     
                                                                        
Change 26.045  VMACIMS support for '08'x log record for IMS Version 10  
VMACIMS        was incorrect even after Changes 26.026 and 26.045; the  
Mar 27, 2008   logic was revised, and enhanced to use the LINTSUB bits  
               to store TRANSACT in LINTPSB (a new field added in V10)  
               and to store LINTSY2 into TRANSACT when appropriate.     
               Labels were added for many variables for IMS08 dataset.  
   Thanks to Rudolf Sauer, T-SYSTEMS, GERMANY.                          
                                                                        
Change 26.044  Change 26.026 misspelled TRANCLAS as TRABCLAS in its new 
VMACIMSA       in IMS 9.0+ two-byte INPUT, so TRANCLAS was still wrong. 
Mar 26, 2008                                                            
   Thanks to Steve Hudson, AVNET, USA.                                  
                                                                        
Change 26.043  Initial header INPUT of SYSTEM in 1.4 to get SYSZONE was 
VMACVMXA       off by 4 bytes, but actual 1.4 INPUT was correct and the 
Mar 26, 2008   value is retained from that INPUT.                       
                                                                        
Change 26.042  Support for new UARG record with PROGNAME added, but only
VMACNMON       PID and FULLCOMD populated (and the short record caused  
Mar 25, 2008   INPUT STATEMENT EXCEEDED error).                         
   Thanks to Steven Olmstead, Northwestern Mutual, USA.                 
                                                                        
Change 26.041  The default INTERVAL in ASUM70PR in MXG 26.01 was changed
ASUM70PR       accidentally to INTERVAL=HOUR, but the intended default  
Mar 21, 2008   of INTERVAL=QTRHOUR,CECINTRV=HOUR are reinstated.        
   Thanks to Jorge Fong, New York City DOITT, USA.                      
                                                                        
Change 26.040  Variables for zIIP engines are added to TREND.TRND72GO:  
TRND72GO         ZIPUNITS ZIEUNITS CPUZIPTM CPUZIETM                    
Mar 21, 2008                                                            
   Thanks to Ingegerd Jansson, Volvo, SWEDEN.                           
                                                                        
Change 26.039 -Support for APAR OA24074 adds variable SMF70HHF to TYPE70
VMAC7072       (COMPATIBLY), with more complete HiperDispatch Status    
Mar 17, 2008   than in the original HiperDispatch Status in SMF70HDM.   
Mar 28, 2008   The new SMF70HHF is formatted HEX2 with these bit values:
Apr  5, 2008     SAS bit   IBM Bit  Meaning                             
                '1.......'   0       HiperDispatch supported            
                '.1......'   1       HiperDispatch is active            
                '..1.....'   2       HiperDispatch status changed       
              -MXG 26.01 SMF70PAT/CPUPATxx, new parked time, was wrong; 
               my guessed INPUT of SMF70PAT/CPUPATxx Parked Time with no
               test records was incorrect, needing a divide by 4096.    
               So MXG 26.02 is needed for HiperDispatch and Parked time.
              -See Newsletter FIFTY-TWO for description and schematics  
               of this new "Parked Time" durations in TYPE70/TYPE70PR.  
              -The PCTMVSBY calculation now subtracts SMF70PAT (parked) 
               from SMF70ONT (online) for the denominator. Those three  
               elapsed time durations in SMF70PAT, SMF70ONT and DURATM  
               are gathered separately and small deviations are expected
               and observed: SMF70PAT was 0.015 seconds (15 millisecs)  
               larger than SMF70ONT, which would have created a negative
               PCTMVSBY, so MXG's heuristic now calculates the PCTMVSBY 
               only if the ONT-PAT delta is at least +.02 seconds.      
              -SMF70HDM was not initialized to blank and was incorrectly
               kept in TYPE70 instead of TYPE70PR.                      
              -This APAR and Change applies only to z10 and later CPUs. 
                                                                        
Change 26.038  Datasets VXPRCIOP and VXAPLSL0 were not _NULL_'ed in the 
VMACVMXA       MACRO _NVMXA.                                            
Mar 17, 2008                                                            
                                                                        
====== Changes thru 26.037 were in MXG 26.01 dated Mar 11, 2008=========
                                                                        
Change 26.037  The FORMATS step in the first MXG 26.01 fails on z/OS due
FORMATS        to a syntax difference between Windows and z/OS SAS that 
Mar 11, 2008   I added after the last QA test on z/OS.                  
   Thanks to Nathan Loewenthal, CITI, USA.                              
                                                                        
====== Changes thru 26.036 were in MXG 26.01 dated Mar 10, 2008=========
                                                                        
Change 26.036  Variable R793CUT was 0.062 when it should have been 62,  
VMAC79         the Percent MVS Utilization.  Variable R793CUU, Percent  
Mar 10, 2008   LPAR Utilization was correct. The 4.3 input is now 4.    
   Thanks to Dan Almagro, Automobile Club of Southern California, USA.  
                                                                        
Change 26.035  Dataset TYPE74SY variable R742SDIR is FORMATed with the  
FORMATS        existing $MG074PD format, and that format is updated with
VMAC74         new value '20'x:'20X:LOCAL' so it can be used for both   
Mar 10, 2008   R742SDIR and R742PDIR variables                          
   Thanks to Stephen Hoar, Lloyds TSB, ENGLAND.                         
                                                                        
Change 26.034  ITRF TYPE='10'x INPUT STATEMENT LENGTH error because the 
VMACITRF       record with LENGTH=251 was not expected; now the code    
Mar  8, 2008   tests each INPUT statement to verify data is present.    
               Comments added to indicate that MXG has been tested with 
               records from OMEGAMON XE FOR IMS 4.1 with DCR 77/78.     
                                                                        
Change 26.033  Support for new VMWare Objects, CA NSM Performance cubes 
EXTVW011       creates these new datasets with TYPETNG (NSM was TNG):   
EXTVW012         DATASET    DDDDDD       DESCRIPTION                    
EXTVW013          VW011     VW011     NSM CA CPU INTERRUPT GRO          
EXTVW014          VW012     VW012     NSM CA CUBE STORE GROUP           
EXTVW015          VW013     VW013     NSM CA DISK GROUP                 
EXTVW016          VW014     VW014     NSM CA PROCESS GROUP (PI          
EXTVW017          VW015     VW015     NSM FILESYSTEM                    
EXTVW018          VW016     VW016     NSM NETWORK                       
EXTVW019          VW017     VW017     NSM PRINTER QUEUE                 
FORMATS           VW018     VW018     NSM PROCESS                       
IMACTNG           VW019     VW019     NSM USERS                         
VMACTNG        and new metrics were added to several existing VMWare    
VMXGINIT       datasets.                                                
Mar  8, 2008                                                            
   Thanks to Xiaobo Zhang, CheckFree, USA.                              
                                                                        
Change 26.032  Debugging PUT _N_= _I_= _J_= LOCCONN=; statement printed 
VMACRMFV       lots of messages on the log if you enable CF data, but   
Mar  7, 2008   had no other adverse impact, and is now removed.         
   Thanks to Stephen Hoar, Lloyds TSB, ENGLAND.                         
                                                                        
Change 26.031 -Support for Dedicated zAAPs and fix for Dedicated zIIPs. 
VMAC7072       Change 25.211 only worked for one Dedicated zIIP engine, 
VMXG70PR       because it used total ZIPWAITM vs the ZIPWAIT(LCPUADDR+1)
Mar  7, 2008   wait time for each engine, impacting TYPE70 variables    
               ZIPACTTM, PCTZIPBY, and PCTCIBYn.  That logic is fixed,  
               and new logic for Dedicated zAAPS is added, impacting the
               IFAACTTM, PCTIFABY, and PCTCIBYn variables.  For Shared  
               zIIPs or zAAPs, the LPAR Dispatch time was always valid, 
               but for Dedicated zAAPs or zIIPS, the dispatch time was  
               always reported as 100% busy.                            
               I recommend that you do not use the PDB.TYPE70PR dataset,
               as it has too much detail and requires lots of logic in  
               your programs to sort out what's what; instead, use the  
               ASUM70PR-created PDB.ASUMCEC and PDB.ASUMCELP CEC-level  
               summary datasets or PDB.ASUM70PR and PDB.ASUM70LP, which 
               already have separate variables for the "CPU" times for  
               your CPs, ZIPs and ZAPs.  But, if you still use TYPE70PR:
                  For Dedicated zIIPs and zAAPs, in the PDB.TYPE70PR    
                  dataset, the LCPUPDTM and LCPUEDTM dispatch values are
                  not changed, and will still be the "100%" value.  But 
                  MXG now creates IFAACTTM and ZIPACTTM variables from  
                  the ORIGWAIT field for each LCPUADDR that is an IFA or
                  a ZIP engine.                                         
              -Support for Dedicated zIIPs and zAAPs in ASUM70PR-created
               summary datasets was also added by this change, so the   
               PDB.ASUM70PR, PDB.ASUM70LP, PDB.ASUMCEC and PDB.ASUMCELP 
               datasets have correct values.                            
   Thanks to Mark Cohen, DTS, ITALY.                                    
                                                                        
Change 26.030 -Two extraneous debugging PUT statements were removed from
VMACNTSM       the SQL record processing.                               
Mar  6, 2008  -Datasets SQLDATAB and MSQDATAB have new variable         
               INSTANCE ('SQL' in SQLDATAB, MSQSRVDB in MSQDATAB),      
               and DATABASE is populated, for ease in combining them.   
   Thanks to Roger Zimmerman, Hewitt Associates, USA.                   
                                                                        
Change 26.029  Cosmetic.  A slash was missing in the SUCCESSFULLY READ  
VMACSMF        SMF message, causing a linewrap on the SAS log.          
Mar  6, 2008                                                            
   Thanks to Peter Krijger, ANZ National, NEW ZEALAND.                  
                                                                        
Change 26.028A Fields added COMPATIBLY to HSM FSR SMF record in z/OS 1.8
FORMATS        and z/OS 1.9 are now created in HSMFSRST dataset, and all
VMACHSM        bit flags are decoded.                                   
Mar  6, 2008   New variables added in z/OS 1.8 SMF records:             
                   FSRCPYME='REQUESTED*FAST REPLICATION*METHOD'         
                   FSRFDASD='DASD*COPY*DELETED?'                        
                   FSRFDCPY='DUMP CLASS*COPY POOL*DELETED?'             
                   FSRFDVER='ENTIRE*DUMP*VERSION*DELETED?'              
                   FSRFPIGB='USED*TAPE*ALREADY*MOUNTED?'                
                   FSRFRDMP='FAST*REPLICATION*DUMP OR*RESORE?'          
                   FSRFREMO='COMPLETED*ON*REMOTE*SYSTEM?'               
                   FSRFRHOS='MWE*PROCESSED*BY REMOTE*HOST?'             
                   FSRFRTRY='BACKUP*DURING*RETRY*INUSE?'                
                   FSRFBKTP='BACKUP*VERSION*DELETED*IS ON TAPE?'        
                   FSRFEXBV='BACKUP*VERSION*DELETED BY*EXPIREBV?'       
                   FSRFEXDT='DATASET*DELETED BY*EXPDT OR*MGMTCLASS?'    
                   FSRFVINI='RECOVERY*SCHEDULED*FROM VOLUME*REQUEST?'   
                   FSRFXPL1='DATASET*BEING*EXPIRED*IS FROM ML1?'        
                   FSRFXPL2='DATASET*BEING*EXPIRED*IS FROM ML2?'        
                   FSRRECON='RECONNECTION*MIGRATION?'                   
                   FSRFLG4 ='FSRFLG4*FLAGS'                             
                   FSRFG480='FSRF*FRRECOV*DSNAME*COMMAND?'              
                   FSRFG440='FSRF*FRRECOV*FROMDISK*ONLY?'               
                   FSRFG420='FSRF*MULTIPLE*DSNAMES*SPECIFIED?'          
                   FSRFG410='FSRF*MULTIVOLUME*FRRRECOV*REQUEST?'        
                   FSRFG408='FSRF*ALTERPRI*COMMAND?'                    
                   FSRFG404='FSRF*ALTERPRI*HIGH*KEYWORD?                
                   FSRFG402='FSRF*INC*COPY POOL*INCREMENTAL?'           
                   FSRORGID='HOST*ID THAT*GENERATED*REQUEST'            
                   FSRFREAS='FSR*FR*REAS*RETURN*CODE'                   
                   FSRCLIP ='TARGET*VOL+FROM MWE*VOL RESTORE'           
                   FSRCPNAM='COPY*POOL*NAME'                            
               New variables added in z/OS 1.9:                         
                   FSRECYSO='SOURCE*FOR*RECYCLE*OPERATION'              
                   FSRECYCN='RECYCLE*COUNTER'                           
                   FSRCALTW='RECALL*CAUSED*TAPE*TAKEAWAY?'              
                   FSRPSQTY='TRACKS*NEEDED*WHEN ML1*OUT OF SPACE'       
               Bit variables now decoded that should have been decoded: 
                   FSRFFSTR='FROM*STRIPED?'                             
                   FSRFFSTR='TO*STRIPED?'                               
                   FSRFNONQ='NOT*SERIALIZED*ENQUEU?'                    
                   FSRFNQN1='ENQUE*FAILED*ONCE?'                        
                   FSRFNQN2='ENQUE*FAILED*AGAIN?'                       
                   FSRFVER ='FSRGEN*CONTAINS*VERSON?'                   
                   FSRFVSDS='VSAM*DATASET?'                             
                   FSRFT0  ='CONCURRENT*COPY*FUNCTION*USED?'            
               Variables DSRTYPE,VSRTYPE,FSRTYPE,WFSRTYPE are decoded by
               MGHSMFU format, which is updated with new values of:     
                   21='21:FAST REPLICATION BACKUP FUNCTION'             
                   22='22:FAST REPLICATION RECOVER FUNCTION'            
                   23='23:FAST REPLICATION DELETE FUNCTION'             
   Thanks to Michael Friske, Fidelity Systems, USA.                     
                                                                        
Change 26.028  Protection for a divide by zero when SMF70GMU was zero,  
VMXG70PR       in the new Group Capacity PCTGCUSE creation in ASUM70GC  
Mar  6, 2008   dataset.                                                 
   Thanks to Alexander Raeder, ATOSORIGIN, GERMANY.                     
                                                                        
Change 26.027  Nigel's Monitor, NMON, writes RECTYPE='ERROR' records,   
VMACNMON       with a text message (ERRORMSG=), and MXG printed the text
Mar  6, 2008   on the SAS log, but ERRORMSG= made it look like it was an
               MXG error.  Now, when these records are read, the text on
               the log is printed with this header information          
                                                                        
                 NMON RECTYPE=ERROR: _N_=13720 SNAPSHOT=T0144           
                                     ENDTIME=25FEB2008:02:37:52.00      
                  MESSAGE: ERROR,T0144,Disk statistics reset detected.  
                           This time Read=0 Write=0 and Total So far=0  
                                                                        
               You'll have to contact your NMON guru over in AIX/LINUX  
               land, to find out if that message is expected or not.    
   Thanks to Steven Olmstead, Northwestern Mutual, USA.                 
                                                                        
Change 26.026  IMS Log updates for IMS Version 9 or IMS Version 10.     
IMACIMS       -TYPEIMS7 and TYPEIMSA (used in ASMIMSL6/JCLIMSL6) now    
IMACIMSA       both keep these new variables from 07 and 08 log records 
VMACIMS        in their IMS0708 and IMSTRAN and BMPS datasets:          
VMACIMSA         From IBM IMS 07 log record:                            
TYPEIMS7           DLRABRSN='ABEND*REASON*CODE'                         
TYPEIMSA           DLRCPUID='CPU ID*PLACE*HOLDER'                       
Mar  6, 2008       DLRESAF ='ESAF*CALLS'                                
                   DLRFLD  ='FASTPATH*FLD*CALLS'                        
                   DLRNPGM ='DLRNPGM '                                  
                   DLRNWID ='NETWORK*IDETIFIER*OF LAST*MESSAGE'         
                   DLROSAMR='OSAM*IO*READS'                             
                   DLROSAMW='OSAM*IO*WRITES'                            
                   DLRPOS  ='FASTPATHP*POS*CALLS'                       
                   DLRRLSE ='RLSE*CALLS'                                
                   DLRTOTIO='TOTAL*DL/I*OSAM+VSAM*CALLS'                
                   DLRVSAMR='VSAM*IO*READS'                             
                   DLRVSAMW='VSAM*IO*WRITES'                            
                   DLRXCOPY='COPY*CALLS*(XQUERY)'                       
                   DLRXRSTR='RSTR*CALLS*(XQUERY)'                       
                   DLRXSAVE='SAVE*CALLS*(XQUERY)'                       
                 From IBM IMS 08 log record:                            
                   LINTFLG1='FLAG*1'                                    
                   LINTPGM ='PROGRAM*NAME'                              
                   LINTPSB ='PSB*NAME'                                  
                   LINTSUB ='IMS08*SUBTYPE'                             
                   LINTSY2 ='TRANCODE OR DBNAME'                        
              -The default in _IMSVERS value is now consistently 8.1.   
                 Member IMACIMS is used only in archaic TYPEIMS member. 
                 Member IMACIMS7 sets _IMSVERS for TYPEIMS7 member.     
                 Member IMACIMSD sets _IMSVERS for TYPEIMSD (DBCTL).    
                 Member IMACIMSA sets _IMSVERS for TYPEIMSA (ASMIMSL6). 
                 Member IMACIMSA sets _IMSVERS for TYPEIMSB (ASMIMSL6). 
              -You can always use the &MACKEEP macro variable to set the
               value of _IMSVERS instream, with this syntax:            
                 %LET MACKEEP=  MACRO _IMSVERS 10.0 %  ;                
                 %INCLUDE SOURLIB(TYPEIMS7);                            
              -All datetime stamps are now converted to local time zone 
               when INPUT in the VMACIMS and VMACIMSA members, now that 
               GMTOFFTM exists in all active IMS Versions; this makes   
               the detail IMSxx datasets consistent with the final      
               IMS0708 and IMSTRAN output datasets.  The GMTOFFTM logic 
               in the TYPEIMSA member was removed.                      
              -These five variables are now correctly input as Packed:  
                 DLRMINT  /* WAIT TIME*FOR*INTENT*CONFLICT*/            
                 DLRMPOL  /* WAIT TIME*FOR*POOL*SPACE*/                 
                 DLRMSCH  /* ELAPSED TIME*FOR*SCHED PROCESS*/           
                 DLRTMEIO /* DBCTL*DB I/O*ELAPSED*TIME*/                
                 DLRTMEPL /* DBCTL*LOCKING*ELAPSED*TIME*/               
              -Additional cleanup and validation with V8, V9, and V10   
               log records, and detection of incorrect _IMSVERS setting 
               in many cases will stop processing with log messages.    
   Thanks to Steve Hudson, AVNET, USA.                                  
                                                                        
Change 26.025  Support for APAR OA12774 new z10 variables (COMPAT).     
VMAC7072       MXG 25.25 supports (TOLERATE) the new z10 processor, and 
VMAC71         it won't fail if you install this APAR, but you will need
Mar  2, 2008   MXG 26.01 if you want to use any of these new variables: 
Mar  6, 2008   New variables in TYPE70 dataset:                         
                  SMF70HDM='HIPERDISPATCH*IS*ACTIVE?'                   
                  SMF70MCR='MODEL*CAPACITY*RATING OF*SMF70MDL'          
                  SMF70MPC='MODEL*PERMANENT*CAPACITY*IDENT'             
                  SMF70MPR='MODEL*PERMANENT*CAPACITY*RATING'            
                  SMF70MTC='MODEL*TEMPORARY*CAPACITY*IDENT'             
                  SMF70MTR='MODEL*TEMPORARY*CAPACITY*RATING'            
                  CPUPATm0='CPU 0*PARKED*DURATION'                      
                  CPUPATm1='CPU 1*PARKED*DURATION'                      
                  CPUPAT..         ...                                  
                  CPUPATYb='CPU 62*PARKED*DURATION'                     
                  CPUPATYC='CPU 63*PARKED*DURATION'                     
                  CPUPATTM='TOTAL*PARKED*DURATION*ALL CPUS'             
               New variables in TYPE70PR dataset:                       
                  SMF70CAN='AVERAGE*THIS SMF70CIN*ENGINES*IN CEC'       
                  SMF70POW='AVERAGE*HIPERDISPATCH*WEIGHT'               
                  SMF70PAT='LCPUADDR*PARKED*DURATION'                   
               New variables in TYPE70Y2 Crypto dataset:                
                  R702NH5C='SHA-384/512:CALLS*TO*HASH'                  
                  R702NH5B='SHA-384/512:DATA*BYTES*HASH'                
                  R702NH5I='SHA-384/512:PCMF INSTR*USED TO*HASH'        
                  CRYIH5R ='SHA-384/512*HASHING*RATE'                   
                  CRYIH5S ='SHA-384/512*HASHING*SIZE'                   
               New variables in TYPE71 dataset:                         
                  SMF71LOA='AVG*LARGE MEMORY*OBJECTS*ALLOCATED'         
                  SMF71LOM='MIN*LARGE MEMORY*OBJECTS*ALLOCATED'         
                  SMF71LOX='MAX*LARGE MEMORY*OBJECTS*ALLOCATED'         
                  SMF71LRA='AVG NR*1 MB FRAMES*BACKED*REAL STORE'       
                  SMF71LRM='MIN NR*1 MB FRAMES*BACKED*REAL STORE'       
                  SMF71LRX='MAX NR*1 MB FRAMES*BACKED*REAL STORE'       
              -Discovered: these 12 percentage vars for CPUIDs 10,11,12 
                 PCTCPBYA-YC, PCTIFBYA-YC, PCTZIBYA-YC, PCTCIBYA-YC     
               were overlaid by values from CPUIDs 61,62,63 if they     
               existed, because those names were reused.                
               New variable names for these metrics are now:            
                 PCTCPBXA-XC, PCTIFBXA-XC, PCTZIBXA-XC, PCTCIBXA-XC     
              -Discovered: these variables summed across all CPUIDs     
               did not include CPUIDs 54 thru 63 (suffix ZT-ZZ,YA-YC):  
                 CPUWAITM MVSWAITM CPUPDTTM CPUPATTM CPUEFFTM           
                                                                        
Change 26.024  DB2STATS variables QTPACAUT, QTPACNOT and QTPACPUB were  
VMACDB2        not de-accumulated.                                      
Mar  1, 2008                                                            
                                                                        
Change 26.023  MXG 25.07-MXG 25.25 only. Fewer obs created in TYPE78CU  
VMAC78         and in TYPE72IO datasets. The last LCUID was never output
Feb 27, 2008   in TYPE78CU because MXG's test for 60 bytes remaining    
Apr 11, 2008   should have been for 58 bytes after the pointer was at   
               the end of the 2-byte field.                             
   Thanks to Steve Lottich, The University of Iowa Hospitals, USA.      
                                                                        
Change 26.022  The RACF Unload utility IRRDBU00 was revised to support  
VMACRACF       reading the EBCDIC text file while MXG executes on ASCII.
Feb 26, 2008   The output file is all text/ZD fields and MXG assumed    
               that under ASCII the data would have been downloaded and 
               translated from EBCDIC, but using ftp access to read the 
               file from ASCII did not work without revisions.          
              -Also, there were '92'x ASCII text (instead of '27'x for  
               single quotes) that when uploaded to z/OS became '00'x,  
               a non-printable, fortunately inside comments in VMACRACF 
               so they had no impact.  But then a search of all members 
               found those text were also in the VMAC122, NEWSLTRS, and 
               DOCVER members, which were also corrected to '27'x text. 
   Thanks to Paul Gillis, Pacific Systems Management Pty., AUSTRALIA    
                                                                        
Change 26.021  Specifying OUTDATA=CICSVIEW and OUTVIEW=YES with VMXGSUM 
VMXGSUM        caused errors because there was an extraneous &VWUTDATA  
Feb 26, 2008   reference outside the DO group in line 1874.  Deleting   
               the line corrects the MXG error.                         
   Thanks to Nigel Greenwood, EDS, UK.                                  
                                                                        
Change 26.020  Support for optional user-created CICS fields:           
IMACICU6          CMODHEAD   CMODNAME    Variables Created              
IMACICU7          VZSOAP     SOAPOUT     SOAPOUCN, SOAPOUTM             
UTILEXCL          VXAOAP     SOAPABCT    SOAPABCT                       
VMAC110                                                                 
Feb 24, 2008                                                            
   Thanks to Herbert Sweeney, Verizon Data Services Inc, USA.           
   Thanks to Vernon W. Gordon - Verizon Data Services Inc, USA.         
   Thanks to Marshall S. Hellmann - Verizon Data Services Inc, USA.     
   Thanks to Michael F. Root - Verizon Data Services Inc, USA.          
                                                                        
Change 26.019  The DURATM values in IMACSHFT are used only for _DURSET, 
IMACSHFT       but the values in the examples were wrong.  For those    
Feb 20, 2008   three example shift definitions, the DURATM values should
               have been  9*3600, 15*3600, and 48*3600                  
   Thanks to Jeffrey A. Harder, Indiana Farm Bureau Insurance, USA.     
                                                                        
Change 26.018  Dataset BVIR30 contained only data for Preference Group  
VMACBVIR       Zero, PG0.  These PG1 variables are now INPUT and KEPT:  
Feb 20, 2008   VIRVOL01 DATRES01 AV4HAG01 VL4MIG01 AV48AG01 VL48IG01    
               AV35AG01 VL35IG01                                        
   Thanks to Stan Adriaensen, AXA, BELGIUM.                             
                                                                        
Change 26.017  The COMPBYTE and UNCOMBYT byte counts were increased to 8
VMACXCOM       bytes with two overflow fields that are input and added. 
Feb 19, 2008   One new field overlaid TCPIPPNR, so it's a missing value.
   Thanks to Peter J. Gray, EDS, AUSTRALIA.                             
                                                                        
Change 26.016  BLDSMPDB options WEEKKEEP WEEKDROP MNTHKEEP MNTHSROP did 
BLDSMPDB       not protect for lower case in the user input text.       
Feb 18, 2008                                                            
   Thanks to Loren Mitchell, Los Angeles County Office of Education,USA.
                                                                        
Change 26.015  Variable R783HLCU was not kept nor labeled, even though  
VMAC78         I used it to confirm SMF78HIX was wrong, which led to    
Feb 18, 2008   IBM APAR OA21799 (see Change 25.141)!                    
   Thanks to Christa Neven, KBC Bankverzekerinngsholding, BELGIUM.      
                                                                        
Change 26.014  IMPLX Version 4.1 support was incorrect; six fields that 
VMACMPLX       were input as PIB4. are actually PIB8., causing trashed  
Feb 15, 2008   values in many variables.                                
   Thanks to David Bixler, FISERV, USA.                                 
                                                                        
Change 26.013 -With PARM='NONE', ASMRMFV still attempted to open the    
ASMRMFV        DDNAMES RMFBSAM, RMFFILT, and RMFSKIP.  NONE was intended
Feb 10, 2008   to product no output, but omitting //RMFBSAM resulted in 
               a spurious USER ABEND, now eliminated. The //RMFBSAM DD  
               is still required for all other RMF table based selection
              -Comments documenting RMFBSAM and "NONE" were enhanced.   
              -PARM='NONE' caused unnecessary ASMRMFV processing: the   
               output records were completely built before the test for 
               NONE, which prevented the write of the record.  The test 
               was relocated to bypass that unwanted processing.        
   Thanks to Jack Schudel, University of Florida, USA.                  
                                                                        
Change 26.012  Cosmetic, used by MXG technical support.  VMXGINIT prints
VMXGINIT       the z/OS full dataset name or the ascii full path name   
Feb  8, 2008   of each of the SOURCLIB and SASAUTOS concatenations.     
               On ASCII, a FILENAME statement with the LIST; operand is 
               used, but that does not work on z/OS, so a DATA step that
               reads VEXTFL is used:                                    
                DATA; SET SASHELP.VEXTFL (UPCASE(FILEREF)='SOURCLIB')); 
                                                                        
Change 26.011  Change 25.306 did NOT support IFCID 22 APAR PK38803; that
EX102I22       change text claimed SMF records with the APAR were wrong,
IMAC102        but that was my error; the SMF records with the APAR do  
VMAC102        match IBM's DSECT, which I misread.  The T102S022 dataset
VMXGINIT       created by Change 25.306 will only have valid data in the
Feb  8, 2008   first obs output from each record; subsequent segments   
               were mis-aligned and had trashed values.                 
               Moreover, MXG output T102S022 for each INDEX in each plan
               keeping repeated values for the plan fields and wasting  
               disk space.  This change creates new T102I022 Index      
               dataset with an obs for each index, keeping only the     
               index and sort variables, and creates the existing       
               T102022 dataset with one obs for each plan segment,      
               keeping only the plan related variables.                 
                                                                        
               These index variables were removed from T102S022 dataset 
                 QW0022MS QW0022NM QW0022AC QW0022AN                    
                 QW0022MO QW0022XF QW0022FF QWOL22AC                    
                 QW0022AC QWOL22AN QW0022AN                             
               as they are now only kept in the T102I022 index dataset. 
   Thanks to Scott Barry, SBBWorks, Inc, USA.                           
                                                                        
Change 26.010  New utility %MACRO VMXGPARS parses macro variables, like 
UTILBLDP       MACKEEP=, INCODE=, etc., that are a long string of text, 
VMXGPARS       into "chunks" that fit in 72 bytes and that are chunked  
Feb  8, 2008   into reasonably humanly readable pieces of code.   Used  
               now in UTILBLDP, it's use will like be extended to other 
               %MACRO defining members in the future.                   
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
Change 26.009  NOTE: INVALID DATA FOR TRNSTTRA and TRNSTOPA is cosmetic 
VMACCIMS       only, and occurs when either field is not populated.  MXG
Feb  6, 2008   now protects the PD input with double question marks.    
               The output datasets were correctly created.              
   Thanks to Ermanno Bertolotti, Intesa SanPaolo, ITALY.                
                                                                        
Change 26.008  New MYDATA parameter is added, and a new CASE 3 example  
VMXGUOW        of how you might use it to insert new dataset name(s) and
Feb  5, 2008   a keep list, so that you can create a subset of ASUMUOW  
               (eg, based on Transaction name), without having to repass
               millions of records in ASUMUOW to create it.             
   Thanks to Chuck Hopf, Bank of America, USA.                          
                                                                        
Change 26.007  The CICS Dispatcher Statistics CICDS dataset created from
VMAC110        SMF 110 Subtype STID=60 statistics segments, and the MXG 
VMXGCICI       PDB.CICINTRV interval summary dataset have new variables 
Feb  5, 2008     CICTCTTM='TOTAL*DSGTCT*DURATION*TIME'                  
                 CICTDTTM='TOTAL*DSGTDT*DISPATCHED*TIME'                
                 CICTWTTM='TOTAL*DSGTWT*IN OS WAIT*TIME'                
               and the existing                                         
                 CICTCBTM='TOTAL*DSGACT*CPU TCB*TIME'                   
               summed across all 19 CICS TCB names for the interval.    
               These data were added primarily so an IBM "Rule of Thumb"
               could be tested; new variable                            
                 PCTREGBY='PCT*TCB/(TDT+TCW)*BUSY;                      
               calculates the percent of Dispatch+OS Wait time that was 
               executing CPU TCB time, and IBM's recommends that if the 
               PCTREGBY formula calculates to more than about 70 percent
               busy, they suggest that you need additional CICS Regions.
   Thanks to Jacob Nudel, Thompson BETA Systems, USA.                   
                                                                        
Change 26.006  Support for 64 CP Engines adds sets of variables for CPs 
VMAC7072       54 thru 63 with suffixes ZS-ZZ and YA-YC for TYPE70 data.
Feb  1, 2008   No such systems yet exist, but are expected so the code  
Mar  8, 2008   is now in place to create those per-CPU variables.       
                                                                        
Change 26.005  In all XAM VM datasets, variable ZDATE was LENGTH 5,     
VMACXAM        because it was created by code in VMACXAM instead of the 
Jan 31, 2008     %%INCLUDE SOURCLIB(IMACZDAT);                          
               which sets ZDATE's length to 4, which is always used to  
               create ZDATE, not only for length consistency, but the   
               IMACZDAT member is the tailoring member you would use for
               a rerun of a prior daily build PDB job, to set the value 
               of ZDATE to that prior date.  Having LENGTH 5 is not an  
               error, even though only 4 bytes are used elsewhere in MXG
               but it's inconsistency uncovered this inconsistency.     
   Thanks to Theo Peelen, Fortis Bank, BELGIUM.                         
                                                                        
Change 26.004 -MXG expected NMON's "AAA,time" record ahead of "AAA,date"
VMACNMON       but this site's data had "AAA,date", several lines, then 
Jan 31, 2008   "AAA,time", which caused STARTIME to always be a missing 
               value.  Presuming a local specification changed the order
               I protected STARTIME for either order, found STARTIME was
               now always populated in NMONINTV, but was still always   
               missing in NMONCPUD and all of the other datasets.  After
               much debugging, I discovered the original NMON data file 
               had been SORTED, which not only put date ahead of time,  
               but had lumped all of the end of interval 'ZZZZ' records 
               at the bottom, so none of the ENDTIME-only records, like 
               the CPUnn records, had either ENDTIME or STARTIME.       
               The moral: DO NOT SORT NMON DATA;                        
              -Support added for new record types: ESSREAD and ESSWRITE 
               with seven VPATHn KB/sec, and ESSXFER with seven transfer
               rates per second for each vpath.                         
   Thanks to Massimo Pugliese, ELSAG Spa, ITALY.                        
                                                                        
Change 26.003  LPARCPUS is not integer in PDB.ASUM70LP & PDB.ASUMCELP   
VMXG70PR       MXG summary datasets, and LPARCPUS=0 could have been a   
Feb  5, 2008   value between 0 and 1, because MXG erroneously FLOOR'd   
               LPARCPUS to force an integer value.  While LPARCPUS in   
               PDB.TYPE70PR observations at the LCPUADDR detail is an   
               integer number of CP engines, in summarizing counts of   
               LCPUADDRs in each LPAR, and/or multiple intervals, MXG   
               sums SMF70ONT (the Online Time) and divides by DURATM,   
               the interval duration to create LPARCPUS.  But the IPL   
               interval for a 3-CP engine with DURATM 5 minutes had only
               3 minutes of uptime, SMF70ONT, causing LPARCPUS=0, when  
               the true LPARCPUS=0.7 value should have been calculated. 
               Now, that FLOOR is removed, LPARCPUS is FORMATed 6.1,    
               (so the printed value will be rounded and hence those old
               2.9999 values will print as 3.0), and is now labeled:    
                 LPARCPUS='LPAR*AVERAGE*NUMBER OF*CP*PROCESSORS'        
               in the datasets built by ASUM70PR summarization program. 
   Thanks to William Wai Lun WONG, HSBC, HONG KONG.                     
                                                                        
Change 26.002  Cosmetic, but still wrong and possibly confusing: a dozen
FORMATS        value statements in FORMATS had incorrect right-hand hex 
Jan 31, 2008   for the left-hand value (like '04'X='40X: explanation'). 
               A new QA job will catch this type of error in the future.
   Thanks to Danny Ball, Con-way Enterprise Services, USA.              
                                                                        
Change 26.001  Typo VMUM introduced in Change 25.252 corrected to VWUM. 
VMXGCAPT                                                                
Jan 30, 2008                                                            
   Thanks to Brian Carter, EDS, UK.                                     
                                                                        
LASTCHANGE: Version 26.