Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_raboty_BD_2012-13.docx
Скачиваний:
33
Добавлен:
20.03.2016
Размер:
8.97 Mб
Скачать

Варианты продолжения работы с формой

Опция

Действие

Save form for later use (Сохранить форму)

Созданная форма сохраняется на диске

Save and run form (Сохранить и запустить форму на выполнение)

Созданная форма сохраняется и запускается на выполнение

Save form and modify it in the Form Designer (Сохранить и открыть для модификации в конструкторе форм)

Созданная форма сохраняется и открывается в конструкторе форм для модификации

 

Рис. 11. Установка критерия сортировки данных

После установки требуемой опции нажмите кнопку Finish (Готово) для завершения создания объекта с помощью мастера. В открывшемся диалоговом окне Save as (Сохранить как) выберите папку, в которой хотите разместить форму, и введите имя созданной формы.

Рис. 12. Заключительное диалоговое окно мастера

Посмотрите на форму, созданную с помощью мастера (рис. 13). Надписи к полям основной таблицы созданы с использованием информации, введенной в поле Caption (Надпись) свойства таблицы. Однако при формировании названий столбцов объекта Grid (Таблица) мастер не использовал это свойство таблицы. Для изменения наименований столбцов вам потребуется конструктор форм.

Рис. 13. Многотабличная форма, созданная с помощью мастера форм

4.2. Создание объекта Grid с помощью конструктора форм

Для создания формы в конструкторе форм следует выполнить следующие действия:

  1. В окне Data Environment (Среда окружения) разместите таблицы, используемые в форме.

  2. Установите связи между таблицами.

  3. Разместите в форме поля главной таблицы.

  4. Создайте в форме объект Grid (Таблица) для отображения данных подчиненной таблицы.

Создание формы, содержащей объект Grid

Рассмотрим создание формы, с помощью которой можно просмотреть информацию о клиентах, их телефонах и сделанных ими покупках. В отчете будем использовать следующие таблицы: Customer, Phoncust, Ordsalem, ordsaied и Goods. В таблицах содержится следующая информация:

  • Сustomer — список клиентов;

  • Phoncust — средства связи, по которым можно связаться с клиентом;

  • Ordsalem — информация о продажах: номер заказа, дата заказа, код клиента, итоговая сумма заказа;

  • O rdsaied — код, количество и стоимость проданного товара по данному заказу;

  • Goods — информация о товарах.

Отношение между таблицами customer и Phoncust определяется как "одинко-многим", т. к. клиент может иметь несколько номеров телефона или факс для связи.

Отношение между таблицами Customer и Ordsalem также "один-ко-многим", поскольку каждый клиент может сделать несколько покупок.

Создание формы:

  1. Откройте окно конструктора форм для создания новой формы.

  2. Откройте окно Data Environment (Среда окружения), выполнив команду Environment (Окружение) из меню View (Вид).

  3. Используя команду 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 — по коду товара.

  1. Установив все необходимые связи между таблицами и указав упорядочение данных (рис. 14), закройте окно Data Environment (Среда окружения).

Рис. 14. Окно Data Environment создаваемой формы

  1. Используя кнопки панели инструментов Form Controls (Элементы управления формы), расположите в форме заголовок, надписи и необходимые поля таблицы Customer.

  2. Выберите кнопку Grid (Таблица) на панели инструментов Form Controls (Элементы управления формы).

  3. Установите указатель в место предполагаемого расположения объекта и, удерживая кнопку мыши нажатой, переместите курсор по диагонали, нарисовав рамку требуемого размера.

  4. Для определения параметров созданного объекта выделите его и откройте окно свойств, выполнив команду Properties (Свойства) из меню View (Вид).

  5. Скорректируйте свойство coiumnCount (Количество столбцов) объекта Grid (Таблица), задав количество столбцов в создаваемом объекте равным 3.

  6. Если вы хотите изменить цвет сетки таблицы, определите свойство GridLineCoior (Цвет сетки таблицы) объекта Grid (Таблица).

  7. Используя свойство controisource (Источник данных) каждого из трех объектов column (Столбец), входящих в объект Grid (Таблица), свяжите столбцы с полями таблицы Phoncust.

  8. Используя свойство caption (Надпись) каждого из трех объектов Header (Заголовок), входящих в объект Grid (Таблица), введите заголовки столбцов Вид связи, Номер кода и Номер. Чтобы заголовки располагались по центру столбцов, скорректируйте для каждого из них свойство Alignment (Выравнивание), установив значение Middle (По середине) Center (По центру).

Определение первого объекта Grid (Таблица) завершено. Разместим в форме второй объект Grid (Таблица).

  Нажмите кнопку Grid (Таблица) на панели инструментов Form Controls (Элементы управления формы).

  1. Установите указатель в нижней части формы и, удерживая кнопку мыши в нажатом состоянии, переместите курсор по диагонали так, чтобы получилась рамка необходимого размера.

  2. Для определения параметров созданного объекта выделите его и откройте окно свойств.

  3. Скорректируйте свойство CoiumnCount (Количество столбцов) объекта Grid (Таблица), задав количество столбцов (6) в создаваемом объекте.

  4. Если необходимо выбрать цвет сетки таблицы, определите свойство GridLineCoior (Цвет сетки таблицы) объекта Grid (Таблица).

  5. Используя свойство controisource (Источник данных) каждого из пяти объектов column (Столбец), входящих в объект Grid (Таблица), выполните следующие действия:

  • свяжите первые два столбца с полями cndoc и ddoc таблицы Ordsaiem;

  • свяжите третий столбец с полем cnmgoods таблицы Goods;

  • четвертый и пятый столбцы свяжите с полями nquant и nunitprice таблицы Ordsaled.

  1. Шестой столбец таблицы будет содержать вычисляемое поле, определяющее стоимость проданного товара. Используя свойство Controisource (источник данных) для шестого объекта Column (Столбец), задайте выражение для вычисляемого поля: Ordsaled.nQuant*Ordsaled.nUnitPrice

  2. Используя свойство caption (Надпись) каждого из шести объектов Header (Заголовок), входящих в объект Grid (Таблица), введите заголовки столбцов: Номер документа, Дата, Наименование товара, Количество, Цена и Стоимость. Чтобы заголовки столбцов располагались по центру, скорректируйте для каждого из них свойство Alignment (Выравнивание), установив значение Middle (По середине) center (По центру).

  3. Используя свойство ForeCoior каждого из пяти объектов Text (Текст), входящих в объект Grid (Таблица), установите цвет (например, красный) для выделения информации при установке курсора на данное поле.

  4. Добавьте в создаваемую форму кнопки перемещения по записям. Полученная форма показана на рис. 15.

Рис. 15. Многотабличная форма

  1. Сохраните созданную форму и запустите ее на выполнение. Отметьте, что при перемещении по записям таблицы customer в первом объекте Grid (Таблица) отображается список телефонных номеров, по которым можно связаться с клиентом, а во втором объекте Grid (Таблица) показывается полный список товаров, купленных данным клиентом (рис. 16).

Рис. 16. Просмотр многотабличной формы