Классика баз данных - статьи

       

Этому посвящено правое окно приложения,


Этому посвящено правое окно приложения, в котором отображаются свойства элемента. Здесь все зависит от фантазии разработчика и инструментов используемых для создания приложения. В нашем случае мы ограничились двумя видами отображения свойств элемента – в виде html странички и в виде диаграммы. Оба представления изображены на рисунках и .

Чуть подробнее остановимся на формировании свойств объектов в виде html странички как наиболее удобного способа отображения информации. В нашей реализации Html страничка формируется средствами привычными для разработчика Oracle на языке PLSQL с использованием собственных пакетов. При этом страничка может содержать интерактивные элементы – кнопки, выпадающие списки. Например, нажав на кнопку можно запустить формирование отчета, форму, выполнить процедуру и т.д.. Можно, например, выбрать месяц отображения информации. В этом случае, при изменении месяца будут переформированы и отображены данные выбранного месяца, и система запомнит, с каким месяцем работает конкретный пользователь, и при повторном отображении в первую очередь отобразит именно этот месяц. Процедуры отображения информации назначаются каждому элементу дерева и могут находится в пакетах базы данных. В качестве примера, приведем текст процедуры отображения информации по счетчикам:

procedure Html (IdCounter in Main.Counter.Id_Counter%type) is lPrivilegeName vPrivilege.FullName%type; begin pHtml.SetColumn ('<td align="right" class="style_green">', '</td>', 2, false);

pHtml.TableFromQuery ('select "<b>Счетчик</b>", ' '"<b>" Name "</b>" ' 'from Main.vCounter ' 'where Id_Counter = ' to_char (IdCounter), IsHeader => false); pHtml.AddText ('<p>'); pHtml.TableFromQuery ('select ET.Name as "Обслуживаемые обьекты", (select count(*) from Finance.vEntityAcct EA where EA.Id_Entity = C.Id_Entity) as "Кол-во счетов" from Finance.vEntityTree ET, Main.vCounter C where ET.Id_Entity = C.id_entity and C.Id_Counter = ' to_char (IdCounter), IsHeader => true); end;


Содержание  Назад  Вперед