Публикация блокнота как веб-инструмента

ArcGIS Notebooks позволяет публиковать блокноты как веб-инструменты. Администраторы и авторы блокнотов с правами Публикации веб-инструментов могут публиковать свои блокноты как веб-инструменты. Когда блокнот публикуется как веб-инструмент, асинхронный сервис геообработки создается и регистрируется как веб-инструмент. Между блокнотом и веб-инструментом существует отношение один-к-одному, что означает, что для каждого блокнота может быть опубликован только один веб-инструмент. Веб-инструменты могут использоваться любым клиентским приложением, которое может работать с асинхронными сервисами геообработки RESTful.

Публикация блокнота как веб-инструмента поддерживается для блокнотов с версией среды 8.0 или выше. Чтобы проверить сведения о рабочей среде блокнота, щелкните кнопку Информация в верхней части ленты редактора блокнота, либо на вкладке Настройки на странице информации об элементе блокнота. См. раздел Посмотреть доступные библиотеки Python, чтобы больше узнать о рабочих средах блокнотов.

Редактор блокнотов позволяет вам настраивать входные и выходные параметры блокнота. Входные параметры соответствуют входным переменным в блокноте, который вы хотите экспортировать для пользовательского входа, когда блокнот запускается как веб-инструмент. Выходные параметры представляют собой выходные переменные в блокноте, которые вы хотите вернуть как выходные данные веб-инструмента. Когда вы регистрируете одну или несколько входных или выходных переменных и публикуете блокнот, параметры становятся доступными в качестве входных или выходных параметров для соответствующего веб-инструмента.

Примечание:

При публикации блокнота как веб-инструмента не требуется определять входные и выходные параметры. Например, блокноты, которые выполняют задачи с предопределенными входами и выходами, такими как векторные слои, на которые ссылается itemId, могут не требовать входных или выходных параметров.

Примечание:

В качестве входных и выходных параметров поддерживаются следующие типы данных: String, Long, Double, Boolean, набор объектов, набор записей, Date, линейные единицы измерения, слой растровых данных и File. Для получения дополнительной информации см. Типы данных сервисов геообработки в документации ArcGIS REST API.

Во время работы веб-инструмента ArcGIS Notebooksвыполняет автоматический запуск блокнота, открывая новый контейнер и запуская блокнот без вмешательства пользователя. Пользователи с правами запуска веб-инструментов, которым был предоставлен общий доступ к веб-инструменту, могут получить доступ к этому веб-инструменту и запустить его. В дополнение к необходимым правам на запуск веб-инструментов требуются все остальные права, необходимые для работы блокнота. Дополнительные сведения о правах см. в разделе Типы пользователей, роли и права доступа.

Примечание:

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

Примечание:

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

Настройка входных параметров

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

  1. В редакторе блокнота щелкните Параметры.
  2. Щёлкните Добавить.
  3. Выберите входные данные для Направления.
  4. Введите имя для Имя переменной.

    Примечание:
    Оно должно соответствовать имени переменной, которое есть в коде блокнота или уже настроено в блокноте.

  5. Введите имя для Отображаемого имени для параметра веб-инструмента.
  6. В ниспадающем меню Тип данных выберите тип данных для входного параметра.
  7. Введите значение для Значения по умолчанию для входного параметра. Обратитесь к разделу Типы данных сервисов геообработки, чтобы узнать о синтаксисе значений по умолчанию для поддерживаемых типов данных.
  8. Для Описания введите описание входного параметра.
  9. Щелкните Сохранить, чтобы сохранить входной параметр.
  10. Чтобы добавить больше входных параметров, повторите шаги с 1 по 9.
  11. После добавления всех входных параметров выберите ячейку в блокноте, в которую нужно вставить параметры, и щелкните вставить как переменные.
  12. Щелкните Сохранить, чтобы сохранить блокнот.

Настройка выходных параметров

Настроить выходные параметры для блокнота, опубликованного как веб-инструмент, можно в панели Параметры в редакторе блокнота.

  1. В редакторе блокнота щелкните Параметры.
  2. Щёлкните Добавить.
  3. Выберите выходные данные для параметра Направление.
  4. Введите имя для Имя переменной.

    Примечание:
    Оно должно соответствовать имени переменной, которое есть в коде блокнота или уже настроено в блокноте.

  5. Введите имя для Отображаемого имени для параметра веб-инструмента.
  6. В ниспадающем меню Тип данных выберите тип данных для входного параметра.
  7. Введите значение для Значения по умолчанию для выходного параметра. Обратитесь к разделу Типы данных сервисов геообработки, чтобы узнать о синтаксисе значений по умолчанию для поддерживаемых типов данных.
  8. Для Описания, введите описание для выходного параметра.
  9. Щелкните Сохранить, чтобы сохранить выходной параметр.
  10. Выберите ячейку в блокноте. Щелкните кнопку Добавить, чтобы добавить фрагмент кода Python для записи выхода для веб-инструмента.

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

  11. Проверьте добавленный фрагмент кода, чтобы убедиться, что имена выходных переменных соответствуют выходным данным, определенным в блокноте, и внесите любые дополнительные изменения в фрагмент кода.
  12. Повторите шаги с 1 по 11 для любых дополнительных выходных параметров.
  13. Щелкните Сохранить, чтобы сохранить блокнот.

Публикация веб-инструмента

Вы можете опубликовать блокнот как веб-инструмент на панели Опубликовать в редакторе блокнота.

  1. Сохраните блокнот, чтобы обеспечить публикацию последней копии блокнота.
  2. Вручную запустите ячейки блокнота в интерактивном режиме, чтобы убедиться в отсутствии ошибок.
  3. Примечание:
    Пропускайте ячейки, содержащие фрагменты кода для выходных параметров, поскольку они не работают в интерактивном режиме.
  4. Щелкните Опубликовать на ленте редактора блокнота.
  5. Введите заголовок и описание веб-инструмента в поля Заголовок и Описание на панели Публикации.
  6. Укажите число в поле Максимальное время использования.

    Это количество минут, в течение которых веб-инструмент может продолжать работать, прежде чем система отключит его. Максимально допустимое время ожидания составляет 100 минут

  7. Проверьте все входные и выходные параметры.
  8. Щелкните Опубликовать, чтобы опубликовать блокнот как веб-инструмент.
  9. После успешной публикации веб-инструмента щелкните Просмотр подробной информации, чтобы просмотреть страницу сведений об элементе для веб-инструмента.
  10. Щелкните Опубликовать, чтобы открыть окно общего доступа.
    1. Выберите Организация, чтобы опубликовать веб-инструмент для всех пользователей организации.
    2. Щелкните Редактировать публикацию в группах, чтобы опубликовать веб-инструмент в определенных группах.
    3. Выберите группы, с которыми вы желаете поделиться.
    4. Нажмите OK.
    5. Щелкните Сохранить.

Публикация веб-инструмента

Чтобы опубликовать или обновить настройки общего доступа к существующему веб-инструменту блокнота для своей организации или определенных групп своей организации, выполните следующие действия.

Примечание:

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

Вы не можете предоставлять общий доступ к веб-инструментам блокнотов. Даже если у вас есть права на публикацию данных для всех, опция публикации веб-инструментов блокнотов Для всех (общий доступ) недоступна.

  1. Убедитесь, что вы вошли в ArcGIS Online и обладаете достаточными правами для предоставления общего доступа к ресурсам вашей организации.
  2. Щелкните Ресурсы.
  3. Выберите опцию рядом с названием веб-инструмента, к которому вы хотите предоставить общий доступ.
  4. Щёлкните Опубликовать.
    1. Выберите Организация, чтобы опубликовать веб-инструмент для всех пользователей организации.
    2. Щелкните Редактировать публикацию в группах, чтобы опубликовать веб-инструмент в определенных группах.
    3. Выберите группы, с которыми вы желаете поделиться.
    4. Нажмите OK.
    5. Щелкните Сохранить.

Перезаписать веб-инструмент

Перезапись веб-инструмента приведет к его обновлению для использования последнего снимка этой записной книжки. Вы можете опубликовать блокнот как веб-инструмент на панели Опубликовать в редакторе блокнота.

  1. Если необходимо обновить существующий входной или выходной параметр, выполните действия, описанные в подразделе Редактирование существующего входного или выходного параметра этого раздела.
  2. При добавлении новых входных или выходных параметров следуйте инструкциям в подразделах Настройка входных параметров или Настройка выходных параметров этого раздела.
  3. Щелкните Сохранить, чтобы обеспечить публикацию последней копии блокнота.
  4. Вручную запустите каждую ячейку блокнота, чтобы убедиться в отсутствии ошибок.

    Примечание:
    Не запускайте ячейки, содержащие фрагменты кода для выходных параметров, поскольку они не будут работать в интерактивном режиме.

  5. Щелкните Опубликовать.
  6. Нажмите кнопку Перезапись, чтобы перезаписать веб-инструмент.

Удаление веб-инструмента

Вы можете удалить веб-инструмент, опубликованный из блокнота, удалив элемент веб-инструмента.

  1. На верхней ленте редактора блокнота щелкните Опубликовать.
  2. Щелкните Просмотр подробной информации, чтобы просмотреть страницу сведений об элементе для веб-инструмента.
  3. Щелкните Настройки.
  4. Щелкните Удалить элемент и подтвердите, что вы хотите удалить элемент веб-инструмента.
Примечание:

Если элемент блокнота, из которого опубликован веб-инструмент, удален, элемент веб-инструмента также будет удален.

Редактирование существующего входного или выходного параметра

Вы можете вносить изменения в существующий входной или выходной параметр на панели Параметры в редакторе блокнота.

Примечание:

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

  1. На верхней ленте редактора блокнота щелкните Параметры.
  2. Щелкните кнопку опций рядом с параметром и щелкните Редактировать.
  3. Обновите параметр и щелкните Сохранить.
    1. Если входной параметр был обновлен, вручную очистите или удалите существующую ячейку с входными переменными и повторите шаг, чтобы вставить входные параметры как переменные в блокнот.
    2. Если выходной параметр был обновлен, вручную очистите фрагмент кода, соответствующий выходной переменной, и повторите шаги, чтобы добавить фрагмент кода для выходного параметра в блокнот.
  4. Щелкните Сохранить, чтобы сохранить блокнот.

Удаление существующего входного или выходного параметра

Вы можете удалить существующие входные или выходные параметры на панели Параметры.

  1. На верхней ленте редактора блокнота щелкните Параметры.
  2. Щелкните кнопку опций рядом с параметром и щелкните Удалить.
  3. Щелкните удалить, чтобы навсегда удалить параметр.
  4. Вручную очистите или удалите входную переменную или фрагмент выходного кода в блокноте.
  5. Щелкните Сохранить, чтобы сохранить блокнот.

Использовать экстент карты

При запуске веб-инструмента в Map Viewer, если экстент обработки и выходная система координат изменены, они будут переданы в блокнот в виде переменной Python с именем context вместе с другими входными параметрами, как показано ниже.

context = {
    "extent": {
        "ymin": 1759249.9654418486,
        "xmin": 6481923.176042713,
        "ymax": 1795442.256243616,
        "xmax": 6531137.243576055,
        "spatialReference": {"latestWkid": 2229, "wkid": 102645},
    },
    "outSR": {"latestWkid": 4269},
}

Вы можете использовать значение переменной context для настройки экстента и выходной системы координат рабочих процессов пространственного анализа в блокноте. Чтобы протестировать рабочие процессы пространственного анализа перед публикацией блокнота в виде веб-инструмента, задекларируйте для переменной context значение по умолчанию.

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