Проектування триланкової розподіленої інформаційної системи для роботи з БД із використанням технології DataSnap (MIDAS)
F Мета: отримання практичних навичок проектування розподіленої інформаційної системи із використанням технології MIDAS.
F Завдання:
Створити оригінальну (!) розподілену триланкову інформаційну систему на основі технології MIDAS. Сервер прикладень повинен інкапсулювати та експортувати деякий набір даних з абиякої таблиці БД. Прикладення-клієнт повинен підключатися до сервера прикладень та відображувати отримані від сервера дані у вигляді мережі.
Методика створення сервера прикладень за технологією MIDAS
Сервер прикладень інкапсулює велику частину бізнес-логіки розподіленого прикладення і забезпечує доступ клієнтів до БД. MIDAS-сервери прикладень повинні підтримувати деякий набір SQL-запитів для змін в БД і надсилати їх серверу БД за командою клієнтського прикладення.
Проектуємий тут сервер прикладень використовується для генерації запитів до БД через механізм BDE.
Спочатку створимо головну форму прикладення, основне призначення якої - служити індикатором запущеного сервера (мал. 2.1).
Малюнок 2.1
Форму можна розташувати де-небудь у кутку екрану, а її властивість FormStyle встановити рівною fsStayOnTop, щоб не втратити її вікно серед інших відкритих вікон.
Основною частиною сервера прикладень є віддалений модуль даних. Він є платформою для розташування невізуальних компонентів доступу до даних і компонентів-провайдерів. Розташовані на ньому компоненти з'єднань, транзакцій і компоненти, що інкапсулюють набори даних, забезпечують триланкове прикладення зв'язком із сервером БД. Це можуть бути набори компонентів для технологій BDE, ADO, InterBase Express, dbExpress та ін. Віддалений модуль даних реалізує основні функції сервера прикладень на основі надання клієнтам інтерфейсу IAppServer (або нащадка цього інтерфейсу). Для цього віддалений модуль даних повинен містити компонент-провайдер DataSetProvider, який передає пакети даних клієнтському прикладенню, а точніше компонентам ClientDataSet, а також забезпечує доступ до методів інтерфейсу IAppServer.
Для створення віддаленого модуля даних треба виконати команду File | New | Other і зі сторінки Multitier репозитарія об'єктів обрати піктограму Remote DataModule (мал. 2.2).
Малюнок 2.2
У діалозі, що з'явився, слід задати ім'я компонентного класу сервера (SampleMIDASServer) і, при необхідності, встановити прапорець Generate Events support code (мал. 2.3).
Малюнок 2.3
На одержаній порожній формі розташуйте компоненти (мал. 2.4):
· Session – для забезпечення сеансів зв'язку з БД;
· Table (тут TableCustomer), встановивши необхідні значення властивостей: DatabaseName (тут BCDEMOS), Session (тут Session1_1) і TableName (тут customer.db). Властивість Active також слід встановити рівною true (або встановити її значення динамічно при створенні модуля даних). ............