Описание пользователя
Глава 2. Интерфейс пользователя
§2.15. Операции с несколькими блоками и связями одновременно
§2.15.4. Пакетная обработка
Описывается способ автоматизации обработки схемы – задание последовательности операций по выделению блоков и связей и изменению их параметров.
Пакетная обработка позволяет задать последовательность действий, которую необходимо выполнить над блоками и связями загруженной схемы. Она тесно связана с функциями выделения по критерию и групповой установки – в качестве действий, входящих в последовательность, указываются файлы параметров, сохраненные этими функциями. Пакетная обработка полезна в тех случаях, когда необходимо выполнить одни и те же действия над несколькими схемами. Допустим, например, что множество блоков в нескольких уже созданных схемах использует модели из динамической библиотеки «oldlib.dll». Со временем появилась новая библиотека «newlib.dll» с усовершенствованными версиями тех же самых моделей, и теперь нужно заменить во всех блоках всех схем старую библиотеку на новую. Выполнение такой замены вручную потребовало бы много сил и времени, а пакетная обработка позволяет автоматизировать этот процесс. Сначала нужно подготовить данные для обработки:
- загрузив какую-либо схему, открыть окно выделения по критерию, задать в нем выделение всех блоков с моделями из библиотеки «oldlib.dll» и сохранить критерий выделения в файл;
- открыть окно групповой установки, задать в нем установку для всех выделенных блоков файла библиотеки «newlib.dll», сохранить параметры установки в файл и закрыть окно, не выполняя установку.
- открыть окно пакетной обработки (как это сделать, будет описано ниже), добавить в него два действия – выделение по критерию из первого сохраненного файла и установка параметров по второму сохраненному файлу – и сохранить параметры пакетной обработки в файл.
Теперь, чтобы заменить в какой-либо схеме со всех блоках «oldlib.dll» на «newlib.dll», нужно загрузить эту схему и выполнить в ней пакетную обработку по сохраненному файлу параметров – это значительно проще, чем искать нужные блоки во всех подсистемах схемы и менять параметры найденных.
Пакетная обработка вызывается пунктом главного меню RDS «». При его выборе открывается окно, в котором задается последовательность выполняемых действий и список обрабатываемых подсистем схемы (рис. 250).
Рис. 250. Окно пакетной обработки
В левой части окна располагается панель «», на которой задается набор подсистем схемы, в которых следует выполнить указанные действия. Подсистемы выбираются установкой одного из следующих флажков:
- «» – действия будут выполнены во всех подсистемах данной схемы (это самый часто используемый вариант);
- «» – действия будут выполнены во всех подсистемах, окна которых в данный момент открыты (пользователь может специально открыть только те подсистемы, которые нужно обработать);
- «» – действия будут выполнены только в подсистемах, окна которых не открыты (вариант, противоположный предыдущему);
- «» – действия будут выполнены только в подсистемах, отмеченных флажком в списке на панели.
В нижней части панели находится флажок «», позволяющий выполнить указанные действия в том числе и над блоком корневой подсистемы. Дело в том, что и выделение по критерию, и групповая установка, используемые при пакетной обработке в качестве выполняемых над блоками действий, работают только с блоками внутри какой-либо подсистемы. Корневая подсистема схемы сама по себе тоже является блоком, но у этого блока нет родительской подсистемы, и поэтому он невидим для выделения по критерию и групповой установки. Чтобы над ним тоже можно было выполнить действия (например, изменить параметры рабочего поля корневой подсистемы), нужно установить указанный флажок.
На панели «» в правой части окна располагается таблица с последовательностью выполняемых операций. Таблица состоит из двух колонок: «», в которой отображается название выполняемой операции, и «» с именем файла параметров операции. Справа от таблицы находятся кнопки, позволяющие добавлять, удалять и изменять действия, а также менять порядок их выполнения:
| Кнопка | Действие |
|---|---|
| Добавить новую операцию (открывает отдельное окно). | |
| Изменить выбранную операцию (открывает отдельное окно). | |
| Переместить выбранную операцию на одну позицию вверх по списку. | |
| Переместить выбранную операцию на одну позицию вниз по списку. | |
| Удалить выбранную операцию. | |
| Очистить весь список операций. |
При добавлении или изменении операции открывается отдельное окно (рис. 251), в котором указывается тип операции и файл ее параметров, если они у этой операции есть.
Рис. 251. Окно операции пакетной обработки
Поддерживается только три типа операций: выделение по критерию (указывается файл параметров, сохраненный из окна выделения), установка параметров (указывается файл параметров, сохраненный из окна групповой установки) и удаление выделенных блоков (файл параметров не указывается). Нажатие кнопки «» записывает операцию в список.
В левой нижней части окна пакетной обработки (см. рис. 250) находятся кнопки «» и «», сохраняющие набор действий в файл и загружающие его оттуда. При нажатии этих кнопок открываются диалоги сохранения и загрузки файла соответственно – они стандартные, поэтому рисунок для них не приводится. В файл сохраняется только сам список действий и список подсистем, над содержимым которых эти действия выполняются, поэтому для выполнения пакетной обработки будет необходим не только этот сохраненный файл, но и все файлы критериев выделения и параметров групповой установки, с которыми он связан. Файл пакетной обработки по умолчанию получает расширение «.set», но его можно, при желании, изменить. Не следует путать его с файлами критериев, имеющими по умолчанию очень похожее расширение «.sel».
Чтобы начать пакетную обработку, следует нажать кнопку «» в правой нижней части окна. В левой нижней части окна появится полоса прогресса, которая будет расти по мере выполнения действий. При большом количестве блоков в подсистеме процесс может затянуться, поэтому, при желании, его можно прервать нажатием кнопки «». Если в настройках RDS разрешена отмена действий пользователя, пакетную обработку можно отменить всю целиком либо нажатием Ctrl + Z, либо выбором в главном меню RDS пункта «», при этом схема вернется к состоянию до начала пакетной обработки.