English

Bug: When the Migrate Relationship Class tool is run on an attributed composite relationship class, the composite relationship is not maintained

Description

The Migrate Relationship Class geoprocessing tool used to migrate Object ID-based relationships to Global ID-based relationships corrupts table-based relationships. The types of relationship classes affected include attributed relationship classes as well as many-to-many relationship classes.

The result of this migration causes the relationship class to no longer function and the features in the relationship class no longer honor the relationship behavior. The workaround below provides a way to restore the original ObjectID-based relationship class prior to running the migration tool.

Cause

The Migrate Relationship Class tool corrupts table-based relationships (attributed and many-to-many) by populating the destination foreign key with values from the origin table instead of the destination table.

Workaround

The workaround for this issue is to re-create the original relationship class, providing that the original relationship keys are known.

  1. Export the attributed relationship class table as a geodatabase table.

    a) Add the attributed relationship class to the map.

    b) Right-click the standalone table in the table of contents, and click Data > Export.
    [O-Image]
  2. Use the 'Table To Relationship Class' geoprocessing tool to re-create the original relationship.

    a) In ArcToolbox, click Data Management Tools > Relationship Classes > Table to Relationship Class.

    b) Use the original relationship keys, type, cardinality, and other relationship properties.

    c) The input relationship table is the exported output table created in Step 1.

    d) For the Attribute Fields parameter:

    i. Select the previous user-defined attribute fields as well as the original OriginForeignKey and DestinationForeignKey fields.

    • The 'OriginForeignKey' field should contain values from the origin tables ObjectID field.
    • The ‘DestinationForeignKey’ field should contain values from the destination tables key field.

    ii. Leave the RID and GlobalID fields unchecked.

    iii. Leave the fields with a field type of GUID unchecked (these are usually the last two fields in the list and have '_GlobalID' appended to the origin and destination feature class names).
    [O-Image]
    Note:
    The values for the Origin Foreign Key and Destination Foreign Key parameters should be the same field name as the original OriginForeignKey and DestinationForeignKey fields, selected in Step 2d, part i.

  3. Click OK to run the tool. Verify that the new relationship class table was correctly populated.
  4. The corrupted relationship class can be deleted if necessary.

Related Information