Migrate Existing Relationships to use GlobalID

Conduit Manager and Underground Facilities Manager use relationships to track underground assets. When building a relationship, the ArcCatalog relationship wizard wants to know where to find the unique identifier for the parent (that’s the primary key) and where this same identifier is placed in the child (that’s the foreign key). The application is then able to “match” the parent and child because all the children have the parent’s unique identifier.

For the primary and foreign keys, Conduit Manager supports using ObjectID or GlobalID except for the Conduit_CrossSectionAnnotation relationship, which does not support GlobalID. This is because feature linked annotation relationships cannot be globalized.


This topic discusses how to migrate an existing relationship that was configured to use ObjectID to now use GlobalID.

  • The upcoming steps require schema changes. Thus, ensure there are no other locks on your geodatabase before proceeding. Locks, such as other users editing the geodatabase, prevent you from performing these steps.

  • We recommend you create a backup of your database prior to performing these steps. After migrating the relationships to use GlobalID, there is not a way to convert back to use ObjectID.

To migrate the existing relationships, follow these steps:


Add Global IDs

Ensure all feature classes and object table that participate Conduit Manager and Underground Facilities Manager have GlobalIDs. These relationships are (your relationship names differ from the following list):

  • Conduit_PrimaryUnderground

  • Conduit_SecondaryUnderground

  • Conduit_FiberOpticCable

  • Conduit_UndergroundStructure

  • Conduit_DuctBank

  • PrimaryUnderground_Duct

  • SecondaryUnderground_Duct

  • FiberOpticCable_Duct

Based upon your implementation, they likely already have GlobalIDs. Review their attribute tables to confirm, then proceed to the next step.

If they do not have GlobalIDs, follow these steps to generate them:

  1. If a feature class or object table participates in a dataset, the option to Add Global IDs is at the dataset level. If the feature class or object table is stored in the root geodatabase (not in a dataset), you Add Global IDs directly to that feature class or table. Most likely, your feature classes are in a dataset, but your object tables might be at the root level of the geodatabase.

    TIP: If a feature class or object table already has a GlobalID field, the tool does not add another one. Instead, a dialog appears stating that GlobalIDs already exist.

    1. For the dataset level, in ArcCatalog, right-click the dataset and choose Manage > Add Global IDs. Then, click Yes to confirm.

    2. For a feature class or object table at the root level of the geodatabase, right-click the feature class or table directly and choose Manage > Add Global IDs. Then, click Yes to confirm.

      TIP: You cannot multi-select feature classes and object tables in the Catalog Tree. But, you can in the Contents tab. In other words, in the Catalog Tree click the geodatabase once to highlight in blue. Then, in the Contents tab use Shift and Ctrl to multi-select feature classes and object tables. Finally, right-click to Add Global IDs to the highlighted set of feature classes and tables.

  2. After adding, review the Attribute Tables to see the new GlobalID fields.


Migrate Relationship Class

Use the tool Migrate Relationship Class to convert all the Conduit Manager and Underground Facilities Manager relationships (except for the Conduit_CrossSectionAnnotation relationship, which does not support GlobalID) to use GlobalID instead of ObjectID. You can read more information about this tool in the Esri help document Migrate Relationship Class.

We recommend you create a backup of your database prior to performing these steps. After migrating the relationships to use GlobalID, there is not a way to convert back to use ObjectID.

To use this tool:

  1. In ArcCatalog, on the Main Menu click Windows > Search.

  2. In the Search pane, type Migrate Relationship Class, then press Enter.

  3. Once found, click the Migrate Relationship Class (Data Management) tool.

  4. In the Migrate Relationship Class dialog, use the Browse icon to find an Input Relationship Class.

    TIP: The order in which you convert relationships does not matter. You need to convert all participating relationships (except for Conduit_CrossSectionAnnotation), which means you repeat this step several times. Have a checklist nearby to track your progress. A list of the relationships is toward the top of this help topic.

  5. Click OK.

  6. Wait for the Success confirmation.

    TIP: If you missed the confirmation or accidentally closed it before reading, you can re-open it. On the Main Menu, click Geoprocessing > Results.

  7. Repeat with the next relationship.


Clean Up Relationship Tables (Optional)

At this point, the relationships are migrated, and the application functionality is ready to go. However, we recommend a few clean up steps. These are optional, but they clean up the Attribute Editor for end users in the application.

For example, right now your attributed relationships still display the old ObjectID fields. In the image below you can still see the PrimaryConductorOID and DuctOID fields. While their presence does not hurt anything, they appear in the Attribute Editor and are no longer functional. This could confuse end users.

Further, the application generated the headers for the GlobalID fields that were added during the migrate process. The names are likely clunky and difficult to read. In the following image, Duct_GlobalID is understandable, but PriUGElectricLin_GlobalID_2 is clunky.

You can use table clean up tools to fix these issues.


Remove the ObjectID Fields

  1. In ArcCatalog, open ArcToolbox > Data Management Tools > Fields.

  2. Double-click the tool Delete Field.

  3. For Input Table, choose one of the attributed relationships (only attributed relationships have a table).

  4. Under Drop Field, check the ObjectID fields (your field names likely differ from the image).

  5. Click OK.

    TIP: If you receive an error, one likely culprit is if the ObjectID fields were previously indexed. Use the ArcToolbox tool Remove Attribute Index first, then repeat the steps above.

  6. Verify the fields were deleted.

  7. Repeat with the other relationships.


Add An Alias to the GlobalID Fields

  1. In ArcCatalog, open ArcToolbox > Data Management Tools > Fields.

  2. Double-click the tool Alter Field.

  3. For Input Table, choose one of the attributed relationships (only attributed relationships have a table).

  4. For field, choose one of the application-generated GlobalID fields.

  5. Type a New Field Alias.

  6. Click OK.

  7. Confirm the changes by viewing the table in ArcMap (the field name in ArcCatalog does not change).

  8. Repeat with other fields in the other relationships.

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Was this helpful?