#1 Mon 22 July 2019 12:05
- simco
- Juste Inscrit !
- Date d'inscription: 19 Jul 2019
- Messages: 2
Code ArcPy qui ne fonctionne pas
Bonjour,
J'ai réalisé le code arcpy suivant afin de permettre de sélectionner la commune de son choix qui lui retourne une liste des agriculteurs présents dans cette commune.
Voici le code :
# -*- coding: utf-8 -*-
# ---------------------------------------------------------------------------
# script.py
# Created on: 2019-07-19 13:06:25.00000
# (generated by ArcGIS/ModelBuilder)
# Description:
# ---------------------------------------------------------------------------
# Import arcpy module
import sys, string, os, arcpy, math, random
arcpy.overwriteoutput = 1
arcpy.env.ScratchWorkspace = "E:CG-GEOPROG-2019GEOPROG.mdbExploitants_Geneve"
# Load required toolboxes
arcpy.AddToolbox("C:\Program Files (x86)\ArcGIS\Desktop10.3\ArcToolbox\Toolboxes\Data Management Tools.tbx")
# Local variables:
NomCommune = arcpy.GetParameterAsText(0)
# Traitement
Selection = arcpy.SelectLayerByAttribute_management ("Exploitants_Geneve","NEW_SELECTION","[commune] = 'NomCommune'")
arcpy.CopyFeatures_management(Selection,"Exploitants_Commune")
Ma couche vecteur étant Exploitants_Genève et elle possède une colonne "Commune".
Cependant, lorsque j'exécute le script sur ArcGis, le programme ne me renvoit qu'une table vide avec seulement le nom des colonnes.
En plus quand j'exécute :
arcpy.SelectLayerByAttribute_management ("Exploitants_Geneve","NEW_SELECTION","[commune] = 'NomCommune'")
arcpy.CopyFeatures_management(Selection,"Exploitants_Commune")
sur le commande python de ArcGis, cela fonctionne parfaitement.
Quelqu'un saurait m'aiguiller sur la provenance du problème ?
Cordialement, Simco
Hors ligne
#2 Tue 23 July 2019 14:37
- AlizeeL
- Juste Inscrit !
- Date d'inscription: 4 Feb 2016
- Messages: 2
Re: Code ArcPy qui ne fonctionne pas
Bonjour,
Pour sélectionner des données sous Arcpy, il faut d'abord générer une couche :
arcpy.MakeFeatureLayer_management("Exploitants_Geneve", "selection")
On peut ensuite faire une sélection et l'exporter :
arcpy.SelectLayerByAttribute_management("selection", "NEW_SELECTION", "[commune] = 'NomCommune'")
arcpy.CopyFeatures_management(selection, "Exploitants_commune")
Il y a un bon exemple en bas de la page de doc : http://desktop.arcgis.com/fr/arcmap/10. … -layer.htm
Hors ligne