Добавление,
удаление и перемещение элементов управления
Для добавления
новых полей на страницу доступа к данным в режиме Конструктора предназначено
окно
Список полей
(Field List), представленное на рис. 12.28. Если оно
скрыто, его можно отобразить с помощью команды меню
Вид, Список полей
(View,
Field List) или кнопки
Список полей
(Field List) на панели инструментов
Макет страницы
(Page Design).
Рис. 12.28.
Окна
Список полей и Структура данных
В окне
Список
нолей
отображаются списки всех таблиц и запросов открытой базы данных. Еще
одно окно —
Структура данных
(Data Outline) (см. рис. 12.28) — имеет
очень похожий вид, но отображает структуру данных, добавленных на страницу:
уровни группировки и набор записей, что является источником данных для открытой
страницы доступа к данным. Это окно можно отобразить командой меню
Вид, Структура
данных
(View, Data Outline) или кнопкой
Структура данных
(Data Outline)
на панели инструментов
Макет страницы
(Page Design). В этих окнах для
каждой таблицы, запроса или набора записей можно отобразить список полей. Списки
таблиц, запросов и их полей представлены в виде иерархии, подобной иерархии
папок и файлов, отображающейся в окне приложения "Проводник" (Explorer)
Windows. Каждый уровень иерархии можно раскрыть с помощью кнопки с изображением
значка плюс (+) или свернуть с помощью кнопки с изображением значка минус (—
), отображенного рядом с элементом верхнего уровня иерархии.
На странице
появится текстовое поле, привязанное к выбранному полю, которое становится для
этого элемента управления источником данных.
Кроме полей,
на страницу доступа к данным можно добавлять другие элементы управления, однако
в этом случае источник данных придется назначить полю вручную в окне свойств.
Полученная
нами страница "Личная карточка", описанная
в разд. "Создание
автостраниц с помощью Мастера страниц доступа к данным" этой главы,
имеет
поля "Обращение" (TitleOfCourtesy) и "Подчиняется" (ReportsTo),
которые отображаются как текстовые поля, а должны отображаться как поля подстановки,
т. е. в виде списков с возможными значениями. Необходимо исправить этот недостаток,
для чего создадим данные списки в режиме Конструктора заново и воспользуемся
Мастером создания полей'подстановки.
Замечание
Чтобы в режиме Конструктора отображались диалоговые окна построителей и мастеров, упрощающих работу, необходимо оставить нажатой кнопку-переключатель Мастера (Control Wizards) на панели инструментов Панель элементов (Toolbox).
Сначала нужно
удалить старые элементы управления:
Точно так
же удалите со страницы текстовое поле "Подчиняется" (ReportsTo). Чтобы
добавить на страницу элемент управления раскрывающийся список "Обращение":
Рис. 12.29.
Второе диалоговое окно Мастера создания списков
Замечание
Аналогичным образом нужно добавить на страницу список Подчиняется, только в качестве источника элементов списка необходимо указать запрос. Запрос создайте из инструкции SQL в поле подстановки таблицы "Сотрудники" (Employees) и сохраните его в базе данных, например с именем "Подчинение" (рис. 12.30). Есть ограничение: в источнике элементов списка на странице должно быть не более двух столбцов. Процедура добавления списков на основе данных из таблиц/запросов аналогична описанной процедуре. Добавив на страницу элемент управления список или раскрывающийся список, нужно в первом окне Мастера создания списка выбрать вариант заполнения списка из таблицы или запроса и на следующем шаге указать имя этого источника данных. Созданные списки необходимо привязать к соответствующим полям в источнике данных станицы, чтобы в списках отображалось значение для текущей записи. Сделать это можно в окне свойств элемента (см. разд. "Изменение свойств страницы доступа к данным и ее элементов" в этой главе).
Рис. 12.30.
Запрос "Подчинение" — источник для заполнения списка "Подчиняется"
На странице
появится изображение поля со списком и надписью около него. Если вас не устраивает
расположение элемента управления, выделите его, затем подведите указатель мыши
к его контуру, так, чтобы указатель мыши принял форму крестика с четырьмя стрелками
на концах или изображения руки, и, удерживая нажатой левую кнопку мыши, переместите
элемент управления в нужное место на странице.
Изменить размеры
элемента управления можно, растянув с помощью кнопки мыши маркеры изменения
размеров, отображающиеся в виде маленьких белых квадратиков по периметру выделенного
элемента управления.
Если при перемещении
элемента вы случайно закрыли один элемент другим, можно поместить верхний элемент
на задний план, чтобы отобразить заслоненный элемент:
Мы уже говорили,
что у страницы "Личная карточка" не хватает возможности для перехода
по записям в источнике данных, чтобы иметь возможность просмотра и правки личных
карточек всех сотрудников. В Access 2002 есть возможность добавления на страницу
доступа к данным специального элемента управления —
кнопки
перехода,
включающего не только специальные кнопки для перехода по записям, но и кнопки
для сортировки и фильтрации записей, а также кнопки сохранения и отмены изменений
для текущей записи, добавления и удаления записи. Чтобы добавить этот элемент
управления, воспользуйтесь кнопкой
Кнопки перехода
(Record Navigation)
на панели инструментов
Панель элементов
(Toolbox). Размещение и изменение
размеров этого элемента управления выполняется так же, как и для других элементов
управления.
Итак, теперь
наша страница несколько преобразилась и с ее помощью теперь можно добавлять
новые записи. Для этого откройте страницу в режиме Просмотра, нажмите кнопку
Новый
(New) на панели
Кнопки перехода,
затем заполните поля и
нажмите кнопку
Сохранить
(Save) на этой же панели (рис. 12.31).
Рис. 12.31.
Новая запись на странице
Личная карточка
Если вашей
странице не нужны все кнопки, изображенные на панели кнопок перехода, вы можете
создать собственные элементы управления, с помощью которых будут выполняться
необходимые действия. Эти действия придется запрограммировать и назначить их
в качестве обработчиков событий элементов. Например, в базе данных "Борей"
(Northwind) на странице "Сотрудники" (Employees) для перехода по записям
используются текстовые надписи, щелчок по которым вызывает необходимое деиствне.
Если в качестве таких элементов использовать кнопки, то для их создания можно
обойтись без программирования. Необходимую процедуру создаст мастер:
Таким образом,
на странице появится работающая кнопка
Сохранить. Сортировка и группировка
данных
На страницах
доступа к данным возможна группировка записей, как и в отчетах Access. Группы
объединяют данные в наборы. Например, записи заказов на странице доступа к данным
могут быть сгруппированы по странам. Название каждой страны — это заголовок
группы. В зависимости от того, как разработана страница, на ней либо отображаются
все группы (обычно со скрытием входящих в них записей), либо ни одна конкретная
группа не отображается до тех пор, пока не будет выбрана в списке доступных
групп. Если на странице отображаются все группы, то можно отобразить все записи
конкретной группы, щелкнув маркер ее развертывания. В нижней части каждой развернутой
группы может находиться собственная панель перехода по записям. Редактировать
данные на уровне группировки, имеющем поле группировки, невозможно.
Замечание
В страницах доступа к данным, как и в формах и отчетах, можно также фильтровать данные и создавать вычисляемые поля. Все это выполняется аналогично тому, как было описано в главах о формах и отчетах. Поэтому в данной главе мы не будем подробно рассматривать эти вопросы. При необходимости обратитесь к справке Access 2002.
В режиме Конструктора
можно задать необходимую группировку записей. Чтобы добавить уровень группировки,
выделите элемент, к которому привязан источник данных (это может быть поле,
связанный текст или другой элемент управления), и нажмите кнопку
Повысить
уровень
(Promote) на панели инструментов
Макет страницы
(Page Design).
В результате мы сгруппировали все данные из источника по значению этого элемента.
Назовем его
элементом группировки.
Чтобы сгруппировать данные не по одному
полю, а по всем полям из таблицы, которая его содержит, нажмите кнопку
Группировать
по таблицам
(Group by Table). Чтобы убрать группировку или соединить два
раздела группировки в один, выделите элемент группировки (поле или какой-либо
другой элемент) и нажмите кнопку
Понизить уровень
(Demote).
На панели
инструментов
Панель элементов
(Toolbox) присутствует кнопка
Развернуть
(Expand), позволяющая добавить на страницу элемент управления в виде кнопки
с изображением плюса или минуса, который называется
маркером развертывания/свертывания
группы.
С помощью этого элемента можно развернуть или свернуть список элементов
одной группы.
При добавлении
на страницу нового уровня группировки появляется новый раздел, который называется
заголовком группы.
Автоматически туда помещаются элемент группировки
и маркер развертывания. Выделить этот раздел можно щелчком мыши по его заголовку.
Выделив раздел, можно изменить его размеры с помощью мыши или настроить свойства
группы. Открыть окно свойств уровня группы (рис. 12.32) можно, щелкнув по заголовку
группы правой кнопкой и выбрав в контекстном меню команду
Свойства уровня
группы
(Group Level Properties). В этом же контекстном меню отображаются
команды, позволяющие отобразить или скрыть тот или иной раздел группы. Если
снять флажок
Верхний колонтитул
(Header), будут удалены основной раздел
(заголовок группы) и все связанные с ним разделы.
Рассмотрим
изменение свойств группировки на примере страницы "Продажи по сотрудникам
и странам", описанной
в разд. "Создание автостраниц с помощью Мастера
страниц доступа к данным" этой главы.
Прежде всего исправим недостатки,
полученные вследствие ее автоматического создания (проведенного в целях демонстрации):
Чтобы настроить
параметры групп:
Рис. 12.32.
Диалоговое окно
Levеl
для уровня группировки
Таблица
12.5.
Параметры разделов группировки страницы "Продажи по сотрудникам
и странам"
Свойство\
Группа
|
Страна
|
Сотрудники
|
Данные
|
||
CaptionSection
(Раздел
|
Ложь (False)
|
Ложь (False)
|
Истина (True)
|
||
подписей)
|
|
|
|
||
GroupHeader (Заголовок
|
Истина
|
Истина
|
Истина
|
||
группы)
|
|
|
|
||
GroupFooter (Примечание
группы)
|
Ложь
|
Ложь
|
Ложь
|
||
RecordNavigationSection
|
Истина
|
Истина
|
Истина
|
||
(Раздел кнопок
перехода)
|
|
|
|
||
ExpandedByDefault
|
Истина
|
Истина
|
Ложь
|
||
(Развернуто по
умолчанию)
|
|
|
|
||
DataPageSize
(Размер
|
1
|
5
|
5
|
||
страницы доступа)
|
|
|
|
||
GroupOn (Группировка)
|
По полному значению
(dscEachValue)
|
По полному значению
(dscEachValue)
|
|
||
Grouplnterval
(Интервал)
|
1
|
1
|
|
||
DefaultSort (Сортировка
по умолчанию)
|
[<имя элемента
группировки>]
|
[<имя элемента
группировки>]
|
[ДатаИсполнения]
АЭС, [Промежуточная Сумма] DESC
|
||
Выполнив эти
действия, в качестве завершающего штриха мы применили к странице тему
Закругление
(Radial) для ее оформления. То, что у нас получилось, представлено на рис.
12.33 [
К сожалению, на этом рисунке не видно фонового узора, но он присутствует,
и обладатели компакт-диска могут в этом убедиться.
]
(см. разд. "Оформление
страницы доступа к данным" в этой главе).
Рис. 12.33. Страница Продажи по сотрудникам и странам в режиме Просмотра Сравните это с тем, что было показано на рис. 12.22.