Настройка слоев границ
Esri предоставляет слои, содержащие границы и демографическую информацию в них по различным регионам мира. Эти слои – например, штаты, провинции, округа, почтовые индексы, районы – содержат локальные сведения, которые участники портала могут использовать в своих картах, сценах, приложениях и инструментах анализа.
Рассмотрите возможность публикации этих слоев, если ваша организация не имеет доступа к ресурсам ArcGIS Living Atlas of the World из ArcGIS Online.
Как администратор вы можете загрузить нужные вам файлы определения сервиса слоя границ (.sd) из My Esri и использовать инструмент publishboundarylayers для публикации размещенных векторных слоев из этих файлов.
Примечание:
При запуске любого из инструментов, описанных в этом разделе, необходимо использовать встроенную учетную запись администратора портала. URL, который вы используете для этих инструментов, зависит от того, где вы развернули ArcGIS Enterprise.
Когда вы запускаете инструменты в локально развернутом ArcGIS Enterprise, необходимо обращаться к порталу через порт 7443, а не через веб-адаптер или балансировщик нагрузки.
Когда вы запускаете эти инструменты в ArcGIS Enterprise, развернутом в облаке, вам нужно получить доступ к порталу через веб-адаптер или балансировщик нагрузки; не используйте порт 7443.
Можно выполнить публикацию из папки, в которой находятся все нужные файлы, опубликовать отдельные файлы или предоставить список файлов в текстовом формате. Убедитесь, что учетная запись, используемая для установки Portal for ArcGIS, имеет доступ на чтение к этой директории.
Можно выполнить публикацию из папки, в которой находятся все нужные файлы, опубликовать отдельные файлы или предоставить список файлов в текстовом формате. Убедитесь, что учетная запись, используемая для запуска сервиса Portal for ArcGIS, имеет доступ на чтение к этой папке.
Публикация этих файлов определения сервиса границ (.sd) в организацию приведет к следующему:
Каждый
.sdдобавляется как элемент определения сервиса. Эти файлы должны остаться в организации, если вы хотите обновлять слои границ при появлении обновленных ресурсов.Для каждого опубликованного файла
.sdсоздается размещенный векторный слой. Каждый размещенный векторный слой состоит из нескольких слоев.И элементы определения сервиса, и размещенные векторные слои принадлежат внутреннему участнику организации с именем esri_boundaries. Не передавайте владение ими другому пользователю.
По умолчанию все участники организации имеют доступ к размещенным векторным слоям границ. Участники могут получить доступ к слоям границ следующими способами:
Поиск элементов слоев границ в организации на вкладке Моя организация страницы Ресурсы.
Добавление отдельных слоев границ к инструментам анализа в Map Viewer.
Добавление слоев границ в Scene Viewer из панели Ресурсы.
Публикация слоев границ
Эти слои лицензируются в соответствии с Esri Master License Agreement. Перед публикацией прочтите краткую информацию и условия использования.
Ниже приведены важные требования по использованию:
Эти слои лицензированы для внутреннего использования в ArcGIS Enterprise и связаны с приложениями ArcGIS.
Пользователям не разрешается использовать эти слои вне семейства продуктов ArcGIS Enterprise или экспортировать данные для автономного использования в ArcGIS и других приложениях.
Пользователям не разрешается публиковать эти слои (ни в публичном, ни в частном доступе) для внешнего использования участниками других организаций или широкой аудиторией, без специального письменного разрешения Esri.
Слои лицензированы для использования в течение двух (2) лет после загрузки с Esri. Вы можете загружать самые последние данные каждый год для продления срока действия лицензии.
При любом отображении этих слоев необходимо указывать сведения Credits (Attribution), опубликованные с каждым слоем.
Для получения файлов границ и их публикации в качестве векторных слоев, выполните следующие действия:
Загрузите сжатые файлы, которые содержат определения сервисов (
.sd), из My Esri.Извлеките загруженные файлы в папку на машине с Portal for ArcGIS.
Имена файлов содержат трехбуквенный код, обозначающий регион, к которому он относится, и год для данных, прикрепленный к окончанию имени. Например, USA_Boundaries_2015 содержит границы США в 2015 году.
Удалите файлы, которые не хотите выгружать и публиковать в вашу организацию. Либо создайте текстовый файл со списком файлов, которые нужно загрузить и опубликовать. Каждая строка в нем должна соответствовать только одному имени файла, например, если нужно загрузить границы США или на весь мир, в текстовом файле должно быть:
USA_Boundaries_2015 WOR_Boundaries_2015Откройте терминал командной строки на компьютере Portal for ArcGIS.
Откройте командную строку на компьютере Portal for ArcGIS.
Измените папки на те, которые доступны инструменту.
Запустите инструмент
publishboundarylayers.Инструмент устанавливается в
<Portal installation directory>/tools/publishboundarylayers. Синтаксис инструмента выглядит так:publishboundarylayers --folder <location of sd files> [{--files <file names>|--file <name of text file>}] --url <Portal website URL> --username <portal administrator user name> [--password <portal administrator password>]Инструмент устанавливается в
<Portal installation directory>\tools\publishboundarylayers. Синтаксис инструмента выглядит так:publishboundarylayers --folder <location of sd files> [{--files <file names>|--file <name of text file>}] --url <Portal website URL> --username <portal administrator user name> [--password <portal administrator password>]Если вы не укажете пароль при запуске инструмента, вам будет предложено ввести пароль учетной записи администратора. Пользователь должен иметь роль администратора организации по умолчанию.
Если используется операция
--files, укажите список файлов определения сервиса, разделенных запятыми. Если используется опция--file, укажите имя и местоположение текстового файла, содержащего список файлов границ, которые хотите опубликовать.В данном примере все файлы из директории
boundaryfilesпубликуются в локальной организации:./publishboundarylayers --folder /usr/data/boundaryfiles --url https://portal.example.com:7443/arcgis --username portaladminpublishboundarylayers --folder d:\data\boundaryfiles --url https://portal.example.com:7443/arcgis --username portaladminВ данном примере файлы находятся в той же директории (
boundaryfiles), но публикуются только два из них:./publishboundarylayers --folder /usr/data/boundaryfiles --files USA_Boundaries,WOR_Boundaries --url https://portal.example.com:7443/arcgis --username portaladminpublishboundarylayers --folder d:\data\boundaryfiles --files USA_Boundaries_2015,WOR_Boundaries_2015 --url https://portal.example.com:7443/arcgis --username portaladminВ данном примере создается текстовый файл (
boundarysubset.vi) в директорииboundaryfiles. Инструмент прочитает список файлов из текстового файла, чтобы опубликовать избранные слои границ.В данном примере создается текстовый файл (
boundarysubset.txt) в директорииboundaryfiles. Инструмент прочитает список файлов из текстового файла, чтобы опубликовать избранные слои границ../publishboundarylayers --folder /usr/data/boundaryfiles --file /usr/tmp/boundarysubset.vi --url https://portal.example.com:7443/arcgis --username portaladminpublishboundarylayers --folder d:\data\boundaryfiles --file c:\temp\boundarysubset.txt --url https://portal.example.com:7443/arcgis --username portaladmin
После того, как публикация будет завершена, для каждого опубликованного .sd появятся элемент определения сервиса и размещенный векторный слой.
Чтобы убедиться, что элементы появились, можно выполнить поиск по всем элементам организации, принадлежащим внутреннему участнику esri_boundaries. Введите owner:esri_boundaries в поле поиска и затем Поиск по всем ресурсам.
Обновление слоев границ
В большинстве случаев обновление слоя границ представляет собой новый файл определения сервиса, публикуемый вами с использованием утилиты publishboundarylayers. Это позволяет вам использовать слои отдельно и анализировать две версии данных. К примеру, могут быть версии файла с границами 2015 и 2017 гг. Однако в редких случаях файлы определения сервиса, предоставляемые через My Esri, обновляются для исправления ресурсов. В этих случаях можно загрузить файл обновлений и опубликовать его с помощью инструмента updateboundarylayers. При этом существующие размещенные векторные слои на портале будут перезаписаны.
Как было отмечено в начале, обновить слои границ можно только в том случае, если элемент определения сервиса слоя все еще существует.
Для обновления векторных слоев границ выполните следующие действия:
Загрузите архивы, которые содержат обновленные файлы определений сервисов (
.sd) из My Esri.Извлеките файлы в папку на машине с Portal for ArcGIS.
Удалите файлы, которые вы не хотите загружать и публиковать. Либо создайте текстовый файл со списком файлов, которые нужно загрузить и опубликовать. Каждая строка в нем должна соответствовать только одному имени файла, например, если нужно загрузить границы США и на весь мир, в текстовом файле должно быть:
USA_Boundaries_2015 WOR_Boundaries_2015Откройте терминал командной строки на компьютере Portal for ArcGIS.
Откройте командную строку на компьютере Portal for ArcGIS.
Измените папки на те, которые доступны инструменту.
Запустите инструмент
updateboundarylayers.Инструмент устанавливается в
<Portal installation directory>/tools/publishboundarylayers. Синтаксис инструмента выглядит так:updateboundarylayers --folder <location of files> [{--files <file names>|--file <name of text file>}] --url <Portal home page URL> --username <portal administrator user name> [--password <portal administrator password>]Инструмент устанавливается в
<Portal installation directory>\tools\publishboundarylayers. Синтаксис инструмента выглядит так:updateboundarylayers --folder <location of files> [{--files <file names>|--file <name of text file>}] --url <Portal home page URL> --username <portal administrator user name> [--password <portal administrator password>]Если вы не укажете пароль при запуске инструмента, вам будет предложено ввести пароль учетной записи администратора. Пользователь должен иметь роль администратора по умолчанию.
Если используется операция
--files, укажите список файлов определения сервиса, разделенных запятыми. Если используется опция--file, укажите имя текстового файла, содержащего список файлов границ, которые хотите опубликовать.В данном примере инструмент updateboundarylayers публикует все файлы в директории
boundaryfiles, выполняя перезапись существующих слоев:./updateboundarylayers --folder /usr/data/boundaryfiles --url https://portal.example.com:7443/arcgis --username portaladminupdateboundarylayers --folder d:\data\boundaryfiles --url https://portal.example.com:7443/arcgis --username portaladminВ данном примере файлы находятся в той же папке (
boundaryfiles), но заново будет опубликован только один из них:./updateboundarylayers --folder /usr/data/boundaryfiles --files WOR_Boundaries --url https://portal.example.com:7443/arcgis --username portaladminupdateboundarylayers --folder d:\data\boundaryfiles --files WOR_Boundaries --url https://portal.example.com:7443/arcgis --username portaladminВ данном примере создается текстовый файл (
boundaryupdatesubset.vi) в директорииboundaryfiles. Инструмент прочитает список файлов из текстового файла, чтобы опубликовать избранные слои границ.В данном примере создается текстовый файл (
boundaryupdatesubset.txt) в директорииboundaryfiles. Инструмент прочитает список файлов из текстового файла, чтобы опубликовать избранные слои границ../updateboundarylayers --folder /usr/data/boundaryfiles --file /usr/tmp/boundaryupdatesubset.vi --url https://portal.example.com:7443/arcgis --username portaladminupdateboundarylayers --folder d:\data\boundaryfiles --file c:\temp\boundaryupdatesubset.txt --url https://portal.example.com:7443/arcgis --username portaladmin
После того, как публикация будет завершена, размещенные векторные слои границ будут содержать обновленные данные или метаданные.
Удаление слоев границ
Если окажется, что какой-то слой границ больше не нужен, можно его удалить. Вы можете найти слой в организации и удалить его там, либо запустить инструмент deleteboundarylayers. Если нужно одновременно удалить несколько слоев границ, используйте инструмент deleteboundarylayers.
Инструмент deleteboundarylayers не будет удалять слои, у которых включена защита от удаления.
Внимание:
Если удалить слой границ, который используется в карте, приложении или сцене, то этот слой больше не будет там отображаться. При повторной публикации слой в них не появится, так как в этом случае будет создан новый элемент с новым ID на портале.
Можно указать список слоев для удаления, разделенных запятыми, с помощью операции --files, либо предоставить текстовый файл со списком слоев для удаления с помощью операции --file.
Синтаксис списка слоев, разделенных запятыми, должен быть следующим: deleteboundarylayers {--files <layer_name_list> | --file <location_of_text_file>} --url <portalURL> --username <portal_admin> [--password password]
Например, для удаления слоев USA_Boundaries_2015 и WOR_Boundaries_2015 с https://portal.example.com:7443/arcgis под учетной записью администратора организации portaladmin введите следующее:
./deleteboundarylayers --files USA_Boundaries_2015,WOR_Boundaries_2015 --url https://portal.example.com:7443/arcgis --username portaladmin
deleteboundarylayers --files USA_Boundaries_2015,WOR_Boundaries_2015 --url https://portal.example.com:7443/arcgis --username portaladmin
Синтаксис текстового файла со списком слоев для удаления должен быть следующим: deleteboundarylayers --file <location_of_text_file> --url <portalURL> --username <portal_admin> [--password password]
Например, чтобы удалить те же слои с помощью файла, создайте текстовый файл, в котором каждая строка соответствует одному имени слоя (как показано здесь) и укажите, где находится и как называется этот файл при запуске инструмента:
USA_Boundaries_2015
WOR_Boundaries_2015
В следующем примере файл boundarylist находится в /usr/data/boundaries. Он содержит список слоёв, которые нужно удалить из организации с URL-адресом https://portal.example.com/portal.
В следующем примере файл boundarylist.txt находится в c:\data\boundaries. Он содержит список слоёв, которые нужно удалить из организации с URL-адресом https://portal.example.com/portal.
./deleteboundarylayers --file /usr/data/boundaries/boundarylist --url https://portal.example.com/portal --username portaladmin
deleteboundarylayers --file c:\data\boundaries\boundarylist.txt --url https://portal.example.com/portal --username portaladmin