Лабораторная работа 4 - Коротаев Борис Алексеевич

Проектирование пользовательского интерфейса для журнала дискретных значений

Отчёт по дискретным значениям отражает изменение состояния конкретного сигнала за определённый интервал времени.

Для генерации данного отчёта используется следующий sql-запрос:

select concat(substr(tstamp,1,4),'-',substr(tstamp,5,2),'-',substr(tstamp,7,2),
' ',substr(tstamp,9,2),':',substr(tstamp,11,2)) tstamp,
value,
case vf when '0' then '' when '1' then '#' end vf,
hand, a_ext from dx where code=:pCode
and tstamp between :pStart and :pStop
order by tstamp desc

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

select distinct code from dx order by 1 asc

Запрос для выбора временных рядов выгладит так же, как в журнале недостоверных значений, только временные ряды извлекаются уже из таблицы с информацией об изменении дискретных значений:

select distinct tstamp from dx  where code=:pCode order by 1 asc;    - для pStart; 
select distinct tstamp from dx where code=:pCode order by 1 desc;    - для pStop;

Отчёт разрабатывается аналогично отчётам по недостоверным значениям.

WEB-интерфейс так же реализуется аналогично предыдущему. С помощью технологии JSONP с сервера загружаются временные ряды и коды сигналов.
При разработке WEB-интерфейса, необходимо было учесть, что при выборе временного интервала, в случае если начальное время позже чем конечное, отчет будет генерироваться неправильно и выводить пустой результат. Проблема решается сравнением начальных и конечных дат - начальное время должно быть меньше конечного (так как время в таблице представлено числом).


Предыдущая Вернуться Следующая


Замечания

  1. Отсутствует отчет* - детальное описание работы
    • структура БД
    • предметная область
    • технология разработки отчетов
    • технические проблемы и способы их решения