Skip To Content

Использование сервиса геообработки в ArcMap

Сервис геообработки содержит одну или несколько задач. Задача похожа на инструмент геообработки в плане приема параметров и возвращения результатов; этот термин используется в ArcGIS API for JavaScript для описания регулярных действий, выполняемых на сервере и возвращающих результаты. Разницы между сервисами геообработки и наборами инструментов или задачами и инструментами нет. Разница между ними существует только для других клиентов ArcGIS Server (например, веб-браузеров и прочих онлайн-приложений): для них сервисы и наборы инструментов, а также задачи и инструменты – разные понятия.

Подключение к сайту GIS Server

Первым шагом будет подключение к ArcGIS Server. В окне Каталог сделайте следующее:

  1. Создайте подключение издателя GIS Server из узла ГИС-серверы.
  2. Создайте подключение в папке, щелкнув ее правой кнопкой мыши и выбрав Новый > Подключение к ArcGIS Server.

Поиск URL-адреса сервиса геообработки

Когда вы подключаетесь к ArcGIS Server, вам необходим URL, имя пользователя и пароль. Все сервисы, включая сервисы геообработки, должны использовать SOAP URL для работы с ArcMap. Вы можете получить URL сервиса любым из следующих способов:

  • Сайт GIS Server размещается вашей организацией, поэтому вы знаете его URL.
  • URL предоставляется коллегами.
  • Вы искали сервисы геообработки на ArcGIS Online и нашли сервис, содержащий нужные вам задачи. Вы можете получить URL сервера, содержащего сервис, следующим образом:
    • Из описания сервиса на ArcGIS Online содержит запись ArcGIS Web API REST Connection с URL-адресом. Этот URL предназначен для подключения к сервису с помощью REST). Чтобы подключиться к серверу в ArcGIS Desktop, необходим SOAP URL.
    • Можно извлечь SOAP URL из REST URL. Например, если REST URL – http://sampleserver.esri.com/arcgis/rest/services/SupplyDemandService/gpserver, то соответствующий SOAP URL для создания подключений будет http://sampleserver.esri.com/arcgis/services (rest, имя сервиса и gpserver удаляются из SOAP URL).
    • Используйте SOAP URL, чтобы создать подключение пользователя к серверу. Как только вы создали подключение, перейдите в каталог сервера в дереве Каталога, чтобы найти там сервисы и задачи геообработки.

Запуск задач геообработки

Вы производите запуск задач сервисов геообработки, как и любой обычный инструмент геообработки – из диалогового окна инструмента, в ModelBuilder или через скрипт. Единственное отличие появляется при запуске инструмента в фоновом режиме. Некоторые задачи ожидают получения результатов от сервера, а некоторые – нет; они отправляют задачу на запуск на сервере и периодически проверяют, готовы ли результаты. Используйте окно Результаты, чтобы получить информацию о статусе задачи, выполняемой на сервере. В разделе Синхронные и асинхронные задачи ниже имеется более подробное описание.

Работа с результатами задачи

Результат сервиса геообработки добавляется в Текущий сеанс окна Результат. Если выходные данные являются файлом или набором растровых данных, они будут сохранены в локальной временной папке. В случае с данными других типов, такими, например, как класс пространственных объектов, результат пишется в текущую сессию с отображением имени или статуса соответствующих наборов выходных данных. Ниже приведены пять значений статуса:

<пусто>

Инструмент продолжает работать на сервере без записи выходных данных, либо задача не была успешно выполнена и результат не получен. Этот статус относится только к асинхронным инструментам. Для получения более подробной информации см. раздел Синхронные и асинхронные задачи

<данные в местоположении local temp>

Инструмент закончил работу, и выходные данные хранятся либо в памяти вашего компьютера или во временной папке операционной системы. Данные не будут удалены, пока в ArcMap будет слой, который обращается к этим данным. Если вы хотите сохранить данные, скопируйте их из временной папки в другой каталог. Одним из способов выполнения данной задачи является использование инструмента Копировать с последующим перемещением набора данных из результата в параметр входных объектов инструмента. Вы также можете щелкнуть правой кнопкой мыши на выходных данных и выбрать Копировать местоположение, что приведет к копированию пути к классу пространственных объектов в буфер обмена. После этого вы можете скопировать его в любой текстовый элемент, например, в поле параметра входных данных инструмента Копировать.

<данные на сервере>

Данные сохраняются на сервере, при этом создается итоговый сервис результатов, который позволяет отобразить данные в ArcMap, ArcGlobe или ArcScene. Эта выходная карта будет автоматически добавлена в таблицу содержания, когда инструмент закончит работу на сервере. Если вам нужно добавить этот выходной картографический сервис в таблицу содержания, щелкните правой кнопкой мыши на инструменте-результате и выберите Добавить слой сервера.

Вы также можете щелкнуть правой кнопкой мыши на результате и выбрать Получить данные; это произведет копирование данных с сервера на ваш компьютер. После копирования статус может приобрести три возможных значения: <данные в локальном временном каталоге>, <данные превышают предел передачи> или <данные недоступны>.

<данные превышают ограничения переноса>

Операция Получить данные не смогла скопировать все данные с сервера на ваш компьютер, потому что максимальное число объектов для копирования было превышено. Копирование больших наборов данных приводит к чрезмерному потреблению ресурсов сервера, необходимых для обработки запросов других ГИС-сервисов, и затрудняет работу по сети в целом. Поэтому автор сервиса определяет максимальное количество объектов, которое может быть передано с сервера на компьютер клиента. Если вам нужно скопировать данные, размер которых превышает указанный лимит, вам будет нужно связаться с автором сервиса или администратором сервиса и организовать другой способ получения данных.

<данные недоступны>

Операция Получить данные не может найти данные на сервере. Скорее всего, администратор сервера решил, что результаты работы задачи устарели, и удалил их, чтобы освободить место на сервере.

Настройки параметров среды не используются

Сервисы геообработки устанавливают любые параметры среды на сервер, который влияет на выполнение. Ваши локальные настройки среды ArcGIS Desktop, заданные в текущем сеансе, не оказывают влияния на используемые сервисами настройки среды.

Выход из приложения до момента завершения работы инструмента на сервере

После отправки асинхронного инструмента (см. следующий раздел), вы можете выйти из приложения, в котором работали. Например, если вы работаете в ArcMap, вы можете начать выполнение инструмента, сохранить документ карты и выйти из ArcMap. Когда вы впоследствии откроете документ, ArcMap отправит запрос на сервер, проверит статус работы и обновит информацию в окне Результаты. Если вы собираетесь использовать данный способ запуска инструмента и выхода из ArcMap (или ArcGlobe или ArcScene), обязательно сохраните документ карты, чтобы сохранить результаты для последующего использования.

Синхронные и асинхронные задачи

Сервисы геообработки и их задачи могут быть синхронными или асинхронными. При использовании синхронных сервисов ваш компьютер будет ожидать завершения выполнения задачи на сервере. При использовании асинхронных задач вашему компьютеру не нужно ждать завершения выполнения инструмента, и вы можете работать с другими задачи.

Издатель сервиса выбирает, в каком режиме будет работать задача – в синхронном или асинхронном. Только те задачи, которые выполняются быстро и создают выходные данные небольшого объема, должны быть опубликованы в качестве синхронных инструментов.

Чтобы определить, находится ли инструмент сервера в синхронном или асинхронном режиме, сделайте следующее:

  • Если вы создали административное подключение к ArcGIS Server, вы можете перейти к серверу в окне Каталога, щелкнуть сервис геообработки правой кнопкой мыши и выбрать Свойства сервиса. Тип выполнения инструмента будет указан на закладке Параметры.
  • Произведите запуск инструмента и изучите сообщения, запись которых он произведет. При выполнении асинхронного сервиса первым сообщением будет Сообщения сервера. Эти типы сервисов геообработки всегда будут запущены в качестве фонового процесса в ArcMap. Синхронный инструмент начнет работу с вывода сообщений о выполнении. Ниже приводятся результаты работы двух инструментов – синхронного или асинхронного (как задано администратором ArcGIS Server).
Выполнение асинхронного инструмента в сравнении с синхронным

Когда в ArcMap выполняется асинхронный инструмент при включенной опции вывода на экран добавления результатов инструмента, слой на экран добавляется, но его не видно (включено). Так происходит потому, что ArcMap не знает, когда инструмент закончит работу, чтобы отобразить результат.

Вы не будете автоматически информированы, когда асинхронный инструмент закончит свою работу. Вы можете следить за ходом работы асинхронного инструмента в окне Результаты. Когда инструмент будет запущен, рядом с результатом отображаются песочные часы. Вы можете отменить работу инструмента, щелкнув правой кнопкой мыши на результате и выбрав Отмена. После выполнения задачи вы увидите сообщение Успешно и рядом с названием задачи будет отображен значок инструмента.