替换 Web 图层 (服务器)

描述

用于将门户中某一 web 图层的内容替换为其他 web 图层的内容。

使用方法

  • 目标图层为待替换的 web 图层。更新图层为用以替换的 web 图层。目标图层和更新图层可以是从在 ArcGIS OnlineArcGIS Enterprise 门户上托管的场景图层包发布的矢量切片图层、切片图层或场景图层。

  • 要替换 ArcGIS Enterprise 门户上的矢量切片图层,必须具有 10.6 或更高版本。要替换切片图层,必须具有 10.8 或更高版本。要替换场景图层,必须具有 10.8.1 或更高版本。

  • 您的 ArcGIS Pro 活动门户必须为托管目标图层和更新图层的门户。您必须使用具有目标图层和更新图层的帐户登录 ArcGIS Pro

  • 目标图层和更新图层的类型必须相同。例如,不能将矢量切片图层替换为切片图层。

  • 更新目标图层时,图层中的内容也将被替换。目标图层的项目 ID 和服务 URL 不会更改。

  • 被替换的 web 图层不会被覆盖。相反,它将以新名称存档于您的门户中。默认情况下,存档图层名称为 <layer name>_archive_<timestamp>。您也可以选择其他名称,但此 web 图层名称在门户中必须是唯一的。

  • 默认情况下,归档图层使用更新图层的项目 ID。(可选)可以为归档图层指定新的项目 ID。

  • 或者,您可以使用更新图层的项目信息替换目标图层的项目信息。如果您替换项目信息,则摘要、描述、标签和缩略图也将被替换。而制作者名单(属性)和使用条款等其他信息则不会被替换。

语法

ReplaceWebLayer(target_layer, archive_layer_name, update_layer, {replace_item_info}, {create_new_item})
参数说明数据类型
target_layer

要替换的 web 图层。提供从场景图层包中发布的矢量切片、切片图层或场景图层的项目 ID 或服务 URL。您还可以浏览至图层或从目录中拖动图层。

Vector Tile Layer; Internet Tiled Layer; Scene Layer
archive_layer_name

替换的 web 图层将作为存档图层保留在门户中。请为存档图层指定唯一名称。

String
update_layer

替换 web 图层。除了图层或目录路径之外,还可以使用从场景图层包中发布的矢量切片、切片图层或场景图层的项目 ID 或服务 URL 进行指定。

Vector Tile Layer; Internet Tiled Layer; Scene Layer
replace_item_info
(可选)

指定是否替换缩略图、摘要、描述和标签。无论哪种情况,项目的“制作者名单(属性)”、“使用条款”和“创建时间”信息都不会被替换。

  • KEEP更新图层时,将不会替换目标图层的项目信息。这是默认设置。
  • REPLACE目标图层的项目信息将替换为更新图层的项目信息。
Boolean
create_new_item
(可选)

指定是否为归档图层创建新项目。此选项适用于 ArcGIS OnlineArcGIS Enterprise 10.8 或更高版本中的门户。

  • TRUE将为归档图层创建新项目 ID。这是场景图层的默认值。
  • FALSE将更新图层的项目 ID 用于归档图层。这是矢量切片图层和切片图层的默认设置。
Boolean

派生输出

名称说明数据类型
updated_target_layer

更新的 web 图层的 URL。

字符串

代码示例

ReplaceWebLayer 示例 1(独立脚本)

以下脚本将使用输入图层的项目 ID 替换 web 图层。

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.")
ReplaceWebLayer 示例 2(独立脚本)

以下脚本将使用输入图层的服务 URL 替换 ArcGIS Enterprise 中的 web 图层。

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.")

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题