Hi ArcCommunity,
This question might be a basic one but it is an efficiency and data management issue I run into time and time again. For instance, I am running analysis on calculating different metrics for a given buffer zone and I want to join a bunch of different outputs back to the original buffer layer so they are spatially referenced.
Currently, I join fields to a new copy layer each time so then I end up with a bunch of layers each with 1 more field (or however many fields I joined) than the last layer.
I mean this workflow gets the job done, but if anyone has a more efficient workflow that does not involve making duplicate tables your expert input would be greatly appreciated!
From a young student of the game,
Evan
Hey @EvanShea
So when you're performing joins, are you using Spatial Join by chance? This should let you join features to one another spatially, along with that, you could use the add join and add spatial join like this here:
If you could give an example of your workflow or maybe a list of steps, we may be able to see a little deeper into what's going on!
Cody
Hey Cody,
Thanks for your response! I typically use the Join Field Geoprocessing Tool, or the Add Join as you have showed in the screenshot from the contents pane. I would use Join Field Geoprocessing Tool when there are specific fields I want to transfer. As to my knowledge using Add Join from the contents pane joins all fields (please correct me if I misunderstand the full scope of that process).
I don't normally use the Spatial Join option, would that be a better way to approach a workflow where I need to join multiple tables together at the end?
For context, I had taken a field from an output from the Tabulate Area Geoprocessing tool - calculating the total area a specific land cover class covers within a polygon. Then joining that single field back to the polygon layer. I then created some separate outputs from a PyLandStats python package in an external program. I then wanted to join those table fields to the original polygon table as well - this table had no spatial reference, thus I had to use Add Join.
I then could not join the PyLandStats field as the "ERROR 000499: table is not editable" - which I believe can be attributed to the fact that the table already holds a join. So I just had to create a duplicate, but I wonder if there is a better way to approach this workflow knowing I eventually want to join multiple different tables back to the original polygon layers attribute table.
Hope this context helps!
Evan
to confirm about 000499 error
000499: Table is not editable.—ArcGIS Pro | Documentation
This error can occur for the following reasons:
....
The table is currently participating in a join.
....
Hey Dan,
Thanks for the message. Can we interpret that as "The table has already performed a join", or how do we interpret the use of the term "currently"?
Because in my case the table has indeed already performed a join, but does that mean it is currently participating in a join? Tricky terminology.
If you have thoughts let me know!
Evan
"participating in a join" means that the table is either the source or destination table of the join... so a join has been made and the table in question is one of the two
Ah yes that makes sense.
And therefore no new join can be made on a table that already has a join performed on it. So, would you say - only one join per table? How does one get around this without duplicating the table, or is that the best work around?
Evan