Pages: 1
- Sujet précédent - Access/SQL - Mise à jour de champs simultanée sur plusieurs couches - Sujet suivant
#1 Thu 12 April 2012 17:05
Access/SQL - Mise à jour de champs simultanée sur plusieurs couches
Bonjour à tous,
J'ai un casse tête à résoudre... J'ai une série de couches SIG que j'ai regroupées dans une geodatabase que je peux ouvrir sous access.
Voilà mes données :
Des éléments dans un champ ID et un champ VALEUR_X dans une feuille Excel (une centaine d’éléments)
Un champ ID et VALEUR_X dans chaque couche SIG avec des valeurs ID différentes au sein des couches.
Je voudrais récupérer mes VALEUR_X de mon fichier Excel pour mettre à jour mes VALEUR_X dans toutes mes couches d'un coup, car les valeurs X sont susceptibles de changer complètement et j'ai besoin de faire la mise à jour instantanément sans aller dans chaque couche faire l'opération manuellement.
Ma solution pour l'instant est de créer une requête mise à jour par couche, mais j'aimerais les regrouper en un seule pour ne lancer la requête qu'une fois.
Ce qui s'en rapproche le plus sans faire la mise à jour est une requête de type UNION sur l'ensemble de mes couches, où j'affiche le champ VALEUR_X de mon tableau excel côte à côte avec la VALEUR_X existante dans mes couches, mais je ne sais pas comment aller plus loin...
Preneur de toute info pour pointer où je fais fausse route, ou vers où je pourrais me diriger ?
Hors ligne
#2 Thu 12 April 2012 17:35
Re: Access/SQL - Mise à jour de champs simultanée sur plusieurs couches
Re,
En attendant de voir comment faire via Access, j'ai rusé en prenant le problème à l'envers. J'ai ouvert toutes mes couches sous Arcgis, que j'ai jointé individuellement avec mon fichier Excel en basant ma jointure sur le champ ID.
Puis j'ai utilisé un outil nommé "Calcul de champ" que j'ai lancé "par lot".
Enfin, j'ai défini le calcul à faire pour chaque couche, à savoir mise à jour du champ VALEUR_X de chaque couche par le champ VALEUR_X du fichier Excel grâce à l'interface de l'outil.
Je récupère un script Python que je peux relancer à volonté, et qui a cette forme pour toutes mes couches :
arcpy.CalculateField_management("Couche1","Couche1.VALEUR_X","[FeuilleExcel$.VALEUR_X]","VB","#")
Hors ligne
Pages: 1
- Sujet précédent - Access/SQL - Mise à jour de champs simultanée sur plusieurs couches - Sujet suivant