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.
Dostları ilə paylaş: |