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

2_Access2007_Формы

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

области переходов и в контекстном меню выполните команду Конструктор (Design). Если форма была открыта, то для перехода в режим конструктора нужно из списка кнопки Режим (View) на вкладке ленты Главная (Home) выбрать Конструктор.

В главной форме переместите и отредактируйте поля, как показано на рис. 35. Уточните текст надписей полей, шрифт и размеры полей и надписей.

Чтобы увеличить рабочее пространство, уберите с экрана область переходов, щелкнув на кнопке Открыть/закрыть границу области переходов (Shutter Bar Open/Close Button) в ее правом верхнем углу.

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

Учтите, что все элементы управления главной формы включены в один макет. Для перемещения макета щелкните в левом верхнем углу оранжевой области выделения макета и перетащите в нужное место. Изменение отдельного элемента требует удаления его из макета. Выделите нужный элемент и выполните команду Удалить Remove) на вкладке ленты Упорядочить (Arrange) в группе Макет элемента управления (Control Layout). Для образования нового макета элементов управления следует выделить их и выполнить команду В столбик

(Stacked) или Табличный (Tabular).

Для придания элементам одинакового вида удобно копировать форматирование одного элемента и применять его к другим. Команда

Формат по образцу (Format Painter), размещенная в группе Шрифт (Font) на вкладках Конструктор (Design), Главная (Home) или Формат

(Format), если форма открыта в режиме макета, копирует форматирование выделенного элемента и позволяет применить его к другому элементу. Если на значке команды Формат по образцу щелкнуть дважды, скопированный формат можно применять несколько раз. Закончив выполнение форматирования по образцу, повторно щелкните на значке команды.

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

Удалите элемент с подписью подчиненной формы. Для этого выделите надпись и сначала удалите ее из макета, выполнив в контекстном меню

команду Макет | Удалить (Layout|Remove), затем в контекстном меню выполните команду Удалить (Delete).

Просмотрите источник записей главной формы. Для этого откройте свойства формы, установив предварительно курсор на черном квадратике на пересечении линеек. В поле Возможен выбор (Selection Type) окна свойств также можно выбрать форму. На вкладке Данные

(Data) в строке Источник записей (Record Source) представлена инструкция SQL, записанная мастером в качестве источника записей главной формы. Чтобы просмотреть инструкцию SQL в режиме конструктора запросов, нажмите значок построителя в конце строки. Соответствующий запрос в режиме конструктора показан на рис. 32.

Рис. 32. Запрос — источник записей главной формы ДОГОВОРЫ С ПОКУПАТЕЛЯМИ

Аналогичным образом просмотрите, какая таблица является источником записей подчиненной формы. Инструкция SQL в режиме конструктора запросов, являющаяся источником записей подчиненной формы, показана на рис. 33.

Рис. 33. Запрос — источник записей подчиненной формы ПЛАН ПОСТАВОК

Если в основную или подчиненную форму необходимо добавить поля, представленные в источнике записей, установите курсор на соответствующей форме, нажмите кнопку Добавить поля (Add Existing Fields) на вкладке ленты Конструктор (Design) и из открывшегося списка перетащите нужное поле в форму. В список полей включены только те поля таблиц, которые были выбраны в запросе.

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

Однако проще щелкнуть в области Список полей (Field List) на значке

Показать все таблицы (Show All tables). В разделе Поля доступные в данном представлении (Fields available for this view) отобразятся все поля таблиц, включенных в подсхему данных формы (главной или подчиненной). Кроме того, в других разделах отобразятся остальные таблицы базы данных. Перетаскивая поля из любого раздела области, вы автоматически меняете запрос источника записей формы. Для отображения этого запроса в графическом виде также можно не открывать окно свойств и затем построитель запросов. Достаточно выполнить команду Изменение источника записи (Edit Record Source)

в контекстном меню области Список полей (Field List).

Проверьте связь подчиненной формы с главной. Для этого откройте свойства подчиненной формы, предварительно выделив ее рамку. В

свойствах Подчиненная форма/отчет (Subform/Subreport) на вкладке

Данные (Data) в строке Подчиненные поля (Link Child Fields) указано имя поля связи НОМ_ДОГ из подчиненной таблицы

ПОСТАВКА_ПЛАН, в строке Основные поля (Link Master Fields)

указано имя поля связи, в данном примере тоже НОМ_ДОГ из главной таблицы ДОГОВОР.

Создание кнопок

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

В режим конструктора нажмите в группе Элементы управления

(Controls) кнопку Использовать мастера (Use Control Wizards), а затем

Кнопка (Button). Не отпуская курсора, перенесите кнопку в нужное место и вычертите ее рамку. Запустится мастер создания кнопок

(Command Button Wizard) (рис. 34).

Рис. 34. Окно мастера создания кнопок

В окне мастера кнопок в группе Категории (Categories) выберите строку Переходы по записям (Record Navigation), в группе Действия

(Actions) — действие, которое должно выполняться при нажатии кнопки: Предыдущая запись (Go to Previous Record). В следующем диалоговом окне мастера выберите вид кнопки с текстом на ней Текст (Text) или с рисунком Рисунок (Picture) и выберите рисунок из списка. После завершения работы мастера кнопка с выбранным текстом или рисунком встраивается в форму. Аналогичные действия произведите

для встраивания кнопки перехода к следующей записи, выбрав соответственно в области Действия (Actions) — Следующая запись

(Go to Next Record). Размер и надписи кнопок редактируются, как и другие элементы.

Создайте кнопку для закрытия формы.

Отредактированная форма в режиме просмотра приведена на рис. 35.

Рис. 35. Отредактированная форма документа "Договор" в режиме просмотра

Ограничение доступа к данным таблиц базы

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

Для защиты поля выделите его и откройте окно свойств. В окне свойств на вкладке Данные (Data) в строке Блокировка (Locked) выберите Да (Yes). После установки этого свойства поле доступно только для чтения.

Если необходимо установить режим, при котором возможно только добавление новых договоров в базу данных, и запрещен просмотр

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

Создание полей со списком

Как уже было сказано ранее, при загрузке договоров через разработанную форму обязательно должны вводиться ключевые поля таблиц — объектов загрузки и ключи связи с таблицами справочных данных. Для удобства ввода значений в эти поля целесообразно соответствующие элементы управления создавать как Поле со списком (Combo Box). Поле со списком объединяет поле формы, в которое нужно ввести данное, и список отображаемых записей из связанной главной таблицы. В списке можно выбрать нужное значение и ввести его в поле формы (рис. 36).

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

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

Рис. 36. Поле со списком записей справочной таблицы ПОКУПАТЕЛЬ для ввода кода в запись таблицы ДОГОВОР

Создание поля со списком мастером

Воткрытой в режиме конструктора форме нажмите в группе Элементы управления (Controls) кнопку Использовать мастера (Use Control Wizards), а затем кнопку Поле со списком (Combo Box), переместите курсора в нужное место, нажмите кнопку мыши и, не отпуская ее, вычертите рамку элемента. После отпускания кнопки мыши запустится мастер и откроет диалоговое окно Создание полей со списком (Combo Box Wizard).

Вокне мастера определите способ, которым список поля получает свои значения. Для формирования списка из связанной таблицы выберите —

Объект "поле со списком" будет использовать значения из таблицы или запроса (I want the combo box to look up the values in a table or query) (рис. 37).

Рис. 37. Выбор способа формирования списка

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

Рис. 38. Выбор источника данных для формирования списка

Затем выберите ключевое поле КОД_ПОК, а также поле НАИМ_ПОК для отображения кода и наименования в строках списка (рис. 39).

Рис. 39. Выбор полей для формирования записи списка

В следующем окне мастера, если необходимо, выберите порядок сортировки и далее настройте ширину столбцов списка и вариант с отображением ключевого столбца (рис. 40).

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

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

(рис. 41).

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