Примеры подстановки встроенных переменных модели

Любая переменная в модели может использоваться для подстановки. Для этого ее имя следует заключить в символы процента (%имя переменной%). В этом разделе приведены примеры использования подстановки встроенной переменной в ModelBuilder.

Пример 1

В приведенной далее модели переменная рабочей области, Data Workspace, имеет значение C:\Data.gdb. Это расположение рабочей области подставляется в качестве встроенной переменной в параметрах инструмента Проецирование (Project) путем заключения имени переменной в символы процента. Во время работы фактическое значение переменной, C:\Data.gdb, подставляется вместо %Data Workspace%.

Встроенная рабочая область данных

Пример 2

При выполнении итератор Итерировать классы объектов (Iterate Feature Classes) создает выходную переменную как для пути к классу объектов, так и для имени класса объектов. С помощью значения переменной Name можно построить путь к классу проецируемых объектов (Projected Feature Class). При работе инструмента %Name% будет заменено на имя класса объектов.

Выходные данные итератора как встроенная переменная

Пример 3

Parcel ID ― это параметр модели, который задается при выполнении инструмента модели. Эта переменная используется в параметре Выражение (Expression) инструмента Выбрать в слое по атрибуту (Select Layer By Attribute) в виде "Parcel" = '%Parcel ID%'. При работе инструмента %Parcel ID% заменяется на идентификатор участка (в приведенном ниже примере 9), в результате чего выбираются только участки с идентификатором 9.

Использование встроенной переменной в инструменте Выбрать в слое по атрибуту (Select Layer By Attribute)
ПримечаниеПримечание:

Нажатие кнопки Проверить (Verify)для запроса SQL с подстановкой встроенной переменной в Конструктор запросов (Query Builder), для инструментов подобных Создать векторный слой (Make Feature Layer), Выбрать (Select), и Выбрать в слое по атрибуту (Select Layer By Attribute), приведет вас к ошибке некорректного запроса SQL, поскольку проверка не подставляет значение встроенной переменной при тестировании выражения. При запуске инструмента, значение встроенной переменной подставляется в выражение и результат создается на основе подставленных значений.

Пример 4

В этой модели имеется две переменные: Число резидентов (Number of Residents) и Отходов на человека в год (Waste Per Person Per Year). Эти переменные используются в инструменте Вычислить значение (Calculate Value) путем заключения их в символы процента. При работе инструмента Вычислить значение (Calculate Value) вместо имен переменных будут подставлены заданные им значения, которые будут перемножены, чтобы вычислить значение Общий объем отходов в год (Total Waste Per Year).

Использование встроенной переменной в инструменте Вычислить значение (Calculate Value)

Пример 5

Miles to Meter ― это переменная в модели, содержащей коэффициент преобразования, который обозначает количество метров в одной миле (1609,344). Во вводе имеется поле расстояния со значениями в милях. Инструмент Вычислить поле (Calculate Field) берет значения из поля расстояния (в милях) и умножает их на коэффициент преобразования, выдавая расстояние в метрах. Выражение инструмента Вычислить поле (Calculate Field): Miles * %Miles to Meter%. При выполнении инструмента %Miles to Meter% заменяется на 1609,344.

Использование встроенной переменной в инструменте Вычислить поле (Calculate Field)

Пример 6

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

Переменная Input содержит значение C:\ToolData\Road.shp. Если указать ее для подстановки в выходном имени в виде C:\Scratch\%Input%, инструмент сформирует сообщение об ошибке. Эта ошибка возникнет из-за того, что переменная Input содержит путь, имя и расширение базы данных, в результате чего подставлено будет значение C:\Scratch\C:\ToolData\Road.shp — недопустимый путь. Чтобы исправить это положение, воспользуйтесь инструментом Анализировать путь (Parse Path), чтобы разбить полный путь на компоненты, а затем используйте имя базы данных (содержащееся в переменной Name) для подстановки.

Как не следует использовать встроенные переменные

Связанные темы

9/11/2013