Compare Physical File Member (CMPPFM)

This command allows you to compare source physical file members.

Error messages for CMPPFM

None

Parameters

Keyword Description Choices Notes
NEWFILE New file Qualified object name Required, Positional 1
Qualifier 1: New file Name
Qualifier 2: Library Name, *LIBL, *CURLIB
NEWMBR New member Single values: *FIRST, *ALL
Other values (up to 25 repetitions): Character value
Optional, Positional 2
OLDFILE Old file Qualified object name Optional, Positional 3
Qualifier 1: Old file Name, *NEWFILE
Qualifier 2: Library Name, *LIBL, *CURLIB
OLDMBR Old member Single values: *NEWMBR, *FIRST
Other values (up to 25 repetitions): Name
Optional, Positional 4
CMPTYPE Compare type *LINE, *FILE, *WORD Optional, Positional 5
RPTTYPE Report type *DIFF, *SUMMARY, *CHANGE, *DETAIL Optional, Positional 6
OUTPUT Output *, *PRINT, *OUTFILE Optional, Positional 7
OUTFILE File to receive output Qualified object name Optional, Positional 8
Qualifier 1: File to receive output Name
Qualifier 2: Library Name, *LIBL, *CURLIB
OUTMBR Output member options Element list Optional, Positional 9
Element 1: Member to receive output Name, *FIRST
Element 2: Replace or add records *REPLACE, *ADD
SRCTYPE Select source type Name, *ALL Optional, Positional 10
OPTION Process option Values (up to 10 repetitions): *IGNORECASE, *COUNT, *CBLSRCCOL, *RPGSRCCOL, *RPGLESRCCOL, *OMTDUP, *OMTREFMT, *OMTBASCMT, *OMTBLANK, *OMTCCMT, *OMTCBLCMT, *OMTCLCMT, *OMTCMDCMT, *OMTDDSCMT, *OMTPASCMT, *OMTPLICMT, *OMTRPGCMT, *OMTRPGLECMT, *FLGMOVLIN, *CHGFLGS, *CHANGES, *LONGLINES, *NARROW, *CMPSEQDAT, *COUNTREFMT, *WIDE Optional, Positional 11
STMTFILE Statement file Qualified object name Optional, Positional 12
Qualifier 1: Statement file Name
Qualifier 2: Library Name, *LIBL, *CURLIB
STMTMBR Statement member Name, *FIRST Optional, Positional 13

New file (NEWFILE)

Identifies the new physical file containing the members to be compared.

*LIBL
Use the library list of the job.
*CURLIB
Use the current library of the job.
library-name
Use the specified library.
new-file-name
Use the specified new file.

New member (NEWMBR)

Identifies the members to be compared in the new file.

*FIRST
Use the first member of the file.
new-file-member-name
Use the specified member or list of members.

To enter multiple values for this parameter, type a plus sign (+) in the + for more prompt, and press the Enter key.

generic*
Use the members that match the specified pattern.
*ALL
Use all members in the file.

Old file (OLDFILE)

Identifies the old physical file containing the members to be compared.

*LIBL
Use the library list of the job.
*CURLIB
Use the current library of the job.
library-name
Use the specified library.
*NEWFILE
Use the old file with the same name as is specified for the NEWFILE keyword.
old-file-name
Use the specified old file.

Old member (OLDMBR)

Identifies the members to be compared in the old file.

*NEWMBR
Use the same member or member list as is specified for the NEWMBR keyword.
old-file-member-name
Use the specified member or list of members.

To enter multiple values for this parameter, type a plus sign (+) in the + for more prompt, and press the Enter key.

*FIRST
Use the first member of the file.

Compare type (CMPTYPE)

Specifies the type of comparison to be performed.

*LINE
Compare for differences on a line level, identifying inserted and deleted lines.
*FILE
Compare for differences on a file level, without reporting where the differences are. The results of this type of comparison indicate whether the members compared are different or the same, and provide the names of any nonpaired members. This method produces only summary information, but is the fastest type of comparison.
*WORD
Compare for differences on a word level. This comparison is similar to the *LINE comparison, except words on adjacent lines can be matched. Words are delimited by blanks or the end of a line. The members are processed as long sequences of words without line boundaries or record lengths. The output of this comparison does not necessarily maintain the original spacing between words. Blanks may be added in the output listing so that you can clearly see the differences.

Report type (RPTTYPE)

Specifies the listing type for the result report.

*DIFF
List only the differences between the members being compared, followed by a summary. The differences are flagged in the listing.
*SUMMARY
List a summary of the results of the comparison, without showing the detailed differences. A group comparison generates an individual summary line for each member in the group, as well as the list of processing options.
*CHANGE
Provide the same information as the *DIFF report type, with 10 lines before and after the differences. The extra lines allow you to see the differences within the context of the surrounding data.
*DETAIL
List the entire new file member (and deletions from the old file member), indicate the differences, and provide a summary of the results.

Output (OUTPUT)

Specifies whether the result of the comparison is displayed, printed, or stored to a physical file.

*
Display the result.
*PRINT
Print the result to the spooled file.
*OUTFILE
Store the result to a physical file.

File to receive output (OUTFILE)

Specifies the file to which the output results are directed.

*LIBL
Use the library list of the job.
*CURLIB
Use the current library of the job.
library-name
Use the specified library.
output-physical-file-name
Use the specified physical file.

Output member options (OUTMBR)

Specifies the member to which the output is directed. Do not specify a value for this parameter if the OUTFILE keyword specifies a printer file.

*FIRST
Use the first member of the file.
output-file-member-name
Use the specified member.
*REPLACE
If the member exists, replace it.
*ADD
Add this member to the file.

Select source type (SRCTYPE)

Specifies the source member type to be compared. One type or all types can be selected.

*ALL
Compare all source members.
source-member-type
Compare only the members with the specified source type.

Process option (OPTION)

Specifies a list of process options to customize the comparison. You can specify up to 10 process options in the list.

To enter multiple values for this parameter, type a plus sign (+) in the + for more prompt, and press the Enter key.

Note: When you use the OMTxxx options to omit comments, the utility may recognize some non-comment strings as comments.

For example, if the string /*...*/ is imbedded within a program's executable code, the string may or may not be ignored during processing if you have used the *OMTCCMT process option.

*CBLSRCCOL
Compare only COBOL source columns (7-72 inclusive). This option limits the scope of the comparison to the source code column area. This option is valid for line and word comparisons.
*CHANGES
List only changed entries in the summary. Normally, all paired members are listed in a group comparison. When you specify *CHANGES in a group comparison, only the member pairs with changes are listed in the summary section. This option is valid for line, file, and word comparisons.
*CHGFLGS
Generate listings denoting changes in the new file by placing a change flag (>) in column one of the appropriate line in the new file. Deleted lines are indicated by flagging the line following the deletion. This option is valid for line and word comparisons.
*CMPSEQDAT
Set the origin of the source sequence to 1. Compares the sequence and date fields of the source physical file member. This option is valid for line and word comparisons.
*COUNT
Count the lines from nonpaired members in a group (line) comparison, and include the results in the summary. If this option is not used, you only obtain statistics on lines from paired members.
*COUNTREFMT
Reformatted lines are not flagged, but they are counted for the overall summary statistics. This option is valid for line and word comparisons.
*FLGMOVLIN
Flag moved lines. Identify inserted lines in the new file that match deleted lines in the old file. This option is valid only for line comparisons.
*IGNORECASE
Ignore differences due to case (upper, lower, mixed). This option is valid for line and word comparisons.
*LONGLINES
Create a listing with 198 columns, reflecting up to 176 columns from the files. This option is valid for line comparisons.
*NARROW
Create a 132 listing file with 55 columns for each side. Inserted and deleted lines are flagged and appear side-by-side in the listing output. This option is valid for line comparisons.
*OMTBASCMT
Omit BASIC comments. BASIC comments are blanked out and excluded.
*OMTBLANK
Omit lines in which the columns being compared are blank. This option is valid for line and word comparisons.
*OMTCBLCMT
Omit COBOL comments. COBOL comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*OMTCCMT
Omit C comments. C comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*OMTCLCMT
Omit CL comments. CL program comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*OMTCMDCMT
Omit CMD comments. CL command comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*OMTDDSCMT
Omit DDS comments. DDS comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*OMTDUP
Omit duplicate lines. Old file source lines that match new file source lines are omitted from the side-by-side listing. This option is valid for line comparisons.
*OMTPASCMT
Omit Pascal comments. Pascal comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*OMTPLICMT
Omit PLI comments. PLI comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*OMTREFMT
Omit reformatted lines. Reformatted lines in the old file member are omitted from the listing. Reformatted lines in the new file member are included in the listing. Normally both are listed. This option is valid for line comparisons.
*OMTRPGCMT
Omit RPG comments. RPG comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*OMTRPGLECMT
Omit ILE RPG comments. ILE RPG comments and blank lines are excluded from the compare set, to yield a listing with all comments removed or blanked out. This option is valid for line and word comparisons.
*RPGLESRCCOL
Compare only ILE RPG source columns (6-100 inclusive). This limits the comparison scope to the source code column area. This option is valid for line and word comparisons.
*RPGSRCCOL
Compare only RPG source columns (6-74 inclusive). This limits the comparison scope to the source code column area. This option is valid for line and word comparisons.
*WIDE
Create a wide 198 side-by-side (80 columns per side) listing. This option is valid for line and word comparisons.

Statement file (STMTFILE)

Specifies a user-defined source physical file that holds process statements. Records in this file can be of any length, but only the first 80 bytes are read.

*LIBL
Use the library list of the job.
*CURLIB
Use the current library of the job.
library-name
Use the specified library.
statement-file-name
Use the specified file as the statement file.

Statement member (STMTMBR)

Specifies the file member containing the process statements to use in the comparison.

*FIRST
Use the first member of the file.
statement-file-member-name
Use the specified member.

Examples

None

Error messages

None