Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Практическая Работа № 6






тема: «Клиентская часть: размещение компонентов доступа к данным, соединение с БД, размещение компонентов визуализации, отображение таблиц»

Цели практической работы:

55. Обобщить, закрепить теоретические знания по теме: Проектирование клиентской части приложения.

56. Сформировать практические умения и навыки: создавать пользовательское приложение, размещать компоненты доступа к данным и компоненты визуализации данных, организовывать соединение с БД InterBase, реализовывать реляционную связь между таблицами БД, отображать данные.

57. Сформировать исследовательские и интеллектуальные умения: анализировать возможности использования различных технологий доступа к данным, задания необходимых условий для связи с БД, оформлять результаты

Инструкция по выполнению практической работы:

 

  1. Начните новый проект и измените следующие свойства пустой формы, заданные по умолчанию:

Caption = 'Накладные на книги'

Name = 'fmNakls'

  1. После изменения свойств сразу сохраните модуль в специально отведенной для этого папке под именем fmNaklsU, а проект — под именем Nakls.
  2. Поместите на форму две панели ТPanel, поместите в их свойства Align значения alBottom: самая нижняя из них предназначена для размещения кнопок навига­тора и кнопки закрытия программы, а расположенная над ней — для размещения сетки DBGrid, в которой будет отображаться список книг.
  3. Чтобы пользователь программы мог менять высоту этой панели, поместите на пустую часть формы вешку разбивки TSplitter (вкладка Additional палитры компонентов), в ее свойство Align поместите значение alBottom, в свойство BeveledTrue и в свойство Height — 5.
  4. Поместите на форму еще одну панель и установите в ее свойство Align значение alClient — на этой панели будет расположена сетка DBGrid с данными о накладных.
  5. Поместите на верхнюю и среднюю панели по компоненту TDBGrid (вкладка Data Controls) и в их свойство Align установите значение alClient.
  6. Очистите свойство Caption у самой нижней панели и поместите на нее кнопки навигатора БД TDBNavigator (вкладка Data Controls) и кнопку TBitBtn (вкладка Additional). Навигатор расположите у левого края панели, а кнопку — у правого.
  7. В свойство Kind кнопки поместите значение bkClose.
  8. Сохраните все сделанные вами изменения модуля главной формы на диске.

В программе нам понадобятся 2 компонента TIBТаblе, два компонента TDataSource, компоненты TIBDataBase, IIBTransaction. Разместим их в отдельном модуле данных, чтобы эти компоненты не загроможда­ли основное окно.

  1. Выберите команду File > New > Others > Delphi Files, чтобы открыть окно хранилища объектов, и на вкладке New открывшегося окна дважды щелкните на значке Data Module. В свойство Name модуля данных поместите значение DM и сохраните модуль в файле dmNaklsU.
  2. Чтобы связать модуль с проектом, щелкните на копке Add File To Project (Shift+F11) панели ин­струментов и выберите только что созданный файл dmNaklsU.
  3. Для связи таблиц с БД воспользуемся компонентом TIBDatabase на вкладке InterBase палитры компонентов Delphi: щелкните на нем и затем — на имени модуля DM в окне дерева объектов.
  4. В окне инспектора объектов раскройте список свойства DatabaseName и с его помощью установите ссылку на файл своей базы данных.
  5. Измените имя компонента TIBDatabase, заданное по умолчанию, на DB.
  6. Раскройте список Params компонента DB и введите регистрационное имя и пароль.

USER_NAME=SYSDBA

PASSWORD=masterkey

  1. Установите в свойство LoginPrompt компонента DB значение False.
  2. Поместите в модуль данных компонент IBTransaction.
  3. С помощью списка свойства DefaultDatabase свяжите компонент IBTransaction1 с компонентом DB.
  4. Теперь перенесите в окно дерева объектов компонент ТIBТаblе (вкладка InterBase) и «поло­жите» его на объект DB в дереве объектов. В окне инспектора объектов в свойстве DatabaseName нового компонента автоматически появится имя базы данных DB, однако слева от компонента в окне дерева объектов будет красный знак вопроса, означа­ющий, что компонент ТIBТаblе еще не готов к работе.
  5. Чтобы подготовить компонент к работе, необходимо опреде­лить имя этой таблицы: раскройте список его свойства TableName и выберите в нем таблицу NAKLS.В дальнейшем нам придется много раз обращаться к мето­дам и свойствам этого компонента, поэтому измените его имя TIBTablel, заданное по умолчанию, на имя связанной с ним таблицы: в строке свойства Name введите Nakls.
  6. Чтобы данные из НД Nakl s смогла отобразить сетка DBGridl в главном окне про­граммы, ее нужно связать с НД с помощью специального компонента TDataSource: выделите его на вкладке Data Access палитры компонентов и затем щелкните на компоненте Nakls в окне дерева объектов, чтобы связать его с НД.
  7. Теперь подготовьте вторую пару ТIBТаble — TDataSource для отображения дан­ных из таблицы MOVEBOOK во второй сетке главного окна (свя­жите НД с таблицей MOVEBOOK и дайте ему имя Move).

Наборы данных Nakls и Move связаны реляционным отношением один ко многим: единственной записи (накладной) в первом НД может соответствовать произвольное количество записей (книг) во втором. Чтобы НД «знали» об этом и согласованно отображали данные, их нужно предварительно подготовить.

  1. Для установления связи между таблицами в компоненте-наборе данных подчиненной таблицы для свойства MasterSource укажите источник данных родительской таблицы.
  2. Чтобы установить связь, нужно указать связываемые поля в родительской и до­черней таблицах. В поле Detail Fields выберите поле MNakl — щелкните на нем, и в списке Master Fields - поле NakllD, после чего щелкните на кнопке Add (эта кнопка станет доступной только после выделения полей связи и перестает быть доступной после щелчка на ней). Закройте окно конструктора связей щелч­ком на кнопке ОК.

После выполнения этих действий между таблицами NAKLS и MOVEBOOK устанав­ливается связь один ко многим по полю NakllD.

  1. Щелкните на таблице Movebook в окне дерева объектов и откройте набор дан­ных Move: в окне инспектора объектов поместите в его свойство Active значение True. Точно так же откройте таблицу Nakls.
  2. На этом начальный этап работы с окном модуля данных закончен, и нам нужно перей­ти к главному окну программы (щелкните на вкладке fmNaklsU в окне кода и нажмите клавишу F12). С помощью команды File > Use Unit свяжите модуль главного окна с модулем данных.
  3. Для верхней сетки DBGrid1 раскройте список свойства DataSource и выберите в нем пункт DataSource1 - сетка тут же наполнится данными из НД Nakls.
  4. Точно так же свяжите нижнюю сетку с источником данных DataSource2. Свяжите на­вигатор баз данных DBNavigatorl в нижней части окна с источником DataSourcel.
  5. Запустите программу на выполнение. Проверьте работу приложения.
  6. Подготовьте отчет о выполнении практической работы. Отчет должен содержать:

q Название ПР

q ФИО студента, № группы

q цели

q Перечень используемых компонентов и их свойств для организации доступа к данным

q Порядок отображения данных

q Организация реляционной связи между двумя таблицами

q Описание работы приложения

q Анализ ошибок


Наименование дисциплины: Разработка и эксплуатация удаленных баз данных

Тема (раздел) учебной программы: Проектирование клиентской части приложения БД.

 


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

mylektsii.su - Мои Лекции - 2015-2024 год. (0.006 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал