Как запускать макрос
Существующий макрос можно запустить тремя способами (может, есть еще, но нам, кроме этих трех, ничего в голову не приходит):
– с помощью кнопки в ленте команд; кнопка расположена непосредственно на вкладке Home;
– прямо под кнопкой запуска макроса находится кнопка вызова меню работы с макросами, одним из пунктов которого также является запуск макроса; из остальных предложенных вариантов наиболее полезным является вариант Start Recording – его разберем чуть позже;
– с помощью контекстного меню, которое вызывается правой кнопкой мыши из дерева проекта.
Варианты не вполне равнозначные. Во-первых, как несложно заметить, в третьем варианте, кроме выбора файла макроса, сразу же предлагается выбрать имя макроса, так как в файле может быть больше одного макроса. В рамках книги мы не будем подробно останавливаться на этой возможности, просто будет нелишним помнить о ней. Так вот, если в файле содержится один макрос, кнопкой в ленте (первый способ) будет запущен именно он. Если несколько, то при первом или втором способе запуска после выбора файла будет предложено выбрать также и имя макроса. При запуске макроса из контекстного меню в любом случае будет предложено выбрать имя макроса – даже если он там один.
Во-вторых, в случае, если при оформлении макроса были допущены ошибки, с помощью контекстного меню макрос, скорее всего, даже не получится запустить, а с помощью кнопки меню Datamine попытается его запустить, у него ничего не получится, и в окно Command будет выведено сообщение об ошибке.
Что может и не может макрос
Макрос может:
– выполнять все операции, выполняемые процессами Datamine (теми, что запускаются из командной строки Datamine);
Командная строка Datamine, если кто забыл
– читать файлы формата dm без использования процессов Datamine, но, увы, не создавать и не изменять их (об этом чуть позже);
– управлять командами операционной системы (есть тут кто-нибудь, кто помнит, как жить без графического интерфейса, под чистой DOS?).
Например, вот такой макрос:
!START SYSMACRO
!OPSYS
echo Hello, world>> newfile. txt
!END
создаст в рабочем каталоге вашего проекта файл `newfile. txt` и запишет туда текст «Hello, world» (давайте-таки соблюдем традиции!).
Макрос не может сделать ничего, что бы выходило за рамки процессов Datamine. Например, макрос не может управлять объектами в окне 3D: он не может загрузить в окно 3D что-либо, не может в этом окне что-то сделать с загруженными данными и т. д., например, «штатными» инструментами макрос не может выполнить проверку каркасов на ошибки