Annonce
Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !
10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …
Retrouver nos membres bienfaiteurs
Pages: 1
- Sujet précédent - ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0) - Sujet suivant
#1 Tue 01 April 2014 15:13
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour,
J'utilise actuellement la version 10.2 d'ArcMap au travail. Je travail sur des projets qui peuvent être utilisés par des collègues, qui eux, utilisent la version 10.0. Hélas, quand ils ouvrent mes projets "enregistrés" depuis ma version 10.2, il y a un message d'erreur de compatibilité et ils n'ont pas la possibilité d'ouvrir le document.
De ce fait, je suis obligé "d'enregistrer une copie sous" en sélectionnant (ArcMap document 10.0) pour qu'ils puissent utiliser mes projets.
Est-il possible de créer un raccourci dans ArcGis (un bouton par exemple) pour faire directement l'enregistrement du projet sous la version 10.0 au lieu de passer à chaque fois par le menu, Fichier, Enregistrer une copie sous, etc... ?
Bien cordialement,
<edit modération>
C'est sous une version 10.0 que les mxd enregistrés en version 10.2 ne s’ouvrent pas.
<edit modération>
Hors ligne
#2 Tue 01 April 2014 15:24
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Salut,
Est ce que ceci ne répondrait pas à ta question?
---> http://resources.arcgis.com/fr/help/mai … 000z000000
A+
Joël
Hors ligne
#3 Tue 01 April 2014 17:29
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Salut et merci de ta réponse,
Oui, j'avais déjà essayé cette option mais avec cette méthode, je peux seulement aller jusqu'à "Enregistrer la copie sous" alors que je voudrais sélectionner directement "ArcMap Document V10".
Hors ligne
#4 Tue 01 April 2014 18:26
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Alors une autre solution serait de développer quelque chose en python.
Une astuce vue dans --> http://resources.arcgis.com/fr/help/mai … 0253000000
De plus, la commande Enregistrer une copie permet également d'enregistrer un document pour pouvoir l'ouvrir dans une version antérieure d'ArcGIS.
Tout à la fin
A+
Joël
Dernière modification par Spacejo (Tue 01 April 2014 18:43)
Hors ligne
#5 Tue 01 April 2014 19:58
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour,
J'utilise actuellement la version 10.2 d'ArcMap au travail. Je travail sur des projets qui peuvent être utilisés par des collègues, qui eux, utilisent la version 10.1. Hélas, quand ils ouvrent mes projets "enregistrés" depuis ma version 10.2, il y a un message d'erreur de compatibilité et ils n'ont pas la possibilité d'ouvrir le document.
C'est un retour intéressant car cela ne correspond pas à la documentation : Aide ArcGIS (10.2 et 10.2.1) - Enregistrement d'une carte.
La documentation dit :
... Notez que les documents ArcMap d'ArcGIS 10.1, 10.2 et 10.2.1. sont directement compatibles entre eux ...
D'après ton expérience, cela ne se vérifie pas ?
J'ai fait quelques tests sur des MXD très simple créé en 10.2.1 et je les ai ouverts sans problème en 10.1.
Tes MXD sont compliqués ou sont composés de quelque-chose de particulier ?
A+
Franck
Hors ligne
#6 Wed 02 April 2014 09:09
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour,
Pour ce qui est du code python, voir des idées ici => http://www.forumsig.org/showthread.php/ … %C3%A9faut
Martin
Hors ligne
#7 Wed 02 April 2014 13:19
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour,
En fait, je viens de vérifier et mes collègues ont la version 10.0. J'avais indiqué la version 10.1. Je me suis donc trompé.
Sinon, nos MXD, ne sont pas compliqués non, il s'agit essentiellement de projets de mise en page de cartes, rien de particulier.
Hors ligne
#8 Fri 04 April 2014 08:55
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour,
J'ai commencé a regarder vos liens.
Quelqu'un peut-il m'aider a configurer le code python suivant :
Code:
#Imports import arcpy, sys, os, string #Definitions mxd = arcpy.mapping.MapDocument("CURRENT") #file_path = os.path. filePath = os.path.dirname(mxd.filePath) + "\\" #getting the file name fullfile = mxd.filepath file_temp = os.path.basename(fullfile) file_temp = file_temp.rstrip(os.path.splitext(file_temp)[1]) #Put together the full file references file_name = filePath + file_temp + ".mxd" file_name_temp = filePath + file_temp + "_Copy.mxd" #Save a copy mxd.saveACopy(file_name_temp, '10.0') #Closing the file doesn't work! #Need to close the file to rename the copy and then open it again os.rename(file_name_temp, file_name) os.startfile(file_name)
J'ai suivi les instructions sur les liens, mais je ne sais pas exactement quelles lignes il faut modifier pour que le script s’exécute correctement.
Bien cordialement
Hors ligne
#9 Fri 04 April 2014 10:41
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour,
Il semble que ce script n'a pas besoin d'être configuré, il enregistre le mxd courant en version 10.0 en reprenant le nom du document en y ajoutant _Copy Je peux te documenter un peu plus le script si besoin.
Travaillant sur la version 10.0 je ne peux pas le tester. L'as-tu tester et que se passe-t-il ?
@+
Frédéric
Hors ligne
#10 Fri 04 April 2014 11:11
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Salut,
Oui, j'ai testé le script mais j'ai le message d'erreur suivant lors de l'exécution :
Code:
Exécution du script ConvertsMXDs... SyntaxError: EOL while scanning string literal (script_save_in_v10.py, line 7) Échec de l’exécution de (ConvertsMXDs). Échec à Fri Apr 04 11:09:40 2014 (temps écoulé : 0,74 secondes)
Hors ligne
#11 Fri 04 April 2014 11:25
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
En regardant ton message d'erreur:
As tu bien copier le script?
A la fin de la Ligne 7 ---> file_name = filePath + file_temp + ".mxd
Il ne manquerait pas un --> "
A+
Joël
Dernière modification par Spacejo (Fri 04 April 2014 11:26)
Hors ligne
#12 Fri 04 April 2014 11:56
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Non pas d'oublie de "
Par contre j'ai un autre message d'erreur maintenant :
Code:
Heure de début : Fri Apr 04 11:54:52 2014 Exécution du script ConvertsMXDs... Traceback (most recent call last): File "C:\Users\hugo\Desktop\Scripts Python\script_save_in_v10.py", line 9, in <module> fullfile = mxd.filepath AttributeError: 'MapDocument' object has no attribute 'filepath' Échec de l’exécution de (ConvertsMXDs). Échec à Fri Apr 04 11:54:53 2014 (temps écoulé : 0,37 secondes)
J'ai suivi à la lettre ce tutoriel : http://support.esri.com/es/knowledgebas … tail/38783
Hors ligne
#13 Fri 04 April 2014 12:07
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour il faut modifier la ligne :
fullfile = mxd.filepath
par :
fullfile = mxd.filePath
¨Python est sensible à la casse des mots !!
Hors ligne
#14 Fri 04 April 2014 12:45
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Voici le script amendé et corrigé :
Code:
# -*- coding: cp1252 -*- #Import module import arcpy, sys, os, string # Autorisation d'ecraser des fichiers déjà existants arcpy.env.overwriteOutput = True #Parametre : # ducoment mxd courant mxd = arcpy.mapping.MapDocument("CURRENT") #Chemin et nom du mxd courant fullfile = mxd.filePath arcpy.AddMessage ("Nom du mxd courant : " + fullfile) #Chemin et nom du mxd courant sans extension file_temp = os.path.splitext(fullfile)[0] arcpy.AddMessage (file_temp) #Nouveau nom file_name_temp = file_temp + "_Copy_v10.mxd" #arcpy.AddMessage ("MXD a sauvegarder :" + file_name) arcpy.AddMessage ("MXD sauvegarde en V10.0 :" + file_name_temp) # Test existence de la sauvegarde if os.path.exists(file_name_temp): arcpy.AddMessage("Fichier mxd existe") try : # essaye de le supprimer os.remove(file_name_temp) except : arcpy.AddError ("Fichier non sauvegarde : impossible de le supprimer") sys.exit() #SAuvegarde sous nouveau en version 10.0 mxd.saveACopy(file_name_temp, '10.0') arcpy.AddMessage ("Fichier sauvegarde")
J'ai francisé les explications, et rajouté un test sur l'existence du fichier en sortie, tu pourras sauvegarder ton mxd en écrasnt l'ancien fichier.
Enfin j'ai rajouté plein de messages qui permettent de suivre ce que fait le script notamment en cas de problème !
Bonne journée
Frédéric
Hors ligne
#15 Fri 04 April 2014 13:35
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Salut et merci de ton aide.
Effectivement le script s'exécute correctement maintenant. Par contre, avant d'exécuter le script, dans "Input MXDs" je sélectionne mon projet.mxd de base, (type de données = document ArcMap), puis dans "Output Location" je sélectionne mon répertoire de sortie de fichier (type de données = Espace de travail) et enfin dans Output Version la version que je souhaite, donc la 10.0 renseignée au préalable dans la chaîne de l'attribut.
Le problème est que malgré la bonne exécution du script, je n'ai aucun fichier qui apparaît dans mon dossier de sortie. J'ai mal réalisé un paramétrage je pense ?
Hors ligne
#16 Fri 04 April 2014 14:12
- grdfred
- Participant actif
- Lieu: nantes
- Date d'inscription: 17 Jul 2007
- Messages: 56
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Le script que j'ai posté est un script autonome : il n' y a pas de paramètres. Pour l’exécuter (sous 10.0) il suffit de l'associer à un outil.
Si tu souhaites pouvoir le paramétrer il faut le modifier et ajouter les paramètres dans le script et l'importer à une toolbox où tu précises les paramètres d'entrée et de sortie.
par exemple en reprenant tes variables
Code:
Input_MXDs = arcpy.GetParameter(0) pour le premier parametre le mxd Output_Location = arcpy.GetParameterAsText(1) pour le 2eme parametre le chemin de sortie Output_Version = arcpy.GetParameterAsText(2) pour le 3eme parametre la version
Il faut aussi remodifier le script :
Code:
# -*- coding: cp1252 -*- #Import module import arcpy, sys, os, string # Autorisation d'ecraser des fichiers déjà existants arcpy.env.overwriteOutput = True Input_MXDs = arcpy.GetParameterAsText(0) Output_Location = arcpy.GetParameterAsText(1) Output_Version = arcpy.GetParameterAsText(2) #Parametre : # ducoment mxd courant mxd = arcpy.mapping.MapDocument(Input_MXDs) #Chemin et nom du mxd courant fullfile = mxd.filePath arcpy.AddMessage ("Chemin du mxd a traiter : " + fullfile) fullfile2=os.path.basename(fullfile) file_temp2= os.path.splitext(fullfile2)[0] arcpy.AddMessage ("Nom du mxd a traiter : " + file_temp2) #Chemin et nom du mxd courant sans extension #file_temp = os.path.splitext(fullfile)[0] #arcpy.AddMessage (file_temp) #Nouveau nom file_name_temp = Output_Location+"//"+file_temp2 + "_Copy_v10.mxd" #arcpy.AddMessage ("MXD a sauvegarder :" + file_name) arcpy.AddMessage ("MXD sauvegarde en V10.0 :" + file_name_temp) # Test existence de la sauvegarde if os.path.exists(file_name_temp): arcpy.AddMessage("Fichier mxd existe") try : # essaye de le supprimer os.remove(file_name_temp) except : arcpy.AddError ("Fichier non sauvegarde : impossible de le supprimer") sys.exit() #SAuvegarde sous nouveau en version 10.0 mxd.saveACopy(file_name_temp, Output_Version) arcpy.AddMessage ("Fichier sauvegarde")
Bonne journée
Hors ligne
#17 Fri 04 April 2014 15:46
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Ok, merci beaucoup, je vais essayer tout ça et je vous tiens au courant,
Bonne journée,
Hors ligne
#18 Thu 24 April 2014 09:19
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour à tous,
Je reviens vers vous, car j'ai besoin de vos lumières
Le script que vous m'avez proposé dans votre dernier message marche parfaitement. Je l'exécute régulièrement via la "Arctoolbox". J'ai en effet créer une boîte à outils personnalisée.
Cependant, j'ai récemment réalisé le tutoriel suivant (http://resources.arcgis.com/fr/help/mai … 022000000/), en créant un projet de complément, puis une barre d'outils et enfin un bouton python.
En effet, mon but est d'avoir un petit bouton disponible dans mon environnement ArcMap afin que je puisse en un seul "clic" enregistrer mon projet en cours dans la bonne version (10.0).
J'ai donc suivi le tutoriel à la lettre et j'ai modifié mon script dans le dossier "Install" comme ceci :
Code:
# -*- coding: cp1252 -*- ### Importation des modules import arcpy, pythonaddins, sys, os, string class ButtonClass1(object): """Implementation for Projet_Python_1_addin.button (Button)""" def __init__(self): self.enabled = True self.checked = False def onClick(self): pass # Autorisation d'ecraser des fichiers déjà existants arcpy.env.overwriteOutput = True #Input_MXDs = arcpy.GetParameter(0) pour le premier parametre le mxd Input_MXDs = arcpy.GetParameterAsText(0) #Output_Location = arcpy.GetParameterAsText(1) pour le 2eme parametre le chemin de sortie Output_Location = arcpy.GetParameterAsText(1) #Output_Version = arcpy.GetParameterAsText(2) pour le 3eme parametre la version Output_Version = arcpy.GetParameterAsText(2) #Parametre : # ducoment mxd courant mxd = arcpy.mapping.MapDocument(Input_MXDs) #Chemin et nom du mxd courant fullfile = mxd.filePath arcpy.AddMessage ("Chemin du mxd a traiter : " + fullfile) fullfile2=os.path.basename(fullfile) file_temp2= os.path.splitext(fullfile2)[0] arcpy.AddMessage ("Nom du mxd a traiter : " + file_temp2) #Chemin et nom du mxd courant sans extension #file_temp = os.path.splitext(fullfile)[0] #arcpy.AddMessage (file_temp) #Nouveau nom file_name_temp = Output_Location+"//"+file_temp2 + "_v10.mxd" #arcpy.AddMessage ("MXD a sauvegarder :" + file_name) arcpy.AddMessage ("MXD sauvegarde en v10.0 :" + file_name_temp) # Test existence de la sauvegarde if os.path.exists(file_name_temp): arcpy.AddMessage("Fichier mxd existe") try : # essaye de le supprimer os.remove(file_name_temp) except : arcpy.AddError ("Fichier non sauvegarde : impossible de le supprimer") sys.exit() #SAuvegarde sous nouveau en version 10.0 mxd.saveACopy(file_name_temp, Output_Version) arcpy.AddMessage ("Fichier sauvegarde")
C'est le même qu'auparavant. Cependant, lorsque j'ouvre ArcMap mon nouvel outil avec ma nouvelle icône s'affiche correctement, mais malheureusement lorsque je clique sur l'outil, il n'y a aucun signe d'exécution. En gros, rien ne se passe.
J'ai certainement omis de faire quelque chose, ou du moins mal fait quelque chose. Je suis actuellement en phase d'apprentissage du Python, donc c’est assez difficile d'identifier les problèmes.
Si quelqu'un a une idée....
Merci,
Cdlt
Dernière modification par Loutre (Thu 24 April 2014 09:20)
Hors ligne
#19 Thu 24 April 2014 12:06
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Je viens de me rendre compte que je me suis trompé dans le code. C'est celui-ci qui est utilisé et non celui dans mon précédent message.
Code:
# -*- coding: cp1252 -*- # Importation des modules import arcpy, pythonaddins, sys, os, string class ButtonClass1(object): """Implementation for Projet_Python_1_addin.button (Button)""" def __init__(self): self.enabled = True self.checked = False def onClick(self): pass #Autorisation d'ecraser des fichiers déjà existants arcpy.env.overwriteOutput = True #Parametre : # ducoment mxd courant mxd = arcpy.mapping.MapDocument("CURRENT") #Chemin et nom du mxd courant fullfile = mxd.filePath arcpy.AddMessage ("Nom du mxd courant : " + fullfile) #Chemin et nom du mxd courant sans extension file_temp = os.path.splitext(fullfile)[0] arcpy.AddMessage (file_temp) #Nouveau nom file_name_temp = file_temp + "_Copy_v10.mxd" #arcpy.AddMessage ("MXD a sauvegarder :" + file_name) arcpy.AddMessage ("MXD sauvegarde en V10.0 :" + file_name_temp) # Test existence de la sauvegarde if os.path.exists(file_name_temp): arcpy.AddMessage("Fichier mxd existe") try : # essaye de le supprimer os.remove(file_name_temp) except : arcpy.AddError ("Fichier non sauvegarde : impossible de le supprimer") sys.exit() #SAuvegarde sous nouveau en version 10.0 mxd.saveACopy(file_name_temp, '10.0') arcpy.AddMessage ("Fichier sauvegarde")
Hors ligne
#20 Thu 24 April 2014 12:17
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour,
Code:
def onClick(self): pass
Cela code signifie que le click sur le bouton ne fait rien...
Ce code fonctionnera sans doute mieux...
Code:
# -*- coding: cp1252 -*- # Importation des modules import arcpy, pythonaddins, sys, os, string class ButtonClass1(object): """Implementation for Projet_Python_1_addin.button (Button)""" def __init__(self): self.enabled = True self.checked = False def onClick(self): #Autorisation d'ecraser des fichiers déjà existants arcpy.env.overwriteOutput = True #Parametre : # ducoment mxd courant mxd = arcpy.mapping.MapDocument("CURRENT") #Chemin et nom du mxd courant fullfile = mxd.filePath arcpy.AddMessage ("Nom du mxd courant : " + fullfile) #Chemin et nom du mxd courant sans extension file_temp = os.path.splitext(fullfile)[0] arcpy.AddMessage (file_temp) #Nouveau nom file_name_temp = file_temp + "_Copy_v10.mxd" #arcpy.AddMessage ("MXD a sauvegarder :" + file_name) arcpy.AddMessage ("MXD sauvegarde en V10.0 :" + file_name_temp) # Test existence de la sauvegarde if os.path.exists(file_name_temp): arcpy.AddMessage("Fichier mxd existe") try : # essaye de le supprimer os.remove(file_name_temp) except : arcpy.AddError ("Fichier non sauvegarde : impossible de le supprimer") sys.exit() #SAuvegarde sous nouveau en version 10.0 mxd.saveACopy(file_name_temp, '10.0') arcpy.AddMessage ("Fichier sauvegarde")
A+
Franck
Hors ligne
#21 Thu 24 April 2014 12:35
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Salut,
Effectivement, ça marche beaucoup mieux. Merci beaucoup
Tant que j'y suis, autre petite question. Est-il possible d'enregistrer le fichier ouvert avec ma version 10.2 directement en 10.0 sans créer un fichier supplémentaire, mais en écrasant la version actuelle ?
Car dans mon code cette ligne :
Code:
#Nouveau nom file_name_temp = file_temp + "_Copy_v10.mxd"
ajoute un nouveau fichier.
Merci
Hors ligne
#22 Thu 24 April 2014 14:28
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Bonjour,
mais en écrasant la version actuelle ?
Je crains que ce ne soit pas possible, en effet pour choisir la version du document enregistré il faut obligatoirement passer par la commande "enregistrer une copie ..." :
Code:
mxd.saveACopy(file_name_temp, '10.0')
-> Il n'est pas possible d'écraser le fichier courant car ce .mxd est vérouillé (ouvert dans arcmap).
Dernière modification par nitram (Thu 24 April 2014 16:09)
Hors ligne
#23 Thu 24 April 2014 14:58
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Ok, merci de ta réponse
Bonne journée
Hors ligne
#24 Thu 22 May 2014 09:09
- Loutre
- Participant actif
- Lieu: Montpellier
- Date d'inscription: 12 Jan 2008
- Messages: 146
Re: ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0)
Salut.
je viens de me rendre compte de quelque chose :
Code:
# -*- coding: cp1252 -*- #Import module import arcpy, sys, os, string # Autorisation d'ecraser des fichiers déjà existants arcpy.env.overwriteOutput = True Input_MXDs = arcpy.GetParameterAsText(0) Output_Location = arcpy.GetParameterAsText(1) Output_Version = arcpy.GetParameterAsText(2) #Parametre : # ducoment mxd courant mxd = arcpy.mapping.MapDocument(Input_MXDs) #Chemin et nom du mxd courant fullfile = mxd.filePath arcpy.AddMessage ("Chemin du mxd a traiter : " + fullfile) fullfile2=os.path.basename(fullfile) file_temp2= os.path.splitext(fullfile2)[0] arcpy.AddMessage ("Nom du mxd a traiter : " + file_temp2) #Chemin et nom du mxd courant sans extension #file_temp = os.path.splitext(fullfile)[0] #arcpy.AddMessage (file_temp) #Nouveau nom file_name_temp = Output_Location+"//"+file_temp2 + "_Copy_v10.mxd" #arcpy.AddMessage ("MXD a sauvegarder :" + file_name) arcpy.AddMessage ("MXD sauvegarde en V10.0 :" + file_name_temp) # Test existence de la sauvegarde if os.path.exists(file_name_temp): arcpy.AddMessage("Fichier mxd existe") try : # essaye de le supprimer os.remove(file_name_temp) except : arcpy.AddError ("Fichier non sauvegarde : impossible de le supprimer") sys.exit() #SAuvegarde sous nouveau en version 10.0 mxd.saveACopy(file_name_temp, Output_Version) arcpy.AddMessage ("Fichier sauvegarde")
Le script fonctionne parfaitement pour un seul fichier, mais dès que je met plusieurs fichiers dans la liste j'ai un message d'erreur :
Code:
Traceback (most recent call last): File "C:\Users\hugo\Desktop\test.py", line 26, in <module> mxd = arcpy.mapping.MapDocument(Input_MXDs) File "c:\program files (x86)\arcgis\desktop10.2\arcpy\arcpy\arcobjects\mixins.py", line 609, in __init__ assert (os.path.isfile(mxd) or (mxd.lower() == "current")), gp.getIDMessage(89004, "Invalid MXD filename") AssertionError: Nom de fichier MXD non valide.
Une idée ?
Hors ligne
Pages: 1
- Sujet précédent - ArcGIS 10.2 - Créer un raccourci d'enregistrement MXD (10.0) - Sujet suivant