Les différentes méthodes d’optimisation abordées dans les articles précédents(Indexation, compression, compactage) peuvent être réalisées au coup par coup manuellement. Mais ce sont des tâches de routine, c’est à dire qu’on est amenés à les effectuer régulièrement.
Un des principes des logiciels SIG est de vous faire gagner du temps et de vous éviter de refaire ce que vous avez déjà fait. ArcGis possède un module tout à fait adapté pour ceci: le Model Builder.
Sans connaissances particulières de programmation il vous permet, avec une interface graphique, de créer des programmes de traitement.
Nous allons supposer, pour l’instant, que vous savez comment ouvrir Model Builder et stocker vos modèles. On reviendra sur les bases de Model Builder dans des prochains articles. Pour voir une introduction à Model Builder, vous pouvez visiter le site d’ESRI : Didacticiel – Création d’outils avec le Model Builder.
Vous avez aussi une présentation avec YouTube de Don Boyes (en anglais) : Model Builder Introduction.
Voici le modèle que nous allons créer, pour automatiser le compactage abordé dans l’article précédent et la sauvegarde d’une géodatabase ArcGis.
Nous allons mettre en place deux outils: un pour compacter la géodatabase, l’autre pour faire une copie de sauvegarde dans un autre dossier.
Par contre, pour le nom de la copie de sauvegarde nous avons besoin de récupérer la date actuelle et l’ajouter au nom. C’est la seule partie compliquée.
Première étape: Compacter la géodatabase.
– Ouvrez un nouveau document vierge dans ArcMap
– Ouvrez un nouveau modèle avec Model Builder
» Cliquez-déplacez l’outil « Compacter » de la boîte à outils « Gestion de données » -> « Geodatabase fichier ».
Conseil: ne chargez pas la géodatabase dans ArcMap. Allez pointer avec le bouton « parcourir les fichiers » sur la géodatabase sur le disque. Comme cela vous êtes sûr que le modèle fonctionnera, même si quand vous le lancez, la géodatabase n’est pas chargée dans ArcMap.
Deuxième étape : Récupérer la date sous forme de texte
Pour concaténer la date au nom de fichier en sortie (sauvegarde) il faut ajouter l’outil « Calcul d’une valeur ». Cet outil n’est pas dans les toolbox, il est disponible dans le menu Insérer » de Model Builder
La fonction gettime récupère la date et heure système.
Le type de donnée en s tie (String) converti la date et heure système en chaîne de texte. Par contre, cette chaîne contient des espaces et des caractères spéciaux, et ceci est interdit dans les noms des géodatabases. Il faut donc les supprimer. C’est à cela que sert le bloc de code
def gettime():
import time
return time.ctime().replace(« : », » »).replace( » « , » »)
Il enlève les « : » et les espaces dans la chaîne en sortie.
Troisième étape: Sauvegarder la géodatabase
Cliquez-déplacez l’outil « Copier » de la boîte à outils « Gestion de données » -> « Général ».
Reliez, avec l’outil « connecter » de Model Builder, les données en sortie de Compacter avec la boîte « Copier » en sélectionnant « Données en entrée ».
Maintenant il faut connecter la valeur calculée avec la boîte Copier.
Par contre il n’y a pas de champ particulier pour cette valeur dans l’outil Copier. Au fait, on va l’utiliser comme variable, en ajoutant sa valeur entre « % » dans le nom du fichier en sortie. On pourrait le faire sans connecter d’aucune manière le calcul, mais il faut éviter des processus indépendants sans lien dans le même modèle, car l’ordre d’exécution n’est pas assuré. L’outil Copier peut être exécuté AVANT le calcul de la date.
Pour éviter ça, cliquez sur « Copier »->Propriétés.
Puis dans l’onglet « Préconditions » cochez le nom de votre calcul.
Ceci vous assure que le calcul sera réalisé AVANT l’exécution de « Copier ».
Finalement, vous allez définir la sortie de sauvegarde.
Dans le nom du fichier en sortie, une fois créé comme d’habitude en parcourant les fichiers et en lui donnant un nom classique, ajoutez dans le nom de la fenêtre « Copier » la sortie de « Calculer » entre des « % ». Au moment de l’exécution du modèle, Arcgis remplace cette chaîne par la chaîne en sortie de Calculer. Sauvegardez le modèle dans votre Boîte à outils. Maintenant il suffit de double cliquer sur ce modèle pour que tout le processus se déroule automatiquement.
Thanks for finally talking about > Optimisation des Géodatabases
ArcGis avec Model Builder | Blog SIG & Territoires – Le blog SIG
pour la gestion territoriale < Loved it!
Article intéressant
est qu’il y a un moyen pour convertir un document Model Builder en exécutable?
c a dire qu »il démarre automatiquement sans l’ouverture d’Arcgis.
merci infiniment.
Un modèle de Model Builder peut être exporté sous forme de script Python (voir comment le faire dans http://resources.arcgis.com/fr/help/main/10.1/index.html#//002w00000031000000).
Ce script peut être exécuté sans passer par ArcGis. Voir l’article http://www.sigterritoires.fr/index.php/arcgis-et-python-avant-de-faire-vos-premiers-pas/