Макрос, выполняющий все описанные выше действия, будет выглядеть следующим образом (macro111):



Смотрим, что тут написано.

Строка 1 – заголовок макроса и его имя (OREHOL).

Строка 3 – запуск процесса SELWF. Строки до появления следующего восклицательного знака (до строки 16 включительно) – это параметры запуска данного процесса:

– на строке 3, кроме имени запускаемого процесса Datamine, указано, что входным файлом для процесса SELWF является файл holes – &IN (holes);

– на строке 4 указано, что файлом треугольников каркасов минерализации является файл ore_tr – WERETR (ore_tr);

– на строке 5 указано, что файлом точек каркасов минерализации является файл ore_pt – &WERETR (ore_pt);

– на строке 6 указано, что выходным файлом для процесса SELWF является файл holes_ore_cut – &OUT (holes_ore_cut).

Строки 3—6 соответствуют вкладке Files процесса SELWF:


Вкладка Files процесса SELWF в интерфейсе Datamine и в макросе


Сравнивая строки 3—6 с вкладкой Files, можно заметить, что:

– поля входных и выходных файлов в макросе имеют то же имя, что и в интерфейсе процесса: поле в интерфейсе «IN» обозначается в макросе ∈

– используемые файлы в макросе помечаются знаком «&» – как «входящие», так и «результирующие»;

– имена файлов указываются в скобках;

– параметры друг от друга отделяются запятой; если описание процесса не помещается в одну строку (помним про ограничение в 80 символов), перенос осуществляется после запятой.

Строки 7—10 соответствуют вкладке Fields интерфейса.


Вкладка Fields процесса SELWF в интерфейсе Datamine и в макросе


Сравнивая строки 7—10 с вкладкой Fields, можно заметить, что:

– поля помечаются символом «*» перед именем параметра;

– пропущенные поля в интерфейсе процесса (оставленные незаполненными) в макросе не отображаются вовсе;

– имена полей указываются в скобках.

Строки 11—16 соответствуют вкладке Parameters интерфейса.


Вкладка Parameters процесса SELWF в интерфейсе Datamine и в макросе


Сравнивая строки 11—16 с вкладкой Parameters, можно заметить, что:

– параметры вкладки Parameters помечаются символом «@»;

– значения числовых параметров указываются с помощью знака равенства;

– параметры друг от друга отделяются запятой;

– никакого разделения на вкладки (как в интерфейсе процесса) нет.

Выше достаточно подробно разобран только один процесс. Остальные процессы программируются совершенно сходным образом:

– запуск процесса начинается с имени процесса и восклицательного знака перед ним;

– все параметры имеют то же имя, что и в графическом интерфейсе процесса;

– имена файлов предваряются символом амперсанда «&»;

– имена полей предваряются символом звездочки «*»;

– параметры предваряются помечаются символом «собаки» – «@»;

– имена файлов и полей заключаются в скобки;

– значения числовых параметров указываются с помощью знака равенства;

– параметры друг от друга отделяются запятыми.

Внимание: описание параметров запуска процесса не может заканчиваться запятой, т. к. это приведет к зависанию макроса (но не приведет к появлению ошибки). Возможна и другая неприятность: потеря запятой. Все параметры, которые вы с такой тщательностью подбирали, но которые указаны после «потерянной» запятой, будут проигнорированы. И здесь два варианта: либо указанные вами параметры необязательные и процесс будет выполнен с параметрами по умолчанию, либо макрос остановится, так как один из процессов не нашел всех нужных ему параметров. Второй вариант лучше – вы хотя бы увидите, что в макросе ошибка. В общем, к запятым в языке макросов надо относиться очень внимательно.

Пожалуй, некоторыми особенностями обладает только процесс