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

Е.А. Бессонов Access. Страницы доступа к данным

.pdf
Скачиваний:
59
Добавлен:
19.08.2013
Размер:
557.51 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственное образовательное учреждение высшего профессионального образования

“КУЗБАССКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ”

Кафедра вычислительной техники и информационных технологий

Access

Страницы доступа к данным

Методические указания к лабораторной работе для студентов специальности “Экономика и управление на предприятиях” по курсу “Автоматизация экономических расчетов”

Составитель Е.А. Бессонов

Утверждены на заседании кафедры Протокол №8 от 30.04.03

Рекомендованы к печати учебнометодической комиссией специальности 080800 Протокол №12 от 16.05.03

Электронная копия хранится в библиотеке главного корпуса ГУ КузГТУ

Кемерово 2003

1

Введение

Объект Access Страница доступа к данным является гибридом формы и отчета. Страницы доступа к данным представляют собой специальный тип веб-страниц, предназначенный для просмотра и правки через Интернет или интрасеть данных, хранящихся в базах данных Microsoft Access и SQL Server. Страница доступа к данным может включать также данные из других источников, таких как Excel.

В отличие от других объектов (таблицы, запросы, формы, отчеты, макросы и модули), которые содержатся в одном файле .mdb, каждая страница является файлом .htm, содержащим исходный код страницы на языках HTML и ХML.

Выводить страницы доступа к данным можно либо в Access в режиме страницы или конструктора, либо в Internet Explorer версии 5.0 и выше в режиме страницы.

Страницы доступа к данным позволяют осуществлять ввод, просмотр и редактирование данных. Основные возможности страниц доступа к данным обеспечиваются компонентами ActiveX из набора Office Web Components.

Структура страницы

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

Каждая группа данных может содержать до четырех разделов:

-область подписей;

-заголовок группы; -примечание группы; -область панели кнопок перехода.

В разделы могут добавляться элементы управления.

Элементы управления

Для создания и размещения на странице элементов управления служит панель инструментов Панель элементов, которая в данном случае имеет некоторые особенности. Рассмотрим некоторые из элементов панели.

2

Text Box. Текстовое поле, осуществляющее ввод и отображение данных, как в формах и отчетах.

Bound Span. Текстовое поле, отображающее текст в формате HTML. Ввод в это поле не разрешен. В Bound Span данные загружаются быстрее, чем в TextBox, поэтому они более эффективны на страницах, предназначенных только для отображения данных.

Expand. Маркер развертывания, позволяющий отобразить/скрыть содержимое.

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

группы.

Рис.1. Список полей

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

Список полей

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

Здесь и далее мы не указываем источник команды. Им может быть главное меню, панель инструментов или контекстное меню (меню объ-

Соз-
Рис.2. Способы создания страниц

3

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

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

Способы создания страницы

В окне базы данных выделите ярлык Страницы и нажмите кнопку дать. Появится диалоговое

окно Новая страница доступа к данным

(рис.2). В окне представлено 4 способа создания страницы доступа к данным. В нижней части окна нужно выбрать в списке таблицу или запрос – источник данных для страницы.

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

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

Создание страницы

Рассмотрим процесс создания страницы доступа к данным полностью в режиме конструктора. После выбора варианта Конструктор (рис.2) на экране появляется пустая страница (рис.3).

4

`

Рис.3. Пустая страница Щелкните на названии страницы и введите содержательное назва-

ние, например "Запасы товаров".

Перетащите на сетку поле Категория и выполните команду Повысить уровень. Появляется группа с заголовком qryТовары-Категория

ираздел с заголовком qryТовары.

Вгруппе Категория присутствует символ развертывания (знак плюс в квадратике). В режиме страницы с его помощью можно разворачивать или сворачивать список категорий. Категорию можно выбрать из списка или раскрывающегося списка. Применим в рассматриваемом примере раскрывающийся список.

Рис.4. Страница после создания группы Категория

5

Вначале освободите раздел. Для этого удалите символ развертыва-

ния и поле Категория. Щелкните на кнопке Раскрывающийся спи-

сок панели элементов и перетащите поле Категория из списка полей на сетку группы Категория. После отпускания кнопки появится контекстное меню, в котором выберите Фильтр группы. На странице появится раскрывающийся список (рис.4).

Создайте надпись на метке раскрывающегося списка, для чего щелкните на ней и наберите текст "Категории товаров". Группа Категория создана, что позволяет выбрать для просмотра любую категорию.

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

В появившейся группе qryТовары-Название разместите поле Стоимость и задайте на вкладке Данные свойства поля:

ControlSource ГруппаСтоимость:Стоимость

Format Fixed TotalType dscSum

Источником данных для этого элемента управления служит текстовое поле Стоимость. Стоимость форматируется как число с двумя знаками в дробной части (формат Fixed). На поле в режиме конструктора выводится текст Группа-Стоимость.

Свойство TotalType (тип итога) позволяет указать функцию для подведения итогов по группе. Итоговую функцию можно выбрать в раскрывающемся списке.

dscNone Выводятся все строки группы. В остальных случаях выводится одна строка на группу

dscSum Сумма

dscAvg Среднее арифметическое dscMin Минимальное значение dscMax Максимальное значение dscCount Число записей в группе

dscAny Значение из первой записи в группе dscSTdev Стандартное отклонение

Поскольку свойство TotalType (тип итога) имеет значение dscSum, в поле будет выводиться сумма всех значений поля Стоимость поставщика. Формат Fixed выводит число без указания признака “p” или

6

“$”. Поместите после поля Стоимость метку с надписью "руб". Теперь в режиме страницы для каждого поставщика будет выводиться текст вида: “Поставщик ООО ТоргСиб 12800.00 руб”

В раскрывающемся списке TotalType можно выбрать и другую итоговую функцию, например dscAvg (среднее).

Далее нужно перетащить поля Марка, Цена, НаСкладе и ПоставкиПрекращены в раздел qryТовары, расположив их в линию по горизонтали. Что касается меток, то их желательно разместить над соответствующими полями в разделе CaptionSection (подписи). Но вначале нужно раздел подписей вывести на экран. Для этого выполните команду Свойства уровня группы. В появившемся диалоговом окне (табл.1) задайте значение CaptionSection. Из таблицы видно, что подписи есть (CaptionSection = Истина) в группах Категория и qryТовары, где метки расположены над соответствующими полями.

Раздел подписей обычно используется для вывода заголовков

Таблица 1 Свойства уровня группы

Свойство

Категория

 

Название

qryТовары

AllowAdditions

Ложь

 

Ложь

Истина

AllowDeletions

Ложь

 

Ложь

Истина

AllowEdits

Ложь

 

Ложь

Истина

AlternateRowColor

whiteSmoke

whiteSmoke

whiteSmoke

CaptionSection

Истина

 

Ложь

Истина

DataPageSize

Все

 

Все

10

DefaultSort

 

 

[Группа-

 

 

 

 

Название]

 

ExpandedByDefault

Истина

 

Ложь

Ложь

GroupFilterControl

Группа

Кате-

 

 

 

гория

 

 

 

GroupFilterField

Группа

Кате-

 

 

 

гория

 

 

 

GroupFooter

Ложь

 

Ложь

Ложь

GroupHeader

Истина

 

Истина

Истина

GroupInterval

1

 

1

 

GroupOn

dscEachValue

dscEachValue

 

RecordNavigationSection

Ложь

 

Ложь

Истина

RecordSelector

Ложь

 

Ложь

Ложь

7

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

Наряду с CaptionSection группы имеют ряд других свойств. GroupHeader (заголовок группы). Установка свойства в значение Истина создает раздел заголовка в группе. В нем можно размещать связанные и несвязанные элемента управления.

GroupFooter (примечание группы). Установив свойство GroopFooter в значение Истина, вы создадите раздел примечания, который будет расположен выше раздела кнопок перехода текущей группы, если он есть. Здесь, как и в заголовке группы, можно разместить итоговую информацию, сформированную на основе данных группы. Для самого нижнего уровня группировки создать раздел примечания нельзя.

Если на странице выводится только одна группа строк, то такая страница допускает редактирование (AllowEdits = Истина), но нельзя вывести раздел примечания. Если добавить второй уровень группировки, то страница станет доступной только для просмотра.

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

ExpandedByDefault (развернуто по умолчанию). Если вы установите это

8

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

DataPageSize (размер страницы доступа). Свойство определяет, сколько строк будет выводиться в данном разделе. На выбор предлагаются значения1, 5, 10 и Все, но вы можете ввести любое допустимое число. Если вы установили свойство RecordNavigationSection в значение Ложь, то свойство DataPageSize следует установить в значение Все, иначе пользователь просто не сможет увидеть какую-то часть строк. В качестве альтернативы можно воспользоваться фильтром группы для отбора записей. Если вы хотите предоставить пользователю возможность редактировать данные, свойство DataPageSize следует установит в 1 и ограничиться только одним уровнем группировки. При нарушении хотя бы одного из этих требований страница будет доступна только для чтения. GroupOn/GroupInterval (группировка/интервал). Свойство GroupOn позволяет сгруппировать записи не по отдельным значениям, а по фиксированным интервалам значений. Если поле содержит число, то в списке GroupOn содержатся значения dscEachValue (по полному значению) и dscInterval (интервал). Если поле содержит текст, то список выглядит иначе: dscEachValue (по полному значению) и dscPrefix (по первым знакам). В этом случае в поле выводятся только первые символы. При наличии в поле даты список имеет вид: dscEachValue (по полному зна-

чению); dscYear (по годам); dscQuarter (по кварталам); dscMonth (по месяцам); dscWeek (по неделям); dscDay (по дням); dscHour (по часам); dscMinute (по минутам).

Свойство GroupInterval определяет, сколько интервалов, заданных свойством Group On, доложно быть включено в одну группу. Например, если для свойства Group On выбрано значение dscWeek, а для свойства GroupInterval задано значение 2, строки будут сгруппированы по двум неделям. Для разделов, которые задаются строками отдельных источников данных, свойства Group On и GroupInterval недоступны.

DefaultSort (сортировка по умолчанию). Свойство позволяет указать порядок сортировки данных группы.

9

Рис.5. Макет страницы С его помощью задается перечень имен полей, разделенных запятыми.

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

GroupFilterControl/GroupFilterField (элемент фильтра группы/поле фильтра группы). Можно организовать фильтрацию строк раздела на основе значения, выбранного пользователем в списке или поле со спи-

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

После выполнения всех описанных выше действий создается макет страницы доступа к данным (рис.5).

Рис.6. Начальный вид страницы

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