Compare criteria options


The Compare Criteria options allow you to specify processing and output options for your compare. The available criteria options are dependent on your selected Compare Mode.

For formatted or unformatted compare, the criteria options start with Compare Criteria Options.

For a load library compare, see Compare Load Library Criteria, for a source code compare, see Compare Source Criteria, and for a JCL compare, see Compare JCL Criteria.

For formatted compare, consider as a like compare criteria when the old and new (Layout or XREF) data sets are the same and consider as an unlike compare criteria when the old and new (Layout or XREF) data sets are not the same.

An Association Conflict message is displayed when you have the following compare options:

  • A like compare criteria with an unlike compare criteria (compare criteria is created with different layout or XREF data sets)
  • An unlike compare criteria with a like compare criteria.

Compare Criteria Options

The following figure allows you to specify processing and output options for your formatted or unformatted compare. See Compare Load Library Criteria for load library compares, Compare Source Criteria for source code compares, and Compare JCL Criteria for JCL compares.

Compare - Criteria Options

 File-AID ----------------- Compare - Criteria Options -------------------------
 COMMAND ===>                                                                   
                                                                               
 Specify Initial Compare Options:                                               
                                                                               
  Compare type            ===> S   (S = Sorted/Keyed; R = ReadAhead; 1 = 1-to-1)
                                                                               
  Read-ahead record count ===> 100 (If type = R, specify read-ahead count)      
  Read-ahead sequence     ===> E   (E= Enforce; I = Ignore)                     
                                                                               
  Records to compare      ===> ALL (All or maximum number of records)           
  Differences to compare  ===> ALL (All or maximum number of differences)       

  Unequal member lists    ===> N   (Y = Set unequal return code; N = Do not set)
                                                                               
  Modify print defaults   ===> N   (Y = Yes; N = No)                            
  Specify output criteria ===> N   (Y = Yes; N = No)                            
                                                                               
  Associate Corresponding ===> Y   (Associate like field names? Y=Yes; N=No)    
    Ignore Prefix         OLD file ===>            NEW file ===>                
    Ignore Suffix         OLD file ===>            NEW file ===>
Field Descriptions
Specify Initial Compare Options:

Compare type

Specify one of the following valid entries:

S

Default. Specify S (Sorted/Keyed) for a keyed or sorted file.

R

Specify R (ReadAhead) for a non-keyed or non-sorted file.

1

1-to-1. File-AID compares "OLD" record 1 to "NEW" record 1, "OLD" record 2 to "NEW" record 2, etc.

Important

If the files to be compared are sorted or keyed, Compare Type R (ReadAhead) should NOT be used. The appropriate alternative is to execute a SORTED compare (Compare Type S), which will process the files much more efficiently.

Read-ahead record count

When you specify ReadAhead as the Compare Type, enter a value in this field.

When comparing non-sorted files that are essentially in the same sequence (with a READ-AHEAD SEQUENCE of E), use this field to specify a number to use to resynchronize the records after inserted/deleted records are encountered. This number should be the estimated number of consecutive inserted/deleted records.

When comparing files not in the same sequence (with a READ-AHEAD SEQUENCE of I), use this field to specify the number of records to search forward or backward for the corresponding record.

The READ-AHEAD count can be exceeded for either of the following reasons:


    • Consecutive inserts exceed consecutive matches and/or deletes, and the delete read-ahead buffer fills up.
    • Consecutive deletes exceed consecutive matches and/or inserts and new file potential insert read-ahead buffer fills up.

Important

Whenever either read-ahead buffer fills up, processing will continue by reading ahead on the opposite file and placing such records into their read-ahead buffer. This process will continue until a matching record is found or both read-ahead buffers are full.

This processing will successfully find a matching record and thus reach a new sync point unless there are more consecutive inserts or more consecutive deletes than the specified read-ahead limit. If both read-ahead buffers get filled up, processing will stop with a return code of 8 and display message READ AHEAD COUNT LIMIT WAS EXCEEDED BEFORE A MATCH WAS FOUND.

Read-ahead sequence

Specify one of the following valid entries:

E

Enforce the statement that the records must occur in the same sequence in order to match.

I

Ignore the statement that the records must occur in the same sequence in order to match.

Records to compare

Specify the maximum number of records to be compared. If you enter "ALL", File-AID compares all records. A numeric value in this field places a limit on the total number of records that File-AID reads from both files.

Differences to compare

Specify the maximum changes, inserts, or deletes that you want to compare. If you enter "ALL", File-AID compares all records. A numeric value in this field helps to avoid a comparison of wrong data sets by placing a limit on the differences allowed before the compare process stops.

Unequal member lists

Only available for PDS/PDSE data sets.
When comparing PDS/PDSE data sets that have different member lists, specify Y if you want File-AID to issue the return code as set with parameter UNEQUAL_COMPARE_RETURN_CODE (see UNEQUAL_COMPARE_RETURN_CODE in the File-AID/MVS additional parameters (FAMVALL)) so that you know the member lists have differences.

Y

Issue the UNEQUAL_COMPARE_RETURN_CODE when comparing PDS/PDSE data sets that have different member lists, in effect treat inserted/deleted members as differences.

N

(Default) Do not treat inserted/deleted members as differences.

Modify print defaults

Specify whether you want to modify the print options. Print option values are saved in your user profile. The default for a Formatted Compare is a Formatted Print. All other default values are the last print option values that you entered.

Y

Modify the print defaults. File-AID displays the Compare Print Options (Page 1) - Formatted and Unformatted Screen.

N

(Default) Do not modify the print defaults.

Specify output criteria

Specify whether you want to display the Compare - Output Options screen. You may use the Compare - Output Options screen to copy input records (OLD or NEW) to a maximum of six output files.

Y

Display the Compare - Output Options screen.

N

(Default) Do not display the Compare - Output Options screen.

Associate Corresponding

Y

Specify Y (Yes -- default) if you want like or similarly-named fields to be associated automatically.

N

Specify N (No) if you do not want these fields automatically associated.

Ignore Prefix

Specify the prefix(es) you want File-AID to ignore when matching field names to compare in the OLD and/or NEW file.

Ignore Suffix

Specify the suffix(es) you want File-AID to ignore when matching field names to compare in the OLD and/or NEW file.

After you have completed the fields on the this screen, press Enter to continue.

Compare Load Library Criteria

The following figure allows you to specify processing and output options for a load library compare.

Compare Load Library Criteria

 File-AID ----------------- Compare - Load Library Criteria --------------------
 COMMAND ===>                                                                   
                                                                               
 Use "S" to select member compare criteria:                                     
  S  Module Name                                                                
  _  Load Module Size                                                           
  _  Entry Point                                                                
  _  Link Attributes                                                            
  _  Link Date                                                                  
                                                                               
 Use "S" to select CSECT compare criteria:                                      
  _  CSECT Name                                                                 
  _  CSECT Size                                                                 
  _  Language                                                                   
  _  CSECT Date                                                                 
  _  IDR ZAP Data                                                               
  _  Text                                                                       
                                                                               
  Stop text compare threshold      ===> ALL     (All or maximum number of       
                                                 differences for a CSECT)       
  Specify CSECT selection criteria ===> N       (Y = Yes; N = No)               
  Modify print defaults            ===> N       (Y = Yes; N = No) 
Field Descriptions
Use "S" to select member compare criteria:

Use the following fields to specify the load library member criteria that you want File-AID to use in the comparison.

Module Name

File-AID automatically selects the module (or member) name. It is the minimum member criteria required for compare load libraries to execute.

Load Module Size

Enter an S to compare load module sizes.

Entry Point

Enter an S to compare load module entry point address.

Link Attributes

Enter an S to compare load module link attributes.

Link Date

Enter an S to compare load module link edit dates.

Use "S" to select CSECT compare criteria:

Use the following fields to specify the CSECT compare criteria that you want File-AID to use in the comparison. CSECT Name must be selected to use CSECT information in the criteria.

CSECT Name

Enter an S to compare CSECT names. This field must be selected to compare on any of the following CSECT information.

CSECT Size

Enter an S to compare CSECT lengths.

Language

Enter an S to compare language types in which the CSECT is coded (i.e. Assembler, COBOL, C, PL/I, etc.).

CSECT Date

Enter an S to compare CSECT (compile/assembly) dates.

IDR ZAP Data

Enter an S to compare zap identification information.

Text

Enter an S to compare CSECT content, such as instructions or constants.

Stop text compare threshold

Specify ALL or a number from 0 to 99999 that specifies the maximum number of unlike bytes that File-AID includes on the Compare Detail Report for each CSECT.

The Stop text compare threshold is used to minimize the report print lines when instructions have been added/deleted near the beginning of a a CSECT. ALL or 0 eliminates a threshold.

Specify CSECT selection criteria

Specify Y (Yes) to display the CSECT Selection Criteria screen. The default is N (No) which compares all CSECTs.

E (Existing) is displayed as an option if an M was specified for the Compare criteria usage field on the Compare Executions Options screen and the compare criteria specified contains CSECT selection criteria. Specify an E to simply use the existing criteria. Specify Y to override the existing criteria or an N to compare all CSECTs.

Modify print defaults

Specify whether you want to modify the print options for the Compare Report. Print option values are saved in your user profile. Valid entries are Y (Yes) and N (No). All default print option values are the last print option values that you entered for the load library compare.

Y

Modify the print defaults. File-AID displays the Compare Load Library Print Options.

N

(Default) Do not modify the print defaults.

Load Library CSECT Selection List

The following figure enables you to specify the CESCT selection options for a load library compare. If a CSECT list and data set information are both provided, File-AID ignores the data set specification information.

Compare Load Library CSECT Selection

File-AID ---------- Compare - Load Library CSECT Selection --------------------
 COMMAND ===>                                                                   
                                                                              
   CSECT selection list ===> I           (I = Include; E = Exclude)             
                                                                               
 Specify CSECT List:                                                            
   Dataset name         ===>                                                    
   Member name          ===>             (Blank or pattern for member list)     
   List                 ===> _______________________________________________    
   _________________________________________________________________________    
                                                                               
   If list is provided, dataset specification is not used                       
                                                                              
   List may be CSECT-prefix*, CSECT range or full CSECT name. EX: IGZ*,CEE*     
                                                                               
                                                                             

Field Descriptions

CSECT selection list

Specify whether the CSECT selection list indicates the CSECTs that should be compared (included) or not compared (excluded). Valid entries are I (Include -- default) and E (Exclude).

Specify CSECT List:

Enter the data set and member name for an existing CSECT selection list or enter a list of CSECT names to identify CSECT(s) for inclusion or exclusion in the Compare processing.

Dataset name

(Optional) Enter the data set name of an existing CSECT selection list file.

Member name

For a PDS/PDSE, specify the member name or you may leave this field blank or enter a pattern to display a member list.

List

Enter a list of CSECT names or prefixes that identify the CSECT(s) you either want to include or exclude from the compare. List may be CSECT-prefix*, CSECT range or full CSECT name. CSECT names should be separated by a comma (no space) or a hyphen (no space) to indicate a range of CSECTs.

A prefix is explicit characters followed by an asterisk (*).

EX: IGZ*,CEE*

Compare Source Criteria

The following figure allows you to specify processing and output options for a source code compare.

Compare Source Criteria

 File-AID --------------- Compare - Source Criteria ----------------------------
 COMMAND ===>      

 Compare criteria:
   Source code language           ===> 1   (1 = COBOL; 2 = PLI)

   Line compare synchronization   ===> L   (L = Line content;
                                              C = COBOL sequence number;
                                              S = Standard sequence number)    
   Case sensitive                 ===> A   (A = As is; C = Convert to uppercase)
   Columns to compare ----> from  ===>     (1 - 80 column range;
                              to  ===>      blank = use language default)

 Exclude Options:
   Exclude comments               ===> Y   (Y = Yes; N = No)
   Exclude blank lines            ===> Y   (Y = Yes; N = No)   
   Exclude compiler directives    ===> Y   (Y = Yes; N = No)
   Selection criteria action      ===> I   (I = Include; E = Exclude)

 Print Options:  
   Modify print defaults          ===> N   (Y = Yes; N = No)

Field Descriptions
Compare Criteria:

Use the following fields to specify the source code criteria that you want File-AID to use in the comparison.

Source Code Language

Specify the language of the source code.

1

Specifies COBOL.

2

Specifies PL/1.

Line compare Synchronization

Specify how to synchronize the compare. Line synchronization is the process of determining which lines of the OLD source member correspond to which lines of the NEW source member. The source members can be synchronized based on sequence number or line content.

L

Line content. The OLD source and the NEW source will be considered synchronized when a certain number of consecutive lines match. Sequence numbers are not compared when using line content synchronization.

C

COBOL sequence number. COBOL sequence numbers are expected to be located in positions 1-6.

S

Standard sequence number. Standard sequence numbers are expected to be located in positions 73-80.

When sequence number synchronization (C or S) is selected, a line of the OLD source file corresponds to a line of the NEW source file only if the sequence number is the same. A sequence number field must exist within each line of the source code member for that line to be compared. Once the lines are selected for comparison, the individual positions of the line are then compared to determine if the line is matched or changed. If any line is out of sequence or lines are found without a sequence number, the compare for that member will not be performed. When sequence number compare is used, sequence numbers must be present on every line and they must be in ascending sequence.

When a match occurs between a sequence number on the OLD file and a sequence number on the NEW file it is considered a synchronization point; any un-paired lines on the OLD file prior to the synchronization point are considered deleted. Any un-paired lines on the NEW file prior to the synchronization point are considered inserted.

Case Sensitive

Specify if case sensitivity is relevant to the compare.

A

Case must remain as is.

C

Convert to uppercase. File-AID treats all alphabetical characters as uppercase for the compare process only.

Important

The line displayed within the reports will always be the real content of the line, not the converted data.

Columns to compare

Enter the column range (1-80) for the compare. Blank columns to compare will use the language default which is 7-72 for COBOL and 2-72 for PL/1.

The source code language specified normally determines the columns to compare and entry in this field is not necessary. This option is included primarily for PL/1 where coding can start in column one or column two. This combination of from and to fields allows you to override the default positions to compare.

Exclude Options

Use the following fields to specify what you want File-AID to exclude during the comparison.

Exclude comments

Enter Y (Yes, default) to exclude comments or N (No) to include the comments in the compare. When embedded comments are excluded, File-AID blanks out the comment but compares the rest of the line.

COBOL comments start with an '*' in column 7 OR a '/' in column 7 followed by the comment.
PL/1 comments start with a '/*' and end with an '*/'.

Exclude blank lines

Enter Y (Yes, default) to exclude blank lines or N (No) to include blank lines in the compare.

Exclude compiler directives

Enter Y (Yes, default) to exclude compiler directives or N (No) to include compiler directives in the compare.

COBOL directives include but are not limited to:


    • 'D' in column 7
    • '/' in column 7 (the rest of the line is blank)
    • EJECT
    • SKIP1/2/3
    • READY TRACE
    • *CONTROL

PL/1 directives include but are not limited to:


    • %noprint
    • %note
    • %option
    • %page
    • %pop
    • %print
    • %skip
    • decl
    • declare

Compiler directives are a predefined set of commands that are language specific that do not impact the logic of the program. Only the directives that format the listing or set compiler actions will be affected by the compiler directives option.

Selection criteria action

Specify whether to I (Include) or E (Exclude) lines meeting the selection criteria in the compare. The default is to include lines that meet the criteria.

Modify print defaults

Specify whether you want to modify the print options for the Compare Report. Print option values are saved in your user profile. Valid entries are Y (Yes) and N (No). All default print option values are the last print option values that you entered for the last source compare.

Y

Modify the print defaults. File-AID displays the Compare - Source Print Option (Page 1).

N

(Default) Do not modify the print defaults.

Compare JCL Criteria

The following figure allows you to specify processing and output options for a JCL compare. See also Notes on the JCL Compare Criteria before selecting a compare type.

Compare JCL Criteria

File-AID --------------- Compare - JCL Criteria -------------------------------
 COMMAND ===>      

 Compare criteria:
   Compare type                   ===> K   (K = Keyword; L = Line

 Exclude Options:
   Exclude comments               ===> Y   (Y = Yes; N = No
   Exclude in-stream data         ===> Y   (Y = Yes; N = No

 Print Options:  
   Modify print defaults          ===> N   (Y = Yes; N = No

Field Descriptions
Compare Criteria:

Use the following fields to specify the JCL criteria that you want File-AID to use in the comparison.

Compare type

Specify the compare type for JCL. File-AID compares jobstreams on a keyword or a line basis. When comparing on a keyword basis, statements are considered equal as long as the values provided for each keyword are the same. Keyword compare also compares correctly when the statement sequence has been altered, which File-AID marks with status ORDER. DD statements can occur in any sequence within a step; as long as they are within the same step of the same job, they are compared correctly.

K

Specifies Keyword compare.

Important

When DDs are concatenated, keyword compare syncs up on DSN, resulting in status DELETED and INSERTED when there are differences. Without concatenation, keyword compare syncs up on the keyword and compares the line, resulting in status CHANGED when there are differences.

L

Specifies Line compare.

Exclude Options

Use the following fields to specify what you want File-AID to exclude during the comparison.

Exclude comments

Enter Y (Yes--default) to exclude comments or N (No) to include the comments in the JCL compare. When imbedded comments are excluded, File-AID blanks out the comment but compares the rest of the line.

Exclude in-stream data

Enter Y (Yes--default) to exclude instream data in the JCL compare or N (No) to include instream data in the JCL compare.

Modify print defaults

Specify whether you want to modify the print options for the Compare Report. Print option values are saved in your user profile. Valid entries are Y (Yes) and N (No). All default print option values are the last print option values that you entered for the last JCL compare.

Y

Modify the print defaults. File-AID displays the Compare - JCL Print Option (Page 1).

N

(Default) Do not modify the print defaults.

Notes on the JCL Compare Criteria

JCL compare criteria will include a compare type option to allow either keyword or line compare. Compare type will control how the actual compare process functions. With either compare type the compare always operates by statement.

Synchronization is the process of determining which statements are to be compared. First jobs are synchronized, then steps and then DDs. If there is only one JOB statement within each of the jobstreams, the jobs are compared. If there are multiple JOB statements, the jobs are compared in the order they occur.

Steps are synchronized first by the executable name and then by the step name. Step name is only used if there are multiple steps with the same executable name.

Job and step synchronization will be the same for either compare type. DD statement synchronization will differ. For keyword compare, DD statements can occur in any sequence within the step. For line compare the DD statements must occur within the same sequence to be compared. For line compare, any difference in sequence of the DD statements results in statements being reported as deleted or inserted rather than changed or matched.

Once synchronization has occurred, the actual compare is different for keyword and line compare. Line compare simply compares line one of the old statement to line one of the new statement and reports them as changed if there is any difference. Next, line two of the old is compared to line two of the new statement, etc. If there are differences in the number of lines for a given statement, they are considered deleted if there are more lines on the old file and inserted if there are more on the new file.

Keyword compare is more intelligent. Keywords are matched within the statement and the values compared for matching keywords. The keywords can be in a different sequence and can be on different lines of the statement, but they still compare correctly. Any unmatched keywords will be identified as changes.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*