Intento explicar aquí lo que estoy tratando de hacer:
Tengo un shapefile y una tabla dbf independiente con los mismos campos. En la tabla dbf, todos los campos están poblados, pero en la tabla de atributos shapefile solo uno, asígnele el nombre "OneField". Lo que quiero hacer es verificar que los valores de "OneField" (Shapefile) sean los mismos que los valores de "OneField" (tabla dbf) y, de ser así, llenar los campos vacíos restantes en la tabla de atributos de shapefile con los valores en la tabla independiente de dbf.
Por el momento, estoy tratando de copiar los valores de la tabla dbf independiente a la tabla de atributos de shapefile, pero estoy atascado (cuando ejecuto este código recibo un mensaje de que pythonwin dejó de funcionar y no sucede nada en las tablas). ¿Me puedes echar una mano por favor?
Aquí está el código:
import arcpy
table = "link/to/table.dbf"
fc = "link/to/shapefile.shp"
# Create a search cursor
rowsTable = arcpy.SearchCursor(table)
# Create an update cursor
rowsFc = arcpy.UpdateCursor(fc)
for row in rowsTable:
row = row.getValue("OneField")
valueTable = row
for row in rowsFc:
row = row.setValue("OneField", valueTable)
rowsFc.updateRow(row)
row = rowsFc.next()
row = rowsTable.next()
del row, rowsFc, rowsTable
Muchas gracias