Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ОТИ - копия.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
8.91 Mб
Скачать

Создание страницы доступа к данным нескольких таблиц

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

  1. Начнём создание страницы с двойного щелчка мышью на строке Создание страницы доступа к данным с помощью мастера (Create data access page by using wizard) в рабочем пространстве объектов Страницы (Pages).

  2. В окне мастера выберем таблицы ДОГОВОР, ПОКУПАТЕЛЬ, ПОСТАВКА_ПЛАН и ТОВАР и необходимые поля.

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

Обратите внимание!

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

  1. Далее выберем поля, по которым будет производиться сортировка записей на странице, и установим флажок Применить тему к странице? (Do you want apply a theme to your page?). Нажмём кнопку Готово (Finish). Откроются созданная страница в режиме конструктора и окно с большим списком тем. Каждая тема может быть просмотрена и подходящая выбрана для оформления страницы. Созданная мастером страница доступа к данным в режиме конструктора будет иметь вид, показанный на рис.22.3.

Рис.22.3. Страница в режиме конструктора, созданная мастером

  1. Для перехода в режим просмотра страницы щелкнем по кнопке панели инструментов Вид (View). Убедимся, что редактировать данные на этой странице невозможно.

  2. Access при размещении на странице полей автоматически создает запрос SQL, который и становится источником ее записей. С помощью запроса на страницу из базы доставляются указанные в нем данные.

  3. На странице, созданной мастером, отображается по одной записи запроса. Основным средством мастера для организации записей запроса на странице является группировка. Для каждого уровня группировки на странице предусмотрена панель перехода по записям.

  1. Доработаем страницу в режиме конструктора. Вид отредактированной страницы в режиме конструктора представлен на рис.22.4.

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

Рис.22.4. Доработанная страница в режиме конструктора

  1. Для изменения вида маркера развертывания выбираем в строке Src его свойств вместо значения Черный плюс/минус (Black Plus/Minus) новое значение, например, Папка (Folder).

  2. Чтобы записи о товарах одного договора (они образуют группу записей) отображались на странице списком, в конструкторе уберём раздел кнопок перехода по записям группы. На рис. 22.3 он имеет имя КнопкиПерехода: ДОГОВОРWiz. Для удаления достаточно выделить этот раздел и нажать клавишу <Delete>.

  1. Для добавления строки подписей столбцов в список товаров спецификации щелкнем на стрелке в конце Заголовок: ДОГOBOPWiz и отметим строку Подпись (Caption). В этом же меню можно добавить или убрать Кнопки перехода (Record Navigation), Верхний и Нижний колонтитул (Footer) и перейти к просмотру свойств уровня.

  2. Щёлкнем по кнопке панели инструментов Вид (View). Страница с соответствующими доработками будет иметь вид, представленный на рис. 22.5.

Рис. 22.5. Страница после доработки в конструкторе

  1. Если установить курсор в одно из полей с информацией о договоре, станут доступными кнопки фильтра. Кнопки редактирования записей на этой странице всегда будут оставаться недоступными.

  2. Щелчком мыши на маркере развертывания открывается спецификация договора (рис. 22.6).

Рис.22.6. Страница, отображающая спецификацию договора

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

  2. Если необходимо изменить состав полей страницы доступа к данным, откроем список полей, щелкнув по соответствующей кнопке на панели инструментов. Список полей подключенной базы данных Поставка товapoв.mdb представлен на рис. 22.7. Этот список отображает папки, содержащие все таблицы и запросы, доступные в базе данных. Из списка полей можно перетаскивать на страницу одно поле, несколько полей из таблицы или запроса, а также таблицу или запрос целиком.

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

18. Просмотрим модель данных страницы, щелкнув по кнопке Структура данных (Data Outline) на панели инструментов конструктора (рис.22.8).

Если поля добавляются из источников записей, не имеющих отношений, Access запускает мастера создания отношений, который помогает пользователю самостоятельно определить отношение.

Рис.22.7. Окно списка полей базы данных, Рис.22.8. Модель данных страницы

доступных для размещения

на конструируемой странице

Модель данных показывает, какие источники записей используются для страницы и каким образом связаны данные.

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