Добавление к таблице ПРОДАЖ виртуального вычисляемого поля.




Лабораторная работа по курсу Базы данных.

Пользовательский интерфейс для заполнения таблицы, содержащей данные других таблиц. Время выполнения – 2 часа.

Исходные данные: База данных Магазин.mdb. Отлаженное приложение, выполненное в рамках лабораторной работы «Пользовательский интерфейс ADO-доступа к справочникам БД. Поиск и фильтрация».

Задание

Создайте Delphi - приложение, которое выполняет заполнение таблицы продаж товаров SALES с использованием ADO – доступа. Таблица продаж содержит поля, содержащие справочные данные о товарах и фирмах. Виртуальное вычисляемое поле СТОИМОСТЬ = КОЛИЧЕСТВО * ЦЕНА формируется автоматически. Форма заполнения таблицы продаж должна иметь вид, представленный на Рис.1

Рис.1

 

Добавление к проекту таблицы SALES (ПРОДАЖИ).

 

1. Откройте Delphi – проект, созданный во время выполнения лабораторной работы «Пользовательский интерфейс ADO-доступа к справочникам БД. Поиск и фильтрация». Предварительно создайте копию папки, в которой он находится.

2. Откройте окно модуля данных DM.

3. Поместите в область модуля объекты ADO/ ADOTable, Data Access/ DataSource. Используя свойство Name, переименуйте их в ADOTbSales и DSSales – рис.2

 

Рис.2

4. Последовательно в инспекторе объектов установите следующие свойства для новых объектов модуля данных DM:

Объект Свойство Значение
ADOTbSales Connection ADOConnection1
  TableName Sales
  Active True
DSSales DataSet ADOTbSales

5. Используя правую кнопку мыши над объектом ADOTBSales, войдите в редактор полей Fields Editor и добавьте поля таблицы в объект (опция Add All Fields).

6. Установите на форму Form3, содержащую меню проекта, новые интерфейсные объекты из разделов Standard и DataControls палитры компонентов, изображенные на рисунке 3.

 

Рис. 3

 

7. Установите у созданных объектов следующие свойства:

 

Объект Свойство Значение
Panel1 Align AlClient
  Caption пусто
Panel2 Align AlBottom
  Caption пусто
Panel3 Align AlTop
  Caption пусто
DBNavigator1 DataSource DM.DSSales
  Align AlClient
DBGrid1 DataSource DM.DSSales

8. Запустите приложение и убедитесь в наличии связи с таблицей продаж, где вместо названий фирм и товаров пока находятся соответствующие коды.

9. Сохраните и запустите приложение.

 

 

Добавление к таблице ПРОДАЖ полей с подстановками из таблиц ТОВАРОВ и ФИРМ.

 

10. Добавьте к таблице SALES поля с подстановками из таблиц Firm, Tovar, содержащие названия фирм и названия продуктов. Для этого перейдите в окно модуля данных DM и добавьте к ADOTBSales два виртуальных поля – Tovar и Firm_Name. Сделайте это, используя правую кнопку мыши над объектом ADOTBSales и войдя в редактор полей Fields Editor. Предварительно отключите таблицу, задав ее свойство Active равным False. (Не забудьте вернуть значение свойства после создания всех виртуальных полей).

11. Для добавления виртуального поля Tovar в окне Fields Editor выберите опцию New Fields - Рис.4.

Рис.4

12. В диалоговом окне укажите имя нового поля, его тип, размер, имя таблицы товаров, поля связи обеих таблиц и поле, которое надо подставить (Рис.5)

Рис.5

13. Аналогично добавьте виртуальное поле для подстановки названия фирмы – Firm_Name (Рис.6)

Рис.6

14. Запустите приложение, добавьте новые строки в таблицу продаж, используя подстановки.

15. Удалите из DBGrid1 колонки Firm_Id и Tovar_ID (они формируются автоматически и останутся в БД и в модуле данных, просто не будут видны при заполнении).

16. Дайте колонкам русские заголовки (Title) и шрифты.

17. Запустите и сохраните приложение.

 

Добавление к таблице ПРОДАЖ виртуального вычисляемого поля.

 

18. Перейдите в окно модуля данных DM и добавьте к таблице ADOTBSales виртуальное вычисляемое поле Stoimost = Quantity * Price. Сделайте это, используя правую кнопку мыши над объектом ADOTBSales и войдя в редактор полей Fields Editor. Предварительно отключите таблицу, задав ее свойство Active равным False. (Не забудьте вернуть значение свойства после создания виртуального поля).

19. Для добавления виртуального поля Stoimost в окне Fields Editor выберите опцию New Fields и заполните диалоговое окно с типом поля – Currency и опцией Calculated - Рис.7.

 

Рис.7

20. В редакторе полей ADOTBSales должно добавиться новое поле – Рис.8

Рис.8

21. Для модуля данных DM, объекта таблицы ADOTbSales и события для нее OnCalcField создайте событийную процедуру, выполняющую расчет значения виртуального поля ADOTbSalesStoimost:

procedure TDM.ADOTbSalesCalcFields(DataSet: TDataSet);

Begin

ADOTbSalesStoimost.Value:= ADOTbSalesQuantity.Value *

ADOTbSalesPrice.Value;

end;

22. Подключите вычисляемое поле Stoimost к объекту DBGrid1 главной формы Form3, войдя в редактор колонок DBGrid1.

23. Запустите приложение и испытайте вычисляемое поле, добавив в таблицу 20-30 новых строк (Рис.1).

24. Сохраните приложение.

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-12-12 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: