Pages: 1
- Sujet précédent - Python : changement de stockage, perte des représentations - Sujet suivant
#1 Thu 17 January 2019 17:30
- anne13
- Participant actif
- Lieu: Villeurbanne
- Date d'inscription: 12 May 2009
- Messages: 71
Python : changement de stockage, perte des représentations
Bonjour à tous,
je change de stockage de mes données (d'Oracle vers Postgre) et j'ai réalisé des scripts pour modifier les mxd pour refaire les chemins avec la fonction lyr.findAndReplaceWorkspacePath.
J'en profite également pour modifier le nom de quelques couches qui n'étaient pas très explicites, changer de schéma certaines couches, ou même intégrer quelques shapes dans ma base postgre.
Le script pour pointer vers la nouvelle couche avec le nom modifié/le nouveau schéma/le nouveau stockage fonctionne bien avec lyr.replaceDataSource, par exemple :
for lyr in arcpy.mapping.ListLayers(mxd):
if lyr.datasetName == r"FDP_VIL.PerimetreBureauxVote":
lyr.replaceDataSource(r"C:\Users\abo\AppData\Roaming\ESRI\Desktop10.6\ArcCatalog\postgre-dsi_maj.sde", "SDE_WORKSPACE", "sig.fdp_vil.ElectionsBureaux2017")
Mon problème : quand je rouvre mon mxd, j'ai perdu les symbologies pour lesquelles étaient attribuées des représentations (dans la symbologie apparait Représentation : Inconnu) :-(
Des représentations sont bien présentes dans ma base Postgre puisque manuellement j'arrive remettre les symbologies en représentations. Cela ne concerne que quelques couches, mais j'aimerai ne pas avoir à rouvrir les innombrables mxd de toute la collectivité pour refaire apparaitre les représentations!
Après quelques recherches, il semblerait que le nom de la représentation soit en cause car il comporte le nouveau chemin (par exemple sig.fdp_vil.ElectionsBureaux2017_Rep), mais je n'arrive pas à trouver dans les aides python les fonctions qui permettent d'attribuer une nouvelle représentation à une couche.
Est ce que quelqu'un a déjà automatisé ce type d'opération ou connait les fonctions à utiliser?
Merci pour votre aide !
PS : pas experte en python, mais je me soigne
Anne B, Ville de Villeurbanne
Hors ligne
Pages: 1
- Sujet précédent - Python : changement de stockage, perte des représentations - Sujet suivant