Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2_Access2007_Формы

.pdf
Скачиваний:
33
Добавлен:
02.04.2015
Размер:
2.34 Mб
Скачать

Таблицы БД —

Документы-

Вид

Этап

Примечание

объекты загрузки

источники

информации

загрузки

 

 

 

 

 

 

ПОКУПАТЕЛЬ

Справочник

Справочная

I

Независимые

 

покупателей

 

 

этапы

 

 

 

 

 

ТОВАР

Справочник

Справочная

I

 

 

товаров

 

 

 

 

 

 

 

 

СКЛАД

Справочник

Справочная

I или II

 

 

складов

 

 

 

 

 

 

 

 

ДОГОВОР-

Договоры

Плановая

II

 

ПОСТАВКА_ПЛАН

 

 

 

 

 

 

 

 

 

НАКЛАДНАЯ-

Накладные

Оперативно-

III

 

ОТГРУЗКА

 

учетная

 

 

 

 

 

 

 

После определения этапов загрузки базы данных можно приступить к определению подсхемы данных для каждого этапа загрузки, к проектированию макета форм и их созданию средствами Access.

Проектирование интерфейса для ввода и корректировки документа

Для ввода и корректировки данных плановых и оперативно-учетных документов пользователю нужно разработать удобный экранный интерфейс, который позволит минимизировать операции по вводу данных и контролировать их достоверность и корректность. При этом необходимо ограничиваться вводом только идентификаторов и количественных показателей. Справочные данные (наименования, нормативы, цены, тарифные ставки и т. п.) не должны вводиться с этих документов, а должны только отображаться в форме из ранее созданных таблиц справочной информации. Отображение справочных данных позволяет осуществлять визуальный контроль правильности вводимых с плановых или оперативно-учетных документов данных, в которых обычно присутствуют справочные данные.

Разработка интерфейса требует для каждого документа выполнить проектирование формы.

Рассмотрим процесс проектирования формы для ввода, просмотра и корректировки данных о договорах фирмы. Форма служит электронным

документом, вид которого должен соответствовать виду бумажного документа.

В соответствии с этапами загрузки базы данных Поставка товаров, определенными выше (см. табл. 1), загрузка данных из документа "Договор" должна производиться в таблицы ДОГОВОР и ПОСТАВКА_ПЛАН после загрузки таблиц со справочными данными ПОКУПАТЕЛЬ и ТОВАР, что обеспечит установление связей загружаемых записей с соответствующими записями этих таблиц.

При проектировании формы определяется подсхема данных, включающая объект загрузки формы, общая структура формы — проект макета и размещение реквизитов в соответствии со структурой документа "Договор" и подсхемой данных, учитываются особенности назначения и работы с формой.

Определение подсхемы данных

Выбор подсхемы данных для построения формы аналога документа "Договор", назовем ее ДОГОВОРЫ С ПОКУПАТЕЛЯМИ, определяется следующими соображениями.

Загрузка данных по договорам должна производиться в таблицы ДОГОВОР и ПОСТАВКА_ПЛАН, находящиеся в отношении 1 : М, следовательно, эти таблицы — объекты загрузки надо включить в подсхему данных формы.

В форме должны отображаться справочные данные по покупателям и товарам, указанным в договоре, поэтому в подсхему надо включить также таблицы ПОКУПАТЕЛЬ и ТОВАР, главные по отношению к таблицам ДОГОВОР и ПОСТАВКА_ПЛАН.

Многотабличная форма ДОГОВОРЫ С ПОКУПАТЕЛЯМИ обеспечивает загрузку двух взаимосвязанных таблиц, поэтому в ней должны быть определены две таблицы, одна из которых будет источником записей главной формы, а другая — источником записей подчиненной формы. Источником записей главной формы должна быть таблица ДОГОВОР, представляющая сторону один в отношении загружаемых таблиц. Для отображения справочных данных в этой форме должна использоваться таблица ПОКУПАТЕЛЬ. Источником записей подчиненной формы должна быть таблица ПОСТАВКА_ПЛАН, представляющая сторону многие в отношении загружаемых таблиц. Для отображения справочных данных в этой части формы должна использоваться таблица ТОВАР.

Таким образом, подсхема данных для формы ввода/вывода договоров фирмы должна иметь вид, показанный на рис. 27.

Рис. 27. Подсхема данных для формы ввода/вывода договоров фирмы

Замечание

В процессе проектирования базы данных все реквизиты документа разбиваются на подмножества, составляющие таблицы базы данных. Например, реквизиты документа "Договор" были распределены по таблицам ДОГОВОР, ПОСТАВКА_ПЛАН, ПОКУПАТЕЛЬ и ТОВАР. Очевидно, для того чтобы форма ДОГОВОР отображала полный документ, ее подсхема данных должна включать все эти таблицы.

Разработка макета

Макет формы разрабатывается в соответствии со структурой документа и полученной подсхемой данных. Макет формы ДОГОВОРЫ С ПОКУПАТЕЛЯМИ приведен на рис. 28.

Рис. 28. Проект макета формы ДОГОВОРЫ С ПОКУПАТЕЛЯМИ

В соответствии с определенными объектами загрузки с документа "Договор" многотабличная форма ДОГОВОРЫ С ПОКУПАТЕЛЯМИ должна состоять из двух форм: главной и включенной в нее подчиненной формы.

Источником записей главной формы будет ДОГОВОР, а таблица ПОКУПАТЕЛЬ будет использована для отображения справочной информации. Через эту часть многотабличной формы выполняется ввод, просмотр и корректировка общих сведений о договоре. Число доступных записей определяется количеством записей в таблице ДОГОВОР.

Источником записей подчиненной формы будет таблица ПОСТАВКА_ПЛАН, а таблица ТОВАР будет использована для отображения справочной информации. Через эту часть многотабличной формы выполняется ввод, просмотр и корректировка данных о

плановых поставках по договорам. Число доступных записей определяется количеством записей в таблице ПОСТАВКА_ПЛАН.

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

в главной форме обязательно должны размещаться: ключевое поле НОМ_ДОГ и поле код покупателя КОД_ПОК, по которому устанавливается связь с таблицей ПОКУПАТЕЛЬ. Эти поля должны быть взяты из таблицы ДОГОВОР — источника записей основной части формы. В противном случае нельзя будет ввести новую запись в таблицу ДОГОВОР;

в подчиненной форме должно обеспечиваться формирование ключа

таблицы ПОСТАВКА_ПЛАН — (НОМ_ДОГ, КОД_ТОВ, СРОК_ПОСТ). В противном случае станет невозможным ввод новых записей. Однако можно разместить только те ключевые поля таблицы, которых нет в главной форме, т. е. обязательно нужно разместить только поля КОД_ТОВ (код товара) и СРОК_ПОСТ (срок поставки) из таблицы ПОСТАВКА_ПЛАН, а поле НОМ_ДОГ (номер договора) можно не размещать.

Внимание

Если поле КОД_ТОВ выбрать из таблицы ТОВАР, то невозможно будет сформировать новую запись в таблице ПОСТАВКА_ПЛАН.

Многотабличная форма, соответствующая этому макету, обеспечит удобный интерфейс для ввода, просмотра и корректировки данных о договорах, позволит минимизировать операции по вводу данных и контролировать их достоверность и корректность. Вводить нужно только идентификаторы и количественные показатели. Справочные данные (наименования, цена и т. п.) не потребуется вводить из документа, они отобразятся в форме из ранее загруженных таблиц справочной информации. Отображение справочных данных позволяет осуществлять визуальный контроль правильности вводимых из документа данных.

После разработки макета можно приступать к конструированию многотабличной формы средствами Access.

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

С помощью мастера форм создайте в соответствии с результатами проектирования, форму ДОГОВОРЫ С ПОКУПАТЕЛЯМИ, состоящую из главной формы ДОГОВОР, которая включает подчиненную форму ПЛАН ПОСТАВОК. Многотабличная форма после редактирования в конструкторе должна обеспечивать удобный ввод записей из документа "Договор" в таблицы ДОГОВОР и ПОСТАВКА_ПЛАН. Доступ к отображаемым в форме полям справочных данных о покупателе и товарах должен ограничиваться только чтением, т. к. значения этих полей не должны вводиться и корректироваться из документа "Договор".

Откройте базу данных Поставка товаров. В области переходов выберите таблицу ДОГОВОР, которая будет служить источником записей главной формы. Для вызова мастера форм выполните на вкладке ленты Создание (Create) в группе Формы (Forms) команду

Другие формы | Мастер форм (More Forms|Form Wizard) .

В открывшемся окне мастера Создание форм (Form Wizard) в списке Таблицы и запросы (Tables/Queries) будет отображена выбранная таблица ДОГОВОР и ее поля. Выберите из таблицы ДОГОВОР в списке Доступные поля (Available Fields) те поля, которые вошли в спроектированный макет формы, перемещая их в область Выбранные поля (Selected Fields).

Последовательно выбирайте из списка Таблицы и запросы (Tables/Queries) таблицы ПОКУПАТЕЛЬ, ПОСТАВКА_ПЛАН, ТОВАР и включайте в область Выбранные поля (Selected Fields) нужные поля этих таблиц (рис. 29). Нажмите кнопку Далее (Next).

Для формирования главной формы ДОГОВОРЫ С ПОКУПАТЕЛЯМИ включите:

загружаемые поля таблицы ДОГОВОР:

НОМ_ДОГ — номер договора (уникальный ключ);

ДАТА_ДОГ — дата заключения договора;

КОД_ПОК — код покупателя (поле связи);

СУММА_ДОГ — сумма всего по договору;

поля из таблицы ПОКУПАТЕЛЬ, позволяющие отобразить справочную информацию о покупателе, с которым заключен договор:

НАИМ_ПОК — наименование покупателя;

ИНН;

АДРЕС и другие справочные реквизиты покупателя.

Для формирования подчиненной формы включите поля:

загружаемые поля таблицы ПОСТАВКА_ПЛАН:

КОД_ТОВ — код товара (часть уникального ключа);

СРОК_ПОСТ — срок поставки (часть уникального ключа);

МИН_ПОСТ — минимальная партия поставки;

КОЛ_ПОСТ — плановое количество поставки товара;

СУММ_ПОСТ — сумма поставки товара;

поля из таблицы ТОВАР, позволяющие отобразить справочную информацию о товарах, поставляемых по договору:

НАИМ_ТОВ — наименование товара;

ЕИ — единица измерения;

ЦЕНА — цена товара.

Рис. 29. Окно мастера форм при выборе полей из таблиц, составляющих подсхему формы

В следующем диалоговом окне мастера (рис. 30) уже выделена таблица ДОГОВОР, предлагаемая в качестве базового источника для создания главной формы, и схематично отображен макет формы с перечнем полей в главной и подчиненной форме. Кроме того, мастером отмечен переключатель Подчиненные формы (Form with subform(s)) — вариант непосредственного включения подчиненной формы в главную. Переключатель Связанные формы (Linked forms) определяет вызов подчиненной формы по кнопке.

Рис. 30. Окно мастера форм при выборе вида представления данных

Для получения многозаписевой подчиненной формы с отображением полей каждой записи в одной строке с подписями (определенными в свойствах таблиц) в заголовке столбца выберите в следующем окне мастера вид формы Ленточный (Tabular). Далее выберите стиль оформления, например, Стандартная (Standard).

В последнем окне мастера задайте имя главной формы — ДОГОВОРЫ С ПОКУПАТЕЛЯМИ, а также имя подчиненной формы — ПЛАН ПОСТАВОК. Выберите дальнейшие действия мастера — Открыть форму для просмотра и ввода данных (Open the form to view or enter information). Это позволит после завершения работы мастера сразу приступить к работе с договорами.

Для завершения создания формы мастером нажмите кнопку Готово (Finish). Сохранение формы производится автоматически.

В форме выводятся данные по договорам, которые были ранее загружены в базу (рис. 31). Основная часть формы содержит сведения из одной текущей записи таблицы ДОГОВОР, в которую добавлены справочные данные из таблицы ПОКУПАТЕЛЬ. В подчиненной форме для каждой текущей записи договора выводятся только записи плановых поставок товаров данного договора, т. е. связанные с отображенной в главной форме.

Рис. 31. Форма с подчиненной формой, созданная мастером

Каждая запись в подчиненной форме образуется на основе одной из записей базового источника — таблицы ПОСТАВКА_ПЛАН, в которую добавляются справочные данные из таблицы ТОВАР.

Доработка интерфейса

Чтобы подготовить более удобный интерфейс для работы с документом "Договор", соответствующий макету формы, отредактируйте созданную мастером форму средствами конструктора.

Средствами конструктора форм можно как создать любую форму с нуля, так и отредактировать ранее разработанную любыми средствами форму. При создании и редактировании формы могут производиться: определение источника данных формы, добавление новых полей и надписей, включение полей со списком, создание кнопок, вычисления, добавление подчиненных форм, внедрение объектов из других приложений, например, рисунков, диаграмм и т. п. Большинство элементов управления доступно только в режиме конструктора. Наиболее точная и полная настройка структуры и внешнего вида всех разделов и элементов формы производится также в режиме конструктора.

Откройте полученную мастером многотабличную форму ДОГОВОРЫ С ПОКУПАТЕЛЯМИ в режиме конструктора. Для этого выберите ее в

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]