Application Data Set Integrity

The following table describes the audit queries and resolutions for the application data sets (ADS):

Query Description Resolution

ADS-01

This audit is run against the PSADSDEFNITEM table to check if all the record definitions references in a data set definition exist.

Remove the missing record from the data set, or create the missing record.

ADS-02

This audit is run against PSADSDEFNITEM table to check if the parent record definitions references in a data set definition exists.

Remove the missing record from the data set, or create the missing record.

ADS-03

This audit is run against PSADSDEFN table to check if all the specified extended application classes for a data set exist.

While copying a new data set from a source database if the application package and its PeopleCode are not copied then the extended application classes for the data set may become missing.

Copy the associated application package and its PeopleCode together to avoid missing extended application classes.

ADS-04

This audit is run against PSADSDEFN table to check if the component from which a data set is derived exists.

While copying a component-derived data set if you miss copying the component then orphaned data sets will arise.

Copy the flagged component together with the derived data set.

ADS-05

This audit is run against PSADSDEFNITEM table to check if a record is included in a data set definition, then its related language record must also be in the same data set definition.

Add the missing related language record to the data set.

ADS-06

This audit is run against PSADSGROUPPROP table to check if all the three Managed Objects (MO) properties — Managed Object Name, Managed Object Delete Table and Managed Object Version are set for a data set definition if one of them is set.

PivotGrid is an exception in this case. It only has the Managed Object Name property.

Add missing MO properties to the data set.

ADS-07

This audit is run against PSADSDEFNITEM and PSRECFIELDDB tables to check if the key fields in a parent record in a data set also exist in all of its child records in the same data set, and they are also the key fields in all the child records.

This form of inconsistency may occur when the record structure changes after the data set is created.

Redesign the child records so that the flagged fields are key fields.

ADS-08

This audit is run against PSADSDEFN and PSADSGROUPPROP tables to check the owner of the cacheable MO data sets is PeopleTools (PPT).

Set Owner ID to PeopleTools for the flagged data sets.

ADS-09

This audit is run against PSADSGROUPMEMB and PSRECFIELDDB tables to verify if the translatable fields in mergeable groups in base tables are also in the mergeable groups for the corresponding Related Language tables in a data set.

Add related language record field to the mergeable group.

ADS-10

This audit is run against PSADSRELATION table to verify if the To-data sets exist in definition references in an ADS relation. This inconsistency may occur when a data set with defined relations is copied to another database, but its related data sets are missed.

Copy all To-data sets together with the flagged ADS definition.

ADS-11

This audit is run against PSADSRELMAP table to verify the record fields references of From-data sets existing in a relation mapping definition. This inconsistency may occur when the flagged record structure changes.

Redesign the flagged records so that all missing fields are in the record.

ADS-12

 This audit is run against PSADSRELMAP table to verify the record fields references of To-data sets in a relation mapping definition exist. This inconsistency may occur when the flagged record structure changes.

Redesign the flagged records so that all missing fields are in the record.

ADS-13

This audit is run against PSADSRELPROP table, to verify the relation properties in an ADS relation mapping are defined in PSADSPROPVALUE table. This inconsistency may occur when updating relation properties in PSADSRELPROP table while missing sync corresponding property definitions in PSADSPROPVALUE table.

In case of creating or upgrading an environment, the corresponding DMS (Data Mover Script) has already been generated for the flagged data, re-run the DMS to sync the properties. In case of updating data set definition from a source environment, export the flagged missing property definitions in PSADSPROPVALUE table from the source database, then import the data to the target database.

ADS-14

This audit is run against PSADSGROUPMEMB table to verify all record fields references in a data set group definition exist. This occurs when the flagged record structure changes.

Redesign the flagged records so that all missing fields are in the record.

ADS-15

This audit is run against PSADSGROUPPROP table to verify the delete table for an MO data set exists. The delete table has the value of Managed Object Delete Table property. This inconsistency may occur when copying a data set for a new MO that do not exist on target.

Copy the missing delete table together with the flagged data set.

ADS-16

This audit is run against PSADSGROUPPROP table to verify existing corresponding row in the tables PSLOCK and PSVERSION for Managed Object Version property value for cacheable MO data sets.

The MO_VERSION object property is used to indicate that the object is cached at run time.  The property value should be the OBJECTTYPENAME of a row in PSVERSION and PSLOCK tables associated with the managed object. This information is used to synchronize cache for a cacheable managed object when the object is updated. Objects that are not cached should omit this property. All cacheable MOs must have C++ managers.

Remove the MO_VERSION object property if the object is not cached or add the appropriate row to PSVERSION and/or PSLOCK tables.

ADS-17

This audit is run against PSADSDEFNITEM table to check if there are duplicate order keys in data set root record.

Remove the duplicate order key field from the flagged record.

ADS-18

This audit is run against PSPROJADSBIND tables to verify every ADS in a project has the corresponding ADS definition.

Import or create the ADS definition. The database from which the ADS project was exported will have the correct ADS definition.

ADS-19

This audit is run against PSPROJBINDITEM and PSADSDEFNITEM  tables to verify the binding fields references in ADS project instances are existing. This occurs when the root record structure for the flagged data set changes.

Redesign the root records so that all flagged missing bind symbols are in the record, and they are also the key fields.

ADS-20

This audit is run against PSADSGROUPMEMB table to verify if any orphaned ADS group members references exist that do not have corresponding data sets. This happens in rare cases, only if the data set definition is corrupt.

Recreate the flagged data sets with the groups and members.

ADS-21

This audit is run against PSADSGROUPPROP table to verify if any orphaned data set properties exist that do not have a corresponding data set. This happens in rare cases, only if the data set definition is corrupt.

Recreate the flagged data sets with the properties.

ADS-22

This audit is run against PSADSRELMAP table to verify if any orphaned relation mappings exist that do not have corresponding From-data set. This can only happen if the data set definition is corrupt.

Recreate the flagged data sets with the relation mappings.

ADS-23

This audit is run against PSADSRELPROP table to verify if any orphaned relation properties exist that do not have corresponding data set definition. This happens in rare cases, only if the data set definition is corrupt.

Recreate the flagged data sets.

ADS-24

This audit is run against PSADSGROUP table to verify if any orphaned data set groups exist that do not have corresponding data set definition. This happens in rare cases, only if the data set definition is corrupt.

Recreate the flagged data sets.

ADS-25

This audit is run against PSADSRELMAP table to verify if any orphaned relation mappings exist that do not have corresponding data set relation definition. This happens in rare cases, only if the data set definition is corrupt.

Recreate the flagged relation with the mappings.

ADS-26

This audit is run against PSADSRELPROP table to verify if any orphaned relation properties exist that do not have corresponding data set relation definition. This happens in rare cases, only if the data set definition is corrupt.

Recreate the flagged relation.

ADS-27

This audit is run against PSADSGROUPMEMB table to verify if any orphaned ADS group members exist that do not have corresponding data set group. This happens in rare cases, only if the data set definition is corrupt.

Recreate the flagged group with the flagged record fields.

ADS-28

This audit is run against PSADSGROUPPROP table to verify if there are any orphaned data set properties that do not have a corresponding data set group. This happens in rare cases, only if the data set definition is corrupt.

Recreate the flagged group with the flagged properties.

ADS-29

This audit is run against PSADSRELMAP table to verify if there are any orphaned relation mappings that do not have corresponding To-data set.

This may occur when copying a data set with defined relations, but not related data sets.

Copy all To-data sets together with the flagged ADS definition.