z/OS Service Package: X2025063


SMP/E SYSMOD:
Component:
Operating System:
Publish Date:
APAR & Description:

RS36001
FileKit
z/OS
2025/03/20

IQ005602, IQ005595, IQ005587, IQ005581, IQ005567, IQ005557:

The following corrections and enhancements have been applied to SMF record processing:

  1. The following SMF record mappings have been corrected, added or updated for fields introduced in z/OS release 3.1.

    • SMF000
      IPL
    • SMF005
      Job Termination
    • SMF007
      SMF Data Lost
    • SMF014
      INPUT or RDBACK Dataset
    • SMF015
      OUTPUT UPDAT INOUT or OUTIN
    • SMF016
      DFSORT
    • SMF017
      Scratch Dataset Status
    • SMF018
      Rename NonVSAM Dataset Status
    • SMF020
      Job Initiation
    • SMF023
      SMF Status
    • SMF026
      JES2 Job Purge
    • SMF030
      Common Address Space Work
    • SMF034
      TS Step Term
    • SMF035
      LOGOFF
    • SMF040
      Dynamic DD
    • SMF042
      DFSMS
    • SMF050
      VTAM Tuning Statistics
    • SMF060
      VSAM Volume Dataset Updated
    • SMF061
      ICF Define Activity
    • SMF062
      VSAM Component or Cluster Opened
    • SMF063
      VSAM Catalog Entry Defined
    • SMF064
      VSAM Component or Cluster Status
    • SMF065
      ICF Cat Delete Activity
    • SMF066
      ICF Cat Alter Activity
    • SMF070
      RMF Processor
    • SMF071
      RMF Paging
    • SMF072
      RMF Workload, Storage and Serialization
    • SMF074
      RMF Activity of Several Resources
    • SMF076
      RMF Trace
    • SMF078
      RMF Virtual Storage and I/O Queuing
    • SMF079
      RMF Monitor II
    • SMF080
      Security Product Processing
    • SMF082
      Cryptography
    • SMF084
      JES Monitoring Facility
    • SMF085
      OAM Transaction Performance
    • SMF086
      CIM server
    • SMF087
      GRS Monitoring
    • SMF088
      System Logger Data
    • SMF089
      Usage Data
    • SMF090
      System Status
    • SMF091
      IBM BatchPipes Statistics
    • SMF092
      File System
    • SMF098
      High Frequency Throughput Statistics
    • SMF099
      SRM Decisions
    • SMF100
      DB2 Statistics
    • SMF101
      DB2 Accounting
    • SMF102
      DB2 Performance
    • SMF103
      IBM HTTP Server
    • SMF106
      BCPii Activity
    • SMF110
      CICS Transaction Server for z/OS
    • SMF111
      CICS Transaction Gateway
    • SMF115
      MQSeries Statistics
    • SMF116
      MQSeries Accounting
    • SMF118
      TCP/IP Statistics
    • SMF119
      TCP/IP Statistics
    • SMF122
      IBM Developer for zOS
    • SMF123
      zOS Connect
    • SMF125
      Generic Tracker
    • SMF1153
      JES2 Resource Usage and Performance
    • SMF1154
      zOS Compliance

  2. SMF Record Extract utility corrected for filtering using long search strings as specified by the Find String panel input field or FIND parameter of the SMFEXTRC primary command.

  3. Support display of Time Zone, positive and negative time adjustment values specified in TOD and ETOD format.

  4. All utilities which process SMF records have been updated to support SMF extended header for SMF record types in the range 256-2047. Specifically, these are:

    • REPORT
      SMF record reports, CSV, XML, JSON.
    • SMFB
      Browse SMF records.
    • SMFEXTRC
      Extract SMF records.
    • SMFFLD
      Display SMF record field descriptions.
    • SMFSDO
      SMF SDO mapping from SMFMAP source.

    SMFMAP and SDO library member naming convention for record types in the range 256-2047 is "Xrrr" and "Xrrrssss", where "rrr" is the record type number expressed as a 3-digit hexadecimal value and "ssss" is the record sub-type number expressed as a 4-digit hexadecimal value.

  5. CBL distributed compiled REXX macros now compiled with ALTERNATE and SLINE options. This should overcome the following error which occurs when the compiled REXX runtime library is not present and the REXX alternate library used by default.

    
        EAGALT0300E Error 3 running compiled <name>,
               line 0: Program is unreadable
        EAGALT0304I The program cannot run with the
               Alternate Library
    
                

  6. TYPES(n1:n2) may be used on SMFB and SMFEXTRC to specify the start and end of an ascending range of numeric SMF types.

    To avoid exhausting available storage, SMFB no longer generates a filter that tests the record against each type in the range, but tests the record against the range limits. This also means that OLIM will apply to the group of types in the range instead of each individual type.

    SMFEXTRC has been updated to match this behaviour except that new parameter "RANGEALL" may be used to revert back to treating a range of TYPES as individual type specifications.



IQ005606, IQ005601, IQ005600, IQ005599, IQ005598, IQ005597, IQ005596, IQ005590, IQ005568, IQ005562:

The following corrections and enhancements have been applied to the REPORT utility:

  1. Support WHERE section to define where-clauses which filter input records or segments.

    The function of the WHERE section is similar to that of the FILTER section but with the following differences:
    • WHERE section filtering may be used in addition to content match criteria filtering that are specified using options FIND, SMFTYPES, SMFSID, SMFUSERID and SMFJOBNAME (or their REPORT primary command override equivalents).

    • For segmented record input (e.g. SMF records), the WHERE section will filter record segments of a specific record type mapping within the record, whereas the FILTER section will filter the entire record.

    • For segmented record input, WHERE section specifications may reference any primary or secondary segment record-type on which the associated expression will be applied. FILTER section INCLUDE/EXCLUDE specifications must reference a primary segment record-type definition (i.e. one that maps data that occurs first in the record).

      Note that FILTER expressions may still test field values in the secondary segment record-types that follow the primary record-type using fully qualified field names (i.e. <rectype>.<fieldname>).

    • Unlike the WHERE section, FILTER will honour multiple INCLUDE (or EXCLUDE) specifications that reference the same record-type name. Doing so provides alternative criteria for selecting the record. This may however be easily achieved in a single expression in the WHERE section simply by enclosing each of the alternate selection criteria expressions in parentheses and then joining them with a separating logical OR ("|") symbol.

  2. Support introduced for SORT temporary data set dynamic allocation SPACE attributes saved in a User's FileKit INI file. The following options may be specified with a default value in the SYSTEM section of the User INI file:

    • SORTSPACEUNIT
      (Blocks, Cylinders or Tracks)
    • SORTSPACEPRI
      (Primary allocation)
    • SORTSPACESEC
      (Secondary allocation)

    Values specified by these INI options will be used when allocating SORTIN and SORTOUT instead of the product default of "TRACKS(300,300)" e.g.

    
        SYSTEM:
         SORTSPACEUNIT=CYLINDERS
         SORTSPACEPRI=5
         SORTSPACESEC=1
    
    

    To set values for these options in the user INI file, use the SET INIVAR primary command. e.g.

    
         SET INIVAR  SYSTEM.SORTSPACEUNIT=CYLINDERS
         SET INIVAR  SYSTEM.SORTSPACEPRI=5
         SET INIVAR  SYSTEM.SORTSPACESEC=1
    
    

  3. Correct 0C9 (Fixed Point Divide Exception) which may occur when bits are set in bit positions 0-3 of the epoch index of an ETOD value. An ETOD value is interpreted and displayed in external format for fields of data type DATE(STCKE), TIME(STCKE) or TIMESTAMP(STCKE).

    Where 0C9 has occurred, the offset of the ETOD field mapping was incorrect resulting in x'40' (blank) values set in the epoch index.

  4. Correct 0C4 program check which may occur when a number of identical field names are referenced on more than one generic record-type mapping specifications in the REPORT definition. e.g.

    • SMF015*.zJOBNAME
    • SMF017*.zJOBNAME
    • SMF030*.zJOBNAME
    • SMF06*.zJOBNAME

  5. For the REPORT COMPUTE and DISPLAY sections, input record field values are assigned to REXX variables with names that match that of the source input record field.

    A correction has been made to this processing whereby a REXX variable name was being set which was 1 character shorter than that of the input field name. This only occurred for input field names specified after a sub-scripted input field name (e.g. SMFSRTEV(1) ) in the REPORT definition.

  6. "AUTOSTRUCT OFF" used on browse of REPORT printed output. This is doneto prevent any unintended automatic record mapping of the of the plain text output.

  7. Correct the cause of an internal error that may occur when a SORT section exists and different input record fields with different source data characteristice (type, length, signed/unsigned) but identical field name, are referenced within the REPORT definition.

  8. Statement continuation and multi-line comment text combination now adheres to a standard that matches REXX syntax.

    Comment text (text enclosed in "/* ... */" may span several lines. If the start of comment text is immediately preceeded by a statement continuation symbol ("\") on the line before, then the comment data is ignored and text following, and on the same line as the closing comment symbol ("*\") will be joined to the continued statement text.



IQ005592, IQ005586, IQ005576, IQ005573, IQ005572, IQ005609:

The following corrections and enhancements have been applied to the FileKit Data Editor:

  1. Correct internal error that may occur in an edit view for a KSDS data set when deleting a large block of records (using line command "DD").

  2. Correct NEXT/PREV primary command functionality so that a record (or record segment) following the TOF marker or a group of excluded records, will not be skipped.

  3. Edit update-in-place introduced for files mapped with structures containing record segment mappings defined using SEGMAKE (e.g. SMF records).

  4. Correct possible loop in primary command REPLACELINE when VALUES parameter supplied.

  5. Correct error with primary command, WHERE, with the EXCLUSIONS PHYSICAL option set may include secondary segments that do not match the WHERE search criteria.

  6. Correct BIFFIND() function which gave incorrect results when keywords PREFIX, SUFFIX or WORD were specified and bounds were also included. e.g. where Find(c" c'MV'   2 prefix  ")



IQ005591, IQ005584, IQ005582, IQ005578, IQ005575:

The following corrections and enhancements have been applied to the FileKit Structured Data Mapping:

  1. Support introduced for "PARENT *" specified on definition of a secondary record segment mapping using the CREATE STRUCTURE primary command.

    SEGMK may be used to define a secondary segment mapping on an area of input record data based on a segment offset into the record, its length and number of repeating segment occurrences. (This method is used for SMF triplet values.)

    "PARENT record-type" may be used with SEGMK to identify the parent segment record-type from whose data the new secondary segment is defined. When the secondary segment is potentially defined by data in more than one parent segment, the "PARENT *" should be used.

  2. SDE primary command DISPLAY STRUCTURE (or LS) will open a list window displaying attributes of all fields in a FileKit SDO record mappings structure. Similarly, LS may be used as a list type in the LIST primary command to set variable names and values in a REXX macro.

    REFPAR list column introduced to identify the name (or "*") of a record segment's parent record segment.

  3. STCKE subtype already supported for data-types DATE, TIME and TIMESTAMP. Support now includes TIME(STCKE,nn) and TIMESTAMP(STCKE,nn).

    • TIME(STCKE,nn)
      High order 8-bytes of a 64-byte ETOD value which has been shifted right "nn" number of bits.

    • TIMESTAMP(STCKE,nn)
      High order nn-bytes of a 64-byte ETOD value.




IQ005588, IQ005583, IQ005579, IQ005577, IQ005569, IQ005565:

The following corrections and enhancements have been applied to the FileKit File Compare (COMPFILE), REXX File I/O (FILEIO) and File Search, Copy, Update and Remap (FCOPY/FSU) utilities:

  1. Correct error where FSU (FCOPY) remap feature did not correctly adjust a remapped value for an output numeric field having a different precision or scale to that of the input field. This occurred if the only difference between the format of the input and output fields is precision or scale. Other differences would trigger reformatting of the remapped value.

    Note that file data copy with remap uses a different SDO to map the input and output records.

  2. Correct FSU and FILEIO update-in-place of data in spanned records. Following a successful record data update, the same record may have been re-read multiple times.

  3. Support new option field "List" in the ZZSGSET9 Search/Update report options panel (=0.9). Possible values are "FMT" and "TEXT" and determine the default type of output generated by the FSU and COMPFILE utilities when run in the foreground.

    FMT will generate structured report records which are formatted using SDO record-type mappings and displayed in a Data Edit window view.

    TEXT will generate plain text report output which is then displayed in a Data Edit window view.

  4. Support introduced for HEX option when LIST=TEXT is used on COMPFILE or FSU execution. Unprintable characters in a 100-byte section of printed record data will display all characters in that 100 bytes as vertical hex. Default is to show only unprintable characters as vertical hex.

  5. COMPFILE LIST=TEXT output now includes a key at the end of the report which explains the meaning of each report record ID value. i.e.

    Id=?? Key
     
    <blank>
    Matched record.
     
    I
    Inserted record from New file.
     
    D
    Deleted record from Old file.
     
    CN
    Changed record from New file.
     
    CO
    Changed record from Old file.
     
    H
    Hilights bytes changed...
     
     
            ...(Underline char = "#").


  6. COMPFILE LIST=TEXT with option INCFIELDS will now force a print of all text in the old and new record pair where a record change (CN/CO) is detected. Without INCFIELDS, the default is to print only 100-byte sections of the record pair in which a change has been detected.



IQ005585, IQ005561:

The following corrections and enhancements have been applied to the FileKit Randomizer, used to mask data and generate sets of test data:

  1. TIME values produced by the randomizer may now have microsecond values. Previously, random time values were generated with millisecond values only.

    TIME format character strings now support the following, case-sensitive formatting codes:
    • hh
        2-digit Hour of the day
    • mm
        2-digit Minute of the hour
    • ss
        2-digit Second of the minute
    • ttt
        3-digit Thousandth of the second
    • uuuuuu
        6-digit Millionth of the second

  2. RANDOMIZE parameter specified on an INPUT primary command with no explicit field list, will no longer assign a default randomizer and so generate random values for fields involved in USE WHEN record-type selection criteria for the record-type currently being inserted.

    Fields used to determine the record-type mapping assigned to record data must not have values that break this connection.

    For example, when inserting a record of record-type ALBUM, its usage selection criteria may be defined as follows:

    • USE ALBUM WHEN RT=2

    By default, INSERT must not assign a default randomizer to field "RT". A value of "2" will automatically be inserted in field RT.



IQ005605, IQ005593:

Correct "File not Found" when use of a relative generation number on a GDG data set name corresponds to a GDS which is cataloged on a TAPE volume.

Referencing a GDS on TAPE via its relative GDG number will now operate correctly.