Compare

Before you can do a compare, all data set definitions referenced in the project file must also exist in the target database. There may be cases where the a data set definition is different in the source and target. Shape refers to the metadata describing the data set instances in the ADS project, including the data set definition itself, the record definitions that are part of the data set definition, and the fields that are part of the records that are part of the data set definitions.

Any time there is a shape difference between the source and target data set definition, an implicit data transform is performed to align the source shape with the target shape. There are 2 categories of shape changes:

  • Regular shape change

    This type of shape change is supported by the Data Migration Framework and no custom transform PeopleCode is necessary. Examples of a regular shape change are:

    • Add or remove a record that is included in a data set definition.

    • Add or remove a non-key field from a record that is included in a data set definition.

  • Irregular shape change

    This type of shape change requires custom transform PeopleCode.

    • Change the key structure of a record.

    • Change the meaning of a field value.

    • Change the field size.

    • Add a new data set definition or removing an existing data set definition.

    • Provide default values on target that do not exist in the source.

    • Change a field type or format.

    • Rename a record, field or data set definition.

    • Move data from one record to another.

    • Refactor by splitting an object into 2 or more objects.

    • Refactor by combining 2 or more objects into a single object.

    • Change in data migration pathway such as an object formerly migrated using IDE project or Data Mover is migrated using Data Migration Framework.

Compare looks for the following types of differences:

  • Row Difference – Based on the record keys compares if the row exists in both the source and target databases. All differences will be captured and shown as Absent on the database where the key is not present.

  • Field Difference – The value of a field differs between source and target.

For PeopleTools owned ADS definitions (managed objects), the compare will examine the LASTUPDDTTM and LASTUPDOPRID fields to detect whether the object has been changed by the customer. This is the same logic used in an IDE project compare. See Tracked ADS Definitions.

Comparing From File

When you select to compare, the system performs the following:

  1. An application engine program is executed that copies each data set instance in the ADS Project from XML to memory as a PeopleSoft rowset (not to the database) and the corresponding object is copied from SQL to memory as a different PeopleSoft rowset.

  2. The two in-memory rowsets are then compared record-by-record, row-by-row, and field-by-field.

    In this case the file is the source and the local node is the target.

  3. Any differences found in compare are stored in a table on the target database.

    Note:

    It is stored in the same table used for managed object compare.

  4. The differences found can be seen by running the compare viewer, which reads the compare output table.