appmetadiff - Application Metadata Difference utility
appmetadiff
allows you to report on or synchronize metadata
differences between GEN and metadata source files. Some examples of
when you might use appmetadiff
are:
-
To create a full set of dump files if you have not taken an MSP delivered in 2005 or later.
-
To prepare a product line for copying to another product line.
-
To manage modifications in GEN.
appmetadiff creates four types of output:
Output | Description |
---|---|
Cumulative detail log |
The cumulative detail log contains a full copy of the detailed report and any error messages. This file is Admin\appmetadiff.log. |
Current report |
Contains details about the differences identified by appmetadiff. The current report is created from the current run only, and is overwritten each time. This file is Admin\appmetadiff.rpt. |
Console output | Console output shows the summary form of the report as it's running and any error messages. |
Progress status |
The progress status shows the detailed progress of appmetadiff while it's running and is removed when the run completes. This file is metadata\appmetadiff.tempdir\status and includes each item being compared. |
To run appmetadiff
perl path\appmetadiff [-d][-s] Productline [Metadata Files]
For example:
perl %GENDIR%\bin\appmetadiff -d -s testline CU01.msg
ifmeta
Consider the following options.
Option | Description |
---|---|
d
|
Differences. Displays details of differences. The default is to just list items with differences. |
s
|
Synchronize. Synchronizes metadata files with GEN. The default is to only report differences. When synchronizing GEN and metadata source, GEN is considered the authority and updates are made to metadata source files. The exception to this is for objects missing from GEN, which are loaded from metadata source files. Note: The synchronize option is an update mode.
Note: If updates are made to a metadata file with a version
stamp, the version stamp is retained. The file will then be detected
as Modified in future patching and reporting.
|
Metadata Files | These are the metadata selections that you want to process. |
By default, appmetadiff
processes the complete product line.
You may optionally specify the metadata you would like to process.
For example:
-
To process all workdef metadata files, specify "*.wrk" as a parameter.
-
To process all files in the hrmeta directory, specify "hrmeta" as a parameter.
-
To process all files in the globalmeta directory starting with HR, specify "globalmeta/HR*" as a parameter.
-
To process all message metadata files for "IF" programs, specify "ifmeta/*.msg".
-
To process the message file for the HREMP category, specify "HREMP.msg".
One or more parameters may be specified. appmetadiff
processes
all entries matching at least one of the parameters.
appmetadiff.rpt
The appmetadiff.rpt file displays
details on the differences that were identified by appmetadiff
. The appmetadiff.rpt file lists four types of differences:
-
Warning messages indicating that the source location for a particular source file doesn’t match GEN. These messages can be ignored.
-
Metadata in GEN with no source
These are objects that are defined in GEN, but for which no metadata source file exists. If you have not installed an MSP dated 2005 or later in the "From PL" and you have not previously run
appmetadiff -s
on the product line, then you will see many items listed as 'Metadata in GEN with no source'. MSPs created before 2005 did not have a full set of metadata.appmetadiff
will create these source files when run with the -s option -
Metadata with source but not in GEN
These are objects for which a source file does exist, but the objects are not defined in GEN. These items should be closely reviewed as they indicate that something was removed that probably should not have been.
appmetadiff
will load these object definitions to GEN when run with the-s
option. -
Metadata objects with differences
These are objects that are defined in GEN and for which source files exist, and differences exist between the GEN object definition and the source file definition. Further investigation is required for these objects. Rerun
appmetadiff
using the-d
option to display the details of these differences. The differences are likely due to modifications made to objects in GEN usingdbdef
,skndef
,pgmdef
,msgmnt
, and so on. If the modifications are what you expect, no further action needs to be taken. Otherwise, you should investigate how and why customizations were made.