Создание формы, содержащей объект Grid
Рассмотрим создание формы, с помощью которой можно просмотреть информацию о клиентах, их телефонах и сделанных ими покупках. В отчете будем использовать следующие таблицы: Customer, Phoncust. Ordsaleir..ordsaied и Goods. В таблицах содержится следующая информация:
customer - список клиентов;
phoncust — средства связи, по которым можно связаться с клиентом;
ordsaiem — информация о продажах: номер заказа, дата заказа, код клиента, итоговая сумма заказа;
Ordsaied — код, количество и стоимость проданного товара но данному заказу;
Goods — информация о товарах.
Отношение между таблицами customer и phoncust определяется как "один-ко-многим", так как клиент может иметь несколько номеров телефона или факс для связи.
Отношение между таблицами customer и ordsalem также "один-ко-многим", поскольку каждый клиент может сделать несколько покупок.
Приступим к созданию формы.
Откройте проект sales.
Откройте окно конструктора форм для создания новой формы.
Откройте окно Data Environment (Среда окружения), выполнив команду Environment (Окружение) из меню View (Вид).
Используя команду Add (Добавить) из меню Data Environment (Среда окружения), Добавьте В форму таблицы Customer, Phoncust, Ordsalem, ordsaied и Goods. Между ними существуют следующие отношения:
customer — родительская по отношению к таблицам phoncust и Ordsalem;
Ordsalem — родительская по отношению к таблице Ordsaied;
ordsaied - родительская по отношению к таблице Goods. Связь между таблицами осуществляется:
Customer и Phoncust — по коду клиента;
Customer и Ordsalem — по коду Клиента;
Ordsalem и Ordsaied — по коду заказа;
Ordsaied и Goods — по коду товара.
Данные В таблицах Customer, Ordsalem иPhoncust должны быть упорядочены по коду клиента, в ordsaied — по коду заказа, а в Goods — по коду товара.
Установив все необходимые связи между таблицами и указав упорядочение данных (рис. 15.15), закройте окно Data Environment (Среда окру жения).
Используя кнопки панели инструментов Form Controls (Элементы управления формы), расположите в форме заголовок, надписи и необходимые поля таблицы Customer.
Выберите кнопку Grid (Таблица) на панели инструментов Form Controls (Элементы управления формы).
Установите указатель в место предполагаемого расположения объекта и, удерживая кнопку мыши нажатой, переместите курсор по диагонали, нарисовав рамку требуемого размера.
Для определения параметров созданного объекта выделите его и откройте окно свойств, выполнив команду Properties (Свойства) из меню View (Вид).
Рис. 15.15. Окно Data Environment создаваемой формы
Скорректируйте свойство coiumncount (Количество столбцов) объекта Grid (Таблица), задав количество столбцов в создаваемом объекте равнным 3.
Если вы хотите изменить цвет сетки таблицы, определите свойство GridLineCoior (Цвет сетки таблицы) объекта Grid (Таблица).
Используя свойство Controisource (Источник данных) каждого из трех объектов column (Столбец), входящих в объект Grid (Таблица), свяжите столбцы с полями таблицы Phoncust.
Используйте Caption (Надпись) каждого из трех объектов Header (Заголовок), входящих в объект Grid (Таблица), введите заголовки столбцов Вид связи, Номер кода и Номер. Чтобы заголовки располагались по центру столбцов, скорректируйте для каждою из них свойстве Alignment (Выравнивание), установив значение Middle center (По середине, в центре).
Определение первого объекта Grid (Таблица) завершено. Разместим в форме второй объект Grid (Таблица).
Нажмите кнопку Grid (Таблица) на панели инструментов Form Controls (Элементы управления формы).
Установите указатель в нижней части формы и, удерживая кнопку мыши в нажатом состоянии, переместите курсор по диагонали так, чтобы получилась рамка необходимого размера.
Для определения параметров созданного объекта выделите его и откройте окно свойств.
Скорректируйте свойство coiumncount (Количество столбцов) объекта Grid (Таблица), задав количество столбцов (6) в создаваемом объекте.
Если необходимо выбрать цвет сетки таблицы, определите свойство GridLineCoior (Цвет сетки таблицы) объекта Grid (Таблица).
Используя свойство controisource (Источник данных) каждого из пяти объектов column (Столбец), входящих в объект Grid (Таблица), выполните следующие действия:
свяжите первые два столбца с полями cnDoc и dDoc таблицы Ordsalem;
свяжите третий столбец с полем cnmGoods таблицы Goods;
четвертый и пятый столбцы свяжите с полями nQuant и nUnitPrice таблицы Ordsaled.
Шестой столбец таблицы будет содержать вычисляемое поле, определяющее стоимость проданного товара. Используя свойство Controisource (Источник данных) для шестого объекта column (Столбец), задайте выражение для вычисляемого поля:
Ordsaled.nQuant*Ordsaled.nUnitPrice
Используя свойство caption (Надпись) каждого из шести объектов Header (Заголовок), входящих в объект Grid (Таблица), введите заголовки столбцов: Номер документа, Дата, Наименование товара, Количество, Цена и Стоимость. Чтобы заголовки столбцов располагались по центру, скорректируйте для каждого из них свойство Alignment (Выравнивание), установив значение Middle center (По середине, в центре).
Используя свойство Forecoior каждого из пяти объектов Text (Текст), входящих в объект Grid (Таблица), установите цвет (например, красный) для выделения информации при установке курсора на данное поле.
Добавьте в создаваемую форму кнопки перемещения по записям. Полученная форма показана на рис. 15.16.
Сохраните созданную форму и запустите ее на выполнение. Отметьте, что при перемещении по записям таблицы Customer в первом объекте Grid (Таблица) отображается список телефонных номеров, по которым можно связаться с клиентом, а во втором объекте Grid (Таблица) показывается полный список товаров, купленных данным клиентом (рис. 15.17).
Рис. 15.16. Многотабличная форма
Рис. 15.17. Просмотр многотабличной формы
Содержание раздела