ВУЗ:
Составители:
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. Если он вас устраивает, его можно добавить к клиентскому проекту из репозитария объектов.