Exemple de service de géotraitement : listing, création et suppression de versions de géodatabase
Dossier |
GDBVersions |
Objet |
Utiliser ces outils pour répertorier, créer et supprimer des versions dans une géodatabase d'entreprise via un serveur ArcGIS |
Services |
GDBVersions (service de géotraitement). |
Tâches de géotraitement |
ListVersions, CreateVersion, DeleteVersion |
Entrées |
Géodatabase d'entreprise : nom de la version à créer ou supprimer |
Sorties |
ListVersions génère une table des versions de la géodatabase |
Données |
L'utilisateur doit fournir une géodatabase d'entreprise |
Extensions |
Aucun |
Dossier correspondant
C:\arcgis\ArcTutor\GP Service Examples\GDBVersions contient les modèles et les scripts Python finalisés.
A propos de cet exemple
Cet exemple présente les étapes nécessaires à la création et à l'utilisation d'un service de géotraitement contenant des tâches de gestion des versions de géodatabase. Les outils de modèle ListVersions, CreateVersion et DeleteVersion utilisés dans ce service sont dérivés des outils du jeu d'outils Versions de la boîte à outils Data Management. Ces tâches de géotraitement permettent d'obtenir une liste des versions de la géodatabase, d'en créer de nouvelles ou de supprimer des versions existantes. Les applications peuvent utiliser ces outils pour prendre en charge les workflows de mise à jour versionnée impliquant des services de carte et des services d'entités. En fonction du type d'application, il ne sera peut-être pas nécessaire de publier toutes les tâches. Par exemple, seule la tâche ListVersions est nécessaire si l'application doit uniquement prendre en charge le basculement entre les versions.
Données
Cet exemple nécessite une géodatabase d'entreprise disposant des versions que vous souhaitez mettre à disposition via le service de géotraitement.
Données de modèle et d'outil
La boîte à outils du service de géotraitement est GDBVersions.tbx.
Vue d'ensemble des modèles
Pour mieux comprendre les modèles, développez la boîte à outils GDBVersions.tbx.
ListVersions
Cliquez avec le bouton droit sur le modèle ListVersions et sélectionnez Modifier pour ouvrir ce modèle dans ModelBuilder. Le modèle ListVersions est illustré ci-dessous. Il existe une variable en entrée, Enterprise_GDB. Lorsque vous exécutez le modèle, vous devez fournir la connexion à la géodatabase d'entreprise que vous souhaitez utiliser.
L'outil VersionListToTable est un outil de script qui est également fourni dans GDBVersions.tbx. Vous pouvez vérifier le code Python exécuté par l'outil en cliquant avec le bouton droit de la souris sur le script VersionListToTable et en sélectionnant Modifier pour ouvrir le code Python dans votre IDE Python par défaut. Le script crée une table en sortie et l'alimente avec des informations relatives aux versions (publiques, protégées ou versions privées propriété de l'utilisateur) fournies avec la connexion Enterprise_GDB.
Si vous utilisez l'authentification du système d'exploitation avec la connexion, ces informations comprennent les versions publiques et protégées, ainsi que les versions privées, propriété du compte sous lequel le serveur ArcGis s'exécute. Dans une installation ArcGIS standard, le serveur s'exécute en utilisant le compte ArcGIS qui est créé et configuré lors de l'installation.
La table en sortie contient les informations suivantes sur chaque version :
Champ | Description |
name | Nom complet de la version. |
access | Indique si la version est privée, publique ou protégée. |
created | Date de création de la version. |
description | Description stockée avec la version. |
isowner | Indique si l'utilisateur connecté est le propriétaire de la version. |
lastmodified | Date de dernière modification de la version. |
parentversionname | Nom de la version parent. |
Par défaut, une table en mémoire nommée versions est créée. Vous pouvez également modifier le modèle pour créer une table qui est inscrite dans la géodatabase en entrée. Chaque fois que l'outil ListVersions est exécuté, la table précédemment créée est supprimée et remplacée par une nouvelle table.
CreateVersion
Cliquez avec le bouton droit sur le modèle CreateVersion et sélectionnez Modifier. Le modèle CreateVersion est illustré ci-dessous. Il existe deux variables en entrée : le Nom de la version de la nouvelle version à créer et Enterprise_GDB. Lorsque vous exécutez le modèle, vous devez fournir la connexion à la géodatabase d'entreprise que vous souhaitez utiliser avec le paramètre Enterprise_GDB, comme vous l'avez fait auparavant avec le modèle ListVersions. Si vous prévoyez de publier ce modèle en même temps que d'autres modèles, assurez-vous de référencer la même connexion à la géodatabase d'entreprise.
L'outil CreateVersion crée une nouvelle version dans la géodatabase d'entreprise qui est référencée dans Enterprise_GDB, en utilisant le nom fourni par le paramètre Nom de la version. Dans le modèle, la version est créée à partir de la version par défaut, puis rendue privée. Vous pouvez modifier ces paramètres en fonction des besoins de vos applications. Un message d'erreur est renvoyé lorsque vous exécutez la tâche ou le service, si vous tentez de créer une version qui existe déjà.
DeleteVersion
Cliquez avec le bouton droit sur le modèle DeleteVersion et sélectionnez Modifier pour ouvrir ce modèle dans ModelBuilder. Le modèle DeleteVersion est illustré ci-dessous. Il existe deux variables en entrée : le Nom de la version de la version à supprimer et Enterprise_GDB. Lorsque vous exécutez le modèle, vous devez fournir la connexion à la géodatabase d'entreprise que vous souhaitez utiliser avec le paramètre Enterprise_GDB. Si vous prévoyez de publier ce modèle en même temps que d'autres modèles, assurez-vous de référencer la même connexion à la géodatabase d'entreprise.
L'outil RemoveVersion supprime une version existante de la géodatabase d'entreprise qui est référencée dans Enterprise_GDB, en utilisant le nom fourni et génère une variable booléenne contenant True, si la suppression de l'outil a abouti. Le nom fourni doit être le nom complet de la version. L'outil ListVersions permet d'obtenir ce nom complet. L'outil RemoveVersion est un outil de script qui est également fourni dans la boîte à outils GDBVersions.tbx. Vous pouvez vérifier le code Python exécuté par l'outil en cliquant avec le bouton droit de la souris sur l'outil de script et en sélectionnant Modifier. L'outil de script appelle l'outil DeleteVersion avec le nom de version en entrée comme paramètre de chaîne. Un message d'erreur est renvoyé si vous n'avez pas l'autorisation de supprimer la version, si la version n'existe pas ou est associée à des versions ascendantes.
Etablissement d'une connexion Gestion au serveur autorisant la publication
Assurez-vous que vous disposez de l'autorisation de publier sur le serveur. Si tel est le cas, suivez ces étapes pour créer une connexion éditeur ou Gestion à un serveur :
- Accédez à Serveurs SIG > Ajouter ArcGIS for Server pour ouvrir la boîte de dialogue Ajouter un serveur ArcGIS.
- Cochez la case Publier les services GIS ou Administrer le serveur GIS.
- Dans le panneau Général, saisissez une URL d'administration du serveur, ainsi qu'un Nom d’utilisateur et un Mot de passe.
- Cliquez sur Terminer pour finaliser la connexion.
Création d'un service
- Dans la fenêtre Catalogue, accédez à C:\arcgis\ArcTutor\GP Service Examples\GDBVersions.
Si vous souhaitez modifier les modèles, il est recommandé de copier et de coller l'intégralité du répertoire GDBVersions dans un autre répertoire local, dans lequel vous pourrez apporter des modifications.
- Double-cliquez sur l'outil de modèle que vous voulez publier pour ouvrir sa boîte de dialogue.
- Définissez le paramètre Enterprise_GDB sur votre géodatabase d'entreprise.
- Cliquez sur OK pour exécuter l'outil.
Lorsque l'exécution de l'outil est terminée, un nouveau résultat s'inscrit dans la fenêtre Résultats. Pour ouvrir la fenêtre Résultats, cliquez sur Géotraitement > Résultats dans le menu principal ArcMap.
- Vérifiez que l'outil s'est exécuté avec succès en examinant le résultat dans la fenêtre Résultats. Une icône d'erreur s'affiche en regard d'une exécution contenant des erreurs.
- Répétez les étapes 1 à 5 pour les autres outils de modèle que vous voulez publier.
Etapes de création d'un service de géotraitement.
Pour créer un service de géotraitement, vous devez partager un résultat.
- Dans la fenêtre Résultats, cliquez avec le bouton droit sur l'un des résultats générés ci-avant et sélectionnez Partager en tant que > service de géotraitement. L'assistant Partager en tant que service s'ouvre.
- Choisissez le serveur sur lequel vous souhaitez publier les services et le dossier dans lequel vous voulez les stocker. Le nom par défaut du service est identique au nom de l'outil. Vous pouvez accepter ce nom par défaut ou en saisir un nouveau.
- Dans le dernier panneau de l'assistant Partager en tant que service, cliquez sur Continuer pour ouvrir l'Editeur de services.
- Pour ajouter une autre tâche, cliquez sur le bouton Ajouter le résultat pour ouvrir la boîte de dialogue Ajouter le résultat. Dans la boîte de dialogue Ajouter le résultat, sélectionnez un autre résultat parmi ceux générés plus haut, puis cliquez sur OK. Pour ajouter une autre tâche, répétez l'étape 4.
- Sur la page Paramètres de l'Editeur de services, définissez le Mode d'exécution sur Synchrone, car le service s'exécutera rapidement.
Utilisation du service de géotraitement
Les étapes suivantes indiquent comment utiliser les services de géotraitement que vous avez précédemment publiés.
- Ouvrez un nouveau document ArcMap.
- Dans la fenêtre Catalogue, accédez à votre connexion au serveur sous Serveurs SIG, recherchez le service de géotraitement que vous avez publié à la section précédente et développez-le. Les tâches que vous avez publiées s'affichent.
- Double-cliquez sur la tâche ListVersions pour ouvrir la boîte de dialogue de la tâche.
- Cliquez sur OK pour exécuter la tâche de géotraitement.
Le résultat en sortie est renvoyé sous forme de table dans GPInMemoryWorkspace. Vous pouvez ouvrir la table pour consulter la liste des versions de la géodatabase d'entreprise.
- Si vous avez publié la tâche CreateVersion :
- Double-cliquez sur la tâche CreateVersion pour ouvrir la boîte de dialogue de la tâche.
- Indiquez le nom de la version que vous souhaitez créer.
- Cliquez sur OK pour exécuter la tâche de géotraitement.
- Répétez les étapes 1 à 4. Notez que la nouvelle version apparaît dans la nouvelle table en sortie.
- Si vous avez publié la tâche DeleteVersion :
- Double-cliquez sur la tâche DeleteVersion pour ouvrir la boîte de dialogue de la tâche.
- Indiquez le nom complet de la version que vous voulez supprimer (par exemple, la version qui vient d'être créée à partir des étapes ci-dessus).
- Cliquez sur OK pour exécuter la tâche de géotraitement.
- Répétez les étapes 1 à 4. Notez que la version a été supprimée et n'apparaît plus dans la nouvelle table en sortie.