Cerco di spiegare qui cosa sto cercando di fare:
Ho un file shapefile e una tabella dbf indipendente con gli stessi campi. Nella tabella dbf tutti i campi sono popolati ma nella tabella degli attributi shapefile solo uno, lo chiamiamo "OneField". Quello che voglio fare è verificare che i valori di "OneField" (Shapefile) siano gli stessi di "OneField" (tabella dbf) e, in tal caso, popolare i campi vuoti rimanenti nella tabella degli attributi di shapefile con quelli nella tabella dbf indipendente.
Al momento sto solo cercando di copiare i valori dalla tabella indipendente dbf alla tabella degli attributi shapefile ma sono bloccato (quando eseguo questo codice ricevo un messaggio che pythonwin ha smesso di funzionare e non succede nulla alle tabelle). Puoi darmi una mano per favore?
Ecco il codice:
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
Grazie mille