J'ai un fichier ArcMap (.MXD) que je veux rechercher pour ses couches et ensuite choisir un calque et Python me montre les noms des champs de la table attributaire de ce calque.Liste les noms des champs de couche dans le fichier MXD
J'ai été si loin que Python (ArcPy) me liste les noms de calques du mxd mais je n'arrive pas à comprendre comment obtenir les noms de champs.
Dans ArcMap lui-même, je peux facilement le faire de cette façon:
fields = arcpy.ListFields(Layer)
for field in fields:
print field.name
mais comment dois-je accomplir qu'en dehors de ArcMap par un fichier MXD? J'ai beaucoup cherché et n'ai rien trouvé, alors j'attends votre aide avec impatience! Merci beaucoup!
Ouais pour un shapefile il est clair. Le point est de le faire avec un MXD et de pointer vers la couche à partir de là. Quelque chose comme 'arcpy.ListFields (mxd, Layer)', mais cela ne fonctionne pas. Une idée? – Khaled
@Khaled ok j'ai ajouté l'option pour itérer les shapefiles du mxd –
cette autre solution me donne alors seulement les couches du MXD. Je veux que Python ouvre le MXD, présentez-moi une liste de tous les calques dont je choisis un (GUI) et ensuite récupérez les champs de ce calque. Mais j'ai trouvé une solution (voir ci-dessous). J'ai dû en tromper. N'importe qui a une meilleure solution, est invité à le poster! – Khaled