Сводка
Заменяет ресурсы веб-слоя портала ресурсами другого веб-слоя.
Использование
Целевым слоем является замещаемый слой. Слоем обновления является веб-слой замещения. Целевой слой и слой обновлений должны быть веб-слоями следующих типов:
- Слои векторных листов
- Слои листов
- Слои сцен публикуются с одного из следующих источников:
- Пакеты слоев сцен, размещенные на ArcGIS Online или на портале ArcGIS Enterprise
- Связанные кэши сцен в папке или в облачных хранилищах данных
Чтобы заменить слой векторных листов на портале ArcGIS Enterprise, необходимо использовать версию 10.6 или более новую. Чтобы заменить слой листов, необходима версия 10.8 или более новая. Чтобы заменить слой сцены, необходима версия 10.8.1 или более новая.
Вашим активным порталом ArcGIS Pro должен быть портал, на котором размещены целевой слой и слой обновления. Вы должны выполнить вход в ArcGIS Pro под учетной записью владельца целевого слоя и слоя обновления.
Целевой и обновляющий слои должны быть одного типа. Например, нельзя заменить слой векторных листов слоем листов.
Тип слоя сцены целевого слоя и слоя обновления должен совпадать. Например, нельзя заменить слой зданий сцены слоем 3D-объектов сцены.
Чтобы заменить слой веб-сцены, целевой слой и слой обновления должны публиковаться из одного источника. Например, вы не можете заменить слой веб-сцены, опубликованный из пакета слоя сцены, на слой веб-сцены, опубликованный из кэша сцены.
Чтобы заменить слои веб-сцен, опубликованные из кэша сцены, сервисы сцен целевого слоя и слоя обновления должны находиться на одном сервере в одной и той же папке.
Когда целевой слой будет обновлен, ресурсы этого слоя будут заменены другими. ID элемента и URL сервиса целевого слоя не изменятся.
Замещаемый веб-слой не изменяется. Он будет архивирован на портале под новым именем. По умолчанию, слой архивируется под именем <имя слоя>_archive_<timestamp>. Можно назначить другое имя, но оно должно быть уникальным именем веб-слоя на портале.
По умолчанию архивный слой использует ID элемента слоя обновления. При необходимости можно задать новый ID элемента для архивного слоя.
При желании вы можете заменить информацию элемента целевого слоя на информацию элемента слоя обновления. При смене информации элемента изменятся также и сводка, описание, тэги и миниатюрное изображение. Прочая информация, в том числе кредиты (авторские права) и условия использования останутся без изменений.
Синтаксис
arcpy.server.ReplaceWebLayer(target_layer, archive_layer_name, update_layer, {replace_item_info}, {create_new_item})
Parameter | Объяснение | Тип данных |
target_layer | Замещаемый слой. Помимо слоя или пути каталога его можно указать с помощью ID элемента или URL сервиса одного из следующего:
| Vector Tile Layer; Internet Tiled Layer; Scene Layer |
archive_layer_name | Замененный веб-слой остается на портале в качестве архивного слоя. Укажите уникальное имя для архивного веб-слоя. | String |
update_layer | Подменный (замещающий) веб-слой. Помимо слоя или пути каталога его можно указать с помощью ID элемента или URL сервиса одного из следующего:
| Vector Tile Layer; Internet Tiled Layer; Scene Layer |
replace_item_info (Дополнительный) | Определяет, будет ли производиться замена миниатюрного изображения, сводки и тегов. В любом случае, авторство элемента, условия использования и информация об источнике не может быть заменена.
| Boolean |
create_new_item (Дополнительный) | Задает, будет ли создан новый элемент для архивного слоя. Эта опция поддерживается на порталах ArcGIS Online и ArcGIS Enterprise 10.8 или более поздних версиях.
| Boolean |
Производные выходные данные
Name | Объяснение | Тип данных |
updated_target_layer | URL обновленного веб-слоя. | Строковое |
Пример кода
Следующий скрипт показывает замену веб-слоя с помощью идентификаторов ID входных слоев.
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.")
Следующий скрипт показывает замену веб-слоя на ArcGIS Enterprise с помощью URL-сервисов входных слоев.
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.")
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да