En publiant les couches Web ArcGIS Server à la fois depuis un élément de répertoire de données de la base de données sur le portail, vous créez des couches d’entités et des couches d’images de carte pour toutes les classes d’entités et les tables de la base de données à laquelle votre connexion a accès. De nouveaux jeux de données étant mis à votre disposition via la même connexion à la base de données ou l’accès aux jeux de données étant supprimé, vous pouvez synchroniser manuellement le contenu de la base de données avec vos couches sur le portail. Vous pouvez identifier quel jeu de données a été publié pour créer chaque couche. Le cas échéant, vous pouvez également supprimer toutes les couches que vous publiez depuis un élément de répertoire de données.
Synchroniser le contenu de la base de données et les couches
Le contenu d’une base de données change au fil du temps : des classes d’entités et des tables sont ajoutées et, parfois supprimées également. L’accès aux données existantes peut également changer au fil du temps si les propriétaires ou les administrateurs de la base de données changent les autorisations d’accès aux jeux de données. Toutes ces actions peuvent entraîner la désynchronisation de l’élément du répertoire de données de votre base de données et des couches publiées en une seule fois.
Puisque l’accès au contenu de la base de données change, vous pouvez synchroniser les couches. Si une classe d’entités source ou une table est supprimée de la base de données, ou si des privilèges sont révoqués à la connexion de l’utilisateur à la base de données, l’entité correspondante et les couches d’images de carte seront supprimées du portail. De la même façon, les couches seront créées sur le portail pour les classes d’entités et les tables ajoutées à la base de données ou pour lesquelles l’accès a été récemment octroyé à l’identifiant utilisé pour accéder à la base de données via l’élément du répertoire des données. La synchronisation met également à jour les schémas et les détails des éléments. Seul le propriétaire de l’élément du répertoire de données peut synchroniser les couches et la base de données.
Remarque :
La synchronisation ajoute ou supprime des éléments de couche en fonction de votre accès aux données de la base de données. Elle ne met pas à jour les noms lorsque ceux-ci sont modifiés dans la table ou la classe d’entités source.
Si vous renommez les classes d’entités source et les tables dans la base de données, la synchronisation les identifie comme de nouveaux jeux de données. Les couches avec l’ancien nom seront supprimées du portail et du serveur fédéré et les nouvelles couches seront publiées avec leur nouveau nom et de nouvelles URL. Comme avec toutes les suppressions, toute carte ou toute application qui utilisait l’ancienne couche n’aura plus accès aux données.
Si vous utilisez des couches d’entités publiées collectivement dans des processus hors connexion, sachez que synchroniser les couches publiées collectivement avec la source de données peut éventuellement modifier la structure de la couche, voire supprimer la couche. Si la couche d’entités est supprimée, les mises à jour hors connexion ne peuvent pas être synchronisées et seront perdues.
Procédez comme suit pour synchroniser le contenu dans la base de données source avec les éléments de couche Web sur le portail :
- Connectez-vous au portail qui contient l’élément du répertoire de données.
Vous devez être le propriétaire de l’élément du répertoire de données.
- Ouvrez la page des détails pour l’élément du répertoire de données et cliquez sur l’onglet Layers (Couches).
- Cliquez sur Sync Layers (Synchroniser les couches).
- Lisez le message qui s'affiche. Si vous souhaitez mettre à jour les détails de toutes les couches avec les informations des métadonnées des données source, laissez l’option Update layer items with metadata from source datasets (Mettre à jour les éléments des couches avec les métadonnées des jeux de données source) activée.
Remarque :
Si vous mettez à jour les métadonnées suivantes sur les données source et laissez l’option Update layer items with metadata from source datasets (Mettre à jour les éléments des couches avec les métadonnées des jeux de données source) activée, les modifications que vous avez apportées aux informations équivalentes dans les détails des éléments de la couche Web seront remplacées : titre (nom de la couche), description, balises, crédits (attribution) et conditions d'utilisation (limites d’utilisation dans les métadonnées source). La synchronisation des métadonnées remplace également les mises à jour que vous avez effectuées via l’API REST sur l’extrait de code, l’échelle minimale, l’échelle maximale et l’étendue des données de l’élément de couche.
- Cliquez sur Yes (Oui) pour poursuivre la synchronisation des couches avec le contenu de la base de données sous-jacente.
Le temps nécessaire dépend de la quantité de modifications apportées au contenu dans la base de données.
Identifier les couches et les données source
Les informations fournies sur l’onglet Layers (Couches) de la page des détails de l’élément du répertoire de données vous permet, en tant que propriétaire de l’élément du répertoire de données, d’identifier quel jeu de données source complète chaque entité et couche d’images de carte. Seul le propriétaire du répertoire de données a accès à l’onglet Layers (Couches) et à ces informations. La colonne Dataset (Jeu de données) sur l’onglet Layers (Couches) vous présente l’intégralité du nom de la classe d’entités ou de la table au format <database_name>.<dataset_owner>.<table_name>.
Pour vous aider à trouver une couche spécifique publiée en une seule fois, vous pouvez faire comme suit sur l’onglet Layers (Couches) :
- Changez l’ordre des couches dans la liste sur l’onglet Layers (Couches). Par défaut, la liste est triée selon la date à laquelle la couche a été créée. Pour changer la manière dont la liste est triée, cliquez sur le bouton de tri et choisissez un autre mode de tri.
- Si vous connaissez le nom de la couche ou une partie de son nom, saisissez-le dans la zone de recherche. Cela renvoie uniquement les couches dont le nom contient ce texte. Pour annuler la recherche, cliquez sur la X dans la zone de recherche.
- Pour afficher ou mettre à jour les détails d’une couche, cliquez sur le nom de la couche dans la liste.
Comme avec toute autre couche, vous (et tout autre membre du portail avec lequel vous partagez les couches) pouvez utiliser les filtres et les fonctions de recherche sur la page Contenu pour trouver les couches spécifiques publiées en une seule fois.
Supprimer toutes les couches publiées en une seule fois
Dans de rare cas, vous pouvez avoir à supprimer toutes les couches de telle sorte que vous puissiez supprimer un élément du répertoire de données. Il est possible, avec l’onglet Layers (Couches) de l’élément du répertoire de données de la base de données, d’y parvenir.
Avant de supprimer des couches, assurez-vous de les avoir supprimées des cartes dans lesquelles des tiers ou vous-même les utilisiez. Dans le cas contraire, les couches seront brisées dans ces cartes. Pour supprimer toutes les couches, cliquez sur Delete all created layers (Supprimer toutes les couches créées) sur l’onglet Layers (Couches) de l’élément du répertoire de données de la base de données.
Remarque :
Vous pouvez également supprimer les couches individuelles de My Content (Mon contenu).
Si vous souhaitez supprimer à la fois la couche d’images de carte et la couche d’entités, vous devez supprimer d’abord la couche d’entités, puis la couche d’images de carte. Toutefois, ces deux couches seront recréées lors de la prochaine synchronisation avec la base de données, sauf si vous n’avez plus accès à la classe d’entités source dans la base de données. Par exemple, si le propriétaire des données a révoqué votre accès à la table ou classe d’entités source, ou s’il a supprimé la table ou classe d’entités de la base de données, la synchronisation avec la base de données n’aura pas pour effet de recréer les couches d’images de carte et d’entités.
Il est possible de supprimer uniquement la couche d’entités. Veillez toutefois à ce que la couche d’entités ne soit pas recréée lors de la synchronisation.
Vous avez un commentaire à formuler concernant cette rubrique ?