Таблица подстановок

Во вкладке Скриптинг, в группе Команды макросов: Выберите Утилиты | Таблица подстановок, чтобы определить макропеременные и их переменные. Ссылки на них в макросе осуществляются путем включения в него макропроцесса MACSUB.

Иногда вам необходимо задать параметры, используемые макросом, во время запуска макроса. Например, вы записали макрос, который извлекает и обрабатывает данные для уступов вашего карьера. Уступ определяется верхним и нижним превышением. Вы хотите использовать этот же макрос для любого уступа и при этом не редактировать файл макроса каждый раз. Существует 2 способа сделать это:

  1. В диалоговом окне (форме), в котором используются переменные параметры (в нашем примере верхнее и нижнее превышение уступа), впечатайте в командное поле знак вопроса (?). Это заставит макрос сделать паузу, чтобы позволить вам ввести соответствующие значения. После этого необходимо нажать на ОК или ЗАПУСТИТЬ в форме, чтобы продолжить работу макроса.
  2. Воспользуйтесь таблицами подстановок, они позволяют работать очень гибко (и, фактически, используют функциональные возможности первой опции). Проблема подхода с вопросительным знаком заключается в том, что диалоговых окон, в которых используются переменные параметры, может быть много. Либо необходимо запустить какой-либо более долгий процесс перед использованием переменных параметров, что заставить вас ждать, пока макрос остановится. Дополнительные сведения по Таблицам подстановок рассматриваются ниже.

Макрос обрабатывает Таблицу подстановок с помощью команды MACSUB. Его эквивалент в меню — Скриптинг | Команды макросов | Утилиты | Таблица подстановок.

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

MACSUB - обычно является первой записью в макросе. Форма (выше) была заполнена таким образом, чтобы отображать, как можно работать с данными для нашего гипотетического примера с уступами. Текст в колонке '@' - это имена (заданные пользователем), которые будут использоваться как заменяемые значения (поля %1, %2) последующими процессами в макросе. В связи с тем, что форма содержит вопросительный знак, макрос остановится (сделает паузу), позволяя вам впечатать значения для 2 переменных. После этого надо нажать на кнопку запуска, чтобы продолжить работу макроса.

В макросе вы увидите имена подстановок, как показано ниже (обратите внимание на то, что некоторые поля макроса были скрыты).

Процесс SUBSET (заместить) или, более точно, ФИЛЬТР, используемый процессом SUBSET сделает ссылку на заменяемые параметры %1 и %2. В связи с тем ,что имена в полях макроса %1 и%2 имеют '@' в качестве суффикса, процесс обрабатывает их в качестве имен, заданных в Таблице подстановок и использует значения, заданные в колонке Подстановки в качестве пропуска параметров.

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

Любой процесс в макросе может использовать значения, заданные в Таблице подстановок. Эти значения также доступны любому макросу, который вызывается главным макросом. Предположим, вы хотите иметь макрос, который создал бы вывод для всех уступов в вашем карьере. Это может выглядеть следующим образом:

Макрос, вызванный шагами 2, 4, 6 и т.д. фактически сделает всю работу, для определения границ уступа будут использоваться подстановки @Top_RL и@Bottom_RL (верхняя и нижняя высотные отметки соответственно).

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

Это пример более автоматизированного способа определения параметров, с остановками (паузами) макросов в Таблице подстановок. Помните этот пример..?

Если вы имеете ранее сохранили формы (используя те же имена подстановки) для каждого уступа, вы можете щелкнуть по кнопке Формы, выбрать сохраненный набор для соответствующего уступа (чтобы заполнить текущую форму), а затем нажать на кнопку Запустить. Вероятно это не такая уж и большая задача для сценария по уступам, однако, если вы использовали более 2 подстановок, вы могли бы упростить работу.

Обратите внимание, что вы также можете ссылаться на предопределенные параметры подстановки (или на подстановки проекта, которые вы определяете самостоятельно) в выражениях или вводить их непосредственно в форму. Смотрите: Переменные подстановки и Заданные параметры подстановки

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