Résumé
Remplace le contenu d’une couche web sur un portail par le contenu d’une autre couche web.
Utilisation
La couche cible correspond à la couche web à remplacer. La couche de mise à jour correspond à la couche web de remplacement. Les couches cible et de mise à jour peuvent être des couches Web de type suivant :
- Couches de tuiles vectorielles
- Couche de tuiles
- Couches de scène publiées à partir de l’une des sources suivantes :
- Paquetages de couche de scène hébergés sur ArcGIS Online ou un portail ArcGIS Enterprise
- Caches de scène référencé dans un dossier ou des répertoires de données cloud
Pour remplacer une couche de tuiles vectorielles sur un portail ArcGIS Enterprise, vous devez utiliser la version 10.6 ou ultérieure. Pour remplacer une couche de tuiles, vous devez utiliser la version 10.8 ou ultérieure. Pour remplacer une couche de scènes, vous devez utiliser la version 10.8.1 ou ultérieure.
Votre portail ArcGIS Pro actif doit être le portail qui héberge les couches cible et de mise à jour. Vous devez être connecté à ArcGIS Pro avec le compte propriétaire des couches cible et de mise à jour.
Les couches cible et de mise à jour doivent être du même type. Par exemple, il n’est pas possible de remplacer une couche de tuiles vectorielles par une couche de tuiles.
Le type de couche de scène de la couche cible doit correspondre à celui de la couche de mise à jour. Par exemple, il n’est pas possible de remplacer une couche de scène de construction par une couche de scène d’objets 3D.
Pour remplacer une couche de scène Web, vous devez publier les couches cible et de mise à jour à partir de la même source. Il n’est ainsi pas possible de remplacer une couche de scène Web publiée depuis un paquetage de couche de scène par une couche de scène Web publiée depuis un cache de scène référencé.
Pour que vous puissiez remplacer des couches de scène Web publiées à partir de caches de scène référencés, les services de scène des couches cible et de mise à jour doivent exister sur le même serveur et dans le même dossier de serveur.
Lors de la mise à jour de la couche cible, son contenu est remplacé. L’ID d’élément et l’URL de service de la couche cible restent inchangés.
La couche web qui est remplacée n’est pas écrasée. Au lieu de cela, elle est archivée sur votre portail sous un nouveau nom. Par défaut, le nom de la couche archivée est <nom de la couche>_archive_<horodatage>. Vous pouvez attribuer un autre nom, à condition qu’il s’agisse d’un nom de couche Web unique sur le portail.
Par défaut, la couche d’archive utilise l’ID d’élément de la couche de mise à jour. Si vous le souhaitez, vous pouvez spécifier un nouvel ID d’élément pour la couche d’archive.
Vous pouvez également remplacer les informations sur l’élément contenues dans la couche cible par les informations sur l’élément contenues dans la couche de mise à jour. Si vous remplacez les informations sur l’élément, le résumé, la description, les étiquettes et l’image miniature sont remplacées. D’autres informations, telles que les crédits (attribution) et les conditions d’utilisation, restent inchangées.
Syntaxe
arcpy.server.ReplaceWebLayer(target_layer, archive_layer_name, update_layer, {replace_item_info}, {create_new_item})
Paramètre | Explication | Type de données |
target_layer | Couche Web à remplacer. Cette couche peut non seulement être spécifiée à l’aide de son chemin ou du chemin du catalogue, mais elle peut également l’être à l’aide de l’ID d’élément ou de l’URL de service d’un des éléments suivants :
| Vector Tile Layer; Internet Tiled Layer; Scene Layer |
archive_layer_name | La couche web à remplacer est conservée sur le portail en tant que couche archivée. Attribuez un nom unique à la couche archivée. | String |
update_layer | Couche web de remplacement. Cette couche peut non seulement être spécifiée à l’aide de son chemin ou du chemin du catalogue, mais elle peut également l’être à l’aide de l’ID d’élément ou de l’URL de service d’un des éléments suivants :
| Vector Tile Layer; Internet Tiled Layer; Scene Layer |
replace_item_info (Facultatif) | Spécifie si l’image miniature, le résumé, la description et les étiquettes seront remplacés. Dans les deux cas, les informations relatives aux crédits (attribution), aux conditions d’utilisation et à la source de la création ne sont pas remplacées.
| Boolean |
create_new_item (Facultatif) | Indique si un nouvel élément est créé pour la couche d’archive. Cette option est prise en charge sur les portails dans ArcGIS Online et ArcGIS Enterprise 10.8 ou version ultérieure.
| Boolean |
Sortie dérivée
Nom | Explication | Type de données |
updated_target_layer | URL de la couche web mise à jour. | Chaîne |
Exemple de code
Le script suivant remplace une couche web en utilisant les ID d’élément des couches en entrée.
import arcpy
import time
# Set local variables
targetLayerID = "42994b1a3e63425aa02bcfa1200683ae"
archiveLayerName = "ReplaceWebLayerExample_archive_" + time.strftime("%Y%m%d")
updateLayerID = "9e1d80c874e040fc88ad06b0cfa01381"
replaceItemInfo = "REPLACE"
createNewItem = "TRUE"
# Execute Replace Web Layer
arcpy.ReplaceWebLayer_server(targetLayerID, archiveLayerName, updateLayerID,
replaceItemInfo, createNewItem)
print("Successfully replaced web layer.")
Le script suivant remplace une couche web sur ArcGIS Enterprise en utilisant les URL de service des couches en entrée.
import arcpy
import time
# Set local variables
targetLayer = "https://webadaptorhost.domain.com/webadaptorname/rest/services/Hosted/targetServiceName/VectorTileServer"
archiveLayerName = "targetServiceName_archive_" + time.strftime("%Y%m%d")
updateLayer = "https://webadaptorhost.domain.com/webadaptorname/rest/services/Hosted/updateServiceName/VectorTileServer"
# Execute Replace Web Layer
arcpy.ReplaceWebLayer_server(targetLayer, archiveLayerName, updateLayer)
print("Successfully replaced web layer.")
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?