OpenSCADAWiki: Doc/VCA Engine/doc ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 

Возможности примитива "Документ":


В основе любого документа лежит XHTML-шаблон. XHTML-шаблон это тег "body" WEB-страницы, содержащий статику документа в стандарте XHTML 1.0 и элементы исполняемых инструкций на одном из языков пользовательского программирования OpenSCADA в виде <?dp {procedure} ?>. Результирующий документ формируется путём исполнения процедур и вставки их результата в документ.


Источником значений исполняемых инструкций являются атрибуты виджета этого примитива, а также все механизмы языков пользовательского программирования OpenSCADA. Атрибуты могут добавляться пользователем и линковаться на реальные атрибуты параметров или-же являться автономными, значения которых будут формироваться в скрипте виджета. В случае со слинкованными атрибутами могут извлекаться значения из истории, архива.


На рис. 3.8.7.a изображена структурная схема виджета примитива "Документ". Согласно этой структуре "Документ" содержит: XHTML-шаблон, результирующие документы и скрипт обработки данных. Источником данных для скрипта и результирующих документов являются атрибуты виджета.


Структурная схема примитива «Документ». (42 Кб)
Рис.3.8.7.a Структурная схема примитива "Документ".

Предусматривается работа виджета в двух режимах: Динамический и Архивный. Отличие архивного режима заключается в наличии архива указанной глубины и атрибутов, позволяющих управлять процессом архивирования и просмотра указанного документа в архиве.


Генерация документа всегда производится в момент установки атрибута времени <time> относительно установленного начального времени документа в атрибуте <bTime>. При выключенном архиве результирующий документ помещается непосредственно в атрибут <doc>. При включенном архиве результирующий документ помещается в ячейку под курсором, атрибут <aCur>, а так-же в <doc> если значение курсора архива <aCur> и курсора визуализируемого документа <vCur> совпадают. Атрибуты архивных курсоров предусматривают несколько командных значений:


Как было указано выше динамика шаблона документа определяется вставками исполняемых инструкций вида <?dp {procedure} ?>. В процедурах могут использоваться одноимённые атрибуты виджета и функции пользовательского интерфейса программирования OpenSCADA. Кроме атрибутов виджета зарезервированы специальные атрибуты (табл. 3.8.7.a).


Кроме специальных атрибутов в XHTML шаблоне зарезервированы теги и атрибуты тегов специального назначения (табл. 3.8.7.a).


Таблица 3.8.7.a. Специальные и зарезервированные элементы шаблона.

Имя Назначение
Атрибуты
rez Атрибут результата исполнения процедуры, содержимое которого помещается в дерево документа.
lTime Время последнего формирования. Если документ формируется впервые то <lTime> равен <bTime>.
rTime Содержит время для перебираемых значений в секундах. Определяется внутри тегов с атрибутом "docRept".
rTimeU Содержит время для перебираемых значений в микросекундах. Определяется внутри тегов с атрибутом "docRept".
rPer Содержит периодичность перебора значений (атрибут "docRept").
mTime, mTimeU, mLev, mCat, mVal Определяются внутри тегов с атрибутом "docAMess" при разборе сообщений архива сообщений:
mTime — время сообщения;
mTimeU — время сообщения, микросекунды;
mLev — уровень сообщения;
mCat — категория сообщения;
mVal — значение сообщения.
Специальные теги
Специальные атрибуты стандартных тегов
body.docProcLang Язык исполняемых процедур документа. По умолчанию это JavaLikeCalc.JavaScript.
*.docRept="1s" Тег с указанным атрибутом при формировании размножается путём смещения времени в атрибуте "rTime" на значение указанное в данном атрибуте.
*.docAMess="1:PLC*" Указывает на необходимость размножения тега с атрибутом сообщения из архива сообщений за указанный интервал времени и в соответствии с уровнем (1) и шаблоном запроса (PLC*). В шаблоне запроса может указываться регулярное выражение в виде /{re}/. Для данного тега, в процессе размножения, определяются атрибуты: mTime, mTimeU, mLev, mCat и mVal.
*.docRevers="1" Указывает на инвертирование порядка размножения, последний сверху.
*.docAppend="1" Признак необходимости добавления результата выполнения процедуры в тег процедуры. Иначе результат исполнеия заменяет содержимое тега.
body.docTime Время формирования документа. Используется для установки атрибута <lTime> при следующем формировании документа. Не устанавливается пользователем!
table.export="1" Включение возможности экспорта содержимого указанной таблицы в CSV-файл и другие табличные форматы.

 
There is one file on this page.[Display files/form]
There is no comment on this page. [Display comments/form]