Распределенные многоуровневые приложения

Технология MIDAS

Чаще используется трехуровневая модель: клиентская программа (формирует запросы пользователя и отображает результаты их выпол­не­ния), сервер приложений (синхронизирует работу компонентов), сервер базы данных (обрабатывает запросы к данным от сервера приложений). В состав приложения MIDAS входят: удаленные модули данных (серверы COM или CORBA), поставщики данных (объекты, возвращающие по за­просу результирующую информацию), компоненты связи, клиентские наборы данных (объекты клиентской программы обработки получаемых данных с использованием MIDAS.DLL). Компоненты технологии MIDAS находятся на одноименной панели [2; 7].

Схема работы приложения MIDAS [2; 7].

Клиентская программа соединяется с сервером приложений и запрашивает данные у сервера.

Сервер приложений обращает к серверу базы за данными, полу­ча­ет, упаковывает их в формате OleVariant(дельта‑наборы),отсылает клиенту.

Клиентская машина распаковывает, отображает данные, корректирует их и посылает новые данные серверу приложений.

Сервер приложений получает, распаковывает данные и передает их серверу базы в виде транзакции. Сервер базы проводит изменения в базу и формирует информа­цию об ошибках, которая посылается на клиентскую машину сервером приложений.

Пример формирования итоговых полей таблицы строек с итоговыми зна­чениями сметных и освоенных сумм по всем стройкам с исполь­зо­ва­ни­ем технологии MIDAS:

1. Разместим в модуле данных компонент DataSetProvider, который ор­га­низует обмен данными между клиентскими и внешними наборами данных. В свойстве DataSet укажем имя объекта Stroiki, ранее созданного в модуле базы (п. 3.3).

2. Разместим в модуле данных компонент ClientDataSet, который под­держивает наборы клиента, независимые от типа СУБД и источника данных. Укажем свойство AggregatesActive=True и в свойстве ProviderName укажем имя предыдущего компонента. Через редактор по­лей (вызывается двойным щелчком по компоненту) добавим два новых итоговых поля SumSs, SumFs типа Aggregate (итого­вое) со значением свойства Expression равным Sum(Ss) и Sum(Fs). Могут ис­поль­зоваться еще функции Avg (среднее), Count (число непустых значе­ний поля), Max (максимальное), Min (минимальное). Не допускаются вло­жения функций и операций с отдельными полями. Укажем Active=True для этих полей.

3. Разместим компонент DataSource со значением свойства Da­taSet=ClientDataSet1. Подключим модуль Modul2 к Modul1

4. На форме разместим два компонента DBText со свойствами DataSource=DataModul2.DataSource1 и DataField равным SumSs, SimFs соот­вет­ственно и компонент DBGrid для работы с таблицей.

5. Выполним приложение. На форме появятся два итоговых числа.








Дата добавления: 2016-03-22; просмотров: 586;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.