Общая информация о проверке в инструментах-скриптах

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

  • Изменить фильтр параметра. Используя фильтр поля, вы можете создать список корректных типов поля, таких, как Long и Double. Используя текстовый фильтр, вы можете задать список корректных ключевых слов. Существует шесть типов фильтров: Список значений - Value List, Диапазон - Range, Класс объектов - Feature Class, Файл - File, Поле - Field и Рабочая область - Workspace.
  • Указать значения по умолчанию для параметров, таких, как размер ячейки для растров.
  • Настроить предупреждения и сообщения об ошибках.
  • Включить или отключить параметр, основываясь на значениях, содержащихся в других параметрах.
    Примечание:

    Если параметр отключен, он исчезнет из диалогового окна на панели Геообработка, а если его снова включить, он снова появится. Тот же эффект наблюдается в нескольких системных инструментах геообработки, таких как инструмент Добавить поле, в котором несколько параметров зависят от типа поля.

  • Изменить описание выходных наборов данных, чтобы использовать их в ModelBuilder. Обновление описания позволяет последующим инструментам в ModelBuilder идентифицировать ожидаемые характеристики данных до их запуска.

Как работает проверка

Проверка выполняется с помощью блока кода Python, который геообработка использует для управления тем, как панель Геообработки и окно Python изменяются в зависимости от пользовательского ввода.

Проверка

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

  • Проверка, которая выполняется ArcGIS Pro автоматически. Эта часть проверки называется внутренняя проверка.
  • Проверку можно выполнить, добавив код.

Внутренняя проверка выполняет следующие действия:

  • Если требуется параметр, он оценивается, чтобы определить, предоставлено ли значение. Если значение не указано, выводится сообщение.
  • Проверяет, что значение имеет правильный тип. Например, введение растра вместо класса объектов или строки вместо числа.
  • Проверяет участие в фильтре; то есть, если у вас есть фильтр списка значений, содержащий ключевые слова, такие как КРАСНЫЙ, ОРАНЖЕВЫЙ и ЖЕЛТЫЙ, и вы вводите СИНИЙ, вы получите сообщение об ошибке.
  • Проверяет существование входных наборов данных.
  • Генерирует путь по умолчанию для выходных наборов данных.
  • Обновляет описание выходных данных на основе набора правил, содержащихся в объекте Schema.
  • Проверяет наличие выходных наборов данных с помощью параметра Разрешить инструментам геообработки перезаписывать существующие наборы данных. Если набор данных существует и параметр имеет значение Ложь, выдается ошибка; в противном случае выдается предупреждение.
  • Если параметр имеет тип данных Поле, проверяется существование поля в связанной таблице.
  • Проверяет, что выходной набор данных отличается от входного набора данных.
  • Для параметров, содержащих типы данных линейных и площадных единиц, задает их значения по умолчанию, проверяя соответствующие значения в ArcGIS Pro (если запущен из ArcGIS Pro).

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

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

Добавленный код работает с внутренней проверкой следующим образом:

  • Вы можете установить набор правил, которые внутренняя проверка использует для изменения описания выходных наборов данных. Эти правила содержатся в объекте Schema.
  • Вы можете изменять и обновлять фильтры перед выполнением внутренней проверки. Внутренняя проверка сравнивает введенное пользователем значение со значениями в фильтре.

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

Связанные разделы


В этом разделе
  1. Как работает проверка