banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Fri 30 November 2012 11:44

Lebon henry
Participant occasionnel
Lieu: Avignon
Date d'inscription: 23 Sep 2007
Messages: 12

utilisation des pages dynamiques dans arcpy

Bonjour,

J'ai un souci avec mon script. J'aimerais utiliser la valeur d'un champ de ma couche d'index de pages dynamiques pour nommer mes fichiers de sortie.

En fait, le nom du champ est une variable (un paramètre de mon script), le problème est que la fonction "dataDrivenPages.pageRow" prend en considération le nom de la variable et non pas sa valeur. Il va chercher un champ s'appellent "Field_ref" au lieu du nom que j'ai indiqué dans mon paramètre. Quelqu'un sait-il comment faire pour qu'il prennent bien en compte le nom du champ que je lui indique ?

Code:

couche_reference = arcpy.GetParameterAsText(0)
Field_ref = arcpy.GetParameterAsText(1) 
dossier_result = arcpy.GetParameterAsText(2)

mxd1 = arcpy.mapping.MapDocument("CURRENT")

for pageNum in range(1, mxd1.dataDrivenPages.pageCount + 1):
    mxd1.dataDrivenPages.currentPageID = pageNum  
    Field_value = mxd1.dataDrivenPages.pageRow.Field_ref

Bien cordialement.

Dernière modification par Lebon henry (Fri 30 November 2012 11:44)

Hors ligne

 

#2 Fri 30 November 2012 13:30

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: utilisation des pages dynamiques dans arcpy

Bonjour,

Ca serait pas un truc comme ça que tu veux faire ?

Field = "MyField"
pageName = mxd.dataDrivenPages.pageRow.getValue(Field)

Hors ligne

 

#3 Fri 30 November 2012 14:18

Lebon henry
Participant occasionnel
Lieu: Avignon
Date d'inscription: 23 Sep 2007
Messages: 12

Re: utilisation des pages dynamiques dans arcpy

Robin a écrit:

Bonjour,

Ca serait pas un truc comme ça que tu veux faire ?

Field = "MyField"
pageName = mxd.dataDrivenPages.pageRow.getValue(Field)


Bonjour Robin,

Merci pour ta réponse. Ca fonctionne très bien.

Bonne journée.

Hors ligne

 

Pied de page des forums

Powered by FluxBB