Распределенные системы: технология Borland Midas. Часть 3. Фертиков В.В. - 22 стр.

UptoLike

Составители: 

22
Практические задания
1. Доработайте учебный пример трехзвенной системы так , чтобы она по -
зволяла сохранять в базе данных результаты редактирования таблиц на стороне
«тонких» клиентов .
2. Доработайте учебный пример трехзвенной системы так , чтобы
оператор, работающий с «тонким» клиентом, имел возможность управлять
соединением с сервером приложений . При этом необходимо дополнительно
предусмотреть интерфейсные команды на передачу результатов редактирова-
ния таблиц серверу приложений для сохранения их в базе данных.
3. Доработайте учебный пример трехзвенной системы так , чтобы опера-
тор «тонкого» клиента имел возможность удобной работы в автономном режи-
ме (без связи с сервером приложений ). При этом необходимо дополнительно
предусмотреть интерфейсные команды управления соединением с сервером
приложений , команды сохранения кэша редактируемых таблиц в файлах на ло-
кальных дисках , восстановления содержимого кэша из файлов , а также коман -
ды на передачу результатов редактирования таблиц серверу приложений для
сохранения их в базе данных (при переходе из автономного режима в режим
связи с сервером приложений ).
4. Доработайте учебный пример трехзвенной системы для реализации
возможности регистрации клиентов в базе данных. С этой целью , прежде всего,
необходимо для каждого «тонкого» клиента обеспечить на сервере приложений
собственное соединение с базой данных (см. выше: компоненты TDatabase и
TSession помещаются в удаленный модуль данных), чтобы иметь возмож -
ность индивидуальной регистрации на сервере СУБД. Необходимо также
обеспечить передачу имени пользователя и пароля, вводимых оператором
«тонкого» клиента, на сервер приложений . Наиболее подходящим для реализа-
ции такой передачи является механизм вызова специальных (разработанных
вами) методов COM-интерфейса удаленного модуля данных. Например , вы
можете при помощи редактора библиотеки типов добавить метод Login, по-
зволяющий передачу имени пользователя и пароля через параметры .
5. Доработайте учебный пример трехзвенной системы так , чтобы она
обеспечивала корректную многопользовательскую работу «тонких» клиентов ,
использующих briefcase model (см. выше). Изучите событие TClientData-
Set.OnReconcileError, возникающее в случае , когда при попытке сохране-
ния измененной записи в базе данных выясняется, что эта запись уже была из -
менена другим пользователем . Вам необходимо написать обработку этого
события в клиентском приложении. Стандартный интерфейс пользователя,
предусматривающий обычные для такой ситуации команды, реализован в
диалоге Reconcile Error Dialog. Если он вас устраивает, его можно добавить к
клиентскому проекту из репозитария объектов .
                                    22
     Практические задания
      1. Доработайте учебный пример трехзвенной системы так, чтобы она по-
зволяла сохранять в базе данных результаты редактирования таблиц на стороне
«тонких» клиентов.
      2. Доработайте учебный пример трехзвенной системы так, чтобы
оператор, работающий с «тонким» клиентом, имел возможность управлять
соединением с сервером приложений. При этом необходимо дополнительно
предусмотреть интерфейсные команды на передачу результатов редактирова-
ния таблиц серверу приложений для сохранения их в базе данных.
      3. Доработайте учебный пример трехзвенной системы так, чтобы опера-
тор «тонкого» клиента имел возможность удобной работы в автономном режи-
ме (без связи с сервером приложений). При этом необходимо дополнительно
предусмотреть интерфейсные команды управления соединением с сервером
приложений, команды сохранения кэша редактируемых таблиц в файлах на ло-
кальных дисках, восстановления содержимого кэша из файлов, а также коман-
ды на передачу результатов редактирования таблиц серверу приложений для
сохранения их в базе данных (при переходе из автономного режима в режим
связи с сервером приложений).
      4. Доработайте учебный пример трехзвенной системы для реализации
возможности регистрации клиентов в базе данных. С этой целью, прежде всего,
необходимо для каждого «тонкого» клиента обеспечить на сервере приложений
собственное соединение с базой данных (см. выше: компоненты TDatabase и
TSession помещаются в удаленный модуль данных), чтобы иметь возмож-
ность индивидуальной регистрации на сервере СУБД. Необходимо также
обеспечить передачу имени пользователя и пароля, вводимых оператором
«тонкого» клиента, на сервер приложений. Наиболее подходящим для реализа-
ции такой передачи является механизм вызова специальных (разработанных
вами) методов COM-интерфейса удаленного модуля данных. Например, вы
можете при помощи редактора библиотеки типов добавить метод Login, по-
зволяющий передачу имени пользователя и пароля через параметры.
      5. Доработайте учебный пример трехзвенной системы так, чтобы она
обеспечивала корректную многопользовательскую работу «тонких» клиентов,
использующих briefcase model (см. выше). Изучите событие TClientData-
Set.OnReconcileError , возникающее в случае, когда при попытке сохране-
ния измененной записи в базе данных выясняется, что эта запись уже была из-
менена другим пользователем. Вам необходимо написать обработку этого
события в клиентском приложении. Стандартный интерфейс пользователя,
предусматривающий обычные для такой ситуации команды, реализован в
диалоге Reconcile Error Dialog. Если он вас устраивает, его можно добавить к
клиентскому проекту из репозитария объектов.