z/OS Service Package: X2024233


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

RS35002
FileKit
z/OS
2024/09/11

IQ005466, IQ005467, IQ005474, IQ005498, IQ005500, IQ005505:

REPORT Utility enhancements and fixes:

  • Significant improvement to REPORT utility execution time performance. Conversion of the utility source to High Level Assembler has reduced execution times and CPU usage in simple jobs by a factor of 10.

    The original (REXX based) version of the REPORT utility command has been renamed as "REPORX" and may still be used if necessary. Note, however, that this version will no longer be maintained.

  • INIT-EXIT: section introduced. Exit to REXX to initialise REXX (Compute-field) variable(s) before input file processing starts.

  • #RECNUM built-in variable now corresponds to the actual file record number instead of the filtered input record number.

  • COLUMNS: section entries include support for BLANKIFEQUAL to suppress display of the detail line column value if it is equal to the same column value displayed in the last output detail line.

  • OPTIONS: section. New options supported:
    • BLANKIFEQUAL(YES|NO)
      Applies "BLANKIFEQUAL" to *all* column entries of the output report detail line.
      Default: NO

    • CSVLITERALS(YES|NO)
      CSV output. If YES, literal field values specified in the COLUMNS: section will be included in the CSV output. Otherwise, literal field values are excluded.
      Default: NO

    • CSVQUOTED(YES|NO)
      CSV output. If NO, CSV values are enclosed in quotation marks only if necessary (e.g. character values containing commas). Otherwise, *all* CSV values are enclosed in quotation marks.
      Default: YES

    • CSVSTRIPALL(YES|NO)
      CSV output. If YES, trailing blanks are stripped from each value. Comma separators will follow the last non-blank character of the field value on all but the last field value. Otherwise, values will be padded to their specified (or default) field width.
      Default: NO

    • DB2NULL(YES|NO)
      DB2 input. Display the default Data-Edit NULL character for null column values (see NULLCHAR Data-Edit SET/QUERY/EXTRACT option). Otherwise, display blanks.
      Default: NO

    • JSONARRAY(YES|NO)
      JSON output. If YES, each detail line is generated as a JSON array element. Otherwise, each line is a separate object.
      Default: NO

    • JSONINDENT(YES|NO)
      JSON output. If YES, indent each JSON object on a new line beneath the parent object tag. Otherwise, output all JSON objects on the same line as the parent object tag.
      Default: NO

    • JSONLITERALS(YES|NO)
      JSON output. If YES, literal field values specified in the COLUMNS: section will be included as objects in the JSON output. Otherwise, literal field values are excluded.
      Default: NO

    • JSONQUOTED(YES|NO)
      JSON output. If NO, numeric values are *not* enclosed in quotation marks. Otherwise, *all* values are enclosed in quotation marks.
      Default: YES

    • JSONSTRIPALL(YES|NO)
      JSON output. If YES, trailing blanks are stripped from each value. Otherwise, values will be padded to their specified (or default) field width.
      Default: NO

    • LINESTRIP(YES|NO)
      Strip trailing blanks on text written to the REPORT output.
      Default: NO

    • NUMBLANK(INCLUDE|EXCLUDE)
      For statistics values calculated on numeric data, either include or exclude values that are displayed as blank in the report as a result of a BLANKIFEQUAL specification.
      Default: EXCLUDE

    • NUMDUP(INCLUDE|EXCLUDE)
      For statistics values calculated on numeric data, either include or exclude values that are a duplicate of the value in the previous detail line. Duplicate values usually occur when output is triggerred by a REPEAT record-type that corresponds to a secondary record segment, and values in the primary record segment are not reset.
      Default: INCLUDE

    • NUMTRUNC(...,INCLUDE|EXCLUDE)
      For statistics values calculated on numeric data, either include or exclude values that are displayed as a field filled with the specified (or default) number truncation fill character. Number truncation occurs when the display area width is not sufficient to contain all significant digits of the numeric value.
      Default: INCLUDE

    • PAGEPAD(YES|NO|AUTO)
      For PRINT report output when no FOOT: (page footer) section exists, then this option determines whether or not the last output page is to be padded with blank lines to the specified (or default) page depth. AUTO is the same as YES except that page padding will only occur on the last page if the number of printed output report pages is greater than 1.
      Default: AUTO

    • REXXCOMPOUND(YES|NO)
      Determines whether or not the REPORT utility will generate a REXX compound variable name for an input-field identified using a qualified field name.

      When option FIELDNAME(LONG) is set (default) and a REXX procedure exit exists, as specified by a COMPUTE: and/or DISPLAY-EXIT: section, then the REPORT utility will assign input-field values to REXX variables of the same name as that used to identify the input-field (minus the record-type name). These variables may then be referenced in the REXX procedures. e.g. An input-field identified by "SMF030_Identification.zJOBNAME" in the COLUMNS: or REQUIRED: section will assign the current value for this field to the REXX variable name "zJOBNAME".

      If the input-field is identified using a qualified name (so that the name includes an owning group field name), then the name of the REXX variable will contain the "." (dot/period) qualifier separator, making it a REXX compound variable name. e.g. An input-field identified by "SMF030_EXCP.zEXP.zBSZ.zBSZLarge" will assign the current value for this field to REXX compound variable name "zEXP.zBSZ.zBSZLarge".

      It is possible that use of a compound variable may cause problems if any of the qualified names in the tail are also used elsewhere in procedure as simple variable names. In this case REXXCOMPOUND(NO) may be specified to ensure that the REPORT utility uses only simple variable names. These names are still based on the input-field identifier, but use "_" (underscore) symbols in place of "." (dot/period) qualifier separator symbols. e.g. The input-field identified by "SMF030_EXCP.zEXP.zBSZ.zBSZLarge" will assign the current value for this field to REXX simple variable name "zEXP_zBSZ_zBSZLarge".
      Default: YES

    • XMLINDENT(YES|NO)
      XML output. If YES, indent each XML object on a new line beneath the parent object tag. Otherwise, output all XML objects on the same line as the parent object tag.
      Default: NO

    • XMLLITERALS(YES|NO)
      XML output. If YES, literal field values specified in the COLUMNS: section will be included as objects in the XML output. Otherwise, literal field values are excluded.
      Default: NO

    • XMLSTRIPALL(YES|NO)
      XML output. If YES, trailing blanks are stripped from each value. Otherwise, values will be padded to their specified (or default) field width.
      Default: NO

  • Improved support for statistics values calculated from floating point input-filed values which are expressed with an exponent.



IQ005470, IQ005486, IQ005541:

Text-Edit enhancements and fixes:

  • BOXTOT updated to avoid displaying the output total value as a value which include an exponent when the number of numeric digits is greater than 8.

    Note that the BOXTOT Text-Edit macro is supplied in the product distribution CBLE library to output the sum of all numeric values that have been highlighted within the Text-Edit view.

  • Performace improved on highlighting text that matches a FIND string.

  • LDIFF Text-Edit macro summary message updated to display compared file names on separate message lines.



IQ005533, IQ005532, IQ005523, IQ005521, IQ005520, IQ005519, IQ005518, IQ005516, IQ005515, IQ005514, IQ005512, IQ005511, IQ005503, IQ005504, IQ005501, IQ005497, IQ005499, IQ005495, IQ005490, IQ005489, IQ005484, IQ005482, IQ005481, IQ005480, IQ005478, IQ005477, IQ005476, IQ005473, IQ005469, IQ005465, IQ005464, IQ005456, IQ005455, IQ005448, IQ005442, IQ005439, IQ005349:

Data-Edit and structured data mapping enhancements and fixes:

  • ## New Feature - Random/Test Data Generation ##

    A randomizer may be used to generate test data or mask sensitive data within a formatted record.

    Individual fields within data set records mapped by SELCOPYi structures may be assigned a permanent or temporary randomizer object which is triggered when a value is generated for that field. For example, when new records are inserted via the FILEIO or Data-Edit utilities, or when existing records are copied to another data set or updated using the File Search/Copy/Update (FSU) utility.

    New panels and Data-Edit "SET RANDOMIZER" primary command are provided to enable the definition of one or more randomizers, each of which is assigned to an individual field within a record-type mapping.

    "INSERT", "REPLACELINE" and "FILEIO" commands now support additional parameters to output values generated by a randomizer.

    A randomizer may be defined to generate types of values. One should be selected that suits the data type of the field.
    1. Numeric values
    2. Basic character string values
    3. Date/Time values with formatting options
    4. Adjust and recalculate existing values
    5. Selection from a list of possible values
    6. Selection from a list of values using a Key
    7. Pattern string specification
    8. Sentence generation using a vocabulary list
    9. Name of person generation

    Additional options exist to supply:
    1. A base value
    2. A range of values
    3. A list of possible values
    4. An increment (numeric or date sequences)
    5. A Data-Edit expression specification

  • Support introduced for a Structure Definition Object (SDO) library search path.

    Note that an SDO is the object used by SELCOPYi to apply a structure to fields within data set records or DB2 tables. An SDO may be generated from COBOL or PL1 copybooks, HLASM DSECTs, DFSORT SYMNAMEs, DB2 SQL Queries or directly via the CREATE STRUCTURE command syntax, and may be saved as a library member. Saved SDOs can be used by SELCOPYi utilities (e.g. Data Edit, BROWSE, REPORT, FSU, etc.) to apply required record mapping.

    If an SDO search path has been defined, then an SDO specification in a utility primary command may simply be a member name reference. SELCOPYi will select the first matching mamber name in the SDO library search path. For example, the following will search for member CONTMAP in the SDO search library path.

    
        BROWSE  NBJ.MYCONT.DATA   USING CONTMAP
    
    

    To define an SDO library search path, the SELCOPYi INI option "SDE.SDOPATH" must be set. SDO search libraries that are common to all users should be assigned to SDOPATH in the System INI file. Thereafter, %SYSTEM.SDE.SDOPATH% may then be prefixed by one or more user specific SDO libraries on an SDOPATH specification in an individual's User INI file.

    The following example demonstrates how a common SDO library concatenation of 2 libraries can be extended to include 2 additional, user specific SDO libraries for an individual user "NBJ".

    
       "SITESDO", "DISTSDO" and "USERSDO" are arbitrary
       names.
    
       System SELCOPYi INI file contents:
    
       (SDE)
        SITESDO=OEM.SELCI.SITE.SDO      * Local SDO Lib.
        DISTSDO=OEM.SELCI.SZZSDIST.SDO  * Product SDO Lib.
        SDOPATH=%SYSTEM.SDE.SITESDO%; %SYSTEM.SDE.DISTSDO%
    
       NBJ's User SELCOPYi INI file contents:
    
       (SDE)
        USERSDO=NBJ.SELCI.SDO; NBJ.SELCI.SMF.SDO
        SDOPATH=%USER.SDE.USERSDO%; %SYSTEM.SDE.SDOPATH%
    
       The SDO library search path will be:
        1. NBJ.SELCI.SDO
        2. NBJ.SELCI.SMF.SDO
        3. OEM.SELCI.SITE.SDO
        4. OEM.SELCI.SZZSDIST.SDO
    
    

  • Support introduced to reference an SDO as an allocated DDName. If a supplied SDO name has length <=8 which does not match the name of a member found on the SDO path, then treat it as a possible allocated DDName.

  • "FILEIO" command enhanced as follows:
    1. For SREAD and SREADSEG input operations, options such as RECNO, RECTYPE, etc. are obeyed for each stem variable set. i.e. Instead of setting <fname>.1.RECTYPE once for the whole operation, <fname>.n.RECTYPE for each record/segment.

    2. LIBRARY (synonym PDS) operation supported to input PDS or PDSE library directory entries and also to provide fast access to multiple members of the same library via BPAM.

      Unless operation NEXTMEMBER has been executed, a FILEIO READ operation executed following a READ of a directory entry will read records from the member corresponding to the directory entry.

      The following example shows how LIBRARY input may be used to output library member information followed by its first 5 records. This will occur for each member with a name (or ALIAS name) that matches the member mask(s).

      
           mbr=''
           "fileio CBL.ASM(IOS*,SDE*) openr pds name ASMi"
           "fileio ASMi options member lastmod user cursize"
      
           do forever
            "fileio  ASMi read MYREC"
            if ASMi.member <> mbr then
             do; mbr=ASMi.member
                 say ASMi.member ASMi.lastmod  ASMi.user
             end
      
            fs=ASMi.cursize
      
            if fs > 5 then fs=5;         say MYREC
      
            do fs-1
             "fileio ASMi read MYREC";   say MYREC
            end
      
            if fs < ASMi.cursize
             then "fileio ASMi nextmember"
           end
      
      

    3. CONCATENATEDLIBRARYDIRECTORY (synonym CLD) operation supported. Similar to LIBRARY but that members are read using a DDName allocated to a library dataset concatenation.

      The CLD is a member search path. The first occurrence of any member in the CLD library search path whose name matches the supplied mamber name mask(s) will be selected for FILEIO input. Subsequent occurrences in the search path of members with this same member name will *not* be processed.

  • "QX" macro to display REXX variables and values obtained by EXTRACT, enhanced to support FVALUEQP and FVALUQF options.

  • Default record-type assignment updated so that record-type "UnMapped" is used if the record type cannot be determined. Previously, the first record-type defined in the SDO was selected as absolute default.

  • "SET MAXBATCHRC" introduced to set the maximum return code for SELCOPYi batch (SDEAMAIN) processing.

    SDEAMAIN sequentially executes the Data-Edit commands passed to it via the SDEIN DD input. If the command currently being executed gives a return code value which is greater than the MAXBATCHRC value, then processing stops and subsequent commands are flushed.

    The current MAXBATCHRC setting is not saved and so should be set as the first command in SDEIN. Default value: 999

  • "TIME(STCKE)" and "TIMESTAMP(STCKE)" data types supported for elapsed time and date/time values stored as a 16-byte (128-bit) unsigned binary value which is in the same format as that returned by an STCKE operation. i.e. an 8-bit Epoch Index, followed by 104-bit TOD clock and 16-bit Programmable Field.

  • "DECIMALUNSIGNED(<prcsn>)" data type supported to handle packed decimal values that do not include a sign value. For example, 123456 is packed as X'123456' (3-bytes).

    This differs from data type DECIMAL with the UNSIGNED option which preserves the sign-nibble as X'F'. i.e. 123456 is packed as X'0123456F' (4-bytes). This is the format of a COBOL field defined as PIC 9(6) PACKED-DECIMAL.

  • Although recognised as a parameter keyword on the CREATE STRUCTURE command, use of "OFFSET" as a record-type mapping field name is now permitted.

  • A FILTER or SQL clauses may be passed to Data-Edit EDIT/BROWSE and other utilities as a fileid reference, in which case the specified file contains the FIlTER clause or SQL query text.

    The rules governing how the text is interpreted has been updated to reflect the record format of the file. This change has been introduced specifically to allow specification of very long quoted strings in the text of the FILTER clause or SQL query.

    For RECFM=V, a blank is inserted between the last non-blank character of a record and the first (blank or non-blank) character of the record that follows. A long quoted string literal must exist on a single line if no blanks are to be inserted.

    For RECFM=F, *no* blank will be inserted between the last (blank or non-blank) character of a record and the first (blank or non-blank) character of the record that follows. The text of a long quoted string literal may wrap onto the following record without blanks being inserted.

    Furthermore, for SQL query input only, lines beginning with "--" are treated as comment lines for compatibility with the IBM SPUFI utility.

  • "EXTRACT FOCUS" now assigns the new FOCUS.12 variable with a value equal to the line identifier i.e. the TTR, RBA, etc. of the current record as displayed by "SET RECID ON HEX"

  • "SELECT - <field_col>,..." supported to remove specific columns from the current Data-Edit display view.

  • "INSERT" and "REPLACELINE" commands enhanced to support parameter SKIPERRORS. This will allow processing of subsequent field values to continue despite hitting an error on the insert or replace of a value in the current field.

  • "XMLIMPORT" command supported to capture an XML document into a tree structure and output it to a data set mapped by a general purpose structure.

    The TREE structure SDO is included in the product distribution SDO library and has 2 record-type mappings as follows:

    
       Record-Type: TAG
    
       Fields:
         Id           CHAR(1)   /* "T" => TAG           */
         Indent        INT(1)   /* Indentation.         */
         Lev           INT(2)   /* Nested level.        */
         NewL         BINT(1)   /* "nl" => 1st item.    */
         Clos         BINT(1)   /* "Self" => self-close.*/
                       BIT(6)   /* Reserved.            */
         LineNo        INT(4)   /* Source Line Number.  */
         Tag       VARCHAR(64)  /* Tag name.            */
         AttrN         INT(2)   /* #Attributes.         */
    
        /* Attribute Information - Max 32 attributes.   */
         Attr       STRUCT
          (Name    VARCHAR(64)  /* Attribut Name.       */
           Value   VARCHAR(256) /* Attribut Value.      */
          )
    
       Record-Type: CONTENT
    
       Fields:
         Id           CHAR(1)   /* "C" => CONTENT       */
         Indent        INT(1)   /* Indentation.         */
         Lev           INT(2)   /* Nested level.        */
         NewL         BINT(1)   /* "nl" => 1st item.    */
         Clos         BINT(1)   /* "Self" => self-close.*/
                       BIT(6)   /* Reserved.            */
         LineNo        INT(4)   /* Source Line Number.  */
         ParentTag VARCHAR(64)  /* Parent Tag name.     */
         Length        INT(2)           /* Text Length. */
         Text     XVARCHAR(256,Length)  /* Text Value.  */
    
    

    This feature assists a user in the task of converting XML to another format (e.g. JSON)

  • "USE UNMAPPED WHEN" supported to allow explicit use of the default "UnMapped" record-type based on a true result from a Data-Edit expression. (Synonym "USE RECORD WHEN").

  • Additional line commands supported to set the colour of the text displayed in records that have the same record-type as the focus record. Colour line commands are:
    • "BLUE" (BL)
    • "GREEN" (G)
    • "PINK" (P)
    • "RED"
    • "TURQ" (T)
    • "WHITE" (W)
    • "YELLOW"(Y)

  • "CHANGE ANYVALUE" supported to change any field value in a column to the specified change string. For example, the following will change all values in the field named ALBUM_ARTIST to the commercial at symbol ("@").

    
         CHANGE  ANYVALUE '@'  ALL  ( ALBUM_ARTIST )
    
    

  • Correction to Data-Edit expression processing which returned an unreliable result when using function SUBSTR() of field name "RECORD" and the length of the first input record is less that the sub-string start position.

  • Correct data display which shows garbage when scrolling right in an edit/browse of non-DB2 data and "RECINFO ON SQLCODE" is set.

  • Correct possible 0C4 Program Check that occurs using SET OFFSET.

  • Correct 0C4 Program Check that occurs when BROWSE is performed on DD=ddname which has no LRECL value (LRECL=0).

  • Correct potential buffer overwrite that can occur when using SELECT to display fields from a secondary segment record-type on the same line as the primary segment record-type fields. Error occurs when the secondary segment field sequence number is greater than the number of fields in the primary segment.

  • Correct possible program check when SELECT on primary segment fields includes a field from a secondary segment which is also a group field.

  • Correct FIND ALL operation which fails to find a matching string which exists in excluded lines immediately following the "Top of Data" line and the "Top of Data" is the current line of the display view.

  • Correct possible failure to locate a named record-type field by name for an SDO defined with option CASE(RESPECT).

  • Correct FIND() function in a Data-Edit expression which returns false negative results when no structure is used, or if a structure *is* used but no specific field reference is provided as a parameter to FIND(). For example, both of the following gave false negative results:

    
        FSU INP('CBL.ASM(SDEX)')  WHERE ( FIND("'BASR'") )
    
        SD EDIT 'CBL.DMN(J256)' USING CBL.SDO(JMAP) \
                                  WHERE ( FIND("'NO'" )  )
    
    



IQ005539, IQ005527, IQ005526, IQ005513, IQ005494, IQ005492, IQ005451, IQ005446, IQ005443, IQ005441:

File Search/Update (FSU) utility enhancements and fixes:

  • FSU now supports the following new feature:

    LIST=FMT|TEXT

    LIST=FMT is default for online processing and will output the result of the FSU operation to a Data-Edit display of formatted FSU report records.

    LIST=TEXT is default for batch (SDEAMAIN) processing and will produce a printable text report.

    This is the direct equivalent to the same option available in the COMPFILE utility.

  • FSU now supports FIND/CHANGE operations performed on formatted records mapped by different record-type definitions. Previously, FSU would use the single record-type specified on "VIEW", otherwise the default record-type. Therefore, only records that were assigned to this record-type could be used in the FIND or CHANGE operation.

    The scope of the FIND/CHANGE operations may be limited using the following parameters:

    
         SELECT (,...  [FROM ])
         VIEW   (,...)
    
    

    SELECT will identify the fields to be included by default in the FIND/CHANGE operations. SELECT operands specify the field name(s) or reference(s) of the fields to be included, and the record-type to which they belong. The SELECT parameter may be specified a number of times, once for each record-type in the specified structure. A field selection will *not* be included if VIEW is also specified and it does *not* identify the record-type to which the fields belong.

    VIEW has been enhanced to support multiple record-type specifications. It identifies the record-type mapping(s) to be included in the FIND/CHANGE operations. By default, all record-types are included.

    For example, the following FSU command will report on records containing a hit for ampersand ("&") in the "NAME" field only, in records mapped by the record-types "ALBUM" and "TRACK".

    
        <fsu input  ('JGE.SELCTRN.ZZST2DAT')    \
             using sdo 'JGE.SELCTRN.SDO(ZZST2)' \
             view    ALBUM,TRACK                \
             select (NAME FROM ALBUM)           \
             select (NAME FROM TRACK)           \
             find   ( '&')
    
    

    Note that SELECT and VIEW parameters are apply only to FIND and CHANGE operations. They are *not* used to filter record and field output.

  • FSU now supports the following mutually exclusive parameters which are used when records are to be copied:

    • COPYALL
    • COPYFOUND
    • COPYCHANGED

    COPYALL is default and will copy *all* records (or all records that satisfy the FILTER if specified). COPYFOUND will copy only records that satisfy the specified FIND string specifications, whereas COPYCHANGED will copy only records that have been changed using the CHANGE parameters.

  • FSU (and FCOPY) now supports the following parameters which may be used when copying library members to a new library. They each imply parameter output to a new libraray and so parameter "NEW" is not necessary.

    • COPYDATACLASS
    • COPYMGMTCLASS
    • COPYSTORCLASS
    • GENS <nn>

    COPYDATACLASS, COPYMGMTCLASS and COPYSTORCLASS indicates that the source library SMS Data, Management and Storage class respectively, should be used when allocating the output library.

    GENS <nn> indicates that the output library is to be allocated as a PDSE version 2 library with a MAXGENS value equal to <nn>.

  • Correct FSU failure to change a short string to a longer string when input is a member name located in a concatenated library directory (CLD) and output is to a specified library data set.

  • Correct FSU "Internal Error" message that may occur when copying an HFS file to a PDS/PDSE library and no target member name is specified. By default, the output member name is the first (up to) 8 characters of the first qualifier of the HFS file name.

  • Correct FSU CONDENSE/CONDENSEX output which did not reliably generate a closing parenthesis at the end of each list of members for any given library.



IQ005493, IQ005475, IQ005472, IQ005460, IQ005457, IQ005447, IQ005445, IQ005438:

File Compare (COMPFILE) utility enhancements and fixes:

  • COMPFILE now supports the following new parameters:
    • FILTER <filter_clause>
    • NFILTER <filter_clause>
    • OFILTER <filter_clause>

    FILTER specifies additional record filtering criteria to further restrict the records processed by COMPFILE and is applied to both NEW and OLD files.

    Alternatively, <filter_clause> may be specified differently for the NEW and OLD file using NFILTER and OFILTER respectively.

    FILTER parameters are specified via a filter clause which may be supplied as part of the COMPFILE command or referenced via <filter_fileid>, a separate sequential data set, PDS/PDSE member or HFS file. <filter_fileid> must contain the keyword FILTER followed by a valid filter clause.

  • Support parameter "INCKEYFIELDS" for formatted compare using a Keyed record synchronisation and LIST=TEXT output. This parameter ensures that for each displayed record, the name and value of every key field is included in the report.

  • Support parameter "SPACE=<nn>". Applicable only to character data type fields for formatted compare and to the whole record for unformatted compare, SPACE indicates that a record pair will be considered a match if the only difference is the number of blanks between words in the text. i.e. An equal condition is set when the record pair contains differences but are equal after all groups of one or more consecutive blanks have been compressed to the number specified as "<nn>".

    The default value for is 1, meaning all occurrences of multiple blanks will be treated as a single blank. SPACE=0 may be specified to remove all blanks before comparison proceeds.

  • COMPFILE formatted report output includes a "Field" record-type. This record-type has been enhanced so that it includes the field New and Old values when preceeded by a report record of "Change" record-type.

  • Correct COMPFILE formatted output so that the "Files" report record includes the PDSE v2 Absolute and Relative Generation numbers even if no generation value is supplied on the old or new member names.

  • STRIP and STRIPL parameters to strip record trailing and leading blanks respectively, will now also strip trailing and leading blanks in fields of character data types in formatted records.

  • Prevent attempt to process the EOF record of both files, which resulted in an unselected record being reported erroneously in the Summary output.

  • Correct false completion without errors result that occurs when an HFS file is compared with a non-HFS file. HFS file specific parameters must not be applied to non-HFS data sets.



IQ005479:

Library Compare (COMPLIB) utility enhancements and fixes:

  • COMPLIB has been corrected so that the report output now includes the names of members that match and are empty.



IQ005530, IQ005510, IQ005471, IQ005459:

SMF Utilities enhancements and fixes:

  • SMF Type 71: RMF PAging Activity zIST data type updated to TIME(DEC3). Previously this field had data type DEC(7,0).

  • SMF Typ 208: SYNCSORT Updated for SyncSort MVS 3.1

  • SMFOVERV macro updated to disregard SMF Type 2 (Header) and SMF Type 3 (Trailer) records when reporting Earliest/Latest timestamps.

    It also automatically detects whether the source SMF log data set is ONLINE/OFFLINE if not explicitly specified.



IQ005529, IQ005528, IQ005542:

List Windows enhancements and fixes:

  • LISTPATH now supports specification of single character ("%") and multiple character ("*") wild cards in the directory path name. Previously, wild card characters were supported in the HFS file name only.

    For example:

    
        LP  /mnt/BkupArch/CBL*-DW/*/ape/sde/*/SDEF%%%.ASM
    
    

  • Correct Data/Text Edit LIST command for REXX macro variable definition output so the "LINES" parameter need not be explicitly specified.



IQ005525, IQ005524, IQ005509, IQ005507, IQ005487, IQ005485, IQ005483, IQ005468, IQ005461, IQ005450:

General enhancements and fixes:

  • Current product expiry date now included in the "About SELCOPYi" information window (opened using command "ABOUT").

  • "Retrievable Commands Selection List" window opened using the "CMDS" command, now uses line command "I" to execute the correspondin command immediately. Previously, line command "X" performed this function, however, "X" will now exclude the list entry.

  • Minimum abbreviation of "HORIZONTAL" on the "WINDOW" command is now "H" (previously "HO"). For example, "WINDOW TILE H" is acceptable.

  • Correct date conversion of STCK/STCKE date which returned an incorrect date for leap years.