On 10 May 2013 10:11, Stone, Joel wrote:
Is there a utility to compare CL (or CMD or RPG) source between two
libs?
Show last used date (of object), show if differences in source, show
if source is missing in one file.
  The CMPPFM for a "*FILE" file-level comparison might suffice. 
However neither the member nor the object /last used/ is presented, nor 
are the member level details /last changed/ or /source changed/ 
presented.  FWiW I would guess the more interesting data would be the 
"Last source update date" related attributes... and of course probably 
also the source type, and possibly also the source text.
   CMPPFM NEWFILE(QTEMP/SRCNEW) NEWMBR(*ALL) OLDFILE(QTEMP/SRCOLD)
      CMPTYPE(*FILE) RPTTYPE(*SUMMARY) OUTPUT(*PRINT)
      /* or: OUTPUT(*OUTFILE) OUTFILE(QTEMP/CMPDIFF) */
  The *summary* report shows the members removed from the new-file as 
compared to that /member name/ in the old-file, shows the members added 
to the new-file as compared to the /member name/ in the new-file, and 
gives an indication if the member of the same member name betwixt is 
/DIFF/ or /SAME/ using two asterisks in the column with that heading, 
but the specific differences are left to a member-level compare report; 
e.g. what the above request produced when run against the two files both 
having a member DIFFDATA and SAMEDATA, but the /new/ source file having 
additionally the member ADDEDMBR but having since deleted the member 
RMVEDMBR:
      IBM COMPARE V5R3M0  030430                   05/11/13  NEW: 
                                                      OLD:
                      MEMBER SUMMARY LISTING (FILE COMPARE)
          NON                        NEW     OLD     NEW     OLD
DIFF SAME PAIRED MEMBER NAMES      LINES   LINES   BYTES   BYTES
 **              DIFFDATA              3       2     276     184
      **         SAMEDATA              1       1      92      92
          *NEW*  ADDEDMBR
          *OLD*  RMVEDMBR
                 ------------    ------- ------- ------- -------
                 GROUP TOTALS          4       3     368     276
  To compare the member-level attributes, the DSPFD offers both 
TYPE(*MBR) [model file QAFDMBR] and TYPE(*MBRLIST) [model file QAFDMBRL] 
in which columns provide access to member attributes which can be 
compared in a FULL OUTER join on the member names.... or using some 
other type of query.
As an Amazon Associate we earn from qualifying purchases.