Выборка и обработка данных SIAD

  Экспорт архивных данных

Начиная с релиза 6.07, рекомендуется использовать каналы CALL выборки данных из архива с Параметр>=32.

Для выборки/обработки данных из архива в реальном времени используются каналы класса CALL с соответствующими типами вызова (каналы-инициаторы выборки, см. Атрибуты канала класса CALL ). Тип пересчета таких каналов должен быть цикл IDLE.

Если в описании канала-инициатора не указан другой порядок отработки, то:

   канал типа OUTPUT отрабатывается при изменении значения;

   канал типа INPUT отрабатывается R раз со своим периодом (R – значение атрибута 0).

В канале-инициаторе с Параметр>=32: по завершении выборки R=0 автоматически.

В случае ошибки соответствующее сообщение записывается в файл tm6_log.txt (если установлен бит 11 (0x800) переменной @Debug, информация об ошибке записывается также в протокол профайлера), канал-инициатор сбрасывается в исходное состояние, в нем устанавливается признак аппаратной недостоверности и обнуляется входное значение, а атрибут 7, P индицирует код ошибки:

   1 – системная ошибка;

   2 – выборка данных не завершена в течение 2 минут;

   4 – недостаточно памяти;

   5 – ошибка экспорта (например, при генерации документа; сообщение – "EXPORT: WRONG");

   6 – неправильный параметр;

   7 – в архиве нет запрашиваемых данных либо заданный интервал находится вне временного диапазона архива.

Если архив не обнаружен, монитор выключает канал-инициатор.

В ряде случаев результаты выборки/обработки записываются в аргументы канала-инициатора, при этом некоторые аргументы возвращают два параметра – значение и время. Если к такому аргументу привязан канал, то значение записывается в его вход, а время – в атрибут Время изменения.

Атрибут 120, ACK индицирует состояние процесса:

   в каналах CALL.TVC/CALL.ChGroupReq, привязанных к аргументам каналов-инициаторов, ACK принимает значение 1 по завершении приема данных;

   в каналах-инициаторах ACK принимает значение 1 после извлечения всех данных (по всем интервалам и выбираемым параметрам);

   в каналах-инициаторах и каналах CALL.TVC/CALL.ChGroupReq, привязанных к аргументам каналов-инициаторов, ACK принудительно обнуляется перед началом выборки.

В каналах-инициаторах и каналах CALL.TVC/CALL.ChGroupReq, привязанных к аргументам каналов-инициаторов, фиксируется время присвоения 1 атрибуту 120, ACK (метка времени записывается в атрибут 45, T).

Ключ TVC_RSZ=<n> в файле *.cnf задает максимальное число аргументов каналов CALL.TVC/CALL.ChGroupReq, привязанных к аргументам каналов-инициаторов (1024 по умолчанию).

Экспорт архивных данных

При присвоении каналу-инициатору одного из следующих значений архивные данные экспортируются в файл ../<папка узла>/0_<кодировка канала>_<YYYYMMDD>_<аппаратное значение канала>_<имя канала> соответствующего формата:

   0xfff1 – XML;

   0xfff2 – HTML (аналог SubNum=558, см. Номер SubNum );

   0xfff3 – HTML (аналог SubNum=542).

Существуют также другие способы экспорта архивных данных (см. Профайлер с поддержкой графических экранов , Профайлер без поддержки графических экранов , Конфигурирование таблицы архивных значений , Канал CALL.ChGroupReq и описание переменной @Data_from_SIAD в разделе Группа СИСТЕМНЫЕ ).