3

I have an MXD used to join many feature classes to the same table. This table has moved to a different workspace and so I need to update all the Joins to point to the new workspace. I don't see any tools in ArcMap for modifying an existing join.

How can I do this?

4
  • ...I haven't used ESRI software in ages, but wasn't one of the (early) strengths of ArcCatalog to manage those things automatically?
    – geozelot
    Jun 7, 2018 at 22:19
  • Does the path come up in ArcCatalog when you right click on the MXD and 'Set Data Sources'? If so you should be able to change that path once for all joins in that MXD. That is the only thing I can think of to change the path to joined data without ArcObjects; there isn't a edit join dialog that I know of.. perhaps one of the ArcScripts might. Jun 7, 2018 at 22:19
  • @MichaelStimson thanks anyways, but unfortunately that only changes the source of the table in the MXD. The Join still references the other table.
    – Stella
    Jun 7, 2018 at 23:27
  • 1
    It probably doesn't help but the join (or relate) object is IDisplayRelationshipClass which is implemented by IFeatureLayer, in the properties of the IDisplayRelationshipClass there is RelationshipClass which is of type IRelationshipClass which can be recreated with the new data using IRelationshipClass.CreateRelationsip (see resources.arcgis.com/en/help/arcobjects-net/componenthelp/…).. all of the properties of an existing relationship class are read-only. This is something that is achievable with ArcObjects in python. Jun 8, 2018 at 0:19

1 Answer 1

1

The Remove Join (arcpy.RemoveJoin_management) and Add Join (arcpy.AddJoin_management) tools are available in Python. You should be able to iterate through the layers of your mxd using arcpy.mapping methods, find layers that have the join field you expect and process the remove Join and Add Join tools on the layers.

1
  • Thanks, I ended up not using python, because by the time I would have written a script, I could have just done it manually. I wish there was a sample script readily available to adapt to my needs. oh well...
    – Stella
    Jun 13, 2018 at 21:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.