<\/HEAD>
Ik heb een script dat een excel neemt, importeert als een tabel en vervolgens een query uitvoert om de benodigde rijen te krijgen en deze exporteert naar een nieuwe tabel. Daarna loopt een search cursor door de tabel en maakt een lijst met waarden. Vervolgens wordt er door de lijst van waarden gelopen en worden de waarden gebruikt als invoer voor de Where Clause voor select by attribute om het juiste polygoon te selecteren. Dat vergunningpolygoon wordt vervolgens gebruikt om palen te selecteren uit een andere feature class en die palen worden geëxporteerd als een nieuwe feature class genoemd naar de waarde die is gebruikt om het vergunningpolygoon te selecteren. Het probleem is het doorgeven van de waarde uit de lijst met waarden aan de where-clausule van de SelectLayerByAttribute_management tool. <\/P>
<\/P>
import <\/SPAN>arcpy
import <\/SPAN>datetime
# Variabelen
<\/SPAN>time = datetime.date.today()
raw = r"C:\Users\BB0322\Desktop\Projects\MRE_Coversheet\KC\MRE_Table.xlsx"
<\/SPAN>mre_table = r"C:\Users\BB0322\Desktop\Projects\MRE_Coversheet\KC\KC_MRE.gdb\MRE_Tb"
<\/SPAN>permits = r"C:\Users\BB0322\Desktop\Projects\MRE_Coversheet\KC\KC_MRE.gdb\Permits"
<\/SPAN>Poles = r"C:\Users\BB0322\Desktop\Projects\MRE_Coversheet\KC\KC_MRE.gdb\Poles"
<\/SPAN>work_table = r"C:\Users\BB0322\Desktop\Projects\MRE_Coversheet\KC\KC_MRE.gdb\MRE_workTB"
<\/SPAN>geoDB = r"C:\Users\BB0322\Desktop\Projects\MRE_Coversheet\KC\KC_MRE.gdb"
<\/SPAN>
<\/SPAN>arcpy.env.workspace = r"C:\Users\BB0322\Desktop\Projects\MRE_Coversheet\KC\KC_MRE.gdb"
<\/SPAN>arcpy.env.overwriteOutput = True
<\/SPAN>
<\/SPAN>
<\/SPAN>try<\/SPAN>:
print<\/SPAN>("Tabel maken: " <\/SPAN>+ mre_table)
arcpy.ExcelToTable_conversion(raw, <\/SPAN>mre_table, <\/SPAN>"Sheet1"<\/SPAN>)
mre_tview = arcpy.MakeTableView_management(mre_table, <\/SPAN>"MRE_TableView"<\/SPAN>)
arcpy.SelectLayerByAttribute_management(mre_tview, <\/SPAN>"NEW_SELECTION"<\/SPAN>, <\/SPAN>"Ticket_Number IS NOT NULL"<\/SPAN>, None<\/SPAN>)
arcpy.SelectLayerByAttribute_management(mre_tview, <\/SPAN>"REMOVE_FROM_SELECTION"<\/SPAN>, <\/SPAN>"Permit_Name = ' '"<\/SPAN>, None<\/SPAN>)
arcpy.CopyRows_management(mre_tview, <\/SPAN>work_table)
permitview = arcpy.MakeFeatureLayer_management(permits, <\/span>"Permits_Layer")
poleview = arcpy.MakeFeatureLayer_management(Poles, "Poles_Layer")
# Een lijst maken van vergunningnamen om door te geven aan select by attributes voor de vergunningroosters
AllValues = []
with arcpy.da.SearchCursor(work_table, ("Permit_Name", "Ticket_Number")) as search:
for row in search:
if row[0] not in AllValues:
AllValues.append(row[0])
# Door de lijst lopen en een polygoon selecteren en vervolgens die polygoon gebruiken om palen binnen die polygoon te selecteren en die palen exporteren naar individuele feature classes
for Value in AllValues:
print(Value)
itsa = "permit_name = {}".format(Value)
print(itsa)
expression = str(itsa)
permitSelect = arcpy.SelectLayerByAttribute_management(permitview, "NEW_SELECTION", expression, None)
permitPoly = arcpy.MakeFeatureLayer_management(permitSelect, "permitPoly_" + Value)
poleSelect = arcpy.SelectLayerByLocation_management(poleview, "INTERSECT", permitPoly, "30 FEET", "NEW_SELECTION",