При выборе цепи двигателя вызывается специальная функция настройки/аннотирования двигателя. Эта специальная функция отмечается в шаблоне блоком обозначения со значением атрибута CODE, которое сопоставляется со строкой в листе кодов цепей, обозначенной "!MCC_CTRL" в поле UI_TITLE. Данная функция ссылается на файл ace_electrical_standards.mdb для определения значений тока при полной нагрузке и диаметра проводов для выбранного набора входных параметров двигателя.
Для значений, выданных этой функцией настройки/аннотирования двигателя, не выполняется автоматическая запись в атрибуты на компонентах или типы проводов для цепи. Данные значения сохраняются в виде индексированного списка в глобальной переменной AutoLISP, называемой “#data”. Определение "глобальная" означает, что данные сохраняются в памяти и остаются доступными, пока Конструктор цепей продолжает формирование цепи. По мере обработки Конструктором цепей последующих блоков обозначений цепи он может, после соответствующей настройки, извлекать одно или несколько таких сохраненных значений из глобальной переменной и записывать их в атрибуты на компонентах или использовать их для форматирования имен слоев для проводов соответствующего типа.
Из этого следует, что ранее должен быть установлен флаг, определяющий вызов данной функции настройки/аннотирования двигателя. Это выполняется установкой для атрибута ORDER низкого или нулевого значения. Например, если значение силы тока при полной нагрузке на двигатель используется для определения типоразмера автоматического сетевого выключателя, эти данные должны быть сохранены в памяти до обработки блока обозначения сетевого выключателя.
Элементы первого подсписка в списке "#data" хранятся в памяти в следующем порядке. Значения, относящиеся к двигателю, хранятся в первых восьми элементах. Полный список элементов см. в документации API.
Имеется два способа сопоставления данных значений с атрибутами на компоненте:
В рамках группы можно выбрать несколько компонентов. Например, пусть выполняется выбор варианта для типа выключателей и выбор, позволяющий включить вспомогательный контакт. Каждому варианту назначается численное значение из поля UI_VAL. Значения добавляются для определения соответствующего действия для данной комбинации выбора. Сумма сопоставляется со значением в поле UI_SEL. После выполнения этого сопоставления значение COMMAND_LIST, значение ANNOTATE_LIST и т. д. используются для вставки и аннотирования выбранных вариантов.
Представлены строки вызова до и после редактирования:
До:(c:ace_cb_insym #xyz nil "HMO13" #scl 8 nil)
После:(c:ace_cb_insym #xyz nil "HMO13" #scl 8 “RATING2=Мощность, л.с.: @1@”)