COPYRIGHT (C) 1984-2023 MERRILL CONSULTANTS DALLAS TEXAS USA
MXG CHANGES 11.11
=========================member=CHANGE11================================
/* COPYRIGHT (C) 1984-1994 MERRILL CONSULTANTS DALLAS TEXAS USA */
This is Production MXG Version 11.11, dated Mar 26, 1994.
MXG Production 11.11 was dated Mar 26, 1994, thru Change 11.361
MXG Newsletter TWENTY-FIVE, Mar 26, 1994, thru Change 11.347
Early PreRelease 11.11 was dated Mar 9, 1994, thru Change 11.338
MXG PreRelease 11.10 was dated Feb 14, 1994, thru Change 11.316
MXG PreRelease 11.09A was dated Jan 10, 1994, thru Change 11.290
MXG PreRelease 11.09 was dated Dec 17, 1993, thru Change 11.266
Early PreRelease 11.08 was dated Nov 1, 1993, thru Change 11.238
MXG PreRelease 11.07 was dated Oct 4, 1993, thru Change 11.203
Early PreRelease 11.07 was dated Oct 1, 1993, thru Change 11.192
MXG PreRelease 11.06 was dated Sep 1, 1993, thru Change 11.164.
MXG PreRelease 11.05 was dated Aug 10, 1993, thru Change 11.150.
MXG PreRelease 11.04 was dated Aug 10, 1993, thru Change 11.149.
MXG Newsletter TWENTY-FOUR, Aug 2, 1993, thru Change 11.140.
MXG PreRelease 11.03 was dated Jul 26, 1993, thru Change 11.140.
MXG PreRelease 11.02 was dated Jul 6, 1993, thru Change 11.126.
MXG PreRelease 11.01 was dated May 20, 1993, thru Change 11.084.
Early PreRelease 11.01 was dated May 15, 1993, thru Change 11.068.
Prior Production 10.10 was dated Mar 15, 1993.
Member CHANGES repeats sections I, VIII, and IX of MXG Newsletter 25,
but you MUST also read MXG Newsletter 25 in member NEWSLTRS for major
technical discussions that are not repeated herein.
Contents of member CHANGES
0. HOT FLASH NOTES AFTER NEWSLETTER TWENTY-FIVE WAS PRINTED
I. MXG Software Production Version 11.11, dated March 26, 1994
VIII. Incompatibilities and Installation of MXG 11.11.
IX. Documentation of MXG Software.
X. Changes Log
0. HOT FLASH NOTES AFTER NEWSLETTER TWENTY-FIVE WAS PRINTED
OPC Version 1.2.0 had INPUT STATEMENT EXCEEDED error, new subtype that
is now supported, and still exposure. See Change 11.356.
MXG Tape Mount and Allocation Monitor now works at 2 out of 3 sites.
See Change 11.358.
Problem with zeroes in Cache RMF Reporter Records (Newsletter 25 MVS
Techical Note) is a fixed problem, but maybe not just due to RMF. I
missed phone call with all the details! Fax if you need update.
I. MXG Software Production Version 11.11, dated March 26, 1994, was
shipped with MXG Newsletter TWENTY-FIVE.
Critical notes about MXG Version 11.11:
- Products that require MXG 11.11 because of incompatible records:
DB2 Version 3.1.0.
Landmark's CICS/ESA Version 1.1.
LEGENT's TPX Release 3.5.
Software AG's COM-PLETE Release 4.5
Sterling's NDM, now Connect Direct 1.7.01.
- ANALDB2R users must use MXG 11.11 because of report corrections.
- You MUST use member CONFIG from this MXG SOURCLIB or you will get
many strange errors! (If you are still stuck at SAS 6.06, see Change
11.187 and use CONFIG06). Member CONFIG executes %VMXGINIT with
INITSTMT='%INCLUDE SOURCLIB(VMXGINIT); %VMXGINIT;' to initialize the
internal macro variables introduced in Change 11.150.
- If any of these members exist in your USERID.SOURCLIB(s) libraries:
ASUMDBDS ASUMDB2A ASUMDOS ASUMHPCS ASUM70PR
DAILYDSN GRAFDB2 GRAFLPAR TRNDDB2A
or if you use %VMXGSUM in your own report/summarization programs,
then you MUST read the incompatibility details in Section VIII and
in Change 11.309 and you will need to re-tailor your changes.
- MXG 11.11 requires SAS 6.08 at maintenance TS407 plus Zap Z6088203
Previously, I also said Z6086442 was required, but SAS Technical
Support corrected me; Z6086442 is already included in TS407.
MXG Version 11.11 was shipped along with Newsletter TWENTY-FIVE, and it
should be installed immediately as it provides these major enhancements:
These major enhancements were added in MXG 11.11 dated Mar 26, 1994
Support for STK's ICEBERG device user SMF record.
Support for Boole & Babbage CICS/Manager Type 110 Statistics records.
Support for Candle's Omegamon II for SMS user SMF record
Support for ISOGON's SoftAudit product's externalized files.
CICS/ESA Shutdown Statistics Report (DFHSTUP) now produced by MXG.
Sterling's NDM, now Connect Direct 1.7.01 incompatible changes.
Partial support for LEGENT's MIM Release 4.0.
Enhancements and corrections to ANALDB2R DB2PM-like reports.
Enhancements to VMXGSUM summarization routine.
Feedback that ASMIMSLG does not fail with IMS 4.1 log records.
These major enhancements were added in MXG 11.10 dated Feb 14, 1994
Support for IBM's OPC/ESA Release 2.1.
Support for LEGENT's NETSPY Release 4.4.
Support for CA's ACF2 Releases 6.0 and 6.1.
Support for Candle's Deltamon SMF record.
Performance improvements for VMXGSUM (used in most ANALxxxx members).
The ANALSMF "Simulator" analyzes SMF VSAM CI Size impact on your site.
These major enhancements were added in MXG 11.09A dated Jan 10, 1994
Support for Landmark CICS/ESA Version 1.1 (incompatible) records.
Summarization of Amdahl's APAF in ASUMAPAF.
Support for ZARA Release 1.1.
Corrections to ANALDB2R reports.
Performance enhancements in VMXGSUM execution.
These major enhancements were added in MXG 11.09 dated Dec 17, 1993
Support for DB2 Version 3.1.0 incompatible changes to DB2 SMF records.
Support for NPM Version 2.1.0.
Support for AS/400 Version 2.3 Performance Data.
Support for Memorex Telex LMS Version 2.17
Support for BatchPipes/MVS type 91 SMF record.
Support for Mobius' INFOPAC-RDS user SMF record.
Support for Integris UniKix records (both ASCII and Binary format).
Support for Novell Network Navigator User SMF record.
Support for Softwork's Performance Solution I/O Plus & Hiperload SMF.
Support for NETWISE RPC EXEC type 33 SMF record.
Performance enhancement of VMXGSUM algorithm
Utility to count type 110 records by application.
These major enhancements were added in MXG 11.08 dated Nov 1, 1993
Support for Amdahl APAF Version 2.1
Support for FOCUS MSO Release 6.8.
Support for IBM's ADSM subtype 14 type 42 SMF record.
CICS "Requested Reset Statistics" now processed into PDB.CICRRTRV.
These major enhancements were added in MXG 11.07 dated Oct 4, 1993
Support for DFSMSrmm (Removable Media Manager) two SMF records.
Support for DFSMSrmm Extract Files created by IBMs EDGHSKP utility.
Support for AS/400 Release 2.2, all records, labels, formats, etc.
Support for SAP's IMS log record type 'AE' for SAP IMS Accounting.
Support for AICorp Central Server SMF record.
Support for Type 42 Subtype 4 Concurrent Copy & Extended Sequential.
Support for Sterling's NDM, Network Data Mover SMF record.
Support for 4th Dimension's CONTROL-D Release 3.0.0 SMF record.
Support for NETVIEW APAR OY66237 change to TYPE37 SMF record.
Graphics enhancements for consistency, better pictures, in GRAFxxxx.
These major enhancements were added in MXG 11.06 dated Sep 1, 1993
Support for TCP/IP 2.2.1 APAR PN40511 (API Calls, FTP/TELNET Client)
Support for ASTEX Release 1.7 SMF record
Support for Software AG's COM-PLETE Release 4.54 SMF record
Support for Laser Access Corp's Optical Disk System's 3 SMF records
Support for LEGENT's SAR product User SMF record.
MXG 11.05 was a checkpoint version after Change 11.150.
MXG 11.04 was a checkpoint version before Change 11.150.
These major enhancements were added in MXG 11.04 dated Aug 20, 1993
Support for LEGENT's SAR product's User SMF record.
Support for Laser Access's Optical Disk System User SMF records.
Final (?) correction to ASUM70PR.
These major enhancements were added in MXG 11.03 dated Jul 26, 1993
Asynchronous Data Mover Facility APAR OY65142 for SMF type 30.
OMEGAMON/CICS VSAM,DLI,IDMS,ADABAS,SUPRA,DATACOM SPE QOC0553
These major enhancements were added in MXG 11.02 dated Jul 6, 1993
Support for VM/ESA Release 2.1.
Support for Top Secret Release 4.3.
Support for NPM APAR OY54370.
Support for RMF APAR OY64585.
Support for SAP Releases 4.3.J and 5.0.
Support for DOS/VSE POWER 5.1.
Support for OMEGAMON 2.60 Audit Record changes.
Support for APPC Deaccumulation APAR OY63634.
These major enhancements were added in MXG 11.01 dated May 20, 1993
Support for ZARA, The Tape Media Manager from Altai.
Support for SYNCSORT Release 3.5 SMF record.
Support for HMF, Host Monitoring Facility user SMF record.
Support for Corporate TIE user SMF record.
Support for STOPX37 Release 3.5 mis-documentation.
Enhanced ANALRMFR for RMF look-a-like reports from MXG.
Validation of Candle's ITRF (Omegamon/IMS Version 110).
Validation and correction of SMSDATA operand of DCOLLECT
Each of those enhancements are described in the Change Log, below.
Table of availability dates for the IBM products and MXG version:
Availability MXG Version
Product Name Date Required
RMF 4.1.2 (for MVS/ESA 3.1.3) Sep 7, 1990. 8.8
RMF 4.2 (for MVS/ESA 4.1) Oct 26, 1990. 8.8
MVS/ESA 4.1 Oct 26, 1990. 8.8
MVS/ESA 4.2 Mar 29, 1991. 9.9
RMF 4.2.1 (for MVS/ESA 4.2) Mar 29, 1991. 9.9
MVS/ESA 4.2.2 Aug 1991. 9.9
RMF 4.2.2 (for MVS/ESA 4.2.2 Aug 1991. 9.9
MVS/ESA 4.3 Mar 23 1993. 10.10
RMF 4.3.0 (for MVS/ESA 4.3) Mar 23 1993. 10.10
MVS/ESA 5.1.0 ??Summer 1994?? 12.??
CICS/ESA 3.2 Jun 28, 1991. 9.9
CICS/ESA 3.3 Mar 28, 1992. 10.01
DB2 2.2.0 1990 8.8
DB2 2.3.0 Oct 28, 1991. 10.01
DB2 3.1.0 Dec 17, 1993. 11.09
VM/ESA 1.1.1 Dec 27, 1991. 10.1
VM/ESA 2.0 Dec 23, 1992. 10.4
VM/ESA 2.1 Jun 27, 1993. 11.02
These products still had open problems or were potentially incorrect
when MXG 11.11 was built. Contact Merrill for current status.
TYPEZRB - RMF III VSAM file for MVS/ESA 4.2 and 4.3 is not correct.
Huron - Huron SMF record is not supported yet; no sample data SMF
data was provided, and the printed DSECTs were massive and
needed in machine readable form. Planned for 2nd quarter.
EPIC - LEGENT has not provided the format of their tape catalog;
instead, they want you to use the output of their extract
program, which means double processing and kludgy coding.
Nothing planned until LEGENT supplies needed formats.
NDM - Connect/Direct has only been validated for some records.
See Change 11.326.
VIII. Incompatibilities and Installation of MXG 11.11.
1. Incompatibilities
a. MXG's summarization member, %VMXGSUM was changed incompatibly, but
it should affect only the very small number of (sophisticated) users
who have tailored MXG summarization/trending members:
If any of these members exist in your USERID.SOURCLIB(s) libraries:
ASUMDBDS ASUMDB2A ASUMDOS ASUMHPCS ASUM70PR
DAILYDSN GRAFDB2 GRAFLPAR TRNDDB2A
or if you use %VMXGSUM in your own report/summarization programs,
then you MUST read the details in Change 11.309 and you will need to
re-tailor your changes.
The incompatibility is somewhat obscure; to reduce CPU time and to
minimize temporary DASD space used during summarization, %VMXGSUM
now determines which variables are needed, and keeps only the needed
variables from the input data set. The problem arises only if you
use the INCODE= parameter (it lets you insert SAS code into the
summarization logic, and is used in those nine members), and even
then, only if you reference variables in your INCODE= logic that are
not going to be kept in the output summarized dataset. In that rare
case, you must list those un-kept variables in the new KEEPIN= parm.
The above members in MXG 11.11 contain the needed KEEPIN= statement.
(If you overlook this note, you still should detect the problem in
your testing, because you will normally see UNINITIALIZED VARIABLE
messages on the SAS log to alert you to your error!)
b. Make sure you are using the CONFIG member from the MXG 11.11 library
in your JCL, either with the MXGSAS JCL Procedure, or on your EXEC:
// EXEC SAS,CONFIG='MXG.V1111.SOURCLIB(CONFIG)'
You will get many, strange syntax errors (ERROR 180 or 200) if you
do not use the MXG 11.11 CONFIG member.
If you are migrating to MXG Version 11.11 from MXG Version 9.9 or
earlier, AND you have tailored your MXG installation (with EX... or
IMAC.... members), you must read the MXG 10.10 compatibility section
in member CHANGESS; find the text "member=CHANGE10" and read on!
c. MXG Version 11.11 requires SAS Version 6.08 at maintenance TS407,
plus SAS Zaps Z6088203 and Z6086442 for MVS and CMS. For WINDOWS,
SAS 6.08 at TS407 is required. For all UNIX, except for AIX, SAS
6.09 is required. For AIX, the second maintenance to 6.09 will be
required. For OS/2, SAS 6.10 will be required. (Both AIX and OS/2
do not currently properly support VBS record processing; their fixes
are due out this summer.) MXG has been tested error-free with the
above SAS versions, and I strongly suggest you ensure that your SAS
System is at the above level of SAS maintenance. (While most of MXG
may execute successfully with lower maintenance, you may encounter
known errors if you are not at the above level.)
d. Observation counts may change in PDB.JOBS and PDB.NJEPURGE because
of Change 11.226. More observations may be seen in PDB.TYPE74 due
to Change 11.170.
2. Installation and re-installation procedures are described in detail:
in member INSTALL, and sample JCL is in member JCLINSTL. Summary:
a. Install member MXGSAS as JCL Procedure MXGSAS in your PROCLIB.
b. Allocate a 83-cyl PDS: MXG.V1111.MXG.SOURCLIB, and use IEBUPDTE
to read the MXG tape to create the 2000+ member Source Library.
c. Allocate a 1-cyl PDS: MXG.V1111.USERID.SOURCLIB for your site
"Installation Tailoring" Source Library. Installation specific
tailoring (like telling MXG your shift hours, which performance
groups are TSO, CICS, etc.) is done by copying and modifying MXG
source members into V1111.USERID.SOURCLIB.
d. Allocate a 1-cyl SAS Data Library: MXG.V1111.MXG.FORMATS and
execute SAS to create the library of Formats required by MXG.
e. If this is the initial install of MXG, tailor these members into
your MXG.V1111.USERID.SOURCLIB tailoring library:
IMACACCT (Account Length),
IMACSHFT (Shift Definitions),
IMACWORK (Performance Group to Workload mapping), and
IMACSPIN (for BUILDPDB).
Each IMAC member is self-documenting, and IMACAAAA is the index
of all of the IMACs. You should at least scan IMACAAAA to see
the acronyms MXG uses for the many products MXG supports.
e. If re-installing MXG, copy your existing USERID.SOURCLIB library
members into the MXG.V1111.USERID.SOURCLIB. Then compare your
IMACs with those that were changed (see the alphabetical list of
changed members in member CHANGES). If any members in your
MXG.V1111.USERID.SOURCLIB were changed, you must reinstall your
site's tailoring for that IMAC, starting with the IMAC member
from the MXG 11.11 Source Library.
f. EDIT and submit member JCLTEST6 to verify that your tailoring
did not create any errors.
g. EDIT and submit JCLPDB6 to create a Daily PDB for testing. Or
use the TYPE.... members to process specific data sources, use
the ANAL.... members for report examples, the GRAF.... members
for SAS/GRAPH reports.
You have now installed MXG 11.11 in its own set of libraries. When
parallel testing is complete and are ready to implement MXG 11.11
in production, rename your three current MXG Production Libraries
(MXG.MXG.SOURCLIB, MXG.USERID.SOURCLIB, and MXG.MXG.FORMATS) to
(MXG.BACK.MXG.SOURCLIB, MXG.BACK.USERID.SOURCLIB, MXG.BACK.MXG....)
and rename the MXG.V1111.x.y libraries to their Production names!
Again, detailed installation instructions are in member INSTALL
Always read comments in the CHANGES member for compatibility issues, as
well as for any last minute changes.
Whenever you install changes or test a new version of MXG (or even your
own reports), be extra careful to look on the SAS log for any real error
conditions. Search for all occurrences of "ERROR:" and "ERROR :" and
"UNINITIALIZED" and "NOT CATLGD", as they may indicate a serious error.
A PROC PRINT and a PROC MEANS of each new MXG-built SAS dataset can help
you to understand their contents, and should be used to examine any
unusually large, negative, or suspicious values. Print all variables in
the dataset, and read the variable's descriptions in its ADOC member.
IX. Documentation of MXG Software.
Member CHANGES identifies the Version and Release of MXG Software, and
describes all changes made in that Release. The text of each change
names the members that were added or altered by that change. Member
ChangeS is designed to be read online (with SPF BROWSE), so that you can
search for specific product name references (CICS, MVS/ESA, etc.), or
the MXG member name or product acronyms.
Member CHANGESS contains ALL changes in ALL versions of MXG.
Member NEWSLTRS contains the text of all newsletters. You can search
NEWSLTRS for product name or acronym to find the technical notes, APARs,
etc., from all MXG newsletters. Since the Change Log portion of each
newsletter is in member CHANGESS, they are not repeated in NEWSLTRS.
The MXG Technical Newsletter is typically published twice a year, with
one printed copy sent to each licensed site, and it describes changes
and enhancements to the software, provides APARs and PTFs affecting MXG
users, and provides technical papers of interest to MXG users.
Member DOCVER lists alphabetically ALL datasets and variables that are
built by this MXG Software Version.
Members DOCVERnn are the "delta-documentation" between MXG versions, and
list only those datasets and variables that were added/deleted/changed
by version "nn".
Members ACHAPxxx are the text chapters from the 1984 MXG Guide and the
1987 MXG Supplement, to which the text of newsletters and changes has
been added. At present, these chapters are very rough; in a few cases
the chapter has actually been completed and revised, but most of these
chapters delivered in MXG 11.11 are little more than a concatenation of
the original text, and there are no figures nor tables. This is clearly
work in progress, but at least the old books are now machine readable!
When all 42 chapters are completely revised and updated in the source
library, I will decide if any will also be made available in printed
form, but the primary source of all future documentation will be the MXG
source library itself, which can now be updated when changes occur!
Members ADOCxxxx are what were in Chapter FORTY, and should be the first
place you look for information about MXG variables and/or datasets. The
ADOCxxxx members alphabetically describe each dataset and all variables
that are created by product xxxx, the instructions on how to enable that
product, bibliography of the vendor documentation, sample PROC PRINT and
PROC MEANS of real datasets, references to MXG reports that use these
datasets, and the MXG member names that you use to process that product.
There is an IMACxxxx member for every product supported by MXG. Once
you know the xxxx suffix for a product, you then know the names of all
of the MXG members for that product:
IMACxxxx - Defines record IDs, and "_K,_L" macros for product xxxx.
ADOCxxxx - "Chapter FORTY" style dataset and variable documentation.
VMACxxxx - The "real" source code member, often extensively commented.
TYPExxxx - Standalone member to test or process product xxxx records.
ASUMxxxx - Summarization example (only for some products)
TRNDxxxx - Trending example (only for some products)
ANALxxxx - Reporting/analysis example (only for some products)
GRAFxxxx - SAS/GRAPH report example (only for some products)
EXyyyzzz - OUTPUT exit for each dataset. There can be more than one
dataset per product. The EX member name suffix yyyzzz is
the same as the suffix of "_L" and "_K" macros defined in
IMACxxxx for the product. See further discussion under
"Using the MXG Exit Facilities" in ACHAP33.
Member IMACAAAA is an index of all IMACs, and is the best place to begin
to find what xxxx suffix Merrill chose for which product! You can often
find additional documentation by searching members NEWSLTRS or CHANGESS
for the xxxx suffix.
Finally, remember that MXG is source code, so you can often find your
answer by BROWSING the source members, especially the VMACxxxx, ANALxxxx
members. The MXG Variable name is often the DSECT's field name, and if
not, the vendor's field name is often in adjacent comments in the INPUT,
so you can cross reference to the vendor's documentation of their data!
X. 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 of the MXG SOURCLIB will always be more accurate than
the printed changes in a Newsletter, because the software tapes are
created after the newsletter is sent to the printer!
Member CHANGES always identifies the actual version and release of
MXG Software that is contained in that library.
The actual code implementation of some changes in MXG SOURCLIB may be
different that described in the change text (which might have printed
only the critical part of the correction that can be made by paper).
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 since MXG 10.10:
Member Change Description
All 11.150 Rewrite to support execution under ASCII SAS versions
ANALCISH 11.329 CICS/ESA DFHSTUP Shutdown Statistics Reports added.
ANALDASD 11.288 Sample prime-time cross-system DASD report.
ANALDB2R 11.007 Fails with PDB=SMF if account reports suppressed.
ANALDB2R 11.036 Suspension counts twice actual value.
ANALDB2R 11.037 Total Read IOs miscalculated on Statistics Summary
ANALDB2R 11.042 DB2 PMACC02 count of OPENS actually counted FETCHES.
ANALDB2R 11.043 DB2 PMSTA02 count of SUSPENDS usually zero.
ANALDB2R 11.143 OVERFLOW HAS OCCURRED, OUT OF MEMORY errors.
ANALDB2R 11.237 ANALDB2R can now report from a PDB on tape.
ANALDB2R 11.286 Continued enhancement and error corrections.
ANALDB2R 11.330 DB2 Audit Detail Report Completion Code still wrong.
ANALDSET 11.048 ERROR 455-185 for dataset TYPE30OM.
ANALDSET 11.291 TYPE64 records now sorted consistent with non-VSAM.
ANALRACF 11.260 UNINITIALIZED variable due to SAS Usage note 6886.
ANALRMFR 11.024 Report fails with PDB=SMF, works with PDB=PDB.
ANALRMFR 11.069 Continued enhancement of RMF look-a-like reports.
ANALRMFR 11.231 Additional RMF report enhancements and corrections.
ANALRMFR 11.256 Correction of CPU percentages and type 74 reports.
ANALSMF 11.300 The "Simulator" analyzes SMF VSAM CI Size impact.
ASMIMSLG 11.157 IMS log processing type 36 changed.
ASMTAPES 11.360 MXG Tape Mount and Allocation Monitor works 2/3.
ASMTMNT 11.154 0C4 abend in MXGTMNT at one site.
ASMVTOC 11.257 No output records under MVS/ESA 4.2 and earlier.
ASUM70PR 11.022 PDB.RMFINTRV may be corrupted by ASUM70PR.
ASUM70PR 11.027 LP0MGTTM not in RETAIN list (affects only MDF)
ASUM70PR 11.041 ASUM70PR new variables, and mini-tutorial.
ASUM70PR 11.087 LP0MGTTM (Amdahl MDF only) incorrect.
ASUM70PR 11.145 ASUM70PR still wrong in MXG 11.03.
ASUMAPAF 11.290 Summarization of MDF APAF records similar to PR/SM.
ASUMDB2A 11.038 QTXAIRLM omitted from SUM= list
BUILD006 11.320 PDB logic enhanced for APPC tasks (no purge record).
BUILDPDB 11.025 Building your PDB on tape.
BUILDPDB 11.089 Purge records lost if PRPRTY=4-7 or 12-15.
BUILDPDB 11.226 JES2 NJE Purge records for JT were mis-recognized.
BUILDPDB 11.228 Open Edition/MVS (OMVS) TYPE30OM added to PDB.
BUILDPDB 11.269 PDB.JOBS ACCOUNTn/RESTARTS wrong for MULTIDD jobs.
BUILDPDB 11.320 PDB logic enhanced for APPC tasks (no purge record).
CHANGESS 11.074 New member CHANGESS contains ALL changes ALL Versions
CICINTRV 11.224 CICS "Requested Reset Statistics" now processed.
CLTIMER 11.035 STOP statement required by SAS Version 6.
CONFIG 11.306 For MVS, MEMSIZE=32MB now default value.
CONFIG07 11.129 SAS Error 76-322 with numbered + unnumbered lines.
DAILYDSN 11.076 Typos misspelled output datasets.
DIFFDB2 11.282 New dataset PDB.DB2STATS now created for reports.
DIFFHSM 11.019 Member did not use the "_L" macro names.
Doc 11.013 Change 10.175 typo, two _KTY0 should be _LTY0
FMXGUCBL 11.088 Archaic UCBL function corrected.
GRAFLPAR 11.079 Error "OUT OF MEMORY" due to SAS Error 6719.
GRAFTRND 11.216 Not all workload data was plotted if workload unused.
GRAFWORK 11.311 Workload graphs enhanced with memory frames in use.
GRAFxxxx 11.173 Enhancements, common structure for GRAFxxxx members.
IMACACCT 11.104 "VARIABLE SACCT1 NOT FOUND" can occur.
IMACCICS 11.224 "CICRRTRV NOT FOUND" errors using old IMACCICS
IMACICBB 11.347 Support for Boole & Babbage CICS Manager Statistics.
IMACICDL 11.268 Omegamon CICS/ESA type 110 may have wrong DL/I counts
IMACICSA 11.110 Support for SAP Releases 4.3.J and 5.0.
IMACICSA 11.148 SAP Release 4.3 requires one change to MXG.
IMACICSA 11.211 CICS SAP variables STCDB1-STCDB5 should be CHAR.
IMACPDB 11.155 ACCOUNTn variables no longer limited in IMACPDB.
IMACPDB 11.214 JES3 variable CLASS added to JES3 PDB.JOBS.
IMACPDB 11.258 Variables ACTDLYTM,DSPDLYTM,RESDLYTM now in PDB.JOBS
JCLIMSLG 11.109 MXG 10.10 had wrong JCL in this example JCL member.
JCLTEST 11.012 SAS 5.18 WORK.#DIRMACR is out of space condition.
JCLTEST6 11.093 0C4 ABEND in SASXKERN if IBM exit IFGOEXOB used.
MONTHBLD 11.040 Error "DATASET TAPEMNTS NOT SORTED".
MONTHBLD 11.206 DATA SET TAPEMNTS IS NOT SORTED error.
Many 11.302 Additional ASCII/EBCDIC differences resolved.
RMFINTRV 11.008 TYPE74 tape counts in AVGRSPMS, DEVACTTM, etc.
RMFINTRV 11.264 Variable PGPERBLK in RMFINTRV is incorrect.
SPIN 11.184 SPIN library can fill if Change 11.060 not installed.
TRND70 11.240 Trended variables READY12-READY15 have wrong value.
TRND71 11.222 Variable VIO value incorrect in TRND71.
TRNDDB2A 11.038 QTXAIRLM omitted from SUM= list
TRNDVMXA 11.235 VM/ESA Trending had logic errors.
TRNDxxxx 11.227 Trending now includes the MVS/ESA 4.3 variables.
TYPE102 11.085 Variables QW0145SC/QW0145LL not input.
TYPE102 11.107 IFCID 53 and 58 records may have been dropped.
TYPE110 11.023 Omegamon V550 APAR QOC0451/QOC0534 bad record error.
TYPE110 11.080 STARTIME in CICINTRV dataset is actually ENDTIME.
TYPE110 11.138 Skip over SAP Journal Records circumvention.
TYPE1415 11.266 Variable TEMP in dataset TYPE1415 may be misset.
TYPE28 11.116 Support for NPM APAR OY54370.
TYPE28 11.246 Support for NPM Version 2.1.0
TYPE30 11.002 INVALID OMVS TRIPLET message, no observations.
TYPE30 11.003 Type 30 Interval INTBTIME/INTETIME wrong in MVS 4.3.
TYPE30 11.004 Variable DSSIZHWM is incorrect.
TYPE30 11.033 Small negative values for ACTDLYTM.
TYPE30 11.060 JELAPSTM and others large (positive or negative).
TYPE30 11.126 Type 30 APPC fields accumulation corrected OY63634.
TYPE30 11.140 Asynchronous Data Mover read/writes in APAR OY65142.
TYPE30 11.199 Variables INTBTIME/INTETIME off by 100 seconds.
TYPE30 11.229 GMT Offset was still wrong sometimes, by 100 seconds.
TYPE33 11.243 Support for NETWISE RPC EXEC type 33 SMF record.
TYPE37 11.001 INPUT STATEMENT EXCEEDED RECORD LENGTH
TYPE37 11.031 Undocumented LAN variables BRFSMADR BRFSMNAM added.
TYPE37 11.119 INPUT STATEMENT EXCEEDED RECORD LENGTH.
TYPE37 11.202 Support for NETVIEW APAR OY66237 (Hardware Log).
TYPE39 11.280 TYPE39_8 variables all incorrect.
TYPE42 11.021 New TYPE42DS has GMT values in INTERVAL record.
TYPE42 11.179 Support for Concurrent Copy & Extended Sequential DS.
TYPE42 11.235 Support for IBM's ADSM subtype 14 type 42 SMF record.
TYPE42 11.325 TYPE42 subtype 6 STOPOVERs if VSAM SMF data is read.
TYPE57 11.215 Type 57 ESS variables non-blank if no ESS installed.
TYPE60 11.203 Storage and Data Class missing in NVR TYPE60 records.
TYPE6156 11.223 INVALID DATA for OWNEXPDT corrected.
TYPE7072 11.016 TYPE72MN dataset contains only one PERFGRP.
TYPE7072 11.152 TYPE70 dataset now supports CPUIDs of 0 thru 15.
TYPE7072 11.229 GMT Offset was still wrong sometimes, by 100 seconds.
TYPE7072 11.265 Boole CMF Type 72 Subtype 2 INPUT STATEMENT EXCEEDED.
TYPE7072 11.275 IBM APAR OY67002 corrupts TYPE70,TYPE70PR,ASUM70PR
TYPE72 11.177 SERVICE can be zeroed if it overflows ==> zero obs!
TYPE72MN 11.171 Zero obs in TYPE72MN for MVS/ESA 4.2 or earlier.
TYPE73 11.015 TYPE73 contains observations for dummy CHPIDs
TYPE73 11.102 Zero observations in TYPE73.
TYPE73 11.114 PNCHANBY (EMIF Partition Channel Busy) added.
TYPE73 11.195 Variable PNCHANBY propagated into inactive records.
TYPE74 11.170 TYPE74 not output if only allocated but not used.
TYPE80 11.117 Support for Top Secret Release 4.3.
TYPE80 11.207 Support for TOP-SECRET records written to log.
TYPE80A 11.017 INPUT STATEMENT EXCEEDED error.
TYPE80A 11.054 TYPE80A fails with INPUT STATEMENT EXCEEDED.
TYPE90 11.158 TYPE90 variable ACTIVE renamed to ACTIVEMN.
TYPEACF2 11.315 Support for CA's ACF2 Releases 6.0 and 6.1.
TYPEAICS 11.180 Support for AICorp Central Server SMF record.
TYPEAPAF 11.225 Support for Amdahl APAF Version 2.1
TYPEAPAF 11.267 APAF V2.1 dataset APAFCHAN was trashed.
TYPECIMS 11.073 INVALID VALUE FOR TH corrected.
TYPECOMP 11.156 COM-PLETE Release 4.5 SMF record supported.
TYPECOMP 11.209 Variable ULOGCPUT incorrectly input.
TYPECTLD 11.174 Support for 4th Dimension's CONTROL-D Release 3.0.0.
TYPEDB2 11.005 INVALID 3rd ARGUMENT IN SUBSTR, variable JOB blank.
TYPEDB2 11.006 Variable QDSTQDBT is incorrect.
TYPEDB2 11.050 DB2ACCT variable NETSNAME incorrectly padded.
TYPEDB2 11.255 Support for DB2 Version 3.1 incompatible changes.
TYPEDCOL 11.057 DCOLLECT SMSDATA (SMS constructs) cause STOPOVER.
TYPEDCOL 11.151 Variables DCUSYSID/DCUTMSTP not kept in constructs.
TYPEDLMN 11.308 Support for Candle's Deltamon SMF record.
TYPEDMON 11.162 Support for LEGENT's ASTEX Release 1.7.
TYPEDOS 11.106 Support for DOS/VSE POWER 5.1.
TYPEDOS 11.149 Variables STARTIME/STOPTIME may be wrong.
TYPEEDGR 11.190 Support for DFSMSrmm Extract Files (EDGHSKP utility).
TYPEEDGS 11.189 Support for DFSMSrmm SMF Audit and Security records.
TYPEEDGS 11.209 Several MVT... variables incorrectly input.
TYPEF127 11.210 FACOM pseudo-RACF type 127 FUNCTION CHAN IS UNKNOWN.
TYPEFOCU 11.219 Support for FOCUS MSO Release 6.8.
TYPEHMF 11.049 Support for HMF, Host Monitoring Facility product.
TYPEHSM 11.078 New HSM dataset HSMFSRBO, IMACHSM changed.
TYPEICE 11.340 Support for STK's ICEBERG SMF record.
TYPEIMS 11.181 Support for SAP's IMS log record type 'AE'.
TYPEIPAC 11.252 Support for Mobius' INFOPAC-RDS user SMF record.
TYPEMEMO 11.032 New variables TRANTIME TRANCOST added.
TYPEMIM 11.317 Partial support for LEGENT's MIM Release 4.0.
TYPEMON8 11.230 INVALID ARGUMENT TO FUNCTION MDY TIESDATE INVALID.
TYPEMON8 11.270 Support for Landmark CICS/ESA Version 1.1 INVALID DO.
TYPEMON8 11.278 ERROR3.LANDMARK.MONITOR due to invalid record.
TYPEMON8 11.327 INVALID DATA FOR TIAPREQ with MXG 11.0x-11.10.
TYPENDM 11.175 Support for Sterling NDM Network Data Mover 1.4.0.
TYPENDM 11.326 Sterling's NDM, now Connect Direct 1.7.01, incompat!
TYPENSPY 11.009 INVALID ARGUMENT TO FUNCTION DATEJUL error.
TYPENSPY 11.029 Variable SNITIME incorrect.
TYPENSPY 11.130 LEGENT LANSPY #DGL249 circumvention.
TYPENSPY 11.159 NETSPY fix changed again by LEGENT.
TYPENSPY 11.316 Support for LEGENT's NETSPY Release 4.4.
TYPEODS 11.147 Support for Laser Access Corp's Optical Disk System
TYPEOMAU 11.092 Omegamon 2.60 Audit Record moved OMSUBSID.
TYPEOMCI 11.115 OMEGAMON V550 SMF record INPUT STATEMENT EXCEEDED.
TYPEOMCI 11.136 OMEGAMON/CICS VSAM,DLI,ADABAS,IDMS,SUPRA,DATACOM.
TYPEOMCI 11.313 OMEGAMON user SMF record INPUT STATEMENT EXCEEDED.
TYPEOMSM 11.332 Support for Candle's Omegamon II for SMS user record.
TYPEOPC 11.122 Variables added to OPC24_6 and OPC24D_C datasets.
TYPEOPC 11.304 Support for OPC/ESA Release 2.1.
TYPEPOOL 11.141 INPUT STATEMENT EXCEEDED LENGTH with POOL/DASDSMF.
TYPEPRFS 11.262 Support for Softworks' Performance Solution SMF data.
TYPEQAPM 11.166 Support for AS/400 Release 2.2, all records now!
TYPEQAPM 11.254 Support for AS/400 Version 2.3 Performance Data.
TYPEQAPM 11.319 AS/400 system name AS400SYN was blank.
TYPESAR 11.146 Support for LEGENT's SAR product SARSRQU3 SMF record.
TYPESFS 11.250 Xerox SFS accounting record INVALID ARGUMENT error.
TYPESFTA 11.321 Support for ISOGON's SoftAudit externalized files.
TYPESTC 11.124 Missing values for several variables corrected.
TYPESYNC 11.056 Support for SYNCSORT Release 3.5 new variables.
TYPETAO 11.034 "INVALID DATA FOR TAOSTYP" messages.
TYPETCP 11.028 TCP/IP addresses reformatted.
TYPETCP 11.163 Support for TCP/IP 2.2.1 APAR PN40511 new fields.
TYPETPX 11.167 Support for LEGENT's TPX Release 3.5 (incompatible).
TYPEVM 11.113 Support for VM/ESA Release 2.1 Accounting record.
TYPEVMXA 11.047 VM/ESA "UNEXPECTED/INVALID CONTROL RECORD" message.
TYPEVMXA 11.112 Support for VM/ESA Release 2.1 Monitor records.
TYPEVMXA 11.142 VM/ESA duration variables could be truncated.
TYPEVMXA 11.261 VXSYTCPU dataset variable LCUCLPTM not kept.
TYPEVVDS 11.103 Blank values for SMS Storage, Data, etc., Classes.
TYPEVVDS 11.204 Variable VVRBSENM can be blank.
TYPEX37 11.070 STOPX37 Release 3.5 records incorrectly documented.
TYPEX37 11.091 Variable MESSAGE not decided in STOPX37 Rel 3.5.
TYPEX37 11.133 STOPX37 undocumented VOLSER,MSGCODE found.
TYPEZARA 11.059 Support for ZARA, The Tape Media Manager from Altai.
TYPEZARA 11.276 Support for ZARA Release 1.1 (incompatible)
UCICSCNT 11.244 Utility to count type 110 records by application.
VMACDB2H 11.242 DB2 variable NETSNAME can still mismatch CICSTRAN.
VMXGHSM 11.131 HSM BCDS dataset MCB incomplete, too few obs.
VMXGHSM 11.194 Not all observations output in dataset DSR.
VMXGHSM 11.259 HSM BCDS and MCDS data value errors.
VMXGSUM 11.281 Performance enhancement of MXG summarization
VMXGSUM 11.309 Execution improved by creating KEEP= for input.
VMXGSUM 11.309 INCOMPATIBLE exposure if you have tailored members.
VMXGVTOF 11.030 Variable DS4IVTOC was not kept.
WEEKBLD 11.040 Error "DATASET TAPEMNTS NOT SORTED".
WEEKBLD 11.206 DATA SET TAPEMNTS IS NOT SORTED error.
WEEKBLDT 11.172 WEEKBLD with no rewinds/remounts of WEEK tape.
Inverse chronological list of all Changes:
NEXTCHANGE: Version 11
Change 11.361 The offset for MCCAVSN was hardcoded and thus wrong for
VMXGHSM some levels of HSM; now, instead of INPUT +16, the logic
Mar 25, 1994 is OFFV=65+MCCNVSNO; INPUT @OFFV ....
Thanks to Gary Matney, Twentieth Century Investors, USA.
Change 11.360 The MXG Tape Mount and Allocation Monitor is a major
ASMTAPES extension to MXG's existing MXGTMNT Tape Mount Monitor.
Mar 24, 1994 Now, both tape mounts and tape allocation-deallocation
events are recorded in SMF so you can measure how long
each tape drive was used by what job. The new monitor is
provided in ASM source code in member ASMTAPES and works
fine at two sites (one using MVS/ESA 4.3 with MIM plus
SMS, the other is at MVS/ESA 4.2), but at MVS/ESA 3.1.3
site with both MIM and SMS, the new monitor program
either waits doing nothing or ABENDS gracefully. So if
you really need this monitor now, read Change 11.101 and
then assemble member ASMTAPES (it still creates program
named MXGTMNT) and check it out. I think it is highly
likely it is ok with MVS/ESA 4.2 or 4.3, but your
feedback as to where it works and when it doesn't will
help validate for everyboth. Since both MIM and SMS get
involved in allocation, they may or may not be the
trigger, but we are actively working on the SRB dumps to
understand and fix the program for all environments.
Thanks to Bill Fairchild, Royal Associates, USA
Thanks to Chuck Hopf, Primerica, USA
Change 11.359 If you modified the interval in ASUMTMNT, GRAFTMNT will
GRAFTMNT not correctly place the points on the graphs since it
Mar 24, 1994 was using the HOUR of the time as the axis. It now uses
the time at 3600 second intervals.
Thanks to Chuck Hopf, Primerica, USA
Change 11.358 ASUMHSM, TRNDHSM, GRAFHSM provide some ability to report
ASUMHSM on dataset movement caused by HSM. Since this can be a
TRNDHSM significant contributor to batch run times as well as TSO
GRAFHSM response, you may find these summarization, trending, and
Mar 24, 1994 graphical analysis of HSM useful.
Thanks to Chuck Hopf, Primerica, USA
Change 11.357 The second pair of variables named LLSNAFB/LLSNAFN are
VMACNSPY now named LLSNAEB/LLSNAEN, and LLSNAEB was added tothe
Mar 24, 1994 MGBYTES format (the "E" vars are for SNA over Ethernet).
Thanks to Warren Hayward, TJX, USA.
Change 11.356 Change 11.352 was revised after new iterations. Type 35
VMACOPC caused ABEND that was fixed, and subtype 'G' is now
Mar 24, 1994 supported. There are some spanned subtype 24 records
that MXG does not yet handle correctly; at present all I
could do was to recognize I missed a spanned record with
a message on the log; this only affects the OPC24xxx
data sets, and will be fixed soon. Fax if you need it.
Thanks to Randy Shumate, Mead Data Central, Inc.
Thanks to Maureen Walshe, IBM Nordiska Laboratoirer, SWEDEN.
Change 11.355 Change 11.351 was revised after the Mar 23 early tapes
BUILDPDB were sent. The WEEKBLD/WEEKBLDT/MONTHBLD members had not
Mar 24, 1994 been revised until Mar 24.
Change 11.354 CICS Statistics variables A21LUTTM and A21SNTTM were not
VMAC110 correct; a real value of 30 minutes was reported as only
Mar 24, 1994 .03 seconds.
==Changes thru 11.353 were in MXG 11.11 created March 23, 1994===
Change 11.353 LEGENT SAR records had a number of fields added in 1993
VMACSAR that are now supported in MXG. The maintenance has no
Mar 23, 1994 version/release, only Change #05- Change #9 in DSECT!
Thanks to Bob Mattingly, ARCO-EIS, USA.
Change 11.352 OPC records caused INPUT STATEMENT EXCEEDED RECORD LENGTH
EXOPC24X for TRLRCTYP=35 (delete all references to TRLPOS35). For
IMACOPC TRLRCTYP=24 MT0TYPE=9 (expand IF MT0TYPE NE 6 THEN to
VMACOPC IF MT0TYPE NE 6 AND MT0TYPE NE 9, and expand 7 LE MT0TYPE
Mar 23, 1994 LE 8 to 7 LE MT0TYPE LE 9). Support was added for the
Mar 24, 1994 MT0TYPE='G' (MT0TYPE is a number, so character 'G' =199)
which creates new dataset OPC24_G (not to be confused
with existing dataset OPC24D_5, which caused the new exit
and dataset macros to be EXOPC24X for OPC24_G dataset).
OPC support was revised after March 23 tapes shipped.
Thanks to Randy Shumate, Mead Data Central, USA
Change 11.351 RMF dataset TYPE77 is now automatically created by MXG's
BUILDPDB BUILDPDB/BUILDPD3 algorithms. TYPE77 reports ENQUE
BUILDPD3 conflicts and delays, and is expected in ANALRMFR for
BUILD001 replication of IBM RMF reports from MXG datasets. Logic
BUILD003 in WEEKBLD/WEEKBLDT/MONTHBLD now also expectes the TYPE77
BUILD518 dataset. Added Apr 18: This change is INCOMPATIBLE if
BUILD606 you have tailored BUILDPDB to add TYPE77 processing. See
WEEKBLD text of Change 12.013. This change was also incomplete
WEEKBLDT for JES3.
MONTHBLD
Mar 24, 1994
Change 11.350 Additional CICS Shutdown Reports were added. One problem
ANALCISH with Mode Table report (many pages, all zeros) with all
Mar 23, 1994 APPLIDs went away when a single APPLID was reported, but
this will be investigated as soon as data tape received.
Also, Last Reset time is different between IBM & MXG.
Thanks to Neil Ervin, Huntington Bank Service Company, USA.
Change 11.349 Variable SHEETPRN is now automatically added to PDB.PRINT
IMACPDB to count sheets printed.
Mar 22, 1994
Thanks to Jill Hansen, South Dakota Education, USA.
Change 11.348 Variable DVLNUCBA in dataset DCOLVL is now formatted as
VMACDCOL HEX8 and is LENGTH 5 (because it is numeric, five bytes
Mar 22, 1994 are required to store all possible hex digits).
Thanks to Al Rozewski, Parker Hannifin, USA.
==Changes thru 11.347 were printed in MXG Newsletter 25 dated 26Mar94===
Change 11.347 Support for Boole & Babbage CICS/Manager Statistics data
EXCICBBD in type 110 SMF record, subtype BB02 (which MXG sets back
EXCICBBF to SUBTYPE=2 for processing), Statistic STIDs:
EXCICBBG STID DATASET DESCRIPTION EXIT MEMBER VARS
EXCICBBL 200 CICSBBSI SIT EXCICBBS 52
EXCICBBR 201 CICSBBRC RCT EXCICBBR 47
EXCICBBS 202 CICSBBLT LT X EXCICBBL 55
FORMATS 203 CICSBBFC FCT EXCICBBF 57
IMACCICS 204 CICSBBGL GLOBAL PERFORMANCE EXCICBBG 37
IMACICBB 205 CICSBBDL DLI EXCICBBD 44
VMAC110 Those 6 datasets are created, but they will have zero obs
Mar 20, 1994 and only 15 variables unless you enable processing - see
member IMACICBB for enablement procedure and comments.
Adding this support uncovered several errors in field
alignment (three sets of CPU fields) that will be fixed
by Boole's PTF BPC2312 which you must request and install
for that dataset to be valid.
Thanks to ???, VW Wolfsburg, GERMANY.
Change 11.346 Netmaster 2.2 added new variable SMFNCUSR to type 39 data
VMAC39 that is now decoded and added the TYPE39 datasets. This
Mar 19, 1994 is the only reported change in Netmaster 2.2 records.
Thanks to Colin Bowen, Old Mutual, SOUTH AFRICA.
Change 11.345 TCP/IP addresses contained blanks when only one digit was
VMACTCP used for a node; now the blanks are stripped out by using
Mar 19, 1994 TELLOCAL=COMPRESS(TELLOCAL); on all addresses.
Thanks to Wanda Prather, Johns Hopkins University APL, USA.
Change 11.344 Support for CADAM V3R2 Statistical Data plus corrections
VMACCADM to MXG were provided by this user enhancement. See the
Mar 18, 1994 excellent notes at the beginning of the member.
Thanks to Jouke van Schepen, Fokker Aircraft BV, NETHERLANDS.
Change 11.343 NPM Type 28 NPMLANOD dataset (added in NPM Version 2) did
VMAC28 not decode CSL section correctly, causing INPUT STATEMENT
Mar 18, 1994 EXCEEDED with NPMSUBTY='A0'x, which is 4-bytes shorter
than the 'A1'x subtype. The four final fields LCSLRPTO-
LCSLRSFR are now input only for NPMSUBTY=0A1X and three
new variables LCSLPDUD,LCSLMFRD,LCSLURFR are instead
input for NPMSUBTY=0A0X.
Thanks to Pat McGuire, Texas Instruments, USA.
Change 11.342 CA-DISPATCH 5.1 corrupts READTIME in TYPE6 records - the
VMAC6 date can be 1-2 days in the future! CA stores a 01x in
Mar 18, 1994 the 1st byte of READTIME as a flag. A real read time of
Sep 22, 1994 00021CE8x (00:23:04) is corrupted to 01021CE8x (47:59:16)
and those 48 hours are added to midnight of read in date!
My guess was that CA decided that since 0083D600x is 24
hours, they could use the 1st byte of time for DISPATCH,
(just like CA uses the first byte of date for CA7), but
that is not the case; CA now acknowledges that READTIME
field is being corrupted and CA Level 2 is working at the
one reporting site to develop a fix. I had already added
protection in MXG 11.11 to reset the first byte to zero:
Replace READTIME SMFSTAMP8. @;
with READCADI $CHAR8. @;
IF SUBSTR(READCADI,5,1) GT '01'X THEN
SUBSTR(READCADI,5,1)='00'X;
READTIME=INPUT(READCADI,SMFSTAMP8.);
but now the site reports the READTIME is off by 2 hours,
so it appears the time part of READTIME is just bad,
until CA develops a fix.
See Revision by Change 12.199; 1,1 changed to 5,1.
Thanks to Giovanni Dossena, Einchem Elastomeri S.R.L., ITALY.
Change 11.341 TYPE94 variables SMF94Axx were labeled as EJECT when they
VMAC94 should are AUDIT, and variable SMF94EIN/SMF94EPM were
Mar 17, 1994 dropped from the KEEP= list, as they do not exist, and
could be confusing!
Change 11.340 Support for STC ICEBERG 9200 Disk Array Storage Subsystem
EXICECHA creates four datasets, one for each subtype of the SMF
EXICEDEV interval record which are provided by StorageTek:
EXICEDRV ICEBRGSY - Capacity and Space Utilization - per Subsys
EXICESYS ICEBRGCH - Channel Interface Statistics - per channel
IMACICE ICEBRGDV - Device and Its Cache Statistics - per device
TYPEICE ICEBRGDR - Drive Module Statistics - per drive module
VMACICE The range and content of the ICEBERG statistics are quite
Mar 9, 1994 impressive & comprehensive for this new technology, with
utilization counts and durations provided. This support
has been syntax checked, and simulated test data has been
processed, but no real-world users have used the data yet
Change 11.339 MXG 11.08 thru MXG 11.10. the last 380 lines of this RMF
ANALRMFR Report member were inadvertently deleted. The lines were
Mar 7, 1994 restored in MXG Early 11.11, without a Change number.
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
==Changes thru 11.338 were in the MXG Version Early 11.11 dtd Mar 8, 94=
Change 11.338 APAR UW04108 adds new variables to TYPE42 datasets:
VMAC42 TYPE42SR: ICLS RCLS SEQIOS
Mar 7, 1994 TYPE42DS: ICLS RCLS SEQIOS
Sequential I/Os are now counted separately (SEQIOS) and
are NO LONGER included in cache statistics (candidate
I/Os and hits). RLCS are Record Level Caches, ICLS are
Inhibit Cache Loads. ICLS only include those ICLS that
are set by DCME, not those by the STARTIO driver.
An additional APAR due out later this year adds even more
valuable instrumentation to the data set statistics:
TYPE42DS: BLKSIZE DEVNR STORCLAS VOLSER
S42AMDRB S42AMDRR S42AMDWB S42AMDWR
S42AMSRB S42AMSRR S42AMSWB S42AMSWR
S42AMZRB S42AMZRR S42AMZWB S42AMZWR
The long-needed VOLSER and DEVNR will be the first volume
for most multi-volume or striped datasets; however, for
sequential SAM access, there will be one record per
volume. The new Access Method fields (S42AMxxx) are
generated only for access methods that support DCME; the
new S42AMxxB variables count blocks read/written for
sequential/direct/directory and the S42AMxxR fields will
contain the corresponding I/O delay time (they are not
yet implemented). The directory counts do not include
STOW or BLDL yet, and there's more design ongoing to
capture as much as possible (eg., VIO and PDSEs). Note
how IBM is making life simple for us both, providing me
with early documentation so this support is already in
place in MXG 11.11 for when you get the APARs!
Thanks to Jeff Berger, IBM SSD, USA.
Change 11.337 CA's TMS can cause a type 80 (RACF) record to be created
VMAC80A for BLP processing, (a ZAP from CA is required to enable
Mar 7, 1994 creation of the records), but they exposed an MXG design
error: variable RESNAME was blank and variable OLDDSN
contained resource name. MXG now correctly inputs the
Resource Name into variable RESNAME; I should then store
RESNAME into OLDDSN only if RACFEVNT=04 (a RENAME), but
since OLDDSN always has contained the Resource Name, and
since you should not have to change your reports, I chose
to continue to put Resource Name in both RESNAME and
OLDDSN variables.
Thanks to Simon Hendy, Reader's Digest European Systems.
Change 11.336 Boole & Babbage CMF PTF BPM4681 adds new variables to
VMACCMF these existing datasets:
Mar 6, 1994 CMF27C93 C279WEH,C279WER,C279WFM
CMF27CSD CMF27CHN,CMF27CU2,CMF27DEV,CMF27LCU,
CMF27MDR,CMF27OBR,CMF27UA1,CMF27UA2,
CMF27uty, and CMF27VOL (the VOLSER!)
In the CMF27CSD dataset, the existence of the new fields
can be identified by testing CMF27VOL; if it is non-blank,
the record was created after PTF BPM4681.
Thanks to Matthew McCue, United Parcel Service, USA.
Thanks to John Piccone, United Parcel Service, USA.
Change 11.335 A minor correction to the revised VMXGSUM summarization;
VMXGSUM if the first data step was not required by the SORT, the
Mar 6, 1994 PROC MEANS looked for MXGSUM1 when it wanted MXGSUM2;
also, a specious error message when the length of the
INDATA= string was less than 40 bytes was eliminated. It
needs to be stressed that the changes made to VMXGSUM are
INCOMPATIBLE if you have tailored any of these members:
ASUMDBDS ASUMDB2A ASUMDOS ASUMHPCS ASUM70PR
DAILYDSN GRAFDB2 GRAFLPAR TRNDDB2A
You must retrofit your tailoring, starting with the new
member in MXG 11.11 (see the text of Change 11.309).
Change 11.334 Batch LSR for VSAM can produce incredible savings, by
ANALDSET using memory for buffers instead of repetitive I/O to the
ADOCBLSR same record. Jobs cost less, use less CPU, fewer I/Os,
ANALBLSR and run in tens of minutes instead of tens of hours. This
Mar 6, 1994 new analysis by Chuck Hopf adds new variables in existing
ANALDSET program (that reads SMF and combines type 14/15,
type 64, and type 30 data) to its output dataset DSETOPEN
which is then used as input to ANALBLSR's algorithms to
identify the jobs and VSAM files that could benefit from
BLSR. ANALBLSR also reports any existing Batch LSR usage
and will suggest increase or decrease in buffering where
appropriate. Implementing Batch LSR requires no change
to the application; only a simple JCL change is required,
and example JCL is in member ANALBLSR. Chuck's full
research paper on this timely subject will be in member
ADOCBLSR when it is available. Chuck points out that for
random access to the same records/index, increasing the
number of buffers (BUFNI,BUFND) does not eliminate I/O.
You would expect that if the data was in the buffer VSAM
would find it there, but actually without Batch LSR, I/O
is done instead of lookaside into the buffers! One case
of an Index with only 6 records had one million EXCPs for
a single step; using BLSR with 10 buffers reduced the I/O
count to seven! ANALBLSR lets you set thresholds of the
amount of memory you want to use, and the percentage of
the total I/O for the step, before it will be selected as
a candidate for Batch LSR, and is self-documenting. This
is still ongoing research.
Thanks to Chuck Hopf, Primerica, USA.
Change 11.333 ANALDB2R PMAUD02 Authorization Failure report had N/A for
ANALDB2R table/object name, when there should have been a name.
DIFFDB2 The length of a SUBSTR() was incorrect, causing tests for
IMACDB2 character values to be incorrect. The DB2PM manual was
READDB2 used to decide when a Target/Owner is printed, and it
Mar 6, 1994 says that they are not printed for "ARCHIVE", yet their
report does print it, so we revised our logic to match!
ANALDB2R PMSTA01 Statistics report timestamps printed
were unclear or misleading. There are two sets of
timestamps; the first is the time range of the data that
was read, the second is the range of data summarized on
that page, if INTERVAL= is specified. Also, DIFFDB2,
IMACDB2, and READDB2 were corrected to use _LDB2STA
instead of the hardcoded PDB.DB2STATS, and IMACDB2 and
READDB2 now know about the new DB2 3.1 dataset DB2ACCTP.
Thanks to Wai Choong Mak, Development Bank of Singapore, SINGAPORE.
Change 11.332 Support for Candle's Omegamon II for SMS user SMF record
EXOMSMDV creates two new datasets:
EXOMSMJB OMSMSDEV - DASD Device Statistics
IMACOMSM OMSMSJOB - JOB and DSNAME activity on each volume.
TYPEOMSM This code has been tested with actual data, but has not
VMACOMSM been extensively validated by real users, yet!
Mar 5, 1994
Change 11.331 The contributed RACF reports program WPDBRACF had to be
ANALRACF changed due to an apparent change in the way that some
Mar 4, 1994 formatted values were named in the PROC TRANSPOSE. The
RENAME= list for dataset RACFREP2 was revised.
Thanks to Neil Campbell, Inland Revenue, ENGLAND.
Change 11.330 DB2 Audit Detail report, Completion Code, was incorrect,
ANALDB2R causing "INVALID NUMERIC DATA" message on the SAS log.
Mar 4, 1994 Two tests for QW0083AD=0 and two tests for QW0087AD=0
should have tested for hexadecimal character zero instead
of numeric. The two pairs of statements now reading :
IF QW0083AD=0 THEN .... and IF QW0087AD=0 THEN ....
must be changed to read:
IF QW0083AD='00'X THEN ... and IF QW0087AD='00'X THEN ...
Thanks to Wai Choong Mak, Development Bank of Singapore, SINGAPORE.
Change 11.329 CICS/ESA DFHSTUP Shutdown Statistics Reports can now be
ANALCISH printed by MXG, either from a raw SMF file, or from a PDB
VMAC110 library (with minor modifications to BUILDPDB). This is
Mar 4, 1994 a significant contribution that uses ESA CICS datasets to
replicate the important IBM Shutdown reports. You can
// EXEC MXGSAS
//SMF DD DSN=YOUR.SMF.TYPE110.records,disp=shr
%ANALCISH(PDB=SMF);
to generate all reports from raw SMF data. You can also
generate these reports regularly, from your PDB, but you
will need to tailor BUILDPDB so that it copies all of the
CICS statistics datasets from the WORK file into the PDB.
You must add, in member EXPDBOUT, this code:
PROC COPY IN=WORK OUT=PDB;
SELECT CIC:;
and then you can invoke %ANALCISH(PDB=PDB); to print
shutdown reports for all CICS regions. Additional macro
arguments let you select date/time/region, and to select
only the desired report.
An minor error in VMAC110 was also corrected; member
IMACCICS is now included by its VMAC, instead of in its
TYPE member or by BUILDPDB. This clerical oversight only
affected me when exploiting my new "_L" logic, but should
have no effect in the field!
Note for the experts: I needed to do this so that I
could null out the CICSTRAN data set (which has high
volume, and is not currently used by ANALCISH) when
I ran against SMF data, and the mislocated %INCLUDE
did not let me. Normally you would null out a dataset
by EDITing the product's IMACxxxx member and change
its "_L" macro's dataset name to "_NULL", but you can
also null out any MXG dataset on the fly, without EDIT
of the IMACxxxx member, by using this syntax:
%INCLUDE SOURCLIB(VMACSMF,VMAC110);
MACRO _LCICTRN _NULL_ %
DATA _VAR110; _SMF; _CDE110;
(You must be at SAS 6.08 for the _NULL_ operand to be
a valid argument of the OUTPUT statement!)
In addition to producing the CICS Shutdown Report, member
ANALCISH lets you see what variable from what MXG dataset
is used for what report field, by reading the code! This
set of reports has been long overdue; the most important
reports have been implemented for both CICS 3.2 and 3.3,
but there are more reports (especially the detail reports
by transaction) that were not finished in time for 11.11.
Thanks to Willi Weinberger, Gothaer Versicherungsbank, GERMANY.
Thanks to Siegfried Trantes, Gothaer Versicherungsbank VVAG, GERMANY.
Change 11.328 Division by zero if there were no TSO transactions in an
TRNDRMFI interval. Change PCTTRIV=TRIVTRAN/TSOTRAN*100; to read
Mar 4, 1994 IF TSOTRAN GT 0 THEN PCTTRIV=TRIVTRAN/TSOTRAN*100;
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
Change 11.327 MXG 11.09A and 11.10 only. Change 11.270 caused INVALID
TYPEMON8 DATA FOR TIAPREQ in the MONISYST dataset if the Landmark
Mar 4, 1994 record was from 8.1 with an archaic history segment (i.e.
when LENGTH=2276). The test in MXG for IF LENGTH GE 1464
should have been IF LENGTH EQ 1464. (The error did not
affect the MONITASK dataset, and the history segment is
no longer created by Landmark.)
Thanks to John Goodstat, Gardner Merchant, ENGLAND.
Change 11.326 Sterling's NDM has been renamed to Connect Direct 1.7.01
VMACNDM and the format of the PT record changed, causing INVALID
Mar 4, 1994 DATA for HH messages. Replacing the single line reading
Mar 21, 1994 INPUT +30 with LOC=LENGTH-21;INPUT @LOC corrected some
records, but there are "PT" records with invalid values
for date/times of 000000000001000Ax & 2800000000FC5B10x
that I need to talk to Sterling about, but I can't find
anyone there to return my call, and I only have the PT,
CT, & MC segments corrected thus far, and I still have
no response from Sterling. If you need to process NDM
records now Connect Direct, send us a fax request, ande
we will advise you of the current status.
Thanks to John Goodstat, Gardner Merchant, ENGLAND.
Change 11.325 Type 42 subtype 6 read from VSAM SMF caused STOPOVER.
VMAC42 (There was no error when dumped BSAM SMF was read.)
Mar 1, 1994 Calculation of these three offsets did not include the
"+OFFSMF" at the end of the line. They should read:
OFFJDDSO=OFFJDDSO-3+OFFSMF;
OFFDSIOO=OFFDSIOO-3+OFFSMF;
OFFJDDSO=OFFDSNXT-3+OFFSMF;
The GMT conversion algorithm should also be changed to:
GMTOFF42=100*FLOOR((SMFTIME-SMF42PTE+10)/100);
Thanks to H. Placht, RWD Gmbh Datenverarbeitungsgesellschaft, GERMANY
Change 11.324 Variables SAMPSKPD, RMFIIIRC and INTRVSYN were always
VMAC7072 blank, because variable CONVFLAG should have been input
VMAC71-VMAC79 as PIB1 instead of PIB2.
Feb 28, 1994
Thanks to Scott Ashby, Wachovia Operational Services Corp., USA.
Change 11.323 MXG 11.09-11.10 only. Change 11.246 added support for
IMAC28 NPM 2.1.0, but in IMAC28, macro _L028NWD should have
VMAC28 spelled its dataset name as NPMNWDWD instead of NPMNWCWD.
Feb 28, 1994 In addition, causing confusion but no execution error,
comments in VMAC28 were misspelled; NPMCLLAN should be
NPMCMLAN, and RMSTR should be RMSTA in all occurrences.
Thanks to Ann Wheeler, American President Lines, USA.
Change 11.322 TYPE72MN variables WSETFIX and WSETASM were incorrect.
VMAC7072 They are now calculated as:
Feb 18, 1994 WSETFIX=FRAMEFIX/AVGUSER;
WSETASM=FRAMEASM/AVGUSER;
Thanks to Jan van Kemenade, Universitair Centrum Info., NETHERLANDS.
Change 11.321 Support for ISOGON's SoftAudit Product Usage File and
EXSFTAM Module Usage File creates two datasets by reading the two
EXSFTAP separate SoftAudit flat files:
IMACSFTA MXG Dataset DDname Description
TYPESFTA SOFTAUDM XPUSAGEM Module Usage File
VMACSFTA SOFTAUDP XPUSAGEP Product Usage File
Feb 17, 1994 Both files will be read if data exists in either DDname:
// EXEC MXGSAS,USER=PDBSFTA
//XPUSAGEM DD DSN=MODULE.USAGE.FILE,DISP=SHR
//XPUSAGEP DD DSN=PRODUCT.USAGE.FILE,DISP=SHR
//PDBSFTA DD DSN=WHERE.YOU.WANT.OUTPUT,DISP=(,CATLG),
// UNIT=SYSDA,SPACE=(CYL,(10,10))
%INCLUDE SOURCLIB(TYPESFTA);
If you only want to process one of the two files, use
DD DUMMY in your JCL for the unwanted file.
Change 11.320 APPC tasks do not go thru JES, so there will be no type
BUILDPDB 26 purge record to match up with APPC type 30 records. As
BUILD006 a result, all APPC work would be held in the SPIN library
Feb 16, 1994 until SPINCNT in IMACSPIN is exceeded. Even if there are
type 6 records for APPC tasks, there is no way to know
they exist, so there is no reason to SPIN APPC tasks, and
therefore, the BUILDPDB logic for outputting APPC tasks
to the PDB.JOBS and PDB.STEPS datasets was revised to
send APPC tasks to the PDB as soon as both a type 30
subtype 4 (step) AND type 30 subtype 5 (job) record have
been found. If there were any type 6 records for the
same JOB JESNR READTIME combination in today's SMF data,
then PDB.PRINT will have the APPC tasks print data with
accounting fields from the type 30. An isolated type 6
record for an APPC task will be output when found, i.e.,
it will not be sent to the SPIN library. The insert:
ELSE IF TYPETASK=:'A' THEN DO;
IF IN30_5 THEN OKFLAG=1;
ELSE IF IN6 AND NOT IN30_4 THEN OKFLAG=1;
END;
Thanks to Don Friesen, B.C. Systems, CANADA.
Change 11.319 AS/400 variable AS400SYN was blank, because the %MACRO
VMACQAPM variable &AS400SY was not passed correctly, and was being
Feb 16, 1994 reinitialized to blanks in QAPMCONF. The three SYMPUTS
in _CQAPCON were enclosed in IF _N_=1 THEN DO; ... END;.
All occurrences of AS400SYN="&AS400SY"; were changed to
read AS400SYN=SYMGET('AS400SY'); Also, the single
occurrence of NRCPUS="&AS400CP"; was changed to read
NRCPUS=SYMGET('AS400CP');
Thanks to Greg Scriba, Budget Rent-A-Car, USA.
Change 11.318 CICS Statistics variable A20E1HWM (Peak Contention Users)
VMAC110 was left out of the KEEP= list for dataset CICCONMR.
Feb 14, 1994
Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Change 11.317 Partial support for LEGENT's MIM Release 4.0 enhances the
VMACMIM MIMTAPE dataset for the new release, but additional work
Feb 14, 1994 is needed to decode new subtypes in this release. This
code is functional, and hence included, but test data for
other subtype is needed before full support is provided.
Thanks to Doug Drain, National City Bank, USA.
==Changes thru 11.316 were include in MXG PreRelease 11.10 dtd 14Feb94==
Change 11.316 Support for LEGENT's NETSPY Release 4.4.
EXNSPYET -Dataset NSPYAPPL, new variables APOTLN62, APOTNN62 count
EXNSPYFR the outbound bytes for LU 6.2 and non-LU 6.2 sessions.
FORMATS -Dataset NSPYLU, new variable RESPNOTC='Y' if response
IMACNSPY time is collected. IF RESPNOTC='N', then variables:
VMACNSPY LRSPHOST LRSPNET WRSPHOST WRSPNET CRSPHOST CRSPNET
Feb 13, 1994 NETRSPNO T1RSPNO T2RSPNO T3RSPNO T4RSPNO
are now set to zero by MXG, as LEGENT says "these fields
may have data in them, however they should not be used
when reporting".
-New Dataset NSPYFRLY for Frame Relay Statistics
-New Dataset NSPYETHR for Ethernet Statistics.
-Several new values for NSPNSUBT are now decoded by
MXG format MGNSPEL, and logic for recognition of which
sub-subtype of the type 'N' was clarified.
Change 11.315 Support for CA's ACF2 Release 6.0 and 6.1 added seventeen
VMACACF2 new variables to type 'V' record, and one to type 'D'.
Feb 12, 1994 Renames of ASSSPCOD to ASSPPCOD and ACFGFOE to ACFGFDEN
correct my misspellings. The use of LENGTH-COL-1 (to know
how many bytes are left in the record) should have been
LENGTH-COL+1 (this could have caused new variables to not
be read in, although no one seems to have noticed!).
In this revision, I have also decoded the LIDREC and the
LIDXARE of the type 'J' record, labelled and formatted
the several dozen new variables, but did not add any of
those variables to the ACF2JR data set; instead, if you
decide you need those variables, you can use the MXG
macro _KACFJR in member IMACACF2 to add them. (Only one
site had requested the LID fields.)
Change 11.314 For developers, this is my recommended test protocol:
Testing
Feb 12, 1994
You need to ALWAYS test it ONE MORE TIME!
When you think your code is done:
Run it once more, as a batch job, and while that job
that job is running, use SPF 3.12 COMPARE to examine
every difference between the before-and-after source
members.
Then,examine the batch job's output:
- The SYStemLOG, for any Operating System warnings,
- The SASPRINT report output, for any differences,
- The SASLOG log output, for any occurrence of each
of these strings (blanks are important!):
"ERROR:" "ERROR :" " UNINIT"
"NEVER BEEN" "NOT FOUND" "CONVERT"
"NOT CATLGD" " NOT " "TRUNCATED"
Change 11.314A MXG 11.09A Only, PMACC02 Report, DB2 Accounting Detail
ANALDB2R Trace was in error due to insufficient testing. The data
Feb 12, 1994 was summarized when it should only have been sorted.
Thanks to Jeff Marsh, Twentieth Century Services, USA.
Change 11.313 OMEGAMON for CICS V550/V551 User SMF record subtype 100
VMACOMCI sub-subtype 2 caused INPUT STATEMENT EXCEEDED RECORD LEN.
Feb 12, 1994 The code expected the same number of segments for EGROUP
as for ETRNAME, but they are unrelated tables. The code
was corrected, but for simplicity both EGROUP and ETRNAME
segments are still output in dataset OMCITRAN; you can
identify which is which by testing :
IF ETRGRPM NE . ==> ETRNAME and ETRGRPM are valid
IF ETRGRPM EQ . ==> EGROUP, EGRPNAM, EGRPESNR are valid
This change supercedes Change 11.115.
Thanks to Ron BLeeden, Jewel Food Stores, USA.
Thanks to Bill Wieland, EDS Westlake, USA.
Change 11.312 Variable AVGENQMS (Average ENQUE time in milliseconds)
VMAC74 was calculated but not KEPT, LABELed nor FORMATted, but
Feb 9, 1994 now it is.
Thanks to Waldemar Schneider, SAS Institute Europe, GERMANY.
Change 11.311 GRAFWORK was enhanced with a new graph of memory usage by
GRAFWORK workload (using the ACTFRMTM-based measure of resident
Feb 7, 1994 memory frame seconds in the xxxxMEMR variables). GRAFWORK
now provides graphic depiction of CPU, I/O, and MEMORY
resource usage by workload.
Change 11.310 GRAFRMFI was revised to include new variables added to
GRAFRMFI RMFINTRV recently, and the internal logic revised to make
Feb 7, 1994 maintenance easier.
Change 11.309 This major revision to VMXGSUM reduces runtime and CPU
VMXGSUM time, by keeping only the variables and datasets that are
ANALDB2R needed during the input for summarization, and executes
ANALPRTR only the steps required (i.e., it will bypass PROC SORT
ASUMCICS if it can). If you have tailored some MXG members that
ASUMDBDS invoke %VMXGSUM, you MUST examine the INCOMPATIBILITY
ASUMDB2A note, below, and you MAY have to update your tailored MXG
ASUMDOS members. If you have used %VMXGSUM in your own reporting
ASUMHPCS programs, you may also be vulnerable to required changes.
ASUMJOBS -Changed the logic for MINTIME= and MAXTIME=. No longer
ASUMTMNT are variables named MINTIME/MAXTIME created; instead, the
ASUMVDEV variable name(s) passed into VMXGSUM are retained, which
ASUMVMON permits bypassing the first data step to reduce costs.
ASUM70PR -NOSORT= parameter was added, which allows the sort to be
DAILYDSN bypassed if you KNOW the data is already in order.
GRAFDB2 -Initialization to protect for "UNINITIALIZED VARIABLE"
GRAFLPAR message (the series of IF X=. THEN X=.; statements) was
TRNDDB2A relocated to execute only once.
TRNDDB2S -New logic automatically figures out what variables need
Feb 7, 1994 to be kept (by looking at all variables that are in any
text of of the list-of-variable parameters), so the _KMXGSUM
change was syntax that was added in MXG 11.09 is no longer used.
revised -The new KEEPIN= parameter is required if you have INCODE=
Mar 6, 1994 specified, and if there are unique variables used in your
INCODE= logic that are not referenced by other VMXGSUM
list-of-variable-parameters (SUM= SUMBY= MIN= ... etc.)
-INCOMPATIBILITY NOTE
If there is an INCODE= parameter (for sophisticated use
you can insert SAS code with this parameter), AND only
if there are variables referenced in your INCODE= logic
that are not referenced by the other VMXGSUM parameters
(SUM= SUMBY= MIN= ... etc.),
Then you MUST add a KEEPIN= parameter to your %VMXGSUM
invocation so that those unique variables exist during
the INCODE= code execution.
These MXG-supplied members had to be changed in the MXG
Source Library because all had un-kept variables that
had to be listed in the KEEPIN= parameter:
ASUMDBDS ASUMDB2A ASUMDOS ASUMHPCS ASUM70PR
DAILYDSN GRAFDB2 GRAFLPAR TRNDDB2A
If any of those 9 members are in your USERID.SOURCLIB
tailoring library, you MUST refit your changes,
starting with the MXG 11.11 member that contains the
required KEEPIN= parameter.
You must scan your USERID.SOURCLIB(s) for any of your
own programs that invoke %VMXGSUM, and see if any of
them meet both conditions (INCODE= and nonkept variable
referenced in that INCODE= logic).
Examine the SAS log of your test runs for UNINITIALIZED
VARIABLES messages; that is a sure sign that you have
INCODE= variables that do not exist!
DO NOT OVERLOOK THIS CRITICAL INCOMPATIBILITY, which
should affect only the very small number of sites that
have tailored the MXG summarization or trending code.
As long as you are executing those 9 MXG members
unmodified from the MXG 11.11 library, there is not any
incompatibility with this change.
-All MXG invocations of VMXGSUM were examined and INVOKEBY
was added so the caller would print on the SAS log.
-Especially with a large input dataset (eg., CICSTRAN with
594,000 observations, the keeping of only the needed
variables significantly saves resources. Using:
%VMXGSUM(INDATA=CICSTRAN.CICSTRAN,
OUTDATA=CICSSUM,
DATETIME=STRTTIME,
INTERVAL=HOUR,
SUMBY=APPLID DATETIME,
FREQ=NUMTRANS,
SUM=IRESPTM TASCPUTM);
Showed these comparisons before and after this change:
Run COMPRESS CPU EXCP Memory DASD
Option SEC count used tracks
Before NO 120 21843 4973K 10699
After NO 83 12920 4902K 943
Before YES 650 25330 4913K 7129
After YES 135 13255 4902K 1111
The elapsed times were also significantly reduced. The
37 minutes required for the "before" compressed run was
reduced to 11 minutes for the "after" compressed run.
Thanks to Chuck Hopf, Primerica, USA.
Change 11.308 Support for Candle's Deltamon SMF record creates new MXG
EXTYDLMN dataset TYPEDLMN, which reports activity (ADD,UPDATE,
FORMATS DELETE, or RENAME) at the PDS member level.
IMACDLMN
TYPEDLMN
VMACDLMN
Feb 7, 1994
Thanks to Chuck Hopf, Primerica, USA.
Change 11.307 ASTEX variable RCHCNT=SUM(RHTRD,RHTRDS,RHTDFW,RHTCSW) was
VMACDMON added after the INPUT of the four arguments. In prior
Feb 7, 1994 versions of ASTEX, RCHCNT was directly input, but now it
must be calculated from its four arguments.
Thanks to Jay Stewart, Honda, USA.
Change 11.306 For MVS execution, MEMSIZE=32MB is now the default value
CONFIG in CONFIG. The default BUILDPDB failed "OUT OF MEMORY"
Feb 7, 1994 with MEMSIZE=24MB, and 32MB protects for the future.
Change 11.305 Variable CMF09UIC from Boole's CMF must be divided by the
VMACCMF number of samples:
Feb 7, 1994 IF CMFHDSAM GT 0 THEN CMF09UIC=CMF09UIC/CMFHDSAM;
Variable CMF05NUM is now format HEX4.; variable CMF19TPG
no longer formatted HEX2.!
Thanks to Joanne Turpie, Department of Labour, NEW ZEALAND.
Change 11.304 Support for OPC/ESA Release 2.1 has added 5 new datasets
EXOPC34 (and corrected INVALID MTD SUBTYPE messages):
EXOPC35 OPC24_H MTD Delete/Change CM
EXOPC36 OPC24_I MTD Hold Operations
IMACOPC OPC34 Catalog Management
VMACOPC OPC35 Backup Event
Feb 6, 1994 OPC36 CP Backup Log
Finding all the IBM manuals for this release was a chore;
comments in VMACOPC identify what is documented where!
And I learned that you cannot order Licensed IBM Pubs if
you use your "IBM Customer Number", but if you give the
same number as your "IBM Enterprise Number", the Pubs
clerk discovers you are authorized for Licensed Pubs!
Thanks to Alan Phelan, Allied Irish Bank, IRELAND.
Thanks to Wolfgang Vierling, Vereinte Versicherungen, GERMANY.
Change 11.303 TYPE71 variable AVLEXTMN, "Minimum ESTORE Available", can
VMAC71 be negative, according to IBM, so its input was changed
Feb 5, 1994 from &PIB.4. to &IB.4. The actual value of the field is
"number of extended storage e-frames currently on the
available sets excluding those reserved for pref steal."
This means that when the value is zero, all of RSM except
for pref steal will accept that there are "no" available.
If the value is less than zero, pref steal will check to
see if there are any in reserve and will use these.
Thanks to Hr. Leineweber, HUELS AG, GERMANY.
Change 11.302 Testing of TYPEVMXA (VM/ESA) under UNIX, OS/2 or WINDOWS
AUTOEXEC found glitches (but this change is NOT needed if you run
VMACVMXA MXG under either the MVS or VM versions of SAS):
VMAC83 -AUTOEXEC had blanks inside quotes, which is no problem
XMACNCCF for WINDOWS or OS/2, but UNIX did not tolerate, so they
VMXGHSM were removed. Also, a new Filename statement was added:
ANALSNAP FILENAME INSTREAM 'C:\MXG\USERID\INSTREAM.SAS'
IMACACCT and must be suffixed .SAS, because it is written to and
SYSLOGJ3 then %INCLUDEd (to build formats "instream").
UTILXREF -Some variables input as $EBCDIC were not character data
VMACACF2 but were binary data and are now input as $CHAR. Some
VMACASXT also required addition of $HEX formats, and most were in
VMACCMA seldom-to-never-used VM data sets.
VMACDB2 -The building of the "instream" PROC FORMAT failed with
VMACHMF INVALID HEX DATA, because of $EBCDIC versus $CHAR input
VMACPOOL format that was corrected.
VMACTSOM -Discovered that EBCDIC algorithm to identify numeric
VMACVMON EBCDIC characters from alphabetic characters, using
VMACVMXA LT '0' ==> alphabetic GE '0' ==> numeric
VMACVVDS is invalid under ASCII execution. EBCDIC algorithm works
VMAC102 because EBCDIC numbers are 'F0'x thru 'F9'x, which is
VMAC24 larger than EBCDIC letters of '81'x thru 'C1'x (lower
VMAC33 case) and 'C1'x thru 'E9'x (caps), but the ASCII numbers
VMAC37 are '30'x thru '39'x, which is smaller than ASCII
VMAC4789 letters '41'x thru '5A'x (caps) and '61'x thru '7A'x
VMAC59 (lower case). The parsing algorithm was redesigned to
VMAC60 scan for non-blank versus blank, and one more difference
VMAC6156 between ASCII and EBCDIC execution is documented!
VMAC80 -Use of $VARYING200. input for printable characters was
VMAC83 resolved. $VARYING acts like $CHAR instead of $EBCDIC,
Feb 4, 1994 so strings that are to be printed need conversion. The
WINDOWS conversion algorithm is:
INPUT variable $VARYINGnn. lenvar @;
variable=INPUT(variable,$EBCDICnn.);
variable=TRANSLATE(variable,' ','80'x);
Note: only the INPUT function should be required, but
The TRANSLATE was unexpectedly needed because the
$EBCDIC was found to convert '20'x ASCII blanks at
the end of the string to '80'x. SAS Institute
suggested that using INPUTC(string,format,length);
instead of INPUT(string,format) would have eliminated
the need for the TRANSLATE() function, but my code
works, whereas (Jun 24, 1997 update:)
when I tried INPUTC under SAS 6.12 TS020 Windows 95
I got these errors pointing to the $EBCDIC128. when
I tried to use VAR=INPUTC(VAR,$EBCDIC128.,LEN);
386-185 Expecting Arithmetic Expression and
200-322 The Symbol is not recognized
underscored for format $EBCDIC128.. Problem
will be opened with SAS: That's the way it is!
The $VARYING conversion required examination of each
occurrence to see if the field is a printable (text)
string, and if so, insert the above conversion code.
(This also required creation of DO group in some cases.)
Thanks to Chris Powell, Vancouver Stock Exchange, CANADA.
Change 11.301 Labels for the four new SYNCSORT variables SYNDSMVL,
VMACSYNC SYNFMAVL, SYNFMALO, and SYNMMUSE were added; originally
Feb 2, 1994 they were not provided in SYNCSORT documentation.
Thanks to John Borland, Citibank, USA.
Change 11.300 An SMF Writer "Simulator" has been added to ANALSMF, to
ANALSMF examine your SMF data and tell you what is the optimum
Feb 2, 1994 CI Size of your VSAM data set. See the MVS Technical
Note in Newsletter TWENTY-FIVE for a complete discussion
of the impact of the wrong CI Size on the SMF Writer.
You need only to EDIT ANALSMF to set the CI Size of your
VSAM file (in macro _MYCISIZ), and then point the SMF DD
to a dumped SMF file, and the report of DASD Space and CI
Writes at different CI Sizes will be produced. Several
additional reports were added to describe how seldom the
SMF Writer actually writes, and the Statistics from
TYPE23 are also printed, along with a tabulation that
shows the contents (count and bytes) of where your SMF
data records come from.
Change 11.299 The example of the ZARA LIST command to create an OUTFILE
TYPEZARA needs to have the SSFN operand added so that "secondary"
VMACZARA files (i.e., second and subsequent files on a volume) are
Feb 2, 1994 created in the OUTFILE. Without SSFN, you only see the
first dataset on each volume in ZARADSN. Correct is:
LIST OUTFILE ACTIVE SSFN $$
In addition, variable LSTTYPE, type of tape (AUTO,ACTIVE,
SCRATCH) was added to ZARAVOLS and ZARADSN datasets.
Also, variable FILTIMEL may contain trash (seems to be
for volumes converted to ZARA from CA-1); the "??" was
added to the INPUT FILTIMEL ?? &PD.4. statement.
Thanks to David Childress, Lowe's Companies, Inc, USA.
Thanks to Neil Ervin, Huntington Bank Service Company, USA.
Change 11.298 The JCL in this example to analyze all records from a
ANALALL specific job was partially for SAS 6.08 and partially for
Jan 18, 1994 SAS 5.18, causing confusion for novices. The JCL example
now is for SAS Version 6.
Thanks to Rosie Jergovic, Pacific Bell, USA.
Change 11.297 Variable TIC_UTIL in NETSPY is incorrectly computed. The
VMACNSPY BYTSENT+TRTPBYTS should be BYTSENT*TRTPBYTS in both of
Jan 18, 1994 the equations for TIC_UTIL.
Thanks to Linda Liu, Transamerica, USA.
Change 11.296 This analysis of the size of an SMF file was enhanced to
ANALSMF report SMF type 23 statistics, and the categorization of
Jan 18, 1994 SMF record IDs for JOB-IO now includes all VSAM activity.
Change 11.295 Missing value for FATNUM, UTNUM, or MRONUM cause INVALID
TYPEMON8 DO ARGUMENT message if Change 11.270 was not installed to
Jan 17, 1994 circumvent new format of Landmark data. While 11.270 did
avoid these errors, the missing value protection was now
added, just in case!
Thanks to Hr. Dungl, CA-Inform, GERMANY.
Change 11.294 MXG 11.09A only. Accounting detail report not produced
ANALDB2R if time selection was used and DB2ACCT was used as input.
Jan 13, 1994 Find "%MACRO PMACC02;", then find "MINTIME=QWACBSC;".
Insert after that line the statement "MAXTIME=QWACESC;"
Thanks to Jeff Marsh, Twentieth Century Services Inc, USA.
Change 11.293 Additional refinements in the RMF reporting from MXG data
ANALRMFR were added. The time selection logic was corrected so a
Jan 13, 1994 report for 10am-12am Mon-Fri can be requested, and CPUIDs
thru 15 CPUs is now supported.
Change 11.292 MXG 11.09A only. The KEEP= logic did not include &MEAN.
VMXGSUM The three lines starting with &MAX &MAXTIME need to have
Jan 12, 1994 &MEAN added after &MAXTIME. Only if you invoked VMXGSUM
with the _KMXGSUM operand, and had MEAN= parameter, would
this change have had any effect. Change 11.309 revised.
Change 11.291 Analysis of VSAM datasets were sorted by SMFTIME instead
ANALDSET of the STEP initiate time; logic was added to store and
Jan 11, 1994 retain the SORTTIME of each STEP record in STEPTIME, and
then store STEPTIME into SORTTIME for TYPE64 observations
so VSAM is consistent with non-VSAM sort order.
Thanks to Gary Matney, Twentieth Century Investors, USA.
==Changes thru 11.290 were included in MXG 11.09A dated Jan 10, 1994====
Change 11.290 Member ASUMAPAF, a user contribution, summarizes Amdahl's
ASUMAPAF APAF records from MDF, similar to ASUM70PR summary of
TYPEAPAF IBM's PR/SM records. TYPEAPAF was cosmetically changed
Jan 8, 1994 to use __NRLPS to control all of the LPAR variables to
be kept (previously, some variables were controlled by
__NRLPS and some were kept for all possible 15 LPARS).
The value of __NRLPS is set in IMACAPAF.
Thanks to Brian LeBlanc, Candle Corporation, USA.
Change 11.289 AS/400 data sets are now fully documented in this new
ADOCQAPM ADOC chapter, although it has not been final-pass edited.
Jan 8, 1994
Change 11.288 This example of a prime-time cross-system DASD report
ANALDASD from PDB.TYPE74 may be of use in tracking DASD activity
Jan 8, 1994 across multiple systems.
Thanks to Dan Kaberon, Hewitt Associates, USA.
Change 11.287 Preliminary testing under CMS of MXG 11.09 found that the
REXXTES6 REXX sample did not include VMXGINIT nor did it contain
Jan 6, 1994 the correct FILEDEFs to concatenate USERID and SOURCLIB
MACLIBs. See also the circumvention in Change 11.067 to
remove CICS and DB2 processing to run BUILDPDB. This
text will be revised when testing under CMS is completed.
Thanks to Jerry Maier, NBD Bank, USA.
Change 11.286 DB2PM-like reports have been revised to correct all
ANALDB2R reported errors and now exploit fields added by DB2 2.3.
Jan 6, 1994 Many of the TRACE reports (notably AUDIT, LOCKING, SQL)
were heavily modified, and all reports now use ANALDBTR
pairing where appropriate. Input can now be from a PDB
library on tape, and one new report has been added:
PMLOK04 - Lock Detail Trace report.
Thanks to Mike Skopec, Platinum Technology, USA.
Thanks to Wai Choong Mak, Development Bank of Singapore, SINGAPORE.
Thanks to Andy Vick, Allied Dunbar Life Assurance, ENGLAND.
Thanks to H. Lugert, Datav, GERMANY
Change 11.285 Pairing logic for IFCIDs 114-115 was added, the T102S054
ANALDBTR dataset was added to the S044S045 pairing. Also, all
Jan 6, 1994 observations of T102S063 (SQL text) are now output (only
the first 200 bytes of text was previously output - this
change in ANALDBTR will now cause the ANALDB2R SQL trace
report to now print all of the SQL text). Also, if the
input datasets are from a PDB library, the intermediate
T102Sxx datasets in the WORK file are now deleted.
Change 11.284 Some variables needed for ANALDB2R were not kept in some
FORMATS T102Sxxx datasets, and compressed data in IFCID 21 and 54
VMAC102 are now decoded, using the new $MGDB2XX format. Three
Jan 6, 1994 labels that exceeded 40 bytes were shortened.
Change 11.283 A minor correction: if IFCID=ALL was specified, the
READDB2 output T102Sxxx datasets were not copied to the output
Jan 6, 1994 PDB library, but now they are.
Change 11.282 New dataset PDB.DB2STATS is now created by merging the
DIFFDB2 three DB2 statistics datasets (DB2STAT0, DB2STAT1, and
Jan 6, 1994 DB2STAT2) for ease in statistics reports. Eventually,
the new dataset will be used by ANALDB2R reports, and you
should use DB2STATS in your own reports. As these
statistic datasets are small, there is little cost for
the redundancy.
Change 11.281 Major reduction in VMXGSUM resources (CPU,DISK) are now
VMXGSUM completed. Originally planned as Change 11.245, those
Jan 6, 1994 changes were not implemented until now, because the NODUP
SAS option and the MXG _KMXGSUM operand were in conflict;
NODUP dropped observations that were not duplicate, but
looked like dupes because of the reduced variables kept.
So the NODUP option on the SORTs in VMXGSUM were removed
(although a new option NODUP= lets you reinstate them if
you need them and know what you are doing!), and these
changes in the architecture of VMXGSUM were validated:
- The first data step is bypassed if there is no INCODE=,
no INTERVAL=, no SHIFT=, and no NORMx= arguments, and
if there is only one input dataset.
- The PROC SORT is bypassed if there is no SORTBY=.
In another enhancements, three new symbolic arguments
TEMP01,TEMP02,TEMP03 (which default to WORK) are used as
the high-level node of the work datasets, which permits
placing one or more of the work datasets on tape,
reducing the DASD requirement for VMXGSUM processing. If
all three TEMPxx parameters point to the same DDNAME,
then a PROC DATASETS is run at the end of processing to
clean up the temporary space, but if they are different,
we cannot clean up as we have no way to tell if this is a
tape or disk data set. VMXGSUM now uses DKRICOND=NOWARN
as the default (so input datasets with non-existent
variables do not raise a warning), but DKRICOND=WARN is
reset at the end of VMXGSUM execution.
Yet another enhancement is the new argument TIMERNGE=.
If TIMERNGE= is specified, four macro variables are then
constructed to determine the date, time, or datetime
range of the TIMERNGE= argument across the entire input
datasets. The macro variables created are:
MAXINDT - Maximum datetime value for the input data
MAXSLDT - Maximum datetime value for the output data
MININDT - Maximum datetime value for the input data
MINSLDT - Maximum datetime value for the output data
(You must supply the appropriate FORMAT if you print the
value of these four new variables.)
Note: The VMXGSUM architecture was further enhanced in
Change 11.309. This text was edited after that change.
Change 11.280 TYPE39_8 (Netview Session Awareness) LSAWxxxx variables
VMAC39 are wrong because the INPUT statement was off by 4 bytes.
Jan 6, 1994 Also, variables LSAWPSPU and LSAWPSPM were not input.
Change the LSAW section logic to read:
INPUT @OFFSAW REVISION &PIB.2.
+2
LSAWASBC &PIB.4.
- - - - - - - - - - - - - - 17 lines not displayed
LSAWRDQM &PIB.4.
@;
SKIP=LENSAW-80;
IF SKIP GE 8 THEN DO;
INPUT LSAWPSPU &PIB.4.
LSAWPSPM &PIB.4.
@;
SKIP=SKIP-8;
END;
IF SKIP GT 0 THEN INPUT +SKIP @;
END; /* SAW SECTION */
and add LSAWPSPM and LSAWPSPU to the KEEP= list for
TYPE39_8.
Thanks to Hr. Schulte, GRZ, GERMANY.
Change 11.279 MXG 11.07 thru MXG 11.09 did not process TPX Version 3.0
VMACTPX records (but prior MXG versions did), because the LEGENT
Jan 6, 1994 change in format of TPXVER did not document the 3.0 value
to be expected. The conversion code now reads:
IF TPXVER EQ '100 ' THEN TPXVER=' 1.0';
ELSE IF TPXVER EQ '200 ' THEN TPXVER=' 2.0';
ELSE IF TPXVER=:'3.0' THEN TPXVER=' 2.0';
ELSE IF TPXVER=:'3.5' THEN TPXVER=' 3.5';
ELSE IF TPXVER=:'1.0' THEN TPXVER='10.0';
Thanks to Jan Decuypere, Gemeentekrediet N.V., BELGIUM
Change 11.278 Landmark CICS variable TIESDATE (start date) can be null
TYPEMON8 if PTF U200952 is not installed. MXG uses TIESDATE to
Jan 5, 1994 validate that DUMP CONVERT was specified when you dumped
Feb 16, 1994 the Landmark data (see their examples TMON9DBU/TMON9FSU),
and MXG generates the "ERROR3.LANDMARK.MONITOR" error
message "INVALID FORMAT FOR TIESDATE" when TIESDATE is
null. Install the PTF. However, if you encounter that
error message, and know that your data was converted,
you can suppress the ABEND by commenting out the "ABORT
ABEND 1099" statement in member TYPEMON8, until the PTF
is installed. This change text was revised Feb 16, 1994.
Thanks to Mark Holland, State Energy Commission, AUSTRALIA
Change 11.277 If ASUMDB2A is executed separately from BUILDPDB, there
ASUMDB2A will be errors because %INCLUDE SOURCLIB(IMACDB2); did
Jan 5, 1994 not exist in member ASUMDB2A, but now it does.
Thanks to Steve Bryant, Belk Stores Services, USA.
Change 11.276 Support for ZARA Release 1.1 added 36 bytes to the sort
VMACZARA key and header area. You will have zero observations in
Dec 15, 1993 the ZARAVOL and ZARADSN datasets until you change all of
the @xxx values that are now greater than 100 by adding
36 to the present value. Thus the @172 VRCDTYP became
@208 VRCDTYP, the @183 VOLCHAIN became @219 VOLCHAIN,
and so forth.
Thanks to David Childress, Lowe's Companies, USA.
Change 11.275 IBM APAR OY67002 reports that if the number of LCPUs is
VMAC7072 changed in an LPAR, the data for that RMF interval
Dec 15, 1993 contains the accumulated values from IPL, and there are
no PR/SM segments in the type 70 for the interval.
This corrupts TYPE7072 variables LCPUEDTM,LCPUPDTM,
PCTCPBYx,PCTTIPx, corrupts TYPE70 variables CPUEDTMx,
CPUPDTMx,PCTCPBYx, and PCTTPIx, and corrupts essentially
all ASUM70PR variables for that interval. MXG detects
that the number of LCPUs changed, and sets LPARCHRN='Y'
in TYPE70PR (the Label for LPARCHNR now reads NUMBER OF
LCPUS*IN PARTITION*CHANGED?), but you MUST install the
PTF associated with the APAR if you change the number of
LCPUs in an LPAR while the system is up.
Thanks to Gary Hoover, American Express IPS, USA.
Thanks to Roger Zimmerman, Kemper Services Company, USA.
Change 11.274 Three new variables were added to the SAS User SMF record
VMACSASU in SAS 6.07/6.08. Variables SASVAFF (Vector Affinity CPU)
Dec 15, 1993 SASVUSE (Vector Usage CPU), and SASHSP (Hiperspace CPU)
are now input and formatted TIME12.2.
Thanks to Bruce Lietz, Cessna Aircraft Company, USA.
Change 11.273 Some TRND71 variables were not calculated. In the NORM2=
TRND71 list, the first occurrence of SLOTNVAV should be SLOTNGAV
Dec 15, 1993 and variables ASMNVSC ASMSLOTS ASMSLOTX and ASMVSC were
added to the NORM2= list.
Thanks to Carl Tosetto, E-Systems Garland Division, USA.
Change 11.272 TYPE64 records with SITUATN='COMPONENT CLOSED' are the
ADOC64 only valid records to use for counting EXCPS, etc. The
ANALDSET type 64 records with NO SPACE AVAIL or VOL SWITCHED do
Dec 15, 1993 not contain the "delta" EXCP count, but instead have the
accumulated EXCP count from open to the time of that
event. As a result of this discovery, member ANALDSET
now keeps only TYPE64 observations for Component Closed.
Thanks to Scott Ashby, Wachovia Operational Services Corp, USA.
Change 11.271 Statement DEVASID DS XL2 has an asterisk in column
ASMTAPES 72 which causes the Assembly to fail. This member is
Dec 15, 1993 still in internal testing. See Change 11.360.
Change 11.270 Support for Landmark CICS/ESA Version 1.1 records. That
TYPEMON8 new version added 44 fields to the end of the MONISYST
Dec 14, 1993 interval record, causing "INVALID DO LOOP CONTROL" error.
This error can be circumvented by inserting "HITI=1;"
just before the "DO _I_=1 TO HITI;" statement, but you
will then get "INVALID DATA FOR TASKCPTM" and hex dumps
twice, because Landmark's field TIAPLCPU (MXG variable
TASKCPTM) is invalid until you install Landmark ZAP for
Problem Number U201102. (You can still process without
their ZAP as all other variables in MONISYST are valid,
and only the MONISYST data set was affected by the new
version!). In the actual change, the DO group to read
the history segment was removed, as that segment has not
existed for some time, and MONIHIST always has zero
observations. However, I did not delete the MONIHIST
dataset nor its _L,_K macro names, since that might have
caused a syntax error if you reference MONIHIST in your
report programs. Take heed, though, and remove MONIHIST
references so that I can deleted it in a later version.
Setting HITI=1 has the same effect as skipping the
history record; the TI record is now 1464 bytes long.
Thanks to Mark Holland, State Energy Commission of Western Australia.
Change 11.269 Dataset PDB.JOBS variables ACCOUNTn may be blank, and
BUILDPDB variables RESTARTS, JINLTIME, and NRTRANS can be missing
BUILDPD3 for jobs with MULTIDD='Y' (that is, multiple type 30s due
BUILD005 to many DD segments, typical only for long running jobs
Dec 13, 1993 like SAR, RMDS, CA-DISPATCH, etc., that have lots of
dynamic DDs). The MULTIDD='Y' observations must be
deleted during the second occurrence of the creation of
GOOD30_5 dataset. Find this block of code:
ELSE IF IN30_5 THEN DO:
IF MULTIDD5=' ' THEN RESTART+1;
OUTPUT GOOD30_5;
END;
And change it to read:
ELSE IF IN30_5 THEN DO:
IF MULTIDD5='Y' THEN DELETE;
RESTART+1;
OUTPUT GOOD30_5;
END;
The actual change also cleaned up references to MULTIDD
and TEMP3 which are no longer needed, but which are now
superfluous and safe to leave until you get a tape!
Thanks to Mark van der Eynden, Ferntree Computer Services, AUSTRALIA.
Change 11.268 CICS DL/I counts with CICS/ESA Version 3.3 Omegamon 110
IMACICDL records may be wrong. First, the test in IMACICDL needs
IMACICDA to be changed to IF SMFPSRVR GE 3 instead of EQ 3.
VMAC110 Second, if you have not added a "USERCHAR" optional data
Dec 14, 1993 field in your type 110 record, you must comment out the
statement "%INCLUDE SOURCLIB(IMACICDU);" in member
IMACICDA (because if that statement is present, MXG
always read at least one byte, causing wrong alignment).
Commenting out that %INCLUDE will generate an
"UNINITIALIZED VARIABLE USERCHAR" message, which is
not a problem, but in member VMAC110, I have added
"IF USERCHAR=" " THEN USERCHAR=" "; after both of the
%%INCLUDE SOURCLIB(IMACICDA); statements to correct.
The notes in IMACICDA and IMACICDL were updated to list
the CMODHEAD field names of the DL/I counters to make it
easier for you to know what sections you do or do not
have in your SMF type 110 record from Omegamon, using MXG
program UTILCICS to examine your dictionary.
This text was revised Dec 14, 1993, after MXG 11.09.
Thanks to Khin Zaw, Nordstrom, USA.
Change 11.267 APAF V2.1 dataset APAFCHAN is trashed, because the offset
VMACAPAF had a spelling error. Inside the SUBTYPE=5 DO group, the
Dec 13, 1993 statement LOC=OFFLP-3+OFFSMF should have been written as
LOC=OFFCHPID-3+OFFSMF;
Thanks to George Scott, Rockwell International Corporation, USA.
==Changes thru 11.266 were included in MXG 11.09 dated Dec 17, 1993=====
Change 11.266 Dataset TYPE1415 variable TEMP='TEMP' was incorrectly set
VMAC1415 if DISP1='.......1'B, so that part of the test to set
Dec 12, 1993 TEMP has been removed.
Thanks to Bruce Hudson, Payless Shoe Source, USA.
Change 11.265 Boole and Babbage CMF Type 72 Subtype 2 record is invalid
VMAC7072 and causes INPUT STATEMENT EXCEEDED error. There is only
Dec 10, 1993 one SWAP section, instead of one SWAP section for each
Performance Group, and other fields in TYPE72MN dataset
may be trashed. Boole anticipates a fix in their 9402
maintenance release. MXG changed IF OFFSWP GT 0 THEN DO;
to IF OFFSWP GT 0 AND OFFSWP+60 LE LENGTH+1 THEN DO; to
prevent the STOPOVER condition.
Thanks to Gavin Ring, Alcatel Australia, Australia
Change 11.264 Variable PGPERBLK in RMFINTRV was incorrectly normalized.
RMFINTRV The two lines in which PGPERBLK was multiplied/divided by
Dec 8, 1993 DURATM were deleted, and the division by BLKSAUIN was
protected for zero divide.
Thanks to Dan Squillace, SAS Institute Cary, USA.
Change 11.263 Members CHANGE01,CHANGE02... are redundant with CHANGESS,
ChangeSS which contains all changes ever made to MXG in one place,
Dec 4, 1993 so the individual CHANGEnn members now only point to the
member CHANGESS, reducing the size of the MXG library.
Searching for all MXG enhancements now involves looking
only two members: CHANGESS or NEWSLTRS. Member CHANGES
will continue to exist, repeated in CHANGESS.
Change 11.262 Support for Softworks' Performance Solution SMF records.
ADOCPRFS Three new datasets are created:
EXPRFSHL Dataset SMF Subtype Description
EXPRFSVI PRFSVIO 00 I/O Plus for VSAM Close
EXPRFSXI PRFSXIO 01 I/O Plus for XSAM Close
IMACPRFS PRFSHLP 02 HiperLoad Plus for VSAM
TYPEPRFS These data records describe the before and after buffers,
VMACPRFS etc., to track the effectiveness of this product.
Dec 2, 1993
Thanks to Yao-chun Rickert, First Chicago, USA.
Change 11.261 VM/ESA dataset VXSYTCUP (PR/SM and MLPF LPAR measurement)
VMACVMXA did not keep LCUCLPTM (LPAR Management time), so it was
Dec 1, 1993 added to the KEEP= list in macro _VSYTCUP, and is DIF'ed
in macro _DSYTCUP. Also, for inactive LPARs, MXG output
an observation, but variables LCUCPUID LCUCWGHT LCUCFLGS
LCUCACTM LCUCLPTM LCPUDED LCPUWAIT LCPUCAPD are not input
and could contain values from a prior LPAR; now they are
initialized. Similarly, VXSYTCUM logic for inactive LPARs
now initialized the un-read variables.
Thanks to Angie Olver, PERSETEL, South Africa.
Change 11.260 SAS Usage note 6886 identifies a SAS error when blank
ANALRACF characters appear between non-blank characters in an ID
Dec 1, 1993 value with PROC TRANSPOSE. In 6.06 the variables were
incorrectly left as blanks instead of being replaced by
underscores (as they were in 5.18, and are now in 6.07
and 6.08), and MXG code was actually modified between
5.18 and 6.06 to compensate. Now, however, UNINITIALIZED
variable messages result, so MXG has been re-modified to
correct. Variables _5_DATA, _6_RACF, _7_DATA,_8_NAME,
and _52_DSN are now spelled with an ending underscore:
_5_DATA_,_6_RACF_,_7_DATA_,_8_NAME_, and _52_DATA_.
Thanks to David Vaughan, Shropshire County Council, ENGLAND.
Change 11.259 A collection of data value errors have cropped up in the
VMXGHSM processing of the HSM BCDS and MCDS datasets:
Dec 3, 1993 -"Error 180" results because a semicolon is in the wrong
place. The semicolon after RECTYPE='REC TYPE ...' must
be removed, and instead a semicolon must be added to the
following line, after the label for TYPE='MCKTYPE ...'.
-"Invalid data for INPUT" results because "INPUT" should
removed from the line now reading "INPUT @65 BCRFLAGS..."
-Invalid argument for DATEJUL occurs if MCDEXPDT=99366,
95366,98000,99999,9999999 (which are invalid dates). The
calculation for MCDEXPDT was changed to set these invalid
data values to '31DEC2099'D (i.e., far into the future):
IF MCDEXPDT=99366 OR MCDEXPDT=95366 OR ...
THEN MCDEXPDT='31DEC2099'D;
ELSE IF MCDEXPDT GT 0 THEN MCDEXPDT=DATEJUL(MCDEXPDT);
ELSE MCDEXPDT=.;
-MHCRBGNT,MHCRENDT,and MHCRNXTT are now input &PIB.4.2 and
not &PK.4, the three PK1 fields after each time were
deleted, the +1 before the three dates was removed, and
the three HMS() calculations were deleted.
-DATEJUL(MHCRENDD) was changed to DATEJUL(MHCRNXTD).
-Two lines calculating DSRDATE were moved to before the
line DO I=1 to 11;
-Change DO C=1 TO MCPDGNCT; to read
IF MCPDGNCT GT 0 THEN DO C=1 TO MCPDGNCT;
-Change input of BCRTCAB from &PK.4. to BCRTCABC $CHAR4.,
delete input of BCRTCABH,BCRTCABM,BCRTCABH and following
+1, replace the BCRTCAB=HMS() line with
BCRTCAB=INPUT(BCRTCABC!!'00000000'X,TODSTAMP8.);
remove BCRTCAB from TIME8. format and instead format it
BCRTCAB DATETIME21.2.
Note: Dec 18, after 11.09 built: used similar logic for
BCRTBLA and BCRTLAB datetime variables.
-Change input of DCRCLEN from &PIB.4. to &PIB.2.
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
Change 11.258 Variables ACTDLYTM,DSPDLYTM,RESDLYTM were added by Change
IMACPDB 10.031 to TYPE30_4, but were not carried into PDB.STEPS
Nov 30, 1993 nor PDB.JOBS. They have now been added to the _PDB30_4
and _SUMSTP macros defined in IMACPDB, so they will now
exist in PDB.STEPS and PDB.JOBS.
Thanks to Bob Eastlake, Alternative Marketing Systems, USA.
Thanks to Tom Elbert, John Alden Life Insurance, USA.
Change 11.257 ASMVTOC may produce no output under MVS/ESA 3.1.3, 4.1.0,
ASMVTOC or possibly even 4.2.0. APAR OY39355 points out that DFP
Nov 22, 1993 3.3 (which introduced the new UCBSCAN COPY service) does
not run with earlier levels of MVS/ESA. If you have this
problem (no error, but no output from ASMVTOC), you can
simply comment out (by adding an asterisk in column one)
these two lines in ASMVTOC:
TM FLAG,MVSESA42 MVS/ESA V4.2 OR BEYOND?
BO MVS42AAB YES, GO USE UCBSCAN SERVICE
ASMVTOC has also failed with 213-04 when it encounters a
TPF volume. That problem is still under investigation.
Thanks to Ron Willingham, Fina Oil, USA.
Change 11.256 RMF Reports from PDB data are further corrected and
ANALRMFR enhanced. CPU percentages could be wrong, and type 74
Nov 21, 1993 reports were corrected.
Change 11.255 Support for DB2 Release 3.1.0 incompatibly altered SMF
type 100, 101, and 102 SMF records.
== added 11Jan95=======
== Messages on the log "ID=100 SUBTYPE=2 QWHSIID=202"
== tell you that you are reading DB2 3.1 SMF records
== with an old Version of MXG (MXG 11.09 or later is
== required).
ADOCDB2 100, 101, and 102 SMF records. New Datasets created are:
DIFFDB2 Dataset SMF Record Description
EXDB2ACP DB2ACCTP 101 Subtype 1 Package/DBRM executions
EXDB2ST2 DB2STAT2 100 Subtype 2 Hiperpool interval statistics
IMACDB2 Many new variables were also added to existing datasets.
VMACDB2 New variables are listed in member DOCVER11, and ADOCDB2
VMAC102 was updated with which DSECT is in which record and which
Sep 6, 1993 MXG dataset is created from which records. Details:
Nov 30, 1993 Dataset DB2ACCT:
Now contains 312 variables (was 215). New variables in
existing sections QWAC,QXST,QBAC,QTXA,and QLAC, and
new section QIFA. Variables QBACBPX and QBACSWU are
now reserved.
Dataset DB2ACCTP:
New dataset for Package/DBRM executions is built from
QPAC section(s) added to type 101 subtype 0 record (up
to ten sections will create ten observations), or from
new type 101 subtype 1 record (up to 10 per record, for
overflow if sections do not fit in existing subtype 0).
Dataset DB2STAT0:
Now contains 319 variables (was 277). New variables in
existing sections Q9ST,QWSD,QLST,QJST and QDST.
Variable QJSTWTL is now reserved.
Dataset DB2STAT1:
Now contains 447 variables (was 297). New variables in
existing sections QXST,QTST,QBST,QIST, and QTXA.
Variables QTCURPB,QTOPNOK,QTOPNNO,QTTTBRN,QTEXDRN,
QTSTDRN,QTPUBDD,QBSTBPX,QBSTSWU,and QBSTPUW are now
reserved.
Dataset DB2STAT2:
New dataset from new type 100 subtype 2 record.
Dataset T102S148:
New variables: QBnCDPF,QBnCHPG,QBnCHRE,QBnCHRF,QBnCHWF,
QBnCHWR,QBnCNGT,QBnCSIO n=1,2,3,4
Dropped vars: QBnCBPX,QBnCSWU n=1,2,3,4
Change 11.254 Support for AS/400 Version 2.3 Performance Data adds four
EXQAPDDI new datasets:
EXQAPFRL Dataset Description
EXQAPSTD QAPMDDI Distributed Data Interface (DDI) data
EXQAPSTY QAPMFRLY Frame Relay Data
IMACQAPM QAPMSTND DDI Station Counter Data
VMACQAPM QAPMSTNY Frame Relay Station
Nov 20, 1993 Changes were compatibly made, so prior versions of MXG
will not fail with the version's data records.
Change 11.253 Support for Memorex Telex LMS Version 2.17 SMF record now
EXLMSCUP creates these two new datasets:
EXLMSDAL Dataset Subtype Description
IMACLMS LMSCUP 06 Cart Update (inhibit SCR indicator)
VMACLMS LMSDALC 29 Device Allocation
Nov 20, 1993 Also, VMACLMS was restructured for consistent colimation.
Thanks to Dan Kaberon, Hewitt Associates, USA
Change 11.252 Support for Mobius INFOPAC-RDS user SMF record is added
ADOCIPAC by this comprehensive user contribution. Datasets are
ANALIPAC documented in ADOCIPAC, and sample analysis reports are
EXIPAC01 in ANALIPAC! Five new datasets are created:
EXIPAC02 Dataset Subtype Description
EXIPAC03 IPAC01 01 Batch Printing Usage Statistics
EXIPAC04 IPAC02 02 Online Printing Usage Statistics
EXIPAC05 IPAC03 03 Online Viewing Usage Statistics
IMACIPAC IPAC04 04 Archive Recall Usage Statistics
TYPEIPAC IPAC05 05 Archive I/O Subsystem Tuning & Perf
VMACIPAC And the analysis example, ANALIPAC, is comprehensive: it
Nov 19, 1993 combines the VERSIONS and DISTRIBUTION databases from
the INFOPAC-RDS product, with MXG's PDB.HSMFSRST (from
HSM), and PDB.PRINT (from JES2 printing), Vanguard's
RACF database, with three of the five SMF subtypes.
Thanks to Jeff Burnett, Anixter, USA.
Change 11.251 The ASM program to break down MVS/ESA 4.3 RMF Monitor III
ASMRMFV segments into actual records was missing code (lost in
Nov 19, 1993 fax transmission and transcription!). The code has been
corrected, and renamed to ASMRMF3 instead of ASMMON3.
This is preliminary for MXG support of the compressed ESA
4.3 data - the SAS code to process the output of the ASM
utility is still in development. See Change 11.238.
The ASMRMF3 member was replaced by ASMRMFV.
Change 11.250 Xerox SFS records from 9700 INVALID ARGUMENT TO INPUT
VMACSFS FUNCTION occurs if CUSTJNR contains hex nulls instead of
Nov 18, 1993 blanks. Insert this line:
VAR(10)=TRANSLATE(VARS(10),'40'x,'00'x);
immediately preceding the existing line:
CUSTJNR=INPUT(VARS(10),8.);
Thanks to Doug Medland, Confederation Life Insurance, CANADA.
Change 11.249 Support for Integris' UniKix product, used to downsize
EXTYUNIA CICS VSAM and DB2 applications to the Unix environment.
EXTYUNIK The product creates a binary file of performance records
IMACUNIA and provides a conversion program to create a portable
IMACUNIK ASCII file. MXG can process either the binary or ASCII
TYPEUNIA file under UNIX, Windows, or OS/2 SAS, or the ASCII data
TYPEUNIK can be uploaded for processing under MVS SAS. This is
VMACUNIA the beta release of the UniKix measurements, and Integris
VMACUNIK will restructure the data records in their next release
Nov 17, 1993 (at my suggestion) so they will be true variable-length,
self-defining records so that future enhancements can be
made to the data records compatibly, so the MXG support
will be revised when those changes are available.
The current implementation members ....UNIA are for the
ASCII file (infile name UNIKIXAS), and members ....UNIK
are for the Binary file (infile name UNIKIXBI).
Change 11.248 Support for BatchPipes/MVS type 91 SMF record creates 11
EXTY9101 new datasets:
EXTY9102 Dataset Subtype Description
EXTY9103 TYPE9101 01 Subsystem Initialization
EXTY9104 TYPE9102 02 Subsystem Interval
EXTY9111 TYPE9103 03 Subsystem Termination
EXTY9112 TYPE9104 04 Subsystem Parms Changed
EXTY9113 TYPE9111 11 Pipe Connection Open
EXTY9114 TYPE9112 12 Pipe Connection Interval
EXTY9115 TYPE9113 13 Pipe Connection Close
EXTY91IC TYPE9114 14 Pipe Create
EXTY91OC TYPE9115 15 Pipe Delete
IMAC91 TYPE91IC 11-13,15 Input Connection Details
TYPE91 TYPE91OC 11-13,15 Output Connection Details
VMAC91 Subtypes 1 and 3 are Pipes Subsystem event records.
Nov 17, 1993 Subtypes 2 and 4 are interval or termination records with
statistics on each Pipes Subsystem (pipes/connections
created/deleted/active, input/output bytes, etc.).
Subtype 11-15 are Pipe Connection records, which identify
the pipename being accessed, and (for subtype 12 and 15)
contain pipe activity counts. In addition, subtypes 11,
12, 13, and 15 can contain one or more Connection Detail
sections (either Input or Output connection), so MXG
creates one observation in TYPE91IC or TYPE91OC for each
Connection Detail segment (which contains JOB,READTIME,
DDNAME, six timestamps, reads/writes, bytes in/out, etc.)
for each user of a pipe. This structure lets you analyze
overall pipe statistics with the subtype datasets, or the
pipe statistics by user with the IC/OC detail datasets.
MVS Pipes looks to be a very powerful new MVS facility!
Change 11.247 Support for Novell Network Navigator user SMF record now
EXTYNNAV creates one dataset:
IMACNNAV Dataset Description
TYPENNAV TYPENNAV Network Navigator Session Resources
VMACNNAV with session logon and logoff datetimes, JESNR, bytes
Nov 16, 1993 sent/received, and TGETS/TPUTS for the session.
Thanks to Elena Beryozkin, United Parcel Service, USA.
Change 11.246 Support for NetView Performance Monitor NPM Version 2.1.0
EX028NWC added major enhancements, especially in the area of VTAM
EX028NWD monitoring, with CPU and storage used by VTAM. Thirteen
EX028RMA new datasets are created:
EX028RMD Dataset Subtype Description
EX028VAP NPMRMSTR BA RTM ACTIVATE
EX028VAD NPMRMSTP BB RTM DEACTIVATE
EX028VBF NPMVTSTR D0,D1,D2 VTAM START/STOP/MD
EX028VEN NPMVTEXC D3,D4 VTAM EXCEPTION
EX028VDV NPMVSVEN D5 VTAM ENVIRONMENTAL
EX028VGB NPMVSVGB D6 VTAM GLOBAL
EX028VTE NPMVSVBF D7 VTAM BUFFER POOL
EX028VTS NPMVSVDV D8 VTAM DEVICE DATA
EX028VVR NPMVSVVR D9 VTAM VIRTUAL ROUTE
FORMATS NPMVSVAP DA VTAM APPLICATION
IMAC28 NPMVSVAD DB VTAM ASID DATA
VMAC28 NPMNWCWC FC WRKSTN-NPM CONNECT
Nov 13, 1993 NPMNWDWD FD WRKSTN-NPM DISCON
Change 11.245 The original change described in this text in MXG 11.07
VMXGSUM thru MXG 11.09 were never actually implemented. The text
Nov 12, 1993 of the change was written, but the VMXGSUM member was not
moved into the MXG library, because the KEEPIN= logic did
not produce identical output datasets, and it had to be
backed out of the changes. See Change 11.281 & 11.309.
Change 11.244 A new utility, UCICSCNT counts how many SMF type 110 CICS
UCICSCNT records come from each CICS Region, by CICS version, and
Nov 10, 1993 by record subtype, so you can prove to your CICS guru
which APPLIDs have monitoring and/or statistics records.
Thanks to Richard S. Ralston, Whirlpool Corporation, USA.
Change 11.243 Support for NETWISE's RPC EXEC product type 33 SMF record
VMAC33 adds these "accounting" fields to dataset TYPE33_1:
Nov 9, 1993 NETWCAPN,NETWCOMP,NETWCORR,NETWMDNM,NETWRPCM,NETWRPCN,
NETWRPCN,NETWRPCT and NETWSAPN. MXG now creates one obs
in TYPE33_1 for each TPUSE section; previously only the
first TPUSE section's data was output. With NETWISE's
data, there are two sections in each record, one for the
inbound and one for the outbound connections, so there
two observations for each NETWISE SMF record.
Thanks to Linda Marzik, EDS Performance and Evaluation Group, USA.
Change 11.242 DB2 variable NETSNAME still can have blanks, after Change
VMACDB2H 11.050, preventing DB2ACCT matching with CICSTRAN. This
Nov 8, 1993 happens if the last half of NETSNAME contains blanks; the
correction is to translate all blanks in DB2 NETSNAME to
nulls. After the NETSNAME algorithm, and just before
"/* CREATE UOWTIME FROM QWHCTOKN */", insert the line:
NETSNAME=TRANSLATE(NETSNAME,'00'X,'40'X);
Thanks to Edward McCarthy, Health Insurance Commission, AUSTRALIA.
Change 11.241 TRNDRMFI will fail with VARIABLE PLATCPUS NOT FOUND when
TRNDRMFI ASUM70PR is not executed. Add in the INCODE= section:
Nov 8, 1993 IF PLATCPUS=. THEN PLATCPUS=.; just like PARTNCPU.
There is no requirement to run ASUM70PR before TRNDRMFI,
but without it, PLATCPUS did not exist, until the change.
Thanks to Tom Elbert, John Alden Life Insurance, USA.
Change 11.240 Variables READY12 READY13 READY14 READY15 were left out
TRND70 of the NORM2= list in this trending member, causing their
Nov 8, 1993 summary values to be erroneously large.
Thanks to Tom Elbert, John Alden Life Insurance, USA.
Change 11.239 MXG Early PreRelease 11.08 only. IF ID=80 SOURCE='RACF';
ANALSMF should have been IF ID=80 THEN SOURCE='RACF';
Nov 8, 1993
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
==Changes thru 11.238 were included MXG Early PreRelease 11.08 01Nov93=
Change 11.238 This new Assembler program reads the RMF Monitor III VSAM
ASMRMFV files from MVS/ESA 4.3 (which are compressed, and are not
Oct 30, 1993 standard records). It was typed from a fax, and has not
been tested, but I wanted to make it available for tests
because there are reported problems in the ZRB processing
that are still unresolved. See Change 11.251.
Was ASMMON3 until change 11.251.
Thanks to Don Friesen, B.C. Systems, CANADA.
Change 11.237 ANALDB2R could not use a PDB on tape for reports, because
ANALDB2R multiple datasets were opened simultaneously, but with a
Oct 30, 1993 new TREND= parameter, either the Accounting or Statistics
reports can be run from your PDB= on tape. Only if you
want to include your TREND data base and your PDB data
bases together for a report will you need to point TREND=
to the DDname for your TRNDDB2A, TRNDDB20, and TRNDDB21
datasets.
Change 11.236 Internal logic was improved for performance. If the first
VMXGSUM data step or the SORT is not needed, they are bypassed.
Oct 30, 1993 This can reduce CPU and DASD requirements significantly.
If no INCODE=, no INTERVAL=, no SHIFT=, and no NORMX= are
used and there is only one input dataset, the first data
step is bypassed. If there is no SUMBY=, then no SORT.
Unfortunately, most of the ASUMxxxx and TRNDxxxx members
that invoke VMXGSUM do not meet the criteria and see no
benefit, but ANALDB2R gets some help, and it is the
righteous thing to do anyhow. See Change 11.309.
Change 11.235 Trending of VM/XA and VM/ESA MONWRITE dataset VMXAINTV
TRNDVMXA had logic errors, that causes several variables to be
Oct 30, 1993 incorrect.
Thanks to Sean Chaffee, Amadeus Data Processing GmbH & Co., GERMANY.
Change 11.234 Support for SMF type 42 subtype 14 (IBM ADSM Distributed
VMAC42 Storage Management Product) provides good statistics in
Oct 30, 1993 the new TYPE42AD dataset, with counts of byte traffic
and objects, for backup and archived files moved between
client and server, as well as CPU time plus waiting time
for Communications or Media, and session idle time.
The only identifiers, however, are the client name and
the client owner name. Unrelatedly, but because VMAC42
was "open", DFSMS Data Set, Storage Class, and Total
datasets were enhanced with read and write hit percents.
Thanks to Peggy Schulte, Cincinatti Gas and Electric Company, USA.
Change 11.233 SAS option SORTDEV=3380 was removed from MXG's CONFIG
CONFIG members - it is not needed, and caused errors at sites
Oct 30, 1993 that have no 3380s.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 11.232 Variable AVGMTPTM was retained across device records that
VMAC74 had no Mount Pending. After its calculation, insert
Oct 30, 1993 ELSE AVGMTPTM=.;
Change 11.231 Additional enhancements and corrections to RMF reports.
ANALRMFR MXGCPU - Added OMVSMAX,OMVSAVG statistics.
Oct 30, 1993 MXGPAGE - Added OMVS00-OMVS11 statistics
MXGDEVC - DEVMTPTM to DEVACTTM, changed summary BY LCU
for calculation of AVGMTPTM.
MXGSMRY - BY SYSTEM DATE TIME changed to BY SYSTEM DATE.
Final page per system for overall total/avgs.
Corrected CPU busy percentages (only wrong if
you requested 24 hour report spanning 2 days).
MXGWKLD Added OMVS swap counts.
MXGENQU Circumvented "MISSING VALUE" note.
Thanks to Bill Stoneberg, National-Oilwell, USA
Change 11.230 MXG 11.06 or later. Landmark CICS causes "INVALID
TYPEMON8 ARGUMENT TO FUNCTION MDY" or "MXG HAS DETECTED INVALID
Dec 1, 1993 FORMAT FOR TIESDATE" because MO and DD were reversed in
the MDY() function. Change the MDY() function to read:
TIESDATE=MDY(MO,DD,YY);
See also change 11.278.
Thanks to Tom Clark, SEI Corporation, USA.
Thanks to Mark Robbins, W.H. Smith Limited, ENGLAND.
Change 11.229 Change 11.199 still did not calculate GMTOFF correctly.
VMAC30 Instead of the two IFs and kludgy FLOOR/CEIL logic, the
VMAC7072 correction is to use a single statement with +10 added:
Oct 30, 1993 GMTOFF70=100*FLOOR((STARTIME+DURATM-SYNCTIME+10)/100);
GMTOFF72=100*FLOOR((STARTIME+DURATM-SYNCTIME+10)/100);
GMTOFF30=100*FLOOR((SMF30IST-INTBTIME+10)/100);
Change 11.228 Open Edition/MVS (OMVS) dataset TYPE30OM was added to the
BUILDPDB PDB library. At present, it is simply sorted into the
BUILD005 PDB, but this logic may change with more experience with
Oct 30, 1993 the new data for "Unix under MVS".
Change 11.227 These new (calculated) variables were added to TYPE71,
TRND70 TRND71, and TRNDRMFI, as they have been found useful in
TRND71 MVS/ESA 4.3 analysis of paging and memory.
TRNDRMFI BLKPAGE ='BLOCKED*PAGES*PAGED IN'
VMAC71 NBLKPAGE='NON-BLOCKED*PAGES*PAGED IN'
VMAC7072 COMPAGE ='TOTAL*COMMON*PAGING RATE'
Oct 30, 1993 CS_ESPAG='TOTAL*CSTORE TO/FROM ESTORE*PAGING RATE'
HIPEPAGE='TOTAL*HIPERSPACE*PAGING RATE'
PGPERBLK='PAGES*PER*BLOCK'
SWAPAUX ='SWAP RATE*TO*AUXSTORE'
CSTORE ='CENTRAL*STORAGE*ONLINE'
ESTORE ='EXPANDED*STORAGE*ONLINE'
Variable PCTRDYWT was added in TRND70, and TRNDRMFI was
updated to include the ESA variables that had been added
in RMFINTRV but had been overlooked in TRNDRMFI.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 11.226 JES2 NJE Purge Records for Job Transmission should have
BUILDPDB been OUTPUT to PDB.NJEPURGE, but were not; in rare cases,
BUILD005 they were used in place of the real JES2 Execution Purge
VMAC26J2 record. In BUILDPDB, the test to OUTPUT PDB.NJEPURGE was
Oct 29, 1993 expanded from (INREASON=' ' OR INREASON='JR' AND ... to
((INREASON=' ' OR INREASON='JR' OR INREASON='JT') AND ..
and VMAC26J2 logic was modified to test if INREASON was
still blank after testing INDEVICE, and if so, the same
decoding was applied to DEVNAME. The specific case that
was encountered had INDEVICE=INTRDR,DEVNAME=L329.JT1.
This change can alter the number of observations in the
PDB.JOBS and PDB.NJEPURGE datasets.
Thanks to Don Friesen, B.C. Systems, CANADA.
Change 11.225 Support for Amdahl APAF Version 2.1 adds "Effective" CPU
EXAPAFCH time, "Dispatched" CPU time, and the "In-Domain Mgmt" CPU
EXAPAFCP time variables for each MDF domain in dataset APAFDOMA.
IMACAPAF The "Outside-Domain Mgmt" CPU time, (IBM's "PHYSICAL")
VMACAPAF has been added to dataset APAFGLOB. New CPU Busy dataset
Oct 27, 1993 APAFCPBY provides, for each LP, the sampled percent CPU
busy in Problem state and in Supervisor state. Finally,
the new "Channel Busy" dataset APAFCHAN provides, for
each CHPID, separately for each Domain, the sampled CHAN
busy statistics. There's a lot of good stuff here! The
new subtype 4 and 5 code has only been syntax checked as
of this date, as those new data records were not provided
in the Amdahl sample set, but the APAFDOMA/APAFGLOB data
has been processed. Ultimately, there will probably need
to be a summary routine (like ASUMPRSM, will be named
ASUMAPAF if/when it exists), but only after test data and
some user experience is available! See Change 11.290.
Thanks to George Scott, Rockwell International Corporation, USA.
Change 11.224 CICS/ESA "Requested Reset Statistics", statistics records
CICINTRV with SMFSTRQT='RRT', were overlooked in member CICINTRV,
EXCICRRT but now new dataset PDB.CICRRTRV will be created from the
IMACCICS RRT records. Because this change adds a new dataset, if
Oct 25, 1993 you have tailored IMACCICS in your USERID.SOURCLIB, you
MUST retrofit your tailoring to the new IMACCICS, or you
will encounter "CICRRTRV NOT FOUND" syntax errors.
Thanks to Siegfried Trantes, Gothaer Versicherungsbank VVAG, GERMANY.
Change 11.223 INVALID DATA FOR OWNEXPDT message results when hex zeroes
VMAC6156 are in the Packed Decimal field, but there is no effect
Oct 25, 1993 on dataset TYPE6156, since SAS sets OWNEXPDT missing. By
inserting two question marks between OWNEXPDT and the
PD3. (or &PD.3.) informat, the invalid data message is
suppressed.
Thanks to Siegfried Trantes, Gothaer Versicherungsbank VVAG, GERMANY.
Change 11.222 Variable VIO occurs twice in the NORM1 argument in TRND71
TRND71 causing its value to be incorrect. Remove the first
Oct 25, 1993 occurrence. Variable CPUPAGTM (new in MVS/ESA 4.3) was
not kept in TRND71, so add it at the end of the SUM= .
Thanks to Diane Eppestine, Southwestern Bell.
Change 11.221 CICS/ESA excluded fields can be identified on the output
IMACEXCL of UTILCICS by the value of 65535 ('FF'x) for CMODOFST
UTILCICS (i.e., there is no offset to that field). A title was
Oct 25, 1993 added to that report documenting this fact. Comments in
IMACEXCL for the MACRO _CICXCUS definition now identify
which fields were added in CICS/ESA 3.2.1 and 3.3.
Thanks to Pierre Thibodeau, CGI Group, CANADA.
Change 11.220 Changes required only for execution under ASCII SAS:
VMACCMA a.SAS under Windows has a problem with old-style macros if
VMAC28 the contents start in column 1. Shifting the source code
VMAC102 one byte to the right circumvents the problem. This was
VMACLMS necessary in members VMACCMA, VMAC28, VMAC102.
ANALSMF b.SAS under Windows has a problem with ELSE ending one line
Oct 24, 1993 and its IF starting in column 1 of the next line. The IF
statements in VMACLMS were shifted right one column.
c.ANALSMF contained LENGTH 2, which was changed to 3.
d.Many ANAL members still had the old concatenation symbol
(pair of vertical bars, '4F'x on MVS) which is translated
to brackets under ASCII, which is not recognized by SAS
as concatenation. All were changed to exclamation point
which are acceptable to both ASCII and EBCDIC SAS.
Change 11.219 Support for FOCUS MSO 6.8 added variables FOCUACCT,
VMACFOCU FOCUCOMP,FOCUFACT,FOCUID1,FOCUID2,and FOCUPRTY to dataset
Oct 21, 1993 FOCUSMSO, and variable FOUCFRV no longer exists. Since
these fields were added compatibly to the SMF record,
previous MXG versions will process the new record (but
won't input the new variables!). Additionally, variables
SYSTEM and SMFTIME are now kept.
Thanks to Scott Ashby, Wachovia Operational Services Corp, USA.
Change 11.218 VM variable PWCOUNT is strangely stored by IBM. Values
TYPEVM are EBCDIC numbers 0 thru 9 (i.e., '40F0'x thru '40F9'x),
Oct 21, 1993 but a value of ten is stored as '0A', or 'F0C1'x, sixteen
is '0F' or 'F0C6'x, etc!). MXG now parses each byte and
figures out what IBM did so you get the right number.
Change 11.217 Division by zero can occur in processing TYPE78 data.
RMFINTRV The three lines with /NRATTMPS need to be placed in a DO
Oct 21, 1993 group : IF NRATTMPS GT 0 THEN DO; ... END; so that
division only occurs if NRATTMPS is greater than zero.
Thanks to Tom Miron, State of Wisconsin Dept of Administration, USA.
Change 11.216 GRAFTRND did not print workload data for any workloads
GRAFTRND after an unused workload. So if you don't use the IMS
Oct 21, 1993 workload, the TSO, BATCH, and all OTHx workloads do not
appear on the output graph. Change the 15 occurrences of
CPUSUM=CPUSUM+CPU; to read CPUSUM=SUM(CPUSUM,CPU,0);
Thanks to Bill Stoneberg, National Oilwell, USA.
Change 11.215 SMF type 57 variables added by Enhanced SYSOUT Support
VMAC57 (SMF57LN5,SGT,IND,RSV,JDT, TUL, and TU) are trashed for
Oct 21, 1993 sites without the ESS segment (they should be missing).
Change the test IF OFFESS NE 0 AND NRESS NE 0 THEN DO;
to read IF OFFESS GT 0 AND NRESS GT 0 THEN DO;
so the loop is executed only when the ESS section is in
the record. (NE is TRUE for a missing value, GT is not).
Thanks to John Mattson, National Medical Enterprises, USA.
Change 11.214 JES3 variable CLASS (Class on Main) was added to MACRO
IMACPDB _PDB26J3, so it will now be kept in the PDB.JOBS dataset.
Oct 21, 1993
Thanks to Hong-Suk Yang, Dept. of Health & Housing, AUSTRALIA
Change 11.213 Variable IOTM6421 in TYPE30 should have been formatted
VMAC30 as TIME12.2; now it is.
Oct 21, 1993
Thanks to Dan Squillace, SAS Institute Cary, USA
Change 11.212 ALIGN must be specified for the ASM of this VVDS-grazer
ASMVVDS program, as VMACVVDS expects the data record to contain
Oct 20, 1993 the extra bytes created by the ALIGN Specification. I
completely forgot that ALIGN/NOALIGN can affect the data
format for a DS field, and it appears that most sites use
ALIGN by default (since the program has been in use for
years), but one site whose default was NOALIGN had their
TYPEVVDS program ABEND, so the JCL now explicitly has the
ALIGN parameter.
Apologies to whoever found this problem, whose name/company I lost.
Change 11.211 CICS SAP Accounting variables STCDB1-STCDB5 are character
IMACICSA variables, not numbers. Find all occurrences of STCDB and
Oct 20, 1993 change their label from "CALLS" to "NAME" in five places
and change their INPUT from "&PIB.4." to "$CHAR4." in ten
places.
Thanks to Mr. Bodenbender, BUDERUS, GERMANY.
Change 11.210 The FACOM pseudo-RACF product's type 127 SMF record will
VMACF127 cause "FUNCTION CHAN IS UNKNOWN" and "VARIABLE CHAN HAS
Oct 13, 1993 ALREADY BEEN DEFINED" if the F127 processing is added to
BUILDPDB. Change "CHAN" to "CHANS" in the ARRAY, RETAIN,
and two occurrences of CHAN(CHANNUM+1) statements.
Thanks to Denis Johnco, Datacom Systems Ltd, NEW ZEALAND.
Change 11.209 The INPUT of variables MVTRERR,MVTWERR,MVPRERR,MVPWERR
VMACCOMP in VMACEDGS and variable ULOGCPUT in VMACCOMP need period
VMACEDGS in informat (i.e., they should be "&PIB.2. " instead of
Oct 12, 1993 "&PIB.2 "). Invalid data results without this change!
Change 11.208 The example AUTOEXEC.SAS for OS/2, Windows, and Unix did
AUTOEXEC not invoke %VMXGINIT, but only included it! Change to:
Oct 11, 1993 %INCLUDE SOURCLIB(VMXGINIT); %VMXGINIT;
(Why did I %INCLUDE the macro first, when only its
invocation is required, since MXG uses MAUTOSOURCE?
Because I frequently SAS GO under TSO, and changes to
VMXGINIT did not take effect with the "GO" option!)
Change 11.207 Support for TOP-SECRET type 80 records written to a log
TYPE80 instead of to SMF is accomplished by changing " _SMF "
TYPE80A reference in TYPE80/TYPE80A to " _NETVLOG ". These log
Oct 11, 1993 records are written with only one 4-byte RDW field, so
the MVS RECFM=VBS or RECFM=VB or RECFM=V won't work (all
MVS variable records have both a 4-byte BDW and a 4-byte
RDW). The _NETVLOG macro defined in VMACSMF, used in
place of the _SMF macro, handles this "DOS RECFM=V" data.
Note: MXG members TYPE80/TYPE80A were not changed by this
change; this is an optional change that you must make if
you must process these records from a log instead of SMF.
Thanks to Jan-Ake Christoffersson, GotaData, SWEDEN.
Change 11.206 WEEKBLD/MONTHBLD error "DATA SET TAPEMNTS IS NOT SORTED"
MONTHBLD occurs IF you install Change 11.040, as it was incorrect.
WEEKBLD The correct order for TAPEMNTS (and TYPETMNT) in both
Oct 11, 1993 WEEKBLD and MONTHBLD is:
BY SYSTEM SHIFT DEVICE TMNTMTYP TMNTTIME;
Thanks to Bill Stoneberg, National-Oilwell, USA.
Change 11.205 This change to ANALVVDS and VMACVVDS are needed ONLY if
ANALVVDS you want ANALVVDS to correctly report VSAM statistics.
VMACVVDS Except for adding variable VVRTYPE to TYPEVVDS for that
Oct 11, 1993 report, this change does not alter data set TYPEVVDS:
Variable VVRTYPE was added to the KEEP= list in VMACVVDS,
so that ANALVVDS can test VVRTYPE to prevent the MXG
generated "***NUMEXT" error messages printed because
that report program did not anticipate the existence of
NVR (non-VSAM records) in a VVDS! For the VSAM space
analysis, NVR records must be deleted by inserting
IF VVRTYPE='N' THEN DELETE; after SET MXGVVDS.TYPEVVVDS;
Unfortunately, I discovered that I had reused variable
VVRTYPE, and the value kept was from its second use! To
correct, rename all VVRTYPE to VVRSTYPE in VMACVVDS,
except for its KEEP, LABEL, and the first INPUT statement
and for all tests of '00'x, 'D8'x, 'E9'X, and 'D5'x,
which must still use VVRTYPE).
Thanks to Billy Westland, Hitachi, USA.
Change 11.204 Dataset TYPEVVDS variable VVRBSENM can be blank because
VMACVVDS this test in VMACVVDS:
IF VVRCATNL THEN INPUT VVRBSENM $VARYING. VVRBSENL @;
Oct 11, 1993 must be changed to:
IF VVRBSENL THEN INPUT VVRBSENM $VARYING. VVRBSENL @;
Thanks to Billy Westland, Hitachi, USA.
==Changes thru 11.203 were included in MXG PreRelease 11.07 dtd 4Oct93=
Change 11.203 TYPE60 observations for NVR records have missing SMS
VMAC60 Storage, Data, Management Classes; alignment was off by
Oct 4, 1993 one byte. Change @OFFNVR+04 to @OFFNVR+03, and in the
following line change @OFFNVR+05 to @OFFNVR+04.
Thanks to BIll Cassidy, IST, CANADA.
Change 11.202 Support for NETVIEW APAR OY66237 SMF Type 37 (Hardware
VMAC37 Monitor Log Record) coded for the ETHERNET LAN section,
Oct 4, 1993 but without actually seeing at a dump of a record with
the new data segment. Furthermore, it's not clear which
APAR added the data segment, as OY66237 is documentation
only.
Change 11.201 TYPE90 variables OLDDSN/NEWDSN were renamed OLDDSNSM and
VMAC90 NEWDSNSM (they are the old/new SMF dataset names) to
Oct 4, 1993 avoid conflict with TYPE80A variables OLDDSN/NEWDSN.
Change 11.200 PROC GPLOT can 0C4 ABEND, or CPU loop, unless you have
GRAFLPAR these options in effect on a GOPTIONS statement:
GRAFRMFI NOPCLIP NOPOLYGONFILL NOPOLYGONCLIP
GRAFTMNT This is a known SAS bug with no ZAP yet, but it can be
GRAFTRND circumvented by
GRAFTRND a) removing all GOPTIONS statements in members GRAFLPAR,
GRAFWORK GRAFTRND and GRAFWORK (the only ones with exposure),
VMXGGOPT b) changing the GOPTIONS in member VMXGGOPT by inserting
Oct 2, 1993 NOPCLIP NOPOLYGONFILL NOPOLYGONCLIP
after the existing line:
NOCHARACTERS NOCELL GOUTTYPE=INDEPENDENT
The bug only occurs when area fill is used with GPLOT.
Unrelatedly, TMNTMTYP is now labeled in GRAFTMNT,
V=NONE is added to three SYMBOL statements in GRAFTMNT,
and TRIVRESP is now FORMAT 6.2 in GRAFRMFI.
Thanks to Chuck Hopf, Primerica, USA.
Change 11.199 TYPE30_V and PDB.SMFINTRV variables INTBTIME/INTETIME can
VMAC30 be 100 seconds earlier that actual because my fuzzy logic
VMAC7072 to convert the GMT values to local time was too fuzzy!
Oct 2, 1993 The algorithm
GMTOFF30=100*FLOOR((SMF30IST-INTBTIME)/100);
must be replaced with
IF (SMF30IST-INTBTIME) GT 0 THEN
GMTOFF30=100*FLOOR((SMF30IST-INTBTIME)/100);
ELSE IF (SMF30IST-INTBTIME) GT . THEN
GMTOFF30=100*CEIL((SMF30IST-INTBTIME)/100);
because SMF30IST has 10 millisecond resolution, while the
INTBTIME has 1 microsecond resolution, and IST=30:19.70,
INTB=30:19.7064 created a GMTOFF30=-1:40.00 (-100 secs)
instead of zero, due to the FLOOR of a negative number!
TYPE70 variable SYNCTIME can also be incorrect. VMAC7072
GMTOFF70=100*FLOOR((STARTIME+DURATM-SYNCTIME)/100);
must be similarly replaced with:
IF (STARTIME+DURATM-SYNCTIME) GT 0 THEN
GMTOFF70=100*FLOOR((STARTIME+DURATM-SYNCTIME)/100);
ELSE IF (STARTIME+DURATM-SYNCTIME) GT . THEN
GMTOFF70=100*CEIL((STARTIME+DURATM-SYNCTIME)/100);
and the GMTOFF72 logic must be similarly replaced.
Note: This change revised by Change 11.229.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 11.198 Type 42 subtype 4 records testing caused STOPOVER abend.
VMAC42 After the @; after the INPUT of TYPETEST, insert these
Sep 30, 1993 two statements: M1=-1; INPUT +M1 @;
Also, labels for variables JESNR and TYPETASK were wrong.
Thanks to John Maher, Home Savings of America, USA.
Change 11.197 TYPEQAPM causes SAS 6.07 to 0C4 ABEND IN FUNCTION DSRFMT
SAS 6.07 AT OFFSET 000200. Problem has just been discovered. Does
Sep 30, 1993 NOT fail with SAS 6.08.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 11.196 New Partition Channel busy was incorrectly printed.
ANALRMFR Change ... PUT @20 PNCHANBY 6.2 @;
to read: ... PUT #LIN @COL+20 PCHANBY 6.2 @;
Sep 30, 1993 Change ... @13 CHANSHAR
to read: ... @COL+13 CHANSHAR
Change 11.195 Variable PNCHANBY was propagated into observations with
VMAC73 no activity. After the line that calculates PNCHANBY,
Sep 30, 1993 insert: ELSE PNCHANBY=.; to reset the value.
Thanks to Bruce Widlund, Merrill Consultants, USA.
Change 11.194 VMXGHSM did not output all observations in dataset DSR.
VMXGHSM The line IF DSNRTRKR = 0 AND DSNRTRKW = 0 THEN DELETE;
Sep 30, 1993 must itself be deleted, and in the OUT_DSR macro, replace
OUTPUT DSR; with
IF DSNRTRKR GT 0 AND DSNRTRKW GT 0 THEN OUTPUT DSR;
Thanks to Mr. Ertingshausen, RWG GmbH, GERMANY
Thanks to Chris Weston, SAS Institute Europe, GERMANY.
Change 11.193 Preliminary NDM support in 11.07 has now been tested with
EXNDMAE SMF records, uncovering these errors for early recipients
EXNDMCH a. Change all "PK2" to "PK1".
EXNDMDP b. Change the one "PIB.2 " to "PIB.2." (add a period).
EXNDMDT c. Add variables NDMRVOLS NDMSVOLS NDMRVOL1 NDMSVOL1
EXNDMFP to the KEEP list for NDMCT.
EXNDMGF d. Change occurrences of "+19+OFFSMF" to "+15+OFFSMF".
EXNDMMC e. Change the INPUT @15+OFFSMF statement to look like:
EXNDMRJ INPUT @15+OFFSMF
EXNDMRT NDMRECLN &PIB.2. /*NDM RECORD LENGTH*/
EXNDMSI NDMRTYPE $EBCDIC2. /*RECORD*SUBTYPE*/
EXNDMST @;
TYPENDML IF NDMRTYPE NE 'CT' AND NDMRTYPE NE 'PS' AND
VMACNDM NDMRTYPE NE 'PT' AND
VMACSMF NDMRTYPE NE 'WO' THEN DELETE;
Sep 30, 1993 INPUT HH &PK.1. /*HOUR*/
Oct 3, 1993 MM &PK.1.
This change also added support for all 22 subtypes, now
creating fifteen NDM datasets:
Dsname Description NDMRTYPEs
NDMAE Authorization Event AE
NDMCH Change Process Termination CH
NDMCT Copy Termination Record CT
NDMDP Delete Process Termination DP
NDMDT Display Termination DT,FT,SP,SN,SS
NDMMC PDS Member Copy Record MC
NDMFP Flush Process Termination FP,FS,TS
NDMGF General Function Termination GF
NDMPS Start Process PS
NDMPT Process Termination Record PT
NDMRJ Run Job Termination Record RJ
NDMRT Run Task Termination Record RT
NDMSI Signon File Record SI,SO
NDMST Stop NDM Event ST
NDMWO Authorization Event WO
Member TYPENDM processes the NDM Statistics from SMF.
The NDM Sample Library member ???????? provides the exit
code to write that data in an SMF record.
Member TYPENDML, added by this change, will process the
NDM Statistic File directly, for sites that did not write
their NDM data to SMF.
Thanks to Chuck Hopf, Primerica, USA.
==Changes thru 11.192 were in the Early MXG PreRelease 11.07 dtd 1Oct93=
Change 11.192 Additional cleanup and enhancement of RMF-like reports
ANALRMFR from MXG data sets continues.
Sep 28, 1993
Change 11.191 The ADOC documentation for data sets built from VM/ESA
ADOCVMXA (and VM/XA) MONWRITE records is now 150 pages, although
Sep 28, 1993 this documentation member is still in progress.
Change 11.190 Support for IBM's DFSMSrmm Removable Media Manager's
EXEDGRD Extract file created by IBM utility EDGHSKP creates six
EXEDGRO new MXG data sets (equivalent of EDGRPTD reports):
EXEDGRP EDGRDEXT - DFSMSrmm Extract Data Set Name Record
EXEDGRR EDGROEXT - DFSMSrmm Extract Data Set Owner Record
EXEDGRS EDGRPEXT - DFSMSrmm Extract Data Set Software Product
EXEDGRV EDGRREXT - DFSMSrmm Extract Data Set Rack Record
IMACEDGR EDGRSEXT - DFSMSrmm Extract Data Set Storage Location
TYPEEDGR EDGRVEXT - DFSMSrmm Extract Data Set Volume Record
VMACEDGR These extract data sets are good for quick reports, but
Sep 28, 1993 have only a subset of the data available in the SMF Audit
data records described in Change 11.189. Let me know
which you find more useful. This code has only been
syntax checked and bench checked with a dump of three
of the Extract records.
Thanks to Leatha Harlow, Sperry Marine Inc, USA
Change 11.189 Support for IBM's DFSMSrmm Removable Media Manager's two
EXEDGSA user SMF records provides extensive measurement of the
EXEDGSD new IBM tape management product. These datasets allow
EXEDGSK you to:
EXEDGSO - List the contents of the system-managed libraries,
EXEDGSP non-system managed shelf space, and storage locations.
EXEDGSR - List volumes that should be moved from the library to
EXEDGSS storage locations.
EXEDGSU - Identify secure volumes that have been created or
EXEDGSV referenced.
EXEDGS0 - Audit library activites.
EXEDGS1 The Security record (EDGSMASR) creates one MXG dataset:
IMACEDGS EDGSSECU - DFSMSrmm Security Record.
TYPEEDGS The Audit Record (EDGSMFAR) creates ten new datasets:
VMACEDGS EDGSAREC - DFSMSrmm Action Record
Sep 28, 1993 EDGSDREC - DFSMSrmm Data Set Information Record
EDGSKREC - DFSMSrmm Vital Record Specification
EDGSOREC - DFSMSrmm Owner Information
EDGSOVOL - DFSMSrmm Owner Information Volume List
EDGSPREC - DFSMSrmm Software Product Record
EDGSPVOL - DFSMSrmm Software Product Volume List
EDGSRREC - DFSMSrmm Library Shelf Location Record
EDGSSREC - DFSMSrmm Storage Location Shelf Location
EDGSVREC - DFSMSrmm Volume Information
These datasets are described in Appendix B, DFSMSrmm
Mapping Macros of DFSMS/MVS 1.1 Customization Guide.
This code has been syntax checked. Only the Audit record
was hand checked with a hex dump, and only subtype 'V'.
I am unsure of the time inputs in the Security record!
See Change 11.190 for DFSMSRMM Extract Record Support.
Thanks to Mike Skopec, Platinum Technology, USA
Change 11.188 %READDB2; %INCLUDE SOURCLIB(ASUMDB2A); will fail because
READDB2 READDB2 modifies the macros defined in IMACDB2, but did
Sep 28, 1993 not restore the original values for ASUMDB2A! Insert
%INCLUDE SOURCLIB(IMACDB2);
after the last %END and before the %MEND in READDB2 and
this class of problems are resolved.
Thanks to Bernard Harrison, VISA International, USA.
Change 11.187 Execution of MXG 11.06 or later under archaic SAS 6.06
CONFIG06 is no longer formally supported. However, if you are
VMXGINIT still stuck on SAS 6.06, using member CONFIG06 as your
Sep 28, 1993 CONFIG= parameter will invoke VMXGINI6 to initialize the
MXG system as best as possible. However, there appear
to be significant errors in the $EBCDIC format under SAS
6.06. If you encounter unexpected/strange characters in
the SMF DUMP HEADER message for SYSTEM=, you will need to
change all occurrences of $EBCDIC to $CHAR to be able to
execute under SAS 6.06. The real message is that MXG now
requires SAS 6.08 or later for safe and easy execution.
Note: See MXG Technical Notes in Newsletter TWENTY-FIVE.
Change 11.186 Timestamps RPTTIME,ODITIME, and ODIELAPS were missing in
VMACODS datasets ODSREPOR & ODSUSER because informat TIME6. does
Sep 27, 1993 not work with a value of 135859. However, Change 11.150
replaced all use of TIMEn with separate input of HH MM SS
and that redesign accidentally corrected this error. A
division by zero was also protected.
Thanks to Cindy Ng, Charles Schwab, USA.
Change 11.185 Invalid MDF value for BDNSKIP in Type 72 record STOPOVER.
VMAC7072 There were only 4 segments to skip, but BNDSKIP was 8.
Sep 27, 1993 Insert this trap after LOCPRDS is calculated:
IF LOCPRDS+LPARCPUS*LENPRDS GT LENGTH+1 THEN DO;
NBDPRDS+1; IF NBDPRDS LE 2 THEN
PUT '***ERROR.VMAC7072.INVALID PRDS LOCATION '
LOCPRDS= OFFPRDS= LENPRDS= BDNSKIP= LOCPRCS= I=
LENGTH= /+5 ' RECORD WAS DELETED. ' SYSTEM= SMFTIME=;
DELETE; END;
Note: The variable BNDSKIP was misspelled BDNSKIP in the
text of this change in 11.07, and in the PUT= statement,
which caused UNINITIALIZED variable BDNSKIP. Those were
corrected Sep 30, but not included in MXG 11.07.
Thanks to Tony Gennari, Harcourt Brace & Company, USA.
Change 11.184 SPIN library can fill if Change 11.060 is not installed!
VMAC30 The incorrect value of JINITIME causes the SPIN logic in
Sep 26, 1993 BUILDPDB to hold records in the SPIN library until the
SPINCNT limit in IMACSPIN is exceeded.
Thanks to Andrea Mulcahey, United Jersey Bank, USA.
Change 11.183 The LABEL for VIOREADS should have been spelled as
VMAC71 *FROM ESTORE instead of *ROM ESTORE.
Sep 26, 1993
Thanks to Helmut Kirrmaier, Comparex, GERMANY.
Change 11.182 A user's technical note about problems accounting for
ADOCWSF printed output for users of RSD's WSF product was added
Sep 26, 1993 to the ADOC for WSF. (Unfortunately, that's all there
is in that particular ADOC right now!)
Thanks to Jonathan Caldwell, Department of Veterans Affairs, USA.
Change 11.181 Support for SAP's IMS log record type 'AE'x accounts SAP
ASMIMSLG transactions under IMS. Three new data sets are created:
EXSAPIBA SAPIMSBA - Batch SAP jobs.
EXSAPION SAPIMSON - Online SAP transactions.
EXSAPISP SAPIMSSP - SAP Spool Task activity.
IMACIMS Whether you use the old TYPEIMS or new ASMIMSLG members,
VMACIMS these three SAP datasets will be created (their default
VMACIMSA destination is WORK, but you set that in member IMACIMS
Sep 25, 1993 in the _LSAPIxx macro definition). Note that since the
IMACIMS was changed, if you have tailored IMACIMS into
your USERID.SOURCLIB, you will need to compare and update
your changes starting with the new IMACIMS in this MXG.
This code has been syntax and hand checked with a dump.
Thanks to J. Cary Jones, Philip Morris, USA.
Change 11.180 Support for AICorp Central Server SMF record creates one
EXAICSCS new dataset:
IMACAICS AICSCS - AICorp Central Server resources.
TYPEAICS This code has been syntax and hand checked with a dump.
VMACAICS
Sep 25, 1993
Thanks to Bob Mattingly, ARCO, USA.
Change 11.179 Support for Concurrent Copy and Extended Sequential Data
EXTY42CC set activity in SMF type 42 subtype 4 records creates
EXTY42CV three new datasets:
EXTY42EX TYPE42CC - Concurrent Copy Job resources per controller
IMAC42 TYPE42CV - Concurrent Copy Job, detail per VOLSER.
VMAC42 TYPE42EX - Extended Sequential Dataset activity.
Sep 25, 1993
Thanks to John Maher, Home Savings of America, USA.
Change 11.178 References to Duquesne Systems was changed to LEGENT in
Several members IMACTPX,IMACSTX,IMACNSPY,IMACDMON,ANALNSPY,
Sep 25, 1993 VMACSTX, and VMACDMON. Morino Associates merged with
Duquesne Systems to create LEGENT.
Thanks to Herbert G. Strozinsky, Burlington Northern Railroad, USA.
Change 11.177 Variable SERVICE is used to determine if a TYPE72 obs
EXTY72 will be created, but IBM Information APAR II07261 says
Sep 25, 1993 SERVICE is zeroed if it overflows! So MXG now uses
IF SUM(CPUUNITS,SRBUNITS,IOUNITS,MSOUNITS) GT 0 ...
to test any of the components of service for non-zero.
Thanks to Randy Shumate, Mead Data Central, USA.
Change 11.176 Character variable STATFLG in TYPEXCOM conflicted with
VMACXCOM numeric variable STATFLG in TYPE5568. The TYPEXCOM
Sep 25, 1993 variable STATFLG is now spelled STATFLGX.
Thanks to Dan Squillace, SAS Institute Cary, USA.
Change 11.175 Support for Sterling's NDM, Network Data Mover user SMF
EXNDMCT record creates four new datasets for their Release 1.4.0:
EXNDMPS NDMCT - NDM Copy Termination
EXNDMPT NDMPS - NDM Process Start Event
EXNDMWO NDMPT - NDM Process Termination Event
IMACNDM NDMWO - NDM WTO Statistics
TYPENDM This code has been syntax checked and hand checked with a
VMACNDM hex dump of all four records.
Sep 25, 1993
Thanks to Joseph L. Schwartz, CIGNA, USA.
Change 11.174 Support for Release 3.0.0 of 4th Dimension's CONTROL-D
VMACCTLD SMF record added (compatibly) CTLDJBID, the JOB ID field.
Sep 24, 1993
Thanks to Gary Cooper, 4th Dimension Software, USA.
Change 11.173 Significant enhancements of GRAFxxxx members and a change
GRAFLPAR in the basic structure of the graphics catalog that will
GRAFRMFI NOT work on releases of SAS earlier than 6.06. (The old
GRAFTMNT GRAFxxxx members that run on 6.06 and 5.18 were renamed
GRAFTRND to ZRAFxxxx and kept in the MXG Source Library).
GRAFWORK
VMXGGOPT All graphics routines now have common parameter that will
ZRAFLPAR control the construction of the graphics catalog and the
ZRAFRMFI appearance of the graphs. Each GRAFxxxx member defines a
ZRAFTMNT %MACRO of the same name as the member, and uses these
ZRAFTRND standard parameters:
ZRAFWORK
Sep 25, 1993 PDB= The DDname/LIBNAME for the source of the input
data library, and the destination library of
the output graphics catalog containing the
graphs produced. This can be a PDB or a TREND.
COMPANY= The first title line on all graphs. Defaults to
'Merrills Expanded Guide - Graphics Output', but
this parameter lets you change the title to your
company's name.
MXGRAPHS=The name of the output graphics catalog written
to the library specified by PDB=. The default
catalog name is the member=macro name, but could
be changed with this parameter.
GOUTNEW= A new parameter to re-initialize the graphics
catalog. SAS graphic procedures normally MOD
new graphs at the end of the graphics catalog.
If you reuse a PDB/TREND library, that catalog
could quickly consume the available DASD space.
MXG's default is GOUTNEW=YES, overriding SAS's
normal action and causing the catalog to be
erased before building the new graphs. Any other
value for GOUTNEW will cause the old graphs to
remain and the new to be added at the end.
The changes to the individual members are:
GRAFLPAR - New parameters added and old parameters PDBOUT
and SASGRAPH are no longer applicable (although they are
still recognized for compatibility). PDBOUT= was the old
catalog destination, now specified by PDB= parameter. The
SASGRAPH parameter was needed before it was possible to
detect if you have SAS/GRAPH (now, using the new SYSPROD
function, you no longer have to tell us what you have!).
Additionally, where bar charts are produced, plots with
area fills are used now to reduce the clutter on the
horizontal axis. This was always desired, but prior
versions of SAS did not support LEGEND processing to get
the patterns of the fill into the legend.
GRAFRMFI - New parameters added. All output is now to a
single catalog and (if only a single system is detected)
the graphs of the form VARIABLE*DATE=SYSTEM are not
produced. CLIST examples CLGRAF and CLSTRPLY are now
obsolete; using the SAS Display Manager is a much more
effective means of getting to the graphs now.
GRAFTMNT - New parameters added.
GRAFTRND - New parameters added. Parameters SASGRAPH
and SASSTAT are now obsolete. A new parameter GRAFFROM=
was added; this is the date that will be used as the
starting point of the graphs produced. Where bar charts
were produced, they have been converted to plots with
area fills. This will allow you to view more data (only
about 65 bars are possible but many years can now be
viewed on a single plot) and this reduces the clutter on
the HAXIS. The capacity lines have been smoothed by using
your IMACSHFT specification to calculate the capacity
based on the length of your shifts (previously, actual
duration of found data was used). This will eliminate
the annoying peaks and valleys caused by missing data,
outages, and incomplete weeks.
GRAFWORK - New parameters added. Parameter SASGRAPH is
obsolete. Bar charts were converted to plots with area
fills. In addition, plots of IO connect time and EXCP
counts by WORKLOAD were added. Only workloads that were
actually used (i.e., got service) are used.
VMXGGOPT - Specifies graphics options.
You should use:
%VMXGGOPT(DEVICE=xxxxxxxx);
instead of using SAS's
GOPTIONS DEVICE=xxxxxxxx command.
All devices are now supported by modifying the background
and color lists. All GRAFxxxx routines use the PCBATCH
device driver (a modified IBMPCGX driver) with background
color of black and a color list of:
WHITE,RED,GREEN,BLUE,YELLOW,CYAN,PINK
A new parameter HARDCOPY= has been added. If you specify
HARDCOPY=Y, then BLACK and WHITE are reversed.
See the SAS Technical Note in MXG Newsletter 25 about the
problems moving graphs between mainframes and other SAS
platforms; using VMXGGOPT to specify devices should help
minimize those problems.
Change 11.172 If you use WEEKBLD to create your weekly PDB on tape, it
JCLWEEKT can cause multiple tape mounts on the WEEK DD name if you
WEEKBLDT have more weekly data than will fit on one tape. The new
Sep 23, 1993 member WEEKBLDT should be used instead, as it uses the
logic described in MONTHBLD (it creates each dataset in a
temporary DASD library (DDname=TAPETEMP) in tape format,
and then writes each dataset from TAPETEMP to DDname=WEEK
using DISP=MOD so as to eliminate rewinds and remounts,
which also reduces the elapsed run time of the job.
Member JCLWEEKT has been modified to use this new member.
Note that the DDNAME of TAPETEMP must be allocated only
as big as the largest weekly dataset (usually STEPS or
CICSTRAN or DB2ACCT).
Thanks to Eric Huning, Republic Insurance, USA
Change 11.171 Zero observations in TYPE72MN for MVS/ESA 4.2 or earlier
VMAC7072 occurs because the test added by changes 11.016 was only
Sep 22, 1993 tested with MVS/ESA 4.3 data, and variable VALDSAMP only
is non-missing for 4.3. The test to create observations
in TYPE72MN only for valid intervals, located just before
the %%INCLUDE SOURCLIB(EXTY72MN... statement:
IF VALDSAMP GT 0 THEN DO;
must be changed to
IF VALDSAMP GT 0 OR VALDSAMP=. THEN DO;
Thanks to Dennis Smith, Compuware Corporation, USA.
Change 11.165 Reserved Change Number.
==Changes thru 11.164 were included in MXG PreRelease 11.06 dtd 1Sep93=
(Note in 11.06 there were two change 11.162's - the second is now 163!)
Change 11.164 Complete rewrite of GRAFRMFI. Will only run under 6.07
GRAFRMFI and later. Significantly more graphs are produced and
ZGRAFRMD more flexibility is provided. New parameters have been
Aug 31, 1993 added to allow overriding the first line of the headings
with your company name and to allow you to "clean up" old
graphics catalogs in your PDB. See the documentation in
the member. If you are still running version 5, the old
GRAFRMFI is kept in member ZGRAFRMF.
Thanks to Chuck Hopf, Primerica, USA.
Change 11.163 Support for TCP/IP 2.2.1 APAR PN40511 added new recording
VMACTCP for TCP/IP API and for FTP and Telnet clients, and now
Aug 30, 1993 uses SMF record type 118. In theory, your TCP/IP tech
sets subtype values (using the LOGGING command statement
in PROFILE TCPIP, see APAR PN40511), but both the API and
FTP/TELNET server records have the same ID and subtype!
Thus MXG does not use the subtype value, instead deducing
from other fields to determine actual data:
Dataset Contains
TYPETCPF FTP Server - existed previously in MXG
TYPETCPC FTP Client
TYPETCPT TELNET Server- existed previously in MXG
TYPETCPL TELNET Client
TYPETCPA API Calls (Sockets)
Thanks to Richard Warren, Salomon, Inc, USA.
Thanks to Bob Muller, Grumman, USA.
Change 11.162 Support for ASTEX Release 1.7 Interval Database SMF data
VMACDMON record. Variables RIRCX and RNVCCNT were added to all 3
Aug 30, 1993 DMON datasets, and variables RVDISCNH,RVLATNCY,RVMSAMPL,
RVSAMPWH and RVTLOST were added to DMONVOL. Additionally
the label for RHUSTX is now MUST PROBLEM I/O COUNT. I now
realize that I used an "H" in some variable names that
were really spelled with an "M", but the Release 1.5 doc
was a smudged fax! While having M for MUST/MAY would be
better, changing now will cause your report code to have
to be changed, and I don't intend to make extra work for
you now, so we'll live with the MXG misspellings! And
RHTCSW should be RHTCFW, but I've left it alone, too.
Release 1.7 added these new fields compatibly, so that
prior versions of MXG will not fail; they just won't have
the new variables.
Change 11.161 DB2 2.3 can have QWHSRELN=2.299 (due to truncation), so
VMACDB2 all tests GE 2.3 were changed to GT 2.2 to avoid the
VMACDB2H exposure. The specific occurrence affected only the DB2
VMAC102 correlation decoding in IMACDB2, but prudence dictated a
IMACDB2 change to all occurrences.
Aug 30, 1993
Thanks to John Shuck, SunTrust, USA.
Change 11.160 Change 10.133 (multiple type 30 records due to more than
BUILDPDB 1476 DD segments) did not correct JELAPSTM. In extensive
BUILDPD3 notes, this contributor located the several changes to
BUILD005 carry MULTIDD5 from the 30_5 into the final logic so that
IMACPDB JELAPSTM will non-missing in this instance.
Aug 30, 1993
Thanks to Andy Vick, Allied Dunbar Life Assurance, ENGLAND.
Change 11.159 Change 11.130 (NETSPY documentation error) is changed
VMACNSPY again. Now, LEGENT says the field is at offset +34 and
Aug 27, 1993 not +33 as previously documented, and so the MXG test
Previously: IF NSUBNTCN GT 0 AND NSUBNTLN GT 0 THEN DO;
Ch 11.130: IF LDLANLST GT 0 THEN DO;
Now Is: IF LDLANMAX GT 0 THEN DO;
Thanks to Gary Allen, LEGENT, ENGLAND.
Change 11.158 Variable ACTIVE in TYPE90 was renamed to ACTIVEMN because
VMAC90 it conflicted with variable ACTIVE in TYPEAPAF, which is
Aug 27, 1993 numeric. ACTIVEMN is the identity of the Active SMF data
set, and this should have minimal impact on TYPE90 users,
but avoids a conflict of variable types.
Thanks to Bryant Osborn, Department of Transportation, USA.
Change 11.157 IMS Appended Log processing of type 36 log record did not
ASMIMSLG recognize that a '04'X bit in QLDQFLGS indicates the true
Aug 27, 1993 dequeue of a transaction. (The '04'X indicates the free
of a queue-block as opposed to the '01'x which indicates
a CNT (terminal) dequeue. Find AP TYPE36CT,PAKEDONE
and insert after that line: TM QLDQFLGS,QLDQFFQB
BZ DROPMAP
Thanks to Siegfried Trantes, Gothaer Versicherungsbank VVAG, GERMANY.
Change 11.156 Support for Release 4.5 of Software AG's COM-PLETE SMF
VMACCOMP record (which was incompatibly changed; MXG 11.06+ is now
Aug 24, 1993 required). New variables were added to the existing data
sets. Still in test is verification of PIB4.2 formats.
Thanks to Jill Hansen, South Dakota Regents Information Systems, USA.
Change 11.155 IMACPDB limited the number of ACCOUNTn variables to three
IMACPDB in PDB.JOBS, PDB.STEPS, and PDB.ACCOUNT, even when you
Aug 24, 1993 specified more in member IMACACCT. This was a holdover
from earlier MXG versions, and is no longer correct nor
needed. All occurrences of ACCOUNT1-ACCOUNT3 and of
LENACCT1-LENACCT3 in member IMACPDB were changed to
ACCOUNT1-ACCOUNT9 and LENACCT1-LENACCT9, and then the
number of account variables will be controlled by the
number you keep in member IMACACCT.
Thanks to Esther Ader, TRW Redi Property Data, USA.
Change 11.154 MXGTMNT abended at only one site, with a 0C4. An invalid
ASMTAPEE value for the UCBASID in the UCB Common Extension caused
Aug 24, 1993 this single error, which can be corrected by:
a.Relocate the line MVC DEVASID,UCBASID from after the
line LH R4,UCBASID to before that LH.
b.Insert after line USING ASVT,R5
these two lines: CL R4,ASVTMAXU IS ASID LARGE?
BNL NOJOB
Thanks to David Froberg, Software AG, USA.
Change 11.153 As noted in Newsletter 24, Landmark TMON pseudo type 110
VMAC110 SMF records are invalid. If you must process those TMON
Aug 24, 1993 records, you can change SUBTYPE=SMFPSSTY; to SUBTYPE=1;
and as long as ONLY Landmark type 110 records are in your
SMF file, MXG will successfully create its CICS datasets.
This is a circumvention for you to apply if you need it,
but there was no change to member VMAC110 in MXG.
Thanks to Amy Stammerjohn, IBM WSC, USA.
Change 11.152 TYPE70 dataset now supports CPUIDs of 0 thru 15, because
VMAC7072 it is possible (in PR/SM,MLPF,or MDF) to assign CPUIDs
RMFINTRV of 9 thru 15. Sites which had assigned CPUIDs above 8
Aug 23, 1993 found the wait time for those CPUIDs above 8 was lost,
causing an inflated CPU utilization percentage during
periods of low activity. Not only does this change
protect current users of high CPUID values, but also it
protects all users if/when more than 8 concurrent CPUs
are supported. Variables CAIn, CPUSERn, CPUWAITn,
CPUEDTMn, CPUPDTMn, IORATEn, PCTCPBYn, PCTTPIn,
VFAFFTMn, and VF0Nn, now exist with n values of 0,1,2,3,
4,5,6,7,8,9,A,B,C,D,E and F. (RMFINTRV was changed only
to keep CPUSER9,A-F variables).
Thanks to Ron McAllister, Hitachi Data Systems, USA.
Change 11.151 Variables DCUSYSID and DCUTMSTP were not kept in the new
VMACDCOL SMS Construct datasets DCLODC, DCOLSC, DCOLMC, DCOLBC,
Aug 23, 1993 DCOLSG, DCOLVL, DCOLAG, DCOLDR, and DCOLLB, but now are!
Thanks to John Rosza, Depository Trust Company, USA.
==Changes thru 11.150 were included in MXG PreRelease 11.05 dtd 20Aug93=
Change 11.150 MXG redesign for execution under any SAS platform began
CONFIG with this major structural change, but fortunately, as
CONFIG07 long as you use the CONFIG member from this library for
CONFIG08 your CONFIG= value, the change is transparent under the
VMXGINIT currently supported platforms. (Note that members
DOC CONFIG, CONFIG07, and CONFIG08 are now identical.)
Oct 4, 1993
Now with this change, all of MXG can be stress tested and
validated for execution under the "ASCII" versions
(WINDOWS, OS/2, UNIX). MXG's BUILDPDB has already been
executed under SAS 6.08 under Windows, OS/2, and UNIX.
The original text of this change was revised and is now
included in the Technical Note "Executing MXG and Other
SAS Applications Under Windows, OS/2, and UNIX" in MXG
Newsletter TWENTY-FIVE.
==Changes thru 11.149 were in MXG PreRelease 11.04 dated Aug 10, 1993==
Change 11.149 DOS/VSE POWER variables STARTIME and STOPTIME are okay if
TYPEDOS START and STOP occur on the STOP date, but there is no
Aug 10, 1993 START date in the record, and most DOS event records also
have no elapsed duration by which true START date can be
known, so the date of STARTIME can be incorrect. For the
DOSJOBS data, however, the elapsed time can be estimated
(CALCTM) and can be used to correct the date of start.
(Before this change, MXG wrongly recalculated STOPTIME
instead of STARTIME, causing both to be wrong when STOP
and START occurred on different dates.)
After:
CALCTM=SUM(CPUTM,OVERTM,WAITTM)/3;
Replace the two lines recalculating STOPTIME with
IF CALCTM GT TIMEPART(STOPTIME) THEN
STARTIME=DHMS(-FLOOR(CALCTM/86400),0,0,STARTIME);
Thanks to J. Geluk, ROBECO Group, THE NETHERLANDS
Change 11.148 SAP journal data for release 5 is supported in MXG 11.03.
IMACICSA For SAP release 4.3, the time part of STRTTIME is wrong,
Aug 8, 1993 because SAP 4.3 used PDTIME4. while SAP 5.0 uses PIB4.3.
Sites with release 4.3 need only to change the input
for STCTIMTR from PIB4.3 to PDTIME4. and the value of
STRTTIME will be correct; remember to back out the change
when you convert to SAP release 5.0. Unfortunately, SAP
does not store any indicator of release in the record!
Thanks to Waldemar Schneider, SAS Institute Europe, GERMANY.
Change 11.147 Support for Laser Access Corp's Optical Disk System three
EXTYODSD User SMF records. Three datasets are created:
EXTYODSR ODSDEVIC - Device Statistics. Physical activity between
EXTYODSU the ODS and the ODI.
FORMATS ODSREPOR - Report Termination. Control Unit information
IMACODS about the report just recorded.
TYPEODS ODSUSER - Report Statistics. Reflects all activity for
VMACODS that report for that user. Elapsed times
Aug 5, 1993 will be totals of all page activity while
that report was open.
Thanks to Cindy Ng, Charles Schwab, USA.
Change 11.146 Support for LEGENT's SAR product User SMF Record written
EXTYSAR by the SARSRQU3 exit, written when a report is printed
FORMATS from the SAR database. One dataset is created:
IMACSAR SARSRQU3 - SAR Print Report from SAR database.
TYPESAR
VMACSAR
Aug 4, 1993
Thanks to Bob Mattingly, ARCO, USA.
Change 11.145 ASUM70PR was still wrong in MXG 11.03; the BY statement
ASUM70PR BY SYSTEM STARTIME; (after the MERGE statement)
Aug 4, 1993 that was supposed to have been added by Change 11.041 was
lost in a later change to ASUM70PR. If you have PR/SM or
MDF or MPLF data with some MVS systems partitioned and
some native, the absence of this BY statement can corrupt
the PDB.RMFINTRV dataset. Insert it after the MERGE!
Thanks to Randy Shumate, Mead Data Central, USA.
Change 11.144 MXG CIMSTRAN dataset (from Boole's IMF) did not contain a
VMACCIMS flag variable that the transaction was a BMP, which some
Jul 29, 1993 users needed to separate BMP from MPP transactions. New
variable BMP now exists.
Thanks to Vladimiro Viano, Assicurazioni Generali, ITALY.
Change 11.143 Error OVERFLOW HAS OCCURRED, OUT OF MEMORY with ANALDB2R
ANALDB2R if reports PMSTA01 or PMSTA02 are requested, only under
Jul 27, 1993 SAS 6.08, is caused by SAS Usage Note 6719. The INCODE
arguments of PMSTA01/PMSTA02 have 330+ lines each,which
exceeds a SAS internal limit for macro argument length
as discussed in the Usage Note. Most of the 300+ lines
are "faker" statements IF A=. THEN A=.; whose purpose
was to eliminate "UNINITIALIZED VARIABLE" messages on the
log. The simple circumvention is to simply delete all of
those "faker" statements and tolerate a note on the log:
After the second INCODE, delete the first 313 lines.
After the third INCODE, delete the first 311 lines.
The permanent MXG solution is to replace the "faker"
statements with a RETAIN list-of-variables 0; statement
which takes many fewer lines. There are three INCODE
arguments, but only the last two INCODEs must be changed.
Thanks to Ken Rowe, Resolution Trust Corp, USA.
Thanks to Ivan Vasquez, Resolution Trust Corp, USA.
Change 11.142 VM/ESA duration variables that were INPUT as PIB6.6 must
VMACVMXA be stored in LENGTH 8 for the deaccumulation, otherwise
Jul 27, 1993 the subtraction of these very large numbers can cause
small truncation of values (6557.83 seconds became
6556.56 of VMDTTIME). The truncation seems to have been
the cause of small negative values of VMDCTIME as well!
These variables are now length 8:
CALMPNTR CALMPTRV CALQDNTR CALUPNTR CALUPTRV PFXPRBTM
PFXTMSYS PFXTOTWT PFXUTIME PLSVFOTM PLSVFVTM RDEVRTPD
SRMRSCTM SRMSTRD SRMTSHOT SRMTSLIC VMDESLIC VMDTTIME
VMDVFOTM VMDVFVTM VMDVTIME
Thanks to Stan Laugher, NM Computer Services, AUSTRALIA.
Change 11.141 POOL/DASD User SMF record caused INPUT STATEMENT EXCEEDED
VMACPOOL error. The INPUT of PLD $CHAR3. must be changed to
Jul 27, 1993 $CHAR4.
Thanks to Mike Lambert, IHS, USA
==Changes thru 11.140 were printed in MXG Newsletter TWENTY-FOUR 2Aug93
==Changes thru 11.140 were included in MXG PreRelease 11.03 dtd 26Jul93=
Change 11.140 The Asynchronous Data Mover Facility APAR OY65142 adds to
IMACPDB the type 30 SMF record variables ADMFREAD,ADMFWRIT with
VMAC30 count of pages moved by ADMF. Both variables were also
Jul 24, 1993 added to the PDB.JOBS and PDB.STEPS datasets.
Change 11.139 A RACF segment with zero length RACFDLN was not expected
VMAC80A nor protected for, causing INPUT STATEMENT EXCEEDED ...
Jul 24, 1993 error. Change SELECT (RACFTYPE); to read
IF RACFDLN GT 0 THEN SELECT (RACFTYPE);
Thanks to Jeff Burnett, Anixter Information Services, USA.
Change 11.138 Additional protection for changes in Journal records is
VMAC110 accomplished by inserting INPUT @LOC @; after both of
Jul 23, 1993 the occurrences of LOC=LOC+JCRLL; In particular, this
will permit MXG to skip over SAP Journal records until
you install the MXG 11.03 needed for SAS Release 5.0!
Thanks to Thomas Lowin, GESIS, GERMANY.
Change 11.137 An extraneous close-parenthesis on line 011800 (after the
VMACZRB _LZRBUWP statement) must be deleted.
Jul 23, 1993
Thanks to Ray Dickensheets, Yellow Freight System, USA.
Change 11.136 Major revision to the subtype 102/103 Omegamon/CICS User
VMACOMCI SMF record (Clocks and Counters for VSAM, DL/I, IDMS,
Jul 22, 1993 ADABAS, SUPRA, and DATACOM) in Candle's SPE QOC0553. Now,
two MXG datasets are created for each DB manager, one
with total I/O activity, and one with detail activity at
the "File/Database" level. Candle's misdocumentation of
the VSAM record pre-SPE was also corrected, as were MXG
errors in inputting as PIB4.4 what was PIB4.6! Datasets:
OMCIVSAM,OMCIVSAT - VSAM Detail, Total
OMCIADA ,OMCIATAT - ADABAS Detail, Total
OMCIDLI ,OMCIDLIT - DL/I Detail, Total
OMCIIDMS,OMCIIDMT - IDMS Detail, Total
OMCISUPR,OMCISUPT - SUPRA Detail, Total
OMCIDTCO,OMCIDTCT - DATACOM Detail, Total
Thanks to Thomas Lowin, GESIS, GERMANY.
Thanks to Ross Pover, Immigration & Ethnic Affairs, AUSTRALIA.
Change 11.135 The _K macro name for the _LTY80CM dataset was misspelled
VMAC80A as _KTY8007 instead of _KDY80CM.
Jul 22, 1993
Thanks to Thomas Lowin, GESIS, GERMANY.
Change 11.134 MXG 11.02 only. Changes 11.113 and 11.089 were not in
TYPEVM the code, although both were documented as being there.
VMAC26J2 Labels were missing for CHANIND,CHANINDY,CHANINDY vars in
VMAC73 TYPE73 dataset.
Jul 22, 1993
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
Change 11.133 STOPX37 undocumented fields VOLSER and MSGCODE were found
VMACX37 by this user. Add: @441+OFFSMF VOLSER $CHAR6.
Jul 22, 1993 @497+OFFSMF MSGCODE $CHAR7.
and add MSGCODE to KEEP= list.
Thanks to Lou Sassani, National Australian Bank, AUSTRALIA
Thanks to John Astle, National Australian Bank, AUSTRALIA
Change 11.132 MXG 11.02 only. Change 11.119 was incomplete. Insert:
VMAC37 BRFDATLN=LENDETT;
Jul 22, 1993 after INPUT @OFFDETT @;
Thanks to Rod Fernandes, Albert Heijn B.V., HOLLAND.
Change 11.131 HSM BCDS dataset MCB records were incorrect (incomplete
VMXGHSM and too few observations, plus INVALID ARGUMENT TO FUNCT
Jul 22, 1993 DATEJUL message). Line 114200 should be P2=P2+64; vice
P2=P2+(I*64); In addition, lines 113500 & 113800-114100
were relocated above the DO loop.
Thanks to Willi Weinberger, Gothaer Versicherungsbank, GERMANY.
Change 11.130 Legent LANSPY Problem # DGL249 acknowledges documentation
VMACNSPY error for extended subtype D record that caused INPUT
Jul 22, 1993 STATEMENT EXCEEDED RECORD LENGTH. The MXG test:
IF NSUBNTCN GT 0 AND NSUBNTLN GT 0 THEN DO;
must be replaced with IF LDLANLST GT 0 THEN DO;
Thanks to Mike Hicks, Centrefile Ltd., ENGLAND.
Change 11.129 SAS Error 76-322 occurred when unnumbered and numbered
CONFIG07 statements were input, and CONFIG07 used.SAS Option S2=0
Jul 22, 1993 should have been S2=72 in CONFIG07. (CONFIG08 was okay.)
See Change 10.109 for discussion.
Thanks to Ann Wheeler, American President Lines, USA.
Change 11.128 Variable DEVTYPE was added to the KEEP= list for dataset
TYPETMS5 TMS.DSNBRECD so that the type of tape device is known.
Jul 22, 1993
Thanks to Chuck Hopf, Primerica, USA.
Change 11.127 In MXG 11.02. an extraneous period in column 1 of line
ASUM70PR 031200 must be removed. Additionally, in some instances,
Jul 21, 1993 the new LPnDUR variables were missing because of sort
reordering. To correct, LPARNUM was added to the BY
statement following INCODE= and FIRST.STARTIME was
changed to FIRST.LPARNUM.
==Changes thru 11.126 were included in MXG PreRelease 11.02 dtd 6Jul93=
Change 11.126 Type 30 APPC variables were accumulated across steps, and
VMAC30 a second step (PGM=IEFBR14) that did not use APPC would
Jul 2, 1993 contain non-zero APPC counts if the first step used APPC!
APAR OY63634 now creates an additional segment in type 30
records which contains the "Delta" values for the step.
MXG supports the new APAR, and will use the Delta segment
if it exists; otherwise, the cumulative values will be
kept (as occurs now) until you install the APAR.
Change 11.125 RMF-like reports from MXG datasets were enhanced with the
ANALRMFR EMIF channel reporting of both total Channel Busy and the
Jul 2, 1993 Partitions part of total Channel Busy. All reports now
match their RMF 4.3 counterparts.
Change 11.124 Variable LSBACS (ACS ID) was added to the STCLMU dataset:
VMACSTC Replace the line INPUT @21+OFFSMF LSBMON PIB2.
Jul 1, 1993 With these two: INPUT @543+OFFSMF LSBACS PIB1.
Oct 21, 1993 @21+OFFSMF LSBMON PIB2.
(The above text was reworded for clarity from that that
was published in Newsletter TWENTY-FOUR, Oct 21, 1993.)
Also, Change 10.116 was not implemented correctly. After
that change, the code should read:
ELSE INPUT STC07CON PIB4. @;
INPUT STC07LBL $CHAR1. ...
Thanks to Rodney Marwick, Vereinte Versicherungen, GERMANY.
Thanks to Tom Yarbrough, Rockwell Space Operations Company, USA.
Change 11.123 The order of INPUT statements was modified to make all
VMAC64 TYPE64 variables available to the TYPE64X (extent) data
Jul 1, 1993 set, so that you could optionally add desired variables
into TYPE64X (using _KTY64X macro in member IMAC64).
Thanks to Rodney Marwick, Vereinte Versicherungen, GERMANY.
Change 11.122 Variables IVLAWS and IVLOAWS were added to OPC24_6, and
VMACOPC variables MTDRESTA,MTDDIRES,MTDRERUT, and MTDDIRER were
Jul 1, 1993 added to OPC24D_C data sets. This change supplements
Change 11.065.
Thanks to Rodney Marwick, Vereinte Versicherungen, GERMANY.
Change 11.121 Variable AOUTSZT was not calculated in NSPYLU data set.
VMACNSPY Insert after ARSPNET calculation (line 123700):
Jul 1, 1993 AOUTSZT=COTPUTSZ/NETRSPNO;
and then after ARSPNET=.; (line 126700), insert:
AOUTSZT=.;
Thanks to Joanne Turpie, Department of Labour, NEW ZEALAND.
Change 11.120 Variable QW0058SN was incorrectly input as $CHAR2,
VMAC102 instead of PIB2., so it was unprintable. Changing to the
Jun 29, 1993 PIB2. will cause the actual statement number to print.
Thanks to Dave Leeker, Southwestern Bell, USA.
Change 11.119 Netview Type 37 "INPUT STATEMENT EXCEEDED RECORD LENGTH"
VMAC37 occurs because APAR OY49717 incorrectly documented the
Jun 24, 1993 format of the "DETT" (Data Network Subfield) text. The
APAR documented an imbedded count of sections BRFDENUM
and an imbedded length of each section, BRFDATLN, yet the
actual data contains neither field; instead, the triplet
LENDETT/NRDETT fields describe the text directly. The
workaround is to insert BRFDENUM=NRDETT; after the
INPUT statement for BRFDENUM, and to insert
BRFDATLN=LENDETT; INPUT @OFFDETT @;
after the INPUT statement for BRFDATLN. The actual MXG
revision eliminates the excess code.
Thanks to Larry Doub, RJReynolds Tobacco Co., USA
Change 11.118 The number of LPAR partitions, NRPRCS, was put back in
ASUM70PR the ASUM70PR data set from TYPE70PR. It had been removed
Jun 24, 1993 by Change 11.003 but turns out useful, so it can now be
Aug 4, 1993 used in reports.
Change 11.117 Support for Top Secret Release 4.3 type 80 SMF record.
VMAC80 Find the test for RACFVRSN following text "Top Secret"
VMAC80A and add OR RACFVRSN=043X to that test in both members
Jun 24, 1993 VMAC80 and VMAC80A to support this release.
Thanks to David Froberg, Software AG, USA.
Change 11.116 APAR OY54370 to NPM allows the Network Transit Time to be
VMAC28 calculated with only user data PIUs that have Definite
Jun 24, 1993 Response (specify TRANSIT=DR in FNMINIT), or now the Time
can include the data flow control PIUs (TRANSIT=DFC).
New MXG variable DFCPIU='Y' if TRANSIT=DFC was specified.
Thanks to Joseph L. Schwartz, CIGNA, USA.
Change 11.115 OMEGAMON V550 User SMF record ("ESRA") fails with INPUT
VMACOMCI STATEMENT EXCEEDED RECORD LENGTH due to MXG logic error.
Jun 24, 1993 Replace @LOC+LENTOTR+1 with @LOC+LENTOTR+1+(-6*(_I_-1))
to correct the alignment.
Thanks to Richard Cooke, Zurich Municipal, ENGLAND.
Thanks to Pete Gain, SAS Institute, ENGLAND.
Change 11.114 APAR OY64585 changes the format of IODFDATE in both type
VMAC73 73 and 74 records to MMDDYY8. (instead of YYMMDD8.), so
VMAC74 both INPUTs were corrected. Variables CYCLE and PARTISHN
Jun 23, 1993 are now kept in TYPE73, and new variable PNCHANBY is now
created in EMIF environments to report the Partition's
use of this CHPID. (PCHANBY is Total CHPID busy, while
PNCHANBY is the Partition's CHPID busy.)
Change 11.113 Support for VM/ESA Release 2.1 Accounting records added
TYPEVM type 0B accounting record for virtual disk in storage,
Jun 23, 1993 which MXG now outputs into dataset VMDEVICE. Variables
VDISKSUB and PAGEUSED in dataset VMDEVICE are non-missing
only for VMID='0B'X virtual disk record.
Change 11.112 Support for VM/ESA Release 2.1 Monitor MONWRITE records
VMACVMXA added several new variables, mostly for virtual disk in
Jun 23, 1993 storage statistics:
VXSYTSHS - QDGSYSLM,QDGUSRLM,QDGSYSCA,QDGLKCNT,QDGDISKS
(size, number, limits on VDISKs). Existing
variable VMSFORE converted to bytes and now
Formatted MGBYTES.
VXUSELOF - New variable VMDVDISK.
VXUSEACT - New variable VMDVDISK.
VXUSEATE - New variable VMDVDISK.
VXIODDEV - New variables VIUSTAMP, VIUSTATE.
(for I/O assist utilization calculations)
Variables now reserved (i.e., have zero value):
VXSTORSP - PLSTRMWT,PLSTRECT,PLSTEFCT,PLSTRDCT,PLSTDFCT,
PLSSYS1 ,PLSSYSE ,PLSSYSP1,PLSSYSPE
New data sets:
VXSTOSHL - 3.15 - NSS/DCSS/SSP Loaded into Storage
VXSTOSHD - 3.16 - NSS/DCSS/SSP Removed from Storage
VXSTOVDK - 3.17 - VDISK Information
Thanks IBM: both data and documentation were provided
for validation!
Change 11.111 VM/ESA dataset VXSYTCPM had incorrect values (DURATM=0,
VMACVMXA PCTCHBSY=wrong), or could ABEND with STOPOVER condition.
Jun 23, 1993 In _CSYTCPM, the ... THEN DO CHPID=0 TO CHPATH; must be
... TO CHPATH-1; Also, SKIP=SKIP-CHPATHLN; must be
replaced with IF SKIP GT 0 THEN INPUT +SKIP @;
Also, after M1=-1; insert SKIP=CHPATHLN-8;
Then in _DSYTCPM, CHPTSTMP+128*4294967296/1E6; must be
changed to CHPTSTMP+128*16777216/1E6 (because CHPTSTMP
is only 3-bytes. Before IF FIRST.BEGINMTR ..., insert
SAMECHAN=DIF(CHPID); DROP SAMECHAN; and add to the
IF FIRST.BEGINMTR OR ... a clauseOR SAMECHAN NE 0 .
Finally, after the END; of DO CHPID=0 TO CHPATH-1; and
before the final END; insert:
SPIN=MRHDRLEN-CALOFFST-CHPATH*CHPATHLN;
IF SKIP GT 0 THEN DO; INPUT +SKIP @; SKIP=0; END;
Thanks to Tom Healy, CHEMNET, USA.
Change 11.110 Support for SAP Releases 4.3.J & 5.0, which incompatibly
FORMATS changed the SAP CICS Journal segment in type 110 records.
IMACICSA Thirty-four new variables are created in the CICSSAP data
VMAC110 set and kept in VMAC110, and format $MGSAPTY was altered
Jun 22, 1993 because STCTASK now contains only a single character.
Note that variables STCIAPPL,STCIDEST,STCIDTYP,STCIMAND,
STCIMODP,and STCIPROG only have value if STC1CPIC='Y',
i.e., for CPIC Communication.
Thanks to Hr. Baehr, Helaba, GERMANY
Change 11.109 MXG 10.10 "Appended" IMS processing members JCLIMSLG and
JCLIMSLG TYPEIMSB were overlaid unexpectedly, and members IMSALOG,
TYPEIMSB IMSFPLOG,IMSTLOG,VIEWS,SUMTAB, and ASMIMSL3 were created
TYPESLRI unexpectedly when the MXG 10.10 tape was unloaded. These
Jun 22, 1993 eight members were supposed to be contained in new member
TYPESLRI as an unloaded IEBUPDTE PDS, but my error was to
fail to change the ./ IEBUPDTE syntax to xy, and thus the
8 members were created in your MXG.SOURCLIB. If you will
delete the last line in TYPEIMSB (a /* in col 1-2), and
ask us to fax you the MXG JCLIMSLG example (116 lines),
you can used the "Appended" IMS processing announced in
Change 10.142. Member TYPESLRI was described in Change
10.290, and now contains xy instead of ./ so that it will
not unload and overlay members again.
Thanks to Kenneth D. Jones, SHL SystemHouse, CANADA.
Change 11.108 DB2 variables CORRNAME and CORRNUM were not decoded for
IMACDB2 IMS connections with QWHCATYP=10. Now, the _DB2CORR IBM
Jun 22, 1993 macro tests for values of 5, 6, 9, or 10 for IMS.
Thanks to Alan Keeble, British Steel, ENGLAND.
Change 11.107 DB2 Trace IFCID=53 and IFCID=58 records can have no data
VMAC102 sections (QWHSNSDA=2 found for CLOSE CURSOR for example),
Jun 22, 1993 but this was not documented by IBM nor expected by MXG,
and those records with QWHSNSDA=2 were not output in
T102S053 or T102S058 data sets. Insert the ELSE OUTPUT
T102S05x; statements as shown:
Change To Read:
OUTPUT T102S053; OUTPUT T102S053;
END; END;
ELSE OUTPUT T102S053;
OUTPUT T102S058; OUTPUT T102S058;
END; END;
ELSE OUTPUT T102S058;
Thanks to John Morgan, Compuzorg B.V., NETHERLANDS.
Change 11.106 Support for DOS/VSE POWER 5.1 has been added. In datasets
TYPEDOS DOSJOBS and DOSREAD, variable TORMOT is now reserved, and
Jun 21, 1993 in DOSSNA variable INVLRESP is now reserved. DOS Network
Account field (8-bytes) was added to DOSLIST, DOSPUNCH,
DOSREAD, DOSXRC, and DOSPOOL, and records inserted or
deleted by OUTEXIT variables were also added in DOSPUNCH,
DOSLIST,DOSXRC, and DOSPOOL datasets. The Execution 'E'
record now documents offsets to either a PUTACCT user
extension or a "VSE/POWER extension area from ACDATE",
I have been unable to find the IBM documentation for that
area. The enhancement code has only been syntax checked.
Thanks to Jean-Claude Burger, Boehringer Ingelheim, FRANCE.
Change 11.105 Cosmetic. The list of members that use %VMXGFOR was out
VMXGFOR of data; now all 95 members are listed in the comments.
Jun 20, 1993
Thanks to Bob Butchco, The Genix Group, USA.
Change 11.104 "VARIABLE SACCT1 NOT FOUND" will result if you DROP all
IMACACCT of the SACCTn variables; BUILDPDB demands that at least
Jun 14, 1993 ACCOUNT1 and SACCT1 exist. You can set the length of
SACCT1 (and ACCOUNT1, if desired) to be one byte and
then DROP SACCT2-SACCT9 ACCOUNT2-ACCOUNT9 if you really
want to minimize the accounting variables that you keep.
Change 11.103 TYPEVVDS can have blank VVRSTGCL, VVRDATCL, or VVRMGTCL
VMACVVDS (Storage, Data, or Management Class) values, because the
Jun 14, 1993 test IF VVRLEN GE 148 ... should have been written as
IF VVRLEN GE 135 ...
Note, however, that there are legitimate TYPEVVDS records
that will still have blank values: Alternate Indexes do
not contain SMS classes, nor will datasets not under SMS!
Thanks to Scott Ashby, First Wachovia Operational Services, USA.
Change 11.102 MXG 11.01 only. Dataset TYPE73 has observations only for
VMAC73 MVS/ESA 4.3 or MVS/ESA 4.2 with APAR OY45991/PTF UY77343
Jun 11, 1993 installed. Change 11.015 was the culprit; VALIDPTH only
exists with the APAR or 4.3. Replace the single line:
IF VALIDPTH='Y' THEN DO;
with these lines:
IF (CFGCHGFL='....1...'B AND VALIDPTH='Y') OR
(CFGCHGFL='....0...'B AND (CHANIND GT 0 OR CHANINDX GT 0 OR
CHANINDY GT 0 OR PCHANBY GT 0 OR
SMF73PBY GT 0 OR SMF73PTI GT 0))
THEN DO;
Thanks to Rich Hawthorne, Nike, USA.
Change 11.101 The MXG Tape Mount Monitor is now the MXG Tape Mount and
ASMTAPES Allocation Monitor. The monitor now creates a subtype 4
EXTMNALO SMF record for each deallocation of a tape drive, with
IMACTMNT the start and end timestamps of how long that drive was
VMACTMNT allocated to that job, so that (finally!) the duration of
Jun 8, 1993 tape drive allocation can be measured, even if dynamic
allocation (eg. HSM, DB2MAST) or dynamic deallocation
(eg., FREE=CLOSE) is used. New MXG dataset TYPETALO is
now created by VMACTMNT (and also by BUILDPDB/3) for each
subtype 4 MXGTMNT record.
The ASM source code for the revised MXGTMNT program is in
ASMTAPES, and installation instructions are in comments;
except for Authorization, it installs exactly as the old
ASMTMNT. Yes, there is a price for this new priceless
data record: the new MXGTMNT load module must now always
be Authorized and stored in an Authorized Library, even
for testing to a flat file. Comments in ASMTAPES discuss
why Authorization is needed.
The allocation monitor was specified by Barry, but the
coding implementation was done for Merrill Consultants
by Bill Fairchild, Royal Software Associates. Chuck Hopf
did a lot of the early testing.
A minor enhancement was also made to the tape mount
monitor: the type of label (SL, NL, NSL, BLP) has been
added to the record and new variable LABEL is added to
TYPETMNT observations.
ORIGINAL TEXT OF CHANGE 11.101:
THIS MONITOR IS STILL IN ALPHA TESTING; IT CREATES VALID
RECORDS, BUT THEN ABENDS WITH AN 0C1, AND WE ARE STILL
DEBUGGING THE NEW MONITOR. DO NOT USE THIS NEW MONITOR!
Text revised Mar 24, 1994, after newsletter TWENTY-FIVE:
See Change 11.357.
Change 11.100 Line 051600 should be INPUT @109+OFFIMS instead of only
VMACCIMS INPUT @109; fortunately, OFFIMS is zero, so there was no
Jun 8, 1993 execution error.
Thanks to Vladimiro Vieno, Assicurazioni Generali, ITALY.
Change 11.099 MXG 11.01 only. A semicolon was missing after MTFLAG=0;
TYPEIMSA
Jun 8, 1993
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
Change 11.098 The DD name //DASDCOLL in this JCL example should have
JCLDAYDS been //DATASETS, as expected by the (DAILYDSN) program.
Jun 8, 1993
Thanks to David Ehresman, University of Louisville, USA.
Change 11.097 Amdahl format MGAMDDT mapped values 7,8,9 to 6380M1,M2,M3
FORMATS but they should be 6390M1,M2,M3, and have been changed.
Jun 3, 1993
Thanks to Graham West, Amdahl, ENGLAND.
Change 11.096 MXG 11.01 only. Insert an @; immediately before the
VMACDCOL IF LENGTH GE 308 THEN ... statement.
Jun 3, 1993
Thanks to Gary Matney, Twentieth Century Investors, USA.
Change 11.095 Variable STARTIME was added to the KEEP= list for the
VMACTMVS datasets TMVSYSSW and TMVSIV.
Jun 2, 1993
Thanks to Rod Fernandes, Albert Heijn B.V., HOLLAND.
Change 11.094 Several MXG 11.01-only typographical errors:
ASUM70PR ASUM70PR variable LPCTGOV is LABELed twice; delete the
GRAFLPAR second occurrence.
VMXGPRAL GRAFLPAR line 041300 has a missing quote; it should read:
Jun 2, 1993 TITLE2 H=2 F=SWISS 'LPAR % CPU Utilization';
VMXGPRAL utility prints only the first dataset found, and
prints it once for each dataset in the library! These
changes are required, but they also make this utility
work only with SAS Version 6 or later:
Insert COMPRESS=NO after NOBS in the KEEP= list following
the OUT=CONTENTS.
Insert (COMPRESS=NO) after OUT=DATASETS and before NODUP
in the PROC SORT statement.
After DATA _NULL; insert POINT=&I;
Add POINT=POINT to the SET DATASETS statement.
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
Change 11.093 0C4 ABEND in SASXKERN occurs if you have the IBM supplied
JCLTEST6 blocksize exit IFGOEXOB installed. The //SMFOUT DD in
Jun 2, 1993 JCLTEST6 does not contain a DCB specification, so the
exit picks one, but it conflicts with the BLKSIZE=23440
in the FILE statement in the SMFSMALL program! Adding
DCB=(RECFM=VBS,LRECL=32760,BLKSIZE=23440)
to the //SMFOUT DD avoids this possible abend.
Thanks to John Visser, Delta Motor Corporation, SOUTH AFRICA.
Change 11.092 Omegamon 2.60 Audit Record moved the 8-byte OMSUBSID name
VMACOMAU (specifically, the DB2 subsystem name) to the existing
Jun 1, 1993 reserved OMRSV4 field, but only the first four bytes are
used! Change OMRSV4 $CHAR8. to OMRSVR $CHAR4. +4
and then after the final @;, insert
IF OMSUBSID='0000000000000000'X THEN OMSUBSID=OMRSV4;
Thanks to Wayne Cope, Belk Stores, USA.
Change 11.091 Variable MESSAGE was not decoded in STOPX37 Release 3.5
VMACX37 (because it is not described in their DSECT), but it is
May 28, 1993 located, and @505+OFFSMF MESSAGE $CHAR140. should
be added to the INPUT for Release 3.5.
Thanks to Bob Guthier, Lucky Stores, USA.
Change 11.090 Although ASMVTOC/VMXGVTOF are strongly recommended rather
FMXGUCBL that this archaic FMXGUCBL, sites under MVS/ESA 4.2 will
May 28, 1993 encounter an 0C2 ABEND OUTSIDE THE SAS SYSTEM (because it
required to be Authorized). Rather than putting SAS in
an Authorized Library, the following changes will correct
FMXGUCBL so that it does not require authorization, in
case you are still using this Archaic member.
1. Locate label MVS42AAA DS 0H, and move this line to
after L R2,UCBADDR
2. Locate label MVS42AAB, and change these arguments of
the UCBSCAN macro: Change ADDRESS, to COPY, Replace
UCBPTR=UCBADDR, with UCBAREA=UCBCOPY, Remove NOPIN,
After all of the arguments to the UCBSCAN macro,
and before the L R15,UCBSCNRT, insert
LA R2,UCBCOPY
3. Locate UCBSCNRT DS F, and insert after that line
UCBCOPY DC XL48'00'
4. In the JCL, change C. to ASM. and L. to LKED. and
add a comma after the PARM.ASM field, and remove the
extraneous comma after the PARM.LKED field.
Thanks to Waldemar Schneider, SAS Institute Europe, GERMANY.
Change 11.089 In BUILDPDB, real purge records can go to PDB.NJEPURGE
VMAC26J2 instead of being recognized as real purge records. This
May 26, 1993 can cause jobs to be held in the SPIN library instead of
being output in PDB.JOBS, and when SPINCNT is exceeded
and these jobs are finally written to PDB.JOBS, they will
have ABEND='NOTP' (i.e. did not find a Purge record).
The error was created when IBM replaced PRPRTY with a new
field (SMF26IX2) in ESA 4.3, but when MXG decoded the new
variables DUPJBDLY and OFFLPURG, I failed to decode only
for 4.3+. Variable OFFLPURG is used in BUILDPDB logic to
recognize purge records created by JES2 SPOOL Transfer,
but if the PRPRTY happened to be 4-7 or 12-15, MXG set
OFFLPURG='Y' in VMAC26J2, and then in BUILDPDB that purge
record went to PDB.NJEPURGE! The MXG correction is
to only create DUPJBDLY/OFFLPURG if this is an
MVS/ESA 4.3 record (and, of course, JES2 does not put any
record level indicator in their record, so the only way
to recognize that this is a 4.3 record is to test for the
existence of the accounting triplet that was also added
by 4.3!). In VMAC26J2, add the IF ... DO; and END;
statements as shown:
IF NETFLAG='.......1'B THEN DO;
IF PRPRTY='1.......'B THEN DUPJBDLY='Y';
IF PRPRTY='.1......'B THEN OFFLPURG='Y';
END;
Thanks to Brenda Rabinowitz, Prudential-Bache Securities, USA.
Change 11.088 In line 4800, :"0. Check if the summary table already
TYPESLRI exists;" - the semicolon must be changed to a period, to
May 26, 1993 prevent a syntax error.
Thanks to Steen Pedersen, Danfoss. DENMARK.
Change 11.087 The calculation of LP0MGTTM=LP1UPDTM-LP1UEDTM should have
ASUM70PR obviously been LP0MGTTM=LP0UPDTM-LP0UEDTM, and the
May 24, 1993 variable LP0MGTTM needs to be added to the RETAIN list.
Thanks to Tom Parker, Hogan Systems, USA.
Change 11.086 Variables F20STRT and F20DURA are now FORMATted TIME12.2.
VMACILKA
May 24, 1993
Thanks to Gary Strohminger, AT&T Transtec, USA.
Change 11.085 DB2 Trace dataset T102S145 (Audit Trace) variables
VMAC102 QW0145SC and QW0145LL were not input under DB2 2.3 due to
May 24, 1993 incorrect INPUT logic. Insert an "@;" after the input
of QW0145HO $CHAR4. and insert an "INPUT" before QW0145SC
so the logic ends up looking like this:
IF QWHSRELN GE 2.3 THEN INPUT
QW0145HO $CHAR8. /*HOST OPTIONS*FOR SQL*/
@;
ELSE INPUT
QW0145HO $CHAR4. /*HOST*OPTIONS*/
@;
INPUT QW0145SC $CHAR4. /*SQL*RETURN*CODE*/
QW0145LL PIB2. /*SQL*STATEMENT*LENGTH*/
@;
Thanks to Wilson Kwong, National Australia Bank, AUSTRALIA.
=====Changes thru 11.084 were in MXG PreRelease 11.01, May 20, 1993=====
Change 11.084 ANALNPMR produced only the first report requested when
ANALNPMR PDB=SMF was specified; the same name was used for both
May 19, 1993 input and output, causing no data to be found for the
second and subsequent reports.
Thanks to Victor Chacon, NYNEX Mobil Communications Co., USA.
Change 11.083 Landmark CICS data under DOS/VSE was previously processed
TYPEMOND by MXG member TYPEMOND, but only for Landmark Version 7.
TYPEMONX That archaic member was copied to create TYPEMONX (just
May 19, 1993 in case someone still has Version 7 under DOS/VSE), and
TYPEMOND was completely revised to (hopefully) support
Landmark Versions 8, 9, and 1.0 under DOS/VSE. However,
no test data nor hex dump of a Version 8 record from DOS
was available, so this support has only been syntaxed.
Change 11.082 CICS/ESA journal data produced by the SAP product was not
VMAC110 coded exactly the same as CICS/non-ESA, although the end
May 19, 1993 results were the same. Now, the code segment for both
CICS/ESA and CICS/non-ESA uses the same logic.
Thanks to Isabelle Mejane, SAS Institute, FRANCE.
Change 11.081 DIVIDE BY ZERO error occurs if GEICPUOL is zero. Replace
VMACZRB PCTCPUBY=100*(INTERVAL-(CPUWAIT/GEICPUOL))/INTERVAL;
May 19, 1993 with
IF GEICPUOL GT 0 THEN
PCTCPUBY=100*(INTERVAL-(CPUWAIT/GEICPUOL))/INTERVAL;
ELSE PCTCPUBY=.;
Thanks to Marcel Frechette, Montreal Trust Technology, CANADA
Change 11.080 STARTIME and CPUTCBTM in all CICS/ESA Statistics datasets
VMAC110 (eg., CICINTRV, CICEODRV, CICDS, etc.) are wrong. This
May 19, 1993 error did NOT affect the CICSTRAN dataset.
a.The STARTIME was set to COLLTIME, which is the END of
interval and not the START. Find these lines
COLLTIME=DHMS(SMFSTDAT,CLTHH,CLTMM,CLTSS);
STARTIME=COLLTIME;
IF 0 LE DURHH LE 24 AND 0 LE DURMM LE 59 AND
0 LE DURSS LE 59 AND
SMFSTRQT='INT' THEN DURATM=HMS(DURHH,DURMM,DURSS);
and change them to read:
COLLTIME=DHMS(SMFSTDAT,CLTHH,CLTMM,CLTSS);
IF 0 LE DURHH LE 24 AND 0 LE DURMM LE 59 AND
0 LE DURSS LE 59 AND
SMFSTRQT='INT' THEN DURATM=HMS(DURHH,DURMM,DURSS);
STARTIME=COLLTIME-SUM(0,DURATM);
b.The CPUTCBTM was correct in CICS 3.1.1, because DSGTCT
did contain total TCB time for each TCB, but beginning in
CICS 3.2, IBM reused field name DSGTCT for the DS-Only
TCB time and put the Total TCB time in new variable
DSGACT, but I failed to change the CPUTCBTM equation.
Find the line:
CPUTCBTM=SUM(DSGTCT,DS2TCT,DS3TCT,DS4TCT);
and replace that equation with:
CPUTCBTM=SUM(DSGACT,DS2ACT,DS3ACT,DS4ACT);
c.Also variables DSnTCBFm are now formatted $HEX2., and the
test for DSGNTCB GE 3 was changed to DSGNTCB GE 4, since
CICS 3.3 can have four TCBs.
Thanks to Scott Pearson, King County Medical Blue Shield, USA.
Change 11.079 SAS 6.08 Usage Note 6719 discusses a SAS error in %MACRO
GRAFLPAR compiler which causes GRAFLPAR to fail with an "OUT OF
May 19, 1993 MEMORY" condition (which is NOT the error!). Apparently,
GRAFLPAR broke an internal limit on characters passed as
%MACRO arguments (and blanks at the end of argument lines
are being counted!). We have been able to circumvent the
ABEND by reducing the number of characterspassed by MXG
by reducing four lines of code with two. In three places
find the four lines beginning with
lparnum=lparnum+1;
and move the 2nd and 4th lines to the end of 1st and 3rd!
SAS Institute is still working on a ZAP; the above Usage
Note will be updated when a ZAP exists.
Thanks to Chuck Hopf, Primerica, USA.
Change 11.078 New HSM dataset HSMFSRBO contains both tape and disk data
DIFFHSM set statistics, with several new variables, based on this
EXHSMFSB user contribution. Additionally, VSRTOTKB is now input
IMACHSM as PIB4. instead of PIB2. This change altered IMACHSM,
VMACHSM if you have tailored IMACHSM in your USERID.SOURCLIB, you
May 19, 1993 must retrofit your changes using this new IMACHSM.
Thanks to Neil Campbell, Inland Revenue, ENGLAND.
Change 11.077 The HSMVSRFU dataset previously was OUTPUT only if two of
EXHSMVSF the data variables were non-zero, but now these variables
May 18, 1993 are tested for the OUTPUT DO group:
IF VSRNTRKR GT 0 OR VSRNTRKW GT 0 OR VSRNDSV GT 0 OR VSRNBYTR GT 0
OR VSRNBYTW GT 0 OR VSRNDSF GT 0 OR VSRNVOL GT 0 OR VSRNSYS GT 0
OR VSRTAGE GT 0 OR VSRTTINQ GT 0 OR VSRTTINP GT 0 OR VSRTTWV GT 0
OR VSRTCPU GT 0 THEN DO;
Thanks to Neil Campbell, Inland Revenue, ENGLAND.
Change 11.076 Lines 001100 thru 001700, the OUT= data set name DCOLMIGS
DAILYDSN was repeated, but it should be the same data set name as
May 18, 1993 the DATA= parameter on the same line.
Thanks to Ian Jones, The Equitable Life Assurance Society, ENGLAND.
Change 11.075 Lines 006300 and 006600 both contain DATA=TYPEVVDS, but
ANALVVDS that should have been DATA=_LTYVVDS in both lines, to be
May 18, 1993 consistent with the new _L macro naming conventions.
Thanks to Ian Jones, The Equitable Life Assurance Society, ENGLAND.
Change 11.074 The new member CHANGESS now contains ALL changes from ALL
ChangeSS MXG Versions, which should make online browse a little
May 15, 1993 easier. Current Changes are still in member CHANGES.
Change 11.073 Boole's IMF MSC Arrival Time was mis-documented. The
VMACCIMS three lines reading:
May 15, 1993
@216+OFFIMS TH PK1.
@;
SEC=SEC+(TH/100);
must be changed to read:
@216+OFFIMS TH ?? PD1.
@;
SEC=SEC+(TH/10);
Thanks to Silvio Orsini, Banca d'Italia, ITALY.
Thanks to Vladimiro Viseno, Assicurazioni Generali, ITALY.
Change 11.072 The code to set MULTRANS='Y' set NMSGPROC=1 only for the
TYPEIMSA first transaction in the group. The code was relocated
May 15, 1993 and a retained flag used to correctly reset NMSGPROC.
Thanks to Lonnie T. Rimmer, Philip Morris, USA.
Change 11.071 Candle's ITRF (a part of Omegamon/IMS Version 110) data
VMACITRF records EVENTIME was incorrect.
May 15, 1993
Change 11.070 STOPX37 Release 3.5 data records do not agree with the
VMACX37 DSECTS provided by EMPACT. Undocumented bytes caused
May 15, 1993 INVALID value for JINITIME. Many lines were changed.
Thanks to Dave Redinger, General Electric Plastics, USA.
Change 11.069 Continued enhancement of RMF look-a-like reports from MXG
ANALRMFR corrected several syntax errors and added additional
FORMATS reports, and formerly temporary formats are now built by
May 19, 1993 new PICTUREs in member FORMATS.
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
=Changes thru Change 11.068 were included in MXG Early Prerelease 11.01=
===================that was dated May 15, 1993==========================
Change 11.068 Support for Corporate TIE user SMF record creates six new
EXTYTIE1- MXG datasets, reporting file transfer activity between
EXTYTIE6 PCs and Mainframes with this product:
IMACTIE TYPETIE1 - TIE Initialization/Termination
TYPETIE TYPETIE2 - TIE Logon/Logoff
VMACTIE TYPETIE3 - TIE Virtual Disk OPEN/CLOSE/MOUNT/DISMOUNT
May 11, 1993 TYPETIE4 - TIE File Transfer Send/Receive Start/End
TYPETIE5 - TIE QIMPORT/QEXPORT Start/End
TYPETIE6 - TIE VDIMPORT/VDEXPORT Start/End
Thanks to K. M. Torsvik, Postverkets Datasentral, NORWAY.
Change 11.067 This "split" architecture for BUILDPDB/BUILDPD3 has been
BUILD002 further enhanced. By splitting BUILDPDB into separate
BUILD004 pieces, parallel steps could be used to reduce elapsed
BUIL3001 run time, or some pieces could be skipped, etc. This is
BUIL3005 still in testing and the design may still change.
BUILD006 The CICS sorting that was in BUILD002 was moved to
May 11, 1993 BUILD004, the colon in BUILD003 was changed to semicolon,
new JES3 members BUIL3001 and BUIL3005 were created, and
BUILD006 was deleted. The revised architecture:
To replace BUILDPDB (for JES2):
BUILD001 - Reads SMF and creates all WORK data sets,
CICSTRAN.CICSTRAN, DB2ACCT.DB2ACCT and the
PDB.DB2STATn data sets.
BUILD002 - SORT some WORK datasets into PDB library.
BUILD003 - SORT RMF datasets into PDB and then build
PDB.RMFINTRV dataset.
BUILD004 - Combine CICS Statistics datasets and create
four PDB.CICxxxRV datasets.
BUILD005 - Sort TYPE30xx, TYPE6, TYPE26J2, interleave
with SPIN library, create PDB.JOBS,PDB.STEPS
PDB.JOBS, update SPIN library, copy SPIN
datasets into PDB (for backup), and create
PDB.SPUNJOBS.
To replace BUILDPD3 (for JES3):
BUIL3001 - Same function as BUILD001, for JES3.
BUILD002 - Same as JES2
BUILD003 - Same as JES2
BUILD004 - Same as JES2
BUIL3005 - Same function as BUILD005, for JES3, plus
sorts TYPE25 dataset.
One immediate use of this "split" architecture is for
VM/370 sites running BUILDPDB that do not have CICS data;
the virtual size of BUILDPDB can be reduced by removing
CICS processing. You need only to create a VMAC110 in
your USERID.SOURCLIB member with this line:
MACRO _VAR110 % MACRO _CDE110 %
and then instead of %INCLUDE SOURCLIB(BUILDPDB) use
%INCLUDE SOURCLIB(BUILD001,BUILD002,BUILD003,BUILD005);
It is also possible to remove DB2 processing, but as only
three datasets are created, the saving is much less. To
remove DB2, you would create a VMACDB2 in USERID.SOURCLIB
MACRO _VARDB2 % MACRO _CDEDB2 %
and also create a member DIFFDB2 with a blank line. Then
the preceding %INCLUDE would produce the minimum virtual
storage size by eliminating both DB2 and CICS processing.
Under MVS, the SMF processing (BUILD001) needed virtual
MEMSIZE of 17301K. With no CICS only 11397K was required,
and with neither CICS nor DB2 only 9973K was required.
Thanks to Neil Campbell, Inland Revenue, ENGLAND.
Change 11.066 Variables RDMT, RDTBK1-RDTBK4, and RNVSOV were not in the
VMACDMON KEEP= list, but have now been added for ASTEC datasets
May 11, 1993 DMONVOL, DMONJOBS, and DMONDSN. RDMT was formatted.
Thanks to Rodney Marwick, Vereinte Versicherungen, GERMANY.
Change 11.065 OPC/A data records may be lost; line 836, which reads:
VMACOPC IF _OPCVER AND MTDTYPE EQ 9 THEN INPUT +2 @;
May 11, 1993 should be deleted. See also later Change 11.122.
Thanks to Rodney Marwick, Vereinte Versicherungen, GERMANY.
Change 11.064 Migrated datasets with ORGEXPDT=9999999 were not expected
VMACDCOL in MXG's calculation of EXPDT='01JAN2099' for never
May 11, 1993 expiring datasets, but now that test is included.
Thanks to Alan M. Sherkow, I/S Management Strategies Ltd., USA.
Change 11.063 DB2 format MGDB2TY did not decode the '0A'X value. Also,
FORMATS values of zero for QWHCATYP occur in data records, but
May 10, 1993 are not documented by IBM; since all 0 occurrences have a
value of UTILITY for both QMDACNAM and QWHCCN, I assumed
that value, and added two lines to the format:
0='0:UTILITY'
0AX='AX:IMS TRANSACTION BMP'
Thanks to Rod Brady, Zurich Insurance, ENGLAND.
Change 11.062 CONFIGVM is a configuration file for MXG under CMS SAS.
CONFIGVM It is a modification to the CONFIG07/CONFIG08 MVS options
May 10, 1993 and has been found to support execution of BUILDPDB in a
32MB virtual machine.
Thanks to Tom Maynard, Nalco Chemical Company, USA.
Change 11.061 Candle's IMS Transaction Reporting Facility has now been
VMACITRF validated with data, and some revisions were required.
May 10, 1993 Five data sets are created:
ITRFMSG - One observation for each IMS transaction;
a transaction is defined by ITRF as a
message received and response sent, or a
program scheduled, processed, and ended.
ITRFMSGO - One observation for each message sent to an
alternate TP PCB by another transaction.
ITRFDATA - One observation for each database call (DLI
or FP)
ITRFSUM - One observation per database called per
transaction.
ITRFDB2 - One summary record per DB2 transaction.
Note that variables QWACNID and QWHCCV are
created in ITRFDB2 so that you can match the
IMS transaction in ITRFDB2 with its DB2ACCT
counterpart transaction.
Change 11.060 For jobs that initiate instantaneously in a multi-system
VMAC30 environment in which system clocks are not synchronized,
May 10, 1993 elapsed duration variables JELAPSTM,SELAPSTM,DSENQTM,
ALOCTM,EXECTM may be wrong (large positive or negative),
and the date of INITTIME,ALOCTIME,LOADTIME,JINITIME may
be one day later than reality! Change 10.213 (MXG 10.3+)
attempted to detect and circumvent an un-fixed IBM APAR,
(an obscure problem after an A78 ABEND), but my cure was
worse than the disease if REND (reader end time) is later
than INITTIME. The correction is to remove Change 10.213:
Find "10.213" and remove the four lines of that DO group.
(For reports with JELAPSTM from PDBs already built, you
can recalculate JELAPSTM=JENDTIME-JSTRTIME;)
Thanks to Shaheen Pervaiz, Trans Union Corporation, USA.
Change 11.059 Support for ZARA, The Tape Media Manager from Altai. This
EXZARDSN product is a replacement for CA-1 (TMS), and this support
EXZARVOL (originally written by Miller Dixon) processes their tape
IMACZARA catalog records to create two MXG datasets useful for the
TYPEZARA chargeback of tape data sets and for capacity planning of
VMACZARA tape volumes:
May 7, 1993 ZARADSN - One obs per dataset on tape, with attributes,
TAPEFEET (estimated), and volume account code
from the corresponding VOL record.
ZARAVOL - One obs per tape volume, with summed TAPEFEET
for all NRDSETS on the volume, and with the
maximum EXPDATE, CRDATE, and last use date of
any data set on this volume.
Member TYPEZARA has example JCL for the ZARA utility that
is executed to create the data records processed by this
support.
Thanks to Miller Dixon, Continuum, USA.
Change 11.058 The MULTIDD='Y' flag was not set before the IMAC30DD exit
VMAC30 was taken, causing MULTIDD to always be blank in dataset
May 7, 1993 TYPE30_D (also PDB.DDSTATS). The block of code which set
MULTIDD was moved to immediately before the IF OFFEXCP...
block of code.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 11.057 DCOLLECT SMSDATA (SMS constructs) records cause STOPOVER.
VMACDCOL As indicated in Change 10.309, no test data was available
May 6, 1993 for these new records. Now that I have test data records
I have corrected for my errors (as well as some of IBM's
mis-documentation) and believe the support is now valid
for seven subtypes (DC,SC,MC,BC,SG,VL,AG). The two OAM
subtypes (DR,LB) apply only for optical drives and were
not available for testing, but should also be valid now.
Thanks to Chris Coldiron, Depository Trust Company, USA.
Change 11.056 Support for SYNCSORT Release 3.5 added 27 new variables,
VMACSYNC including expanded storage usage by the sort, and EXCP
May 6, 1993 counts were relocated to the end of the record.
Thanks to Sam Sheinfeld, Kraft General Foods, USA.
Change 11.055 This "PRINT ALL" utility still used POINT= statement, but
VMXGPRAL that fails with indexed datasets in Version 6, so the
May 6, 1993 logic was rewritten to not use POINT=syntax, just in case
you wanted to print an indexed dataset.
Change 11.054 TYPE80A can still fail with INPUT STATEMENT EXCEEDED.
VMAC80A Change 11.017 fixed only one case, but each INPUT with
Apr 30, 1993 "$VARYINGzz. yyyyyyy" syntax must be protected in case
yyyyyyy is greater than zz. (The zz value defines the
length of the variable; IBM docs many of the RACF fields
as 1-255, but MXG, in trying to minimize the stored size
of the TYPE80A dataset, picked more reasonable zz values.
For those fields that exceed the MXG zz choice, an error
occurs). The solution is to insert these two lines:
SKIP=yyyyyyyy-zz;
IF SKIP GT 0 THEN INPUT +SKIP @;
after the @; at the end of each INPUT statement that uses
the $VARYING informat. In addition to this protection,
all of the fields with $VARYING44. or $VARYING32. were
changed to $VARYING64. to minimize data loss in those
cases in which data length was more than MXG's default.
Thanks to Joe Faska, Depository Trust, USA
Change 11.053 NOTE: INVALID NUMERIC DATA, 'AVERAGE*ACTIVE-ONLY...'
VMACVMXA occurs because at line 094370 there is a semi-colon after
Apr 28, 1993 the label for variable AVGCONMS, but that is not the last
variable in the label statement. Remove the extra ';'.
Thanks to Peter Smith, Sema Group FM, ENGLAND.
Change 11.052 Specifying an undefined INTERVAL= value did not warn you
VMXGDUR that MXG did not recognize your request, and fell thru.
Apr 28, 1993 Now, a warning message is printed.
Thanks to Ed Lau, Lucky Stores, USA.
Change 11.051 The text of Change 11.001 was revised (the 8-lines to be
VMAC37 replaced was not exact, but there was no error in the 12
Apr 28, 1993 replacement lines). Additionally, the INPUT of OFFDETT
must be PIB4. instead of PIB2.
Thanks to Rod Fernandes, Albert Heijn B.V., HOLLAND.
Thanks to Irmgard Polifka, SAS Institute, GERMANY.
Change 11.050 DB2ACCT variable NETSNAME was incorrectly padded with
VMACDB2H blanks, and did not match CICSTRAN variable NETSNAME,
Apr 28, 1993 which is padded with nulls. This prevented merging DB2
and CICS transactions. Find "SUBSTR(NETSNAME...", and
insert just before that line this statement:
NETSNAME='0000000000000000000000000000000000000000'X;
(that's 20 bytes or forty zeros). Then, thirteen lines
later, replace ELSE IF 1 THEN DO;
with ELSE IF LOCBLANK EQ 1 THEN DO;
Now, variables NETSNAME and UOWTIME can be used to match
DB2ACCT observations with their CICSTRAN counterparts.
Thanks to Ron Thein, Mortgage Guaranty Insurance Corp., USA.
Change 11.049 Support for HMF, Host Monitoring Facility Product for
EXTYHMF0-9 Channel-Extension Hardware Monitoring. HMF creates SMF
IMACHMF records with 11 subtypes; this code supports subtypes 0
TYPEHMF and 6 thru 10. This is from Network Systems, known as
VMACHMF DXE's and sometimes called HyperChannel
Apr 27, 1993
Thanks to Bob Hursch, Lockheed Information Technology, USA.
Change 11.048 "ERROR 455-185 dataset TYPE30OM not specified" because
ANALDSET the override for that new dataset was not added to this
Apr 27, 1993 analysis member. Add after the last /* OVERRIDE ...
XY ADD NAME=EXTY30OM
/* OVERRIDE AND OUTPUT NO TYPE30OM RECORDS */
Thanks to Matt Klett, Kohler Company, USA.
Change 11.047 VM/ESA "UNEXPECTED/INVALID CONTROL RECORD" message occurs
VMACVMXA and no observations are created, because MXG's validity
Apr 27, 1993 check tested four bytes for 00008709x, but the first two
bytes may now be non zero. Change the test:
IF IPARMLF1 NE 00008709X THEN DO;
to read:
IF MOD(IPARMLF1,10000x) NE 8709X THEN DO;
Thanks to Walter H. Clark, C.U. Insurance, USA
Change 11.046 Variable SYSTEM was specified twice in the KEEP= list of
VMACTMVS datasets TMVSIV, TMVSJI and TMVSNQ. This caused a SAS
Apr 27, 1993 warning message, but no real impact.
Thanks to Rod Fernandes, Albert Heijn B.V., HOLLAND.
Change 11.045 Variable ASISDCDY should have been spelled ASISDCDV in
ZRBRPT1 members ZRBRPT1 and ZRBRPT2.
ZRBRPT2
Apr 27, 1993
Thanks to Marcel Frechette, Montreal Trust Technology, CANADA.
Change 11.044 Variable QTXANPL exists only in DB2ACCT, and should not
ADOCDB2 have been in the KEEP= list for DB2STAT1. It caused no
DIFFDB2 error, only confusion because it was missing in DB2STAT1.
VMACDB2 It was removed from KEEP= list, and from documentation.
Apr 27, 1993
Thanks to Ellen Ulrich, Texas Instruments, USA.
Change 11.043 DB2 PMSTA02 report count of SUSPENDS was usually zero,
ANALDB2R because not all suspend-count-variables were included.
Apr 27, 1993 Insert after line 138120 (reads 120 'QUANTITY';) this
statement: SUSPENDS=SUM(QTXASLOC,QTXASLAT,QTXASOTH);
and then change line 138180 from QTXASUS to SUSPENDS.
Thanks to Ed Lau, Lucky Stores, USA.
Change 11.042 DB2 PMACC02 report count of OPENs was actually the count
ANALDB2R of fetches (from the preceding line), because the 2nd
Apr 27, 1993 occurrence of AVG=QXFETCH /NUMPLANS; should have been
The second occurrence of AVG=QXFETCH /NUMPLANS should be
AVG=QXCLOSE /NUMPLANS; (in line 035330).
Change 11.041 ASUM70PR can corrupt PDB.RMFINTRV if you have a changed
ASUM70PR member IMACRMFI, because IMACRMFI only set the interval
TRND70PR for PDB.RMFINTRV. With this change, the interval of both
Apr 28, 1993 PDB.ASUM70PR and PDB.RMFINTRV are both set by IMACRMFI.
Insert after the comments at the beginning of the member
%INCLUDE SOURCLIB(IMACRMFI);
and after the ID = line, insert these two lines:
INTERVAL=MYTIME,
MYTIME = _DURSET,
which causes both datasets to have the same interval.
Variable NRPRCS was deleted from ASUM70PR (and also from
TRND70PR); it never should have been kept and its value
has caused confusion. ASUM70PR was revised to detect and
flag intervals during which the number of LPARs was
changed (DURATM and PCTCPUBY could have been incorrect)
wrong), and most importantly, these new variables were
added to ASUM70PR for enhanced reporting:
LPARCHG - 'Y' if something changed in any LPAR
LPnCHG - 'Y' if something changed in LPAR n.
LPnDUR - LPAR n's "Up time" or "Availability time to
execute CPU", the sum of DURATM across all
LCPUs in LPAR n. This is the total seconds
during which this LPAR could have been
CPU dispatched. If an LPAR was IPLed as
a 3-engine MVS machine, in one hour it
would have 3 hours of "Up Time".
LPCTnBY - Percent "Logically" Busy in LPAR n, equal
to 100*LPnUPDTM/LPnDUR, the Partition CPU
Dispatch divided by the LPAR's "Up Time".
If a 3-engine LPAR was dispatched for 56
minutes, it's LPCTnBY would be 31%. This
new variable describes how much the LPAR
was logically busy; the existing variable
PCTL1BY describes how much the LPAR was
physically busy. If this same 3-engine
LPAR was executing on a 5-engine machine,
it's PCTL1BY would be 18%, because that
LPAR was using 18% of the hardware while it
used 31% of the CPU time available to this
LPAR. See the example below.
LPCTnOV - Percent "Logically" Busy in "LPAR Overhead"
100*LPnMGTTM/LPnDUR, to describe how much
of the new LPCTnBY was in LPAR management
of this LPAR.
See also the MVS Technical Note III.7, Newsletter TWENTY-FOUR.
Thanks to Tom Parker, Hogan Systems, USA.
Change 11.040 Error "DATASET TAPEMNTS NOT SORTED" in WEEKBLD/MONTHBLD
WEEKBLD results because the BY list for TAPEMNTS should have been
MONTHBLD BY SYSTEM DEVICE SHIFT TMNTMTYP TMNTTIME; instead of
Apr 27, 1993 BY SYSTEM SHIFT DEVICE TMNTMTYP TMNTTIME;
Thanks to David Ehresman, University of Louisville, USA.
Change 11.039 Variables RDRTM,RDRDEVCL,RDRDEVTY were dropped from the
VMAC30 TYPE30_V and PDB.SMFINTRV datasets (because they are JOB
Apr 27, 1993 related, not interval related), but the deletion was not
noted in the Change log for MXG 10.10.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 11.038 Variable QTXAIRLM was inadvertently omitted from the
ASUMDB2A SUM= list in the ASUMDB2A (DB2ACCT summarization) and the
TRNDDB2A TRNDDB2A (DB2ACCT trending) members. It is now added, and
Apr 15, 1993 the SUM= list was sorted & collimated for easier reading.
Thanks to Alan Keeble, British Steel, ENGLAND.
Change 11.037 The Total Read IOs was miscalculated on the Statistics
ANALDB2R Summary Report. It was actually the total Sync Reads but
Apr 13, 1993 should have been the sum of Sync and Prefetch Reads. Also
the calculation of Get Pages per Sync IO was omitted.
Find these five lines:
PUT @1 'TOTAL READ I/O OPERATIONS (RIO)'
@38 QB1TRIO 10.0
@49 QB2TRIO 10.0
@60 QB3TRIO 10.0
@71 QB4TRIO 10.0;
And replace them with these twenty-two lines:
QB1TOTL=SUM(QB1TRIO,QB1TPIO);
QB2TOTL=SUM(QB2TRIO,QB2TPIO);
QB3TOTL=SUM(QB3TRIO,QB3TPIO);
QB4TOTL=SUM(QB4TRIO,QB4TPIO);
IF QB1TRIO GT 0 THEN QB1PSYNC=QB1TGET/QB1TRIO;
ELSE QB1PSYNC=0;
IF QB2TRIO GT 0 THEN QB2PSYNC=QB2TGET/QB2TRIO;
ELSE QB2PSYNC=0;
IF QB3TRIO GT 0 THEN QB3PSYNC=QB3TGET/QB3TRIO;
ELSE QB3PSYNC=0;
IF QB4TRIO GT 0 THEN QB4PSYNC=QB4TGET/QB4TRIO;
ELSE QB4PSYNC=0;
PUT @1 'TOTAL READ I/O OPERATIONS (RIO)'
@38 QB1TOTL 10.0
@49 QB2TOTL 10.0
@60 QB3TOTL 10.0
@71 QB4TOTL 10.0;
PUT @1 'GETPAGE PER SYNC READ IO '
@38 QB1PSYNC 10.2
@49 QB2PSYNC 10.2
@60 QB3PSYNC 10.2
@71 QB4PSYNC 10.2;
Thanks to Victor Chacon, NYNEX, USA.
Change 11.036 Variables QWACARNL and QWACARNE count entries and exits,
ANALDB2R but DB2PM reports the number of suspensions, which is
Apr 13, 1993 one half of the data values. Thus, insert after 038520
QWACARNL=QWACARNL/2; and insert after 038620
QWACARNE=QWACARNE/2;
Thanks to Waldemar Schneider, SAS Institute Europe, GERMANY.
Change 11.035 This MXG utility to actually measure TSO response time at
CLTIMER your terminal was affected by SAS Version 6. A "STOP;"
Apr 13, 1993 statement must be added after the last "END;" statement.
Additionally, LS=80 was added to the OPTIONS statement,
also "'FOR TRANSACTION ' _I_" was added to the PUT for
cosmetic effect, and the sample CLIST in comments was
revised to use Version 6 DDnames SASLOG and SASPRINT.
If you have overlooked this utility, take a look now. It
should be made available to all TSO users so they can see
their own response time at their terminal to prove how
good real TSO response is (or isn't!).
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 11.034 "INVALID DATA FOR TAOSTYP" messages result because the
VMACTAO variable TAOSTYP should have been input at PIB1. instead
Apr 13, 1993 of HEX1.
Thanks to Jeff Burnett, Anixter Information Services, USA.
Change 11.033 Variable ACTDLYTM can have small negative (-.0010) values
VMAC30 because EXECTM is .01 resolution but ACTIVETM has .000001
Apr 13, 1993 resolution. After both calculations of ACTDLYTM, insert
IF . LT ACTDLYTM LT 0 THEN ACTDLYTM=0;
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
Change 11.032 Two new variables, TRANTIME and TRANCOST may exist at the
VMACMEMO end of the accounting segment, after EXITAREA, and are
Apr 13, 1993 now added to the KEEP= list and LABELed:
IF MEMOACTL GE 84 THEN INPUT
TRANTIME PIB4. /*transmission*duration*/
TRANCOST PIB4. /*transmission*cost*/
@;
Thanks to John Astle, National Australia Bank, AUSTRALIA.
Change 11.031 TYPE37 LAND segment has 2 fields after BRFDNADR that were
VMAC37 not documented in NETVIEW Admin Reference Manual but are
Apr 13, 1993 in IFASMFR macro and are now INPUT by MXG:
BRFSMADR $CHAR6. /*single mac address*/
BRFSMNAM $CHAR16. /*single mac name*/
Additionally, several variables are now formatted:
BRFALTID $HEX8.
BRFDNADR BRFSMADR BRFLMADR BRFRMADR BRFUPADR $HEX12.
Thanks to Wanda Prather, Johns Hopkins Applied Physics Lab, USA.
Change 11.030 Variable DSIVTOC in the KEEP= list was misspelled, and it
VMXGVTOF should be changed to DS4IVTOC.
Apr 13, 1993
Thanks to Pino Todesco, Western Australia Police, AUSTRALIA.
Change 11.029 NSPYACCT variable SNITIME is incorrect because DSNIMM was
VMACNSPY used for both the month and the minutes. Change DSNIMM to
Apr 13, 1993 DSNIMO in the INPUT for month, in the IF statement and in
the MDY function calculating SNITIME.
Thanks to Aubrey Tang, Government Insurance Office, AUSTRALIA
Change 11.028 TCP/IP address variables FPTLCLAD,FTPRMTAD,TELLCLAD and
VMACTCP TELRMTAD are four-byte character fields, which display
Apr 12, 1993 as $HEX8: "8681800C"x for example. However, TCP/IP users
expect these to be displayed as decimal values separated
by periods: 134.129.128.12 for the above value. Four new
address variables FTPLOCAL,FTPREMOT,TELLOCAL,TELREMOT are
now created with the expected format, using this logic:
INFORMAT FTPLOCAL $15.;
FTPLOCAL=PUT(INPUT(SUBSTR(FTPLCLAD,1,1),PIB1.),3.)
!!'.'!!
PUT(INPUT(SUBSTR(FTPLCLAD,2,1),PIB1.),3.)
!!'.'!!
PUT(INPUT(SUBSTR(FTPLCLAD,3,1),PIB1.),3.)
!!'.'!!
PUT(INPUT(SUBSTR(FTPLCLAD,4,1),PIB1.),3.);
Thanks to Sharon Jacobson, North Dakota Higher Education, USA.
Change 11.027 Variable LP0MGTTM was left out of the RETAIN list. Since
ASUM70PR LPAR=0 is only used by Amdahl's MDF, only those sites
Apr 6, 1993 need add LP0MGTTM to the RETAIN statement.
Thanks to Tom Parker, Hogan Systems, USA.
Change 11.026 The test IF OFFPRCS+LENPRCS*NRPRCS GT LENGTH+1 THEN DO;
VMAC7072 should be NRPRCSS vice NRPRCS, but as this is insurance
Apr 6, 1993 for a bad record, there's no real impact.
Thanks to Tom Parker, Hogan Systems, USA.
Change 11.025 You can create the PDB on tape with BUILDPDB, but it is
PDB to tape not normally recommended because it takes too long due to
Apr 6, 1993 rewinds (after the PDB.TYPE70s are written, they are read
back in to create RMFINTRV). It is much more efficient to
point the PDB DDname to a temporary DASD file, create the
PDB, and then use a PROC COPY IN=PDB OUT=PDBTAPE; to build
your PDB on tape. If you simply do not have enough temp
DASD for the PDB library, you can write the PDB directly
to tape, but you will need to tailor members IMACCICS,
IMACDB2, and EXPDBOUT. The instructions for tailoring
IMACCICS are contained in comments in that member. In
member IMACDB2, you must remove the "PDB." qualifier for
the DB2 datasets in the "_L" macro definitions, and then
in member EXPDBOUT you must add PROC COPY IN=WORK OUT=PDB;
SELECT DB2: ; if you want the DB2 datasets in your PDB
library.
Change 11.024 RMF-like reporting failed if PDB=SMF was specified, but
ANALRMFR works if PDB=PDB is used. This correction is extensive,
Apr 6, 1993 and a replacement member is available upon request. Also,
LET REQUEST should have been %LET REQUEST.
Change 11.023 Omegamon V550 creates invalid type 110 record, which MXG
VMAC110 detects and deletes, with a VMAC110.ERROR.1 message (with
SECTLLBB=0, TEMPLEN non zero, and LENGTH=32400) on the SAS
Apr 5, 1993 log. Candle's fix QOC0451 was the original fix for their
Aug 30, 1993 error, but in August fix QOC0534 superceded QOC0451.
This noted added June 20, 1994: Same error has occurred
with LENGTH=32320 instead of 32400, same fix.
Thanks to Khin Zaw, Nordstrom, USA.
Thanks to Andrew Lockyer, South Wales Electricity Board, WALES.
Change 11.022 If you have some MVS systems under PR/SM and some not and
ASUM70PR if you invoke ASUM70PR after BUILDPDB, your PDB.RMFINTRV
Apr 5, 1993 dataset may have missing data for some systems, because a
BY statement was missing. Change 10.335 added logic to
re-write PDB.RMFINTRV and add PLATBUSY/PLATCPUS variables
from ASUM70PR dataset, but the BY statement for the MERGE
was left out. If all systems are under PR/SM, then there
will be equal observations in ASUM70PR and PDB.RMFINTRV,
and the BY statement is not required, but if only some of
your systems are PR/SM, RMFINTRV is corrupted. To correct,
you must insert BY SYSTEM STARTIME; after the statement
MERGE TEMPINTV (IN=RMF) PLATBUSY (IN=INPRSM);
Thanks to Steve Clausing, Employers Health, USA.
Change 11.021 The new TYPE42DS (SMS data set statistics, subtype 6) has
FORMATS GMT values in SMF42PTE and SMF42PTS in the INTERVAL record
VMAC42 but MXG expected local values (as are in CLOSE record).
Apr 4, 1993 Correct by inserting these lines after the "@;" that
follows the input of variable LENJDIOL:
IF INTVCLOS=1 THEN DO; /* INTERVAL RECORD */
GMTOFF42=100*FLOOR((SMFTIME-SMF42PTE)/100);
SMF42PTE=SMF42PTE+GMTOFF42;
SMF42PTS=SMF42PTS+GMTOFF42;
END;
STARTIME=SMF42PTS;
ENDTIME =SMF42PTE;
DURATM =SMF42PTE-SMF42PTS;
Unrelatedly, the values for S42DSTYP are now decoded by
new format MG042DS., which has these values:
0='0:OTHER' 16='16:KSDS DATA'
1='1:PS' 17='17:KSDS INDEX'
2='2:PDS' 18='18:VARIABLE RRDS DATA'
3='3:PDSE' 19='19:VARIABLE RRDS INDEX'
4='4:DA' 20='20:FIXED LENGTH RRDS'
5='5:ISAM' 21='21:LINEAR DATA SET'
6='6:EXCP' 22='22:ESDS'
Change 11.020 ASTEX variable RMLFLAG2 was added to the KEEP= list of
VMACDMON DMONVOL data set, but it does not exist in the VOL record!
Apr 4, 1993 Instead, it should have been added to the KEEP= lists for
the DMONJOBS and DMONDSN datasets.
Thanks to John Rosza, Depository Trust Company, USA.
Change 11.019 The DIFFHSM member (which deaccumulates the HSM data) did
DIFFHSM not use the "_L" macro names. Each PROC SORT now has the
Apr 4, 1993 syntax of PROC SORT DATA= _LHSMxxx OUT=HSMyyyyy using
member IMACHSM to match the xxx with the yyyyy strings.
Thanks to Sudman Arik, Bezeq, ISRAEL.
Change 11.018 SAS Boolean bit tests of 32-bit strings does not work, as
VMAC30 Usage note V6-SYS.DATA-6047 discusses. The 32-bit test of
Apr 4, 1993 SMF30MFL has been replaced with IF SMF30MFL='1.......'B
and the SMF30MFL PIB4. input was replaced with
SMF30MFL PIB1. +3 to cause IOTMERR to be correctly set.
Thanks to G. W. Shanks, British Rail, ENGLAND.
Change 11.017 New TYPE80A fails with INPUT STATEMENT EXCEEDED if the
VMAC80A LOGSTR= string is more than 16 bytes (my default length).
Apr 3, 1993 I thought that SAS would skip over the extra data with:
RACFDLNN=MAX(16,RACFDLN);
INPUT LOGSTR $VARYING16. RACFDLNN @;
but it doesn't work that way, causing this error! Those
lines in the WHEN (46) clause must be replaced by these:
WHEN (46) DO;
IF RACFDLN GT 32 THEN DO;
SKIP=RACFDLN-32;
INPUT LOGSTR $CHAR32. +SKIP @;
END;
ELSE DO;
INPUT LOGSTR $VARYING32. RACFDLN @;
END;
END;
Note that I also increased LOGSTR's default length to $32.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 11.016 TYPE72MN contains only one PERFGRP from each type 72 RMF
VMAC7072 subtype 2 record, because MXG assumed one record for each
Apr 3, 1993 PERFGRP, but there are multiple PERFGRP segments in each
record. Subtype 2 processing logic was restructured
significantly. In addition, MXG logic was changed so that
TYPE72MN is output only if VALDSAMP GT 0 (i.e, actual
samples exist for this workload). Note that there can be
multiple observations with the same PERFGRP value in an
interval, because TYPE72MN contains a segment for each
combination of PERFGRP and DOMAIN. A replacement VMAC7072
member with this change is available upon request.
Thanks to Mike Skopec, Platinum Technology, USA.
Change 11.015 Change 10.259 implemented IBM APAR II06736 2nd algorithm
VMAC73 but that algorithm is wrong! As a result TYPE73 contains
Apr 3, 1993 an observation for every CHPID from 00 to FFx! Only the
1st algorithm (test SMF73VLD for valid CHPID) can be used
to discard dummy CHPID entries. The statement
IF CHANIND GT 0 OR CHANINDX GT 0 OR CHANINDY GT 0 OR
PCHANBY GT 0 OR SMF73PBY GT 0 OR SMF73PTI GT 0 THEN DO;
is now replaced with
IF VALIDPTH='Y' THEN DO;
Also, the CTC bit is now decoded to set CHANTYPE='CTC' if
the CHPID is actually a CTC, and CHANTYPE is now reset:
IF CHANIND ='..1.....'B THEN CHANTYPE='BLOCK MUX';
ELSE IF CHANIND ='...1....'B THEN CHANTYPE='BYTE MUX';
ELSE IF CHANINDY='.1......'B THEN CHANTYPE='CTC';
ELSE CHANTYPE=' ';
Thanks to Tom Parker, Hogan Systems, USA.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 11.014 The JCL for installation example has a UNIT= coded twice
JCLINSTL in the third step. Use either the UNIT=3380 or UNIT=3390,
Apr 3, 1993 but remove the UNIT=SYSDA from that JCL example.
Thanks to Mark Robbins, Jaguar Cars, ENGLAND.
Change 11.013 Change 10.175 documents how to use the new "_L" and "_K"
DOC macros, but the paragraph beginning 'The "_L" macro lets
Mar 28, 1993 you ...', (first paragraph on page 67 of Newsletter 23)
has two occurrences of _KTY0 that should have been _LTY0.
Thanks to Ron Becham, Southern California Edison, USA.
Change 11.012 JCLTEST with SAS 5.18 has failed at 2 sites with the old
JCLTEST "data set WORK.#DIRMACR is out of space" condition that is
Mar 28, 1993 discussed in Change 8.025 (but neither site used IMACKEEP)
and my SAS 5.18 JCLTEST does not fail! Splitting TESTIBM
into two pieces will circumvent the problem, but since it
only occurs in JCLTEST, it can be ignored. (The primary
purpose of JCLTEST6 is to verify your MXG format library
was correctly built, and that your IMAC tailoring did not
cause a syntax error. Since JCLTEST got to TYPE74, both
sites knew they had tested the important IMACs, so they
proceeded to run JCLPDB, which did not fail. This does
not apply to SAS Version 6 - use JCLTEST6 and JCLPDB6 and
this 5.18 error does not occur!
Change 11.011 FOCUS SMF record 12-byte reserved field FOCUFRS0 was
VMACFOCU changed to @69+OFFSMF FOCUSRV $CHAR8. @77+OFFSMF
Mar 17, 1993 FOCUFRS0 $CHAR4. , and FOCUSRV was labeled 'FOCUS*SERVICE'
and added to the KEEP= list. The value of new variable
FOCUSRV is "FOCUS" in the data observed thus far!
Change 11.010 Dataset TYPETSWP (tape swaps from MXG Tape Mount Monitor)
BUILDPDB is created in the WORK file by BUILDPDB, but was not then
BUILDPD3 sorted into the PDB library. After the BY statement for
Apr 3, 1993 the PROC SORT NODUP DATA=TYPETMNT OUT=PDB.TYPETMNT ...,
replicate that PROC and BY statements, change TYPETMNT to
TYPETSWP, and change the BY statement to read
BY SYSTEM SHIFT DEVFROM TSWPTIME;
Additionally, in the PROC DATASETS following these sorts,
add TYPETMNT and TYPETSWP to the DELETE statement.
Thanks to Tracy Blackstone, Kaiser Permanente, USA.
Change 11.009 NETSPY "Invalid argument to function DATEJUL" might occur
VMACNSPY with NSPYREC='U' because STOPTIME fields TMEE/DTEE added
Apr 3, 1993 by NETSPY R4.3 used previously reserved fields that are
non-zero in R4.2! DTEE is input as packed decimal, and if
the non-zero value happens to end with Fx or Cx, the error
occurs. To correct, find the following statement (it is
the first "IF DTEE" test, 21 lines after the DO group test
for NSPYREC='S' or 'T' or 'U'):
IF DTEE GT 0 THEN STOPTIME=DHMS(DATEJUL(DTEE),0,0,TMEE);
and change it to read:
IF NSPYREL GE 'R4.3' AND DTEE GT 0 THEN
STOPTIME=DHMS(DATEJUL(DTEE),0,0,TMEE);
Thanks to Bob Butchco, The Genix Group, USA.
Thanks to Norbert Korsche, OMV-AG, AUSTRIA.
Change 11.008 MXG 10.10 only, and only if you write type 74 RMF records
RMFINTRV for tape devices. If so, RMFINTRV variables DEVACTTM,
Apr 3, 1993 DEVCONTM DEVDISTM, DEVPNDTM and AVGRSPMS include both DASD
and TAPE statistics (instead of DASD-only), due to Change
10.299. To correct RMFINTRV, find "SIO74CNT=.;", and then
insert this line after that line:
DEVACTTM=.;DEVCONTM=.;DEVDISTM=.;DEVPNDTM=.; AVGRSPMS=.;
Thanks to Tom Parker, Hogan Systems, USA.
Change 11.007 Using ANALDB2R with PDB=SMF failed when accounting report
READDB2 were suppressed and statistics reports were not. Using
Apr 3, 1993 PDB=PDB does not fail. The error is in READDB2, which is
invoked by ANALDB2R when PDB=SMF is specified. Change the
line (this is the third and last test for LENGTH(&PDBOUT):
%IF %LENGTH(&PDBOUT) NE 0 %THEN %DO;
to read:
%IF %LENGTH(&PDBOUT) NE 0 AND &NUMIFC GT 0 %THEN %DO;
Thanks to Ed Lau, Lucky Stores, USA.
Change 11.006 DB2STAT0 variable QDSTQDBT is incorrectly input. There's
VMACDB2 two occurrences of OFFQJST=OFFQJST-3+OFFSMF; but the last
Apr 3, 1993 one should have been OFFQDST instead of OFFQJST.
Thanks to Tom Parker, Hogan Systems, USA.
Change 11.005 DB2ACCT records cause "INVALID 3rd ARGUMENT IN SUBSTR"
VMACDB2 error because account fields were not protected for zero
Apr 3, 1993 length fields. In addition, variable JOB is blank.
Delete the statement JOB=' '; (just before %INCLUDE for
IMACACCT) to prevent blank JOB name. To protect for zero
length account fields, the nine statements of the form
ACCOUNTn=SUBSTR(QMDAACCT,BEG,LENACCTn);
must each be changed to read
IF LENACCTn GT 0 THEN
ACCOUNTn=SUBSTR(QMDAACCT,BEG,LENACCTn);
where n=1,2,...9.
Thanks to Tom Parker, Hogan Systems, USA.
Change 11.004 TYPE30 variable DSSIZHWM incorrectly changed by Change
VMAC30 10.261, and is much too large. Change the multiplier from
Mar 28, 1993 16777216 to 1048576.
Thanks to Tom Parker, Hogan Systems, USA.
Change 11.003 MVS/ESA 4.3 only. TYPE30_V and PDB.SMFINTRV timestamps
VMAC30 INTBTIME and INTETIME were not converted from GMT to local
Apr 3, 1993 time correctly (however, SMFTIME is valid and can be used
to approximate the interval end local time until this
change is made). Change INTBTIME-SMF30IST to read instead
SMF30IST-INTBTIME.
Thanks to Jim Nissen, Principal Financial Group, USA.
Change 11.002 Processing VSAM SMF type 30 records can produce "INVALID
VMAC30 OMVS TRIPLET" message and no observations in TYPE30xx data
Apr 3, 1993 sets. The three lines reading "IF OFFPROD-3-COL GE ...."
must be changed to "IF OFFPROD-3+OFFSMF-COL GE ...." if
you want to process VSAM SMF data directly. There is no
error in processing SMF data which has been dumped.
Thanks to Jonathan E. Paley, Massachussets Mutual, USA.
Change 11.001 Type 37 can cause INPUT STATEMENT EXCEEDED RECORD LENGTH
VMAC37 error.
Apr 3, 1993 First, replace the following eight lines:
Apr 27, 1993 IF OFFSELD GT 0 AND NRSELD GT 0 THEN DO;
SUBSTR(FND37OFF,9,1)='S';
OFFLAND=OFFLAND-3+OFFSMF;
INPUT @OFFLAND
BRFTEXT $CHAR200. /*SELF DEFINING*TEXT*MESSAG*/
BRFTEXTA $CHAR75. /*SELF DEFINING*TEXT*MESSAG*/
@;
END; /* END SELD SECTION TYPE 37 */
with the following twelve lines (note that the first three
lines are unchanged):
IF OFFSELD GT 0 AND NRSELD GT 0 THEN DO;
SUBSTR(FND37OFF,9,1)='S';
OFFSELD=OFFSELD-3+OFFSMF;
INPUT @OFFSELD @;
IF LENSELD GE 275 THEN INPUT BRFTEXT $CHAR200.
BRFTEXTA $CHAR75. @;
ELSE IF 201 LE LENSELD LT 275 THEN DO;
SKIP=LENSELD-200;
INPUT BRFTEXT $CHAR200. BRFTEXTA $VARYING75. SKIP @;
END;
ELSE INPUT BRFTEXT $VARYING200. LENSELD @;
END; /* END SELD SECTION TYPE 37 */
Second, in the "IF OFFDETT GT 0 ..." DO group that follows
the above "IF OFFSELD GT 0 ..." DO group, change all three
occurrences of OFFLAND to OFFDETT.
Third, the INPUT of OFFDETT must be PIB4. instead of PIB2.
Thanks to Larry Doub, R J Reynolds Tobacco USA.
Thanks to Rod Fernandes, Albert Heijn B.V., HOLLAND.
LASTCHANGE: Version 11