На странице:

Внимание!

После подготовки необходимых файлов и перед созданием в ПК Интеллект виртуальных объектов необходимо обновить основную Базу данных с помощью Утилиты конвертирования, выбора шаблона и создания резервных копий баз данных idb.exe.

После подготовки файлов dbi, ddi и xml появится возможность создать в дереве оборудования ПК Интеллект объекты нового типа наряду со стандартными объектами.

На панели настройки созданного виртуального объекта будут отображены пользовательские параметры – в рассматриваемом примере это custom_param1 и custom_param2. Их значения можно задавать в таблице.

Отображение на карте

После создания в дереве оборудования объект можно размещать на Карте и выполнять заданные реакции из контекстного меню объекта (см. Настройка интерактивной карты для индикации состояний и управления системными объектами).

Использование в макрокомандах

После создания виртуального объекта в дереве оборудования имеется также возможность использовать его в макрокомандах.

 

Примечание.

Реакции виртуальных объектов автоматически конвертируются в события. Таким образом, в рассматриваемом примере, благодаря настроенным правилам перехода состояний (см. Подготовка файла ddi), при выполнении реакции Вкл. объект перейдет в соответствующее состояние, и на Карте будет отображена иконка, соответствующая данному состоянию.

Пример программы на языке JScript для изменения состояния виртуального объекта

Задача. По макрокоманде 1 изменить состояние виртуального объекта с идентификатором 1 на ON и отобразить на карте соответствующую данному состоянию иконку.

Решение. Поскольку в рассматриваемом примере виртуального объекта настроены правила перехода состояний, при отправке события ON от виртуального объекта его состояние будет автоматические изменено на ON, а на карте будет отображена иконка, указанная в файле ddi для данного состояния (см. Подготовка файла ddi). Скрипт для отправки события ON имеет вид:

if (Event.SourceType == "MACRO" && Event.SourceId == "1" && Event.Action == "RUN")

{
    var msgevent = CreateMsg();

    msgevent.SourceType = "CUSTOM";

    msgevent.SourceId = "1";

    msgevent.Action = "ON";

    NotifyEvent(msgevent);

}
  • No labels