Лабораторная работа № 3

У проекта есть ряд недостатков не устранимых в рамках XMLP
Проект состоит из нескольких подпроектов, которые следует как-то объединить(так как нельзя параметризовать имя таблицы, создано несколько подпроектов по числу таблиц )
Пользовательский интерфейс- неказистый.
Так как отчёт генерируется на какой то конкретный момент времени на сервер необходимо передать штамп времени. Вручную ввести значения всех штампов времени (временных рядов) не возможно, так как предполагается их бесконечное количество. Но их можно получить с сервера, используя технологию JSONP, которая позволяет не только загрузить данные с удалённого хоста, но и вызвать для них обработчик.
Для реализации загрузки временных рядов с сервера используется скрипт на языке Jython, принимающий параметр масштаба времени и реализующий точно такой же запрос к БД, который использовался для получения временных рядов при проектировании отчёта в xmlp:
select distinct tstamp from <масштаб времени> order by 1 desc
Скрипт просто подставляет в данный запрос переданный ему масштаб времени и возвращает временные ряды для этого временного уровня.
Скрипт возвращает данные в виде JavaScript функции (callback), которой передан массив необходимых значений. Данная функция выполняется и в соответствующий HTML элемент select формы загружаются временные ряды.
Чтобы пользователю не пришлось вручную вводить текст шапки предусмотрена специальная JavaScript функция, которая перед отправкой данных на сервер автоматически присвоит параметрам шапки выбранные пользователем значения в понятном ему виде. Так же эта функция генерирует путь до файла отчётов на сервере на основе выбранного пользователем временного уровня, тем самым устраняется недостаток xmlp сервера, заключающийся в невозможности параметризовать имя таблицы.
Итог: Интерфейс позволяет получать отчеты с разным уровнем истории.
Пользователю больше нет нужды вводить данные для шапки отдельно


ЗАМЕЧАНИЯ

  1. Отсутствует толковое описание работы. 13.02.2011 Исправил !!
  2. Повеселила вкладка Замечания преподавателя. Другое название, к сожалению, в голову не пришло. :)