Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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 06 February 2015 17:25

Une autre Claire
Juste Inscrit !
Date d'inscription: 4 Dec 2012
Messages: 3

ArcGIS 10.1 - Python Edition des proprietes de multi-mxd, PB Thumbnail

Bonjour et merci de m'aider à trouver la solution !
J'ai écrit ce petit bout de script pour éditer les propriétés de plusieurs cartes, concernant le même rapport.
Il fonctionne plutôt bien, a l'exception des imagettes/Thumbnail

Une idee sur ce qui ne va pas dans le script, ou est-ce un dysfonctionnement de mon arcGis encore en 10.1.

Merci d’avance

CC

   

Code:

import arcpy,os

    #Read parameters from dialog
    dossierRech = arcpy.GetParameterAsText(0)
    Summary = arcpy.GetParameterAsText(1)
    Description = arcpy.GetParameterAsText(2)
    Author = arcpy.GetParameterAsText(3)
    Credits = arcpy.GetParameterAsText(4)

    #workspace to search for MXDs
    arcpy.env.workspace = dossierRech

    #list map documents in folder
    mxdList = arcpy.ListFiles("*.mxd")

    #set properties setting for each MXD in list.
    for file in mxdList:

    #set map document to change
    filePath = os.path.join(dossierRech, file)
    mxd = arcpy.mapping.MapDocument(filePath)

    #change Title
    mxd.title = file

    #change Summary
    mxd.summary = Summary

    #change Description
    mxd.description = Description

    #change Author
    mxd.author = Author

    #change credits
    mxd.credits = Credits

    #Update map document tags
    #Generate unique, sorted list of layer names
    layers = arcpy.mapping.ListLayers(mxd)
    layerList = []
    for lyr in layers:
        if not lyr.isGroupLayer:
            layerList.append(lyr.name)
    uniqueList = list(set(layerList))
    uniqueList.sort()

    #Update map document tags
    tagList = ",".join(uniqueList)  
    mxd.tags = tagList

    #set relative paths property
    mxd.relativePaths = True

    #update Thumbnail
    mxd.deleteThumbnail()    
    mxd.makeThumbnail()

    #save map document change
    mxd.save()

Hors ligne

 

#2 Fri 06 February 2015 18:57

Franck B
Membre
Lieu: PACA
Date d'inscription: 6 Sep 2005
Messages: 1382
Site web

Re: ArcGIS 10.1 - Python Edition des proprietes de multi-mxd, PB Thumbnail

Bonjour,

Quel est le problème ?
Le script plante ou les aperçus ne se mettent pas à jour ?

A+

Franck

Hors ligne

 

#3 Fri 06 February 2015 21:29

Une autre Claire
Juste Inscrit !
Date d'inscription: 4 Dec 2012
Messages: 3

Re: ArcGIS 10.1 - Python Edition des proprietes de multi-mxd, PB Thumbnail

Bonjour et merci Franck,

le script fonctionne pour tout sauf pour la partie concernant le Thumbnail, comme si les commandes suivantes ne fonctionnaient pas     

Code:

    mxd.deleteThumbnail()    
    mxd.makeThumbnail()

J'ai bien verifie, dans mon script original il y a les bons espaces (indent) pour que la boucle se fasse, j'ai meme tente d'inverser les mise a jour de Tags et Thumbnail pour verifier que les boucles allaient jusqu'au bout... les Tags sont bien crees.

Est ce que tu crois que je dois passer par cette autre methode (ci dessous) ? trouvee sur ce lien http://mappingcenter.esri.com/index.cfm … amp;q=1504

J'avoue que je prefererais faire fonctionner le mien... je comprends pas pourquoi ce ne passe pas...

Code:

import arcpy, os
# Provide folder path to loop through (first level only)
folderPath = r"D:\MXD"
for filename in os.listdir(folderPath):
    fullpath = os.path.join(folderPath, filename)
    if os.path.isfile(fullpath):
        basename, extension = os.path.splitext(fullpath)
        if extension.lower() == ".mxd":
            mxd = arcpy.mapping.MapDocument(fullpath)
            print "creating thumbnail for " + fullpath
            mxd.makeThumbnail()
            mxd.save()
del mxd

merci

CC

Hors ligne

 

Pied de page des forums

Powered by FluxBB