AnsweredAssumed Answered

Join Field doesn't work on multiple fields

Question asked by terrafirma_theo on Sep 25, 2018
Latest reply on Sep 25, 2018 by Dan_Patterson

I have a Table stored in a Geodatabase. It has 11 or so fields (text, long) containing address information. It has an ID column too.

I also have a polygon shapefile of the property boundaries for these addresses. The shapefile only has an ID column.

 

I use Join Field to join the Table to the shapefile using the matching ID columns as the join field.

 

However, joining all the fields from the Table in one go results in error '000852 cannot add field'.

arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRviewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Address;Client_ref;ClientName;Date;Dev_risk;Ong_risk;Our_ref;Page_order;Postcode;RES_or_COM;Scale")

But... if I join the 11 fields in 11 seperate Join Field runs, it does work:

import arcpy, time
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Address")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Postcode")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Date")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Our_ref")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Client_ref")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "ClientName")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Ong_risk")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Dev_risk")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "RES_or_COM")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Page_order")
time.sleep(1)
arcpy.management.JoinField(r"D:\Dropbox\Internal Software\Report_WKTs\Ground_WKTs\recover\GroundWKTsites.shp", "Id", r"D:\Tasks_D\GroundRViewer\Ground_R\GR_temp_dump.gdb\Ground_WKT_to_GIS_table", "Join_id", "Scale")
time.sleep(1)
print("Done")

Why???

Outcomes