В прошлом номере журнала я писал о
реализации модели Briefcase с помощью ADO. В отличие от ADO, средства работы с отключенными наборами данных в MIDAS были реализованы с самой первой версии. Реализация модели Briefcase средствами MIDAS несколько проще, хотя и здесь есть свои подводные камни.
Приложение MIDAS состоит из двух частей: сервера приложений и тонкого клиента. Сервер приложений «общается» с сервером БД (или другим источником данных), реализует бизнес-правила и предоставляет тонкому клиенту данные по запросу. Функция тонкого клиента – это отображение данных пользователю.
В качестве примера мы спроектируем простой сервер приложений и тонкий клиент для работы с базой, описанной в
предыдущей части статьи. Сервер приложений реализуем как модуль MTS/COM+. Никаких особенностей создания сервера приложений для модели briefcase нет, поэтому я не буду описывать этот процесс в деталях. В IDE Delphi создадим новый проект приложения для MTS/COM+, выбрав пункт меню File/New/Other, и в появившемся диалоге выберем пункт ActiveX Library с закладки ActiveX. Затем включим в проект новый удаленный модуль данных (File/New/Other и пункт Transactional Datamodule с закладки Multitier).
В удаленном модуле данных разместим следующие компоненты и установим значения их свойств согласно таблице 1, приведенной ниже.
| Компонент | Свойство | Значение |
| Conn:TADOConnection | ConnectionString | Настроить на соединение с БД |
| adsParams:TADODataSet | Connection | Conn |
| CommandText | CommandText | select * from Params |
| dspParams:TDataSetProvider | DataSet | adsParams |
Таблица 1
Возможно вы искали - Реферат: Иерархические справочники с линейным временем доступа
Откомпилируйте проект сервера и установите полученную dll в новое MTS/COM+-приложение c именем MIDAS_briefcase, с помощью пункта меню Run/Install COM+ Object.
Тонкий клиент представляет собой DeskTop-приложение. Для связи с сервером приложений клиент использует один из компонентов типа Connection с закладки DataSnap (мы воспользуемся DCOMConnection) и специальный DataSet – ClientDataSet.
В таблице 2 приведены свойства, влияющие на работу компонентов тонкого клиента с сервером приложений, а также их значения.
| Компонент | Свойство | Значение |
| DCOMConn:TDCOMConnection | ServerName | Project1.MIDAS_bc |
| LoginPrompt | false | |
| cdsParams:TClientDataSet | RemoteServer | DcomConn |
| ProviderName | dspParams |
Таблица 2
Внешний вид формы приложения тонкого клиента приведен на рисунке 1.
Похожий материал - Реферат: MIDAS. Практическое применение

Рисунок 1
Получение данных с центрального сервера
Получение данных с сервера приложений аналогично приведенному в примере для ADO. Код приведен ниже.
|
procedure TForm1.act_RemoteConnectExecute(Sender: TObject); Очень интересно - Реферат: Перенос приложений MIDAS с одной СУБД на другую begin try with cdsParams do try Close; RemoteServer:=DCOMConn; Вам будет интересно - Реферат: Обратные вызовы в MIDAS через TSocketConnection FileName:=''; Active:=true; except on E:Exception do MessageDlg(Format('Ошибкаподключенияксерверу: %s', [E.Message]), mtError, [mbOk], 0); Похожий материал - Реферат: Блокировки в MS SQL Server 2000 end; finally DCOMConn.Close; end; |