Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методическое указание к выполнению курсовой раб...doc
Скачиваний:
5
Добавлен:
07.09.2019
Размер:
4.79 Mб
Скачать

2.3.3. Добавление управляющих объектов

Задание: добавить в примечание формы «Справочник товаров» раздел для перевода цены товара в доллары и евро (рис. 2.43).

Рис. 2.43. Примечание формы «Справочник товаров»

Порядок работы:

1. Форма открывается в режиме конструктора.

2. Нажатием кнопки подключается Панель элементов ( ). На панели элементов активизируется кнопка Мастера ( ).

3. На форме прорисовывается объект Группа переключателей ( ).

4. На экране отобразиться окно Создания группы переключателей. В столбце Подписи: перечисляются все опции в группе переключателей (рис. 2.44).

Рис. 2.44. Создания группы переключателей

5. Определяется тот переключатель, который будет активен по умолчанию (рис. 2.45).

Рис. 2.45. Выбор переключателя по умолчанию

6. Каждому переключателю присваивается номер (рис. 2.46).

Рис. 2.46. Присвоение номеров переключателям

7. Устанавливается опция .

8. Определяется внешний вид переключателей (рис. 2.47).

Рис. 2.47. Определение внешнего вида переключателей

9. Задается подпись для переключателя (рис. 2.48). Также в Свойстве поля Имя записывается имя Выбор.

Рис. 2.48. Определение подписи для переключателя

10. Добавляются поля для курса доллара и евро, а также поле для пересчета. Используя Свойства, полю курс доллара присваивается имя Доллар, а полю курс евро - Евро (рис. 2.49).

Рис. 2.49. Добавление полей

11. Для поля Цена товара в выбранных единицах измерения, используя Построитель выражения, записывается формула (рис. 2.50).

Примечание: для расчета используется логическая функция

IIF(условие; выражение если условие истинно; выражение если условие ложно).

Порядок работы: при обращении к функции проверяется условие, если оно истинно, то выполняется выражение, стоящее во втором аргументе, если условие ложно, то выполняется выражение, стоящее в третьем аргументе.

Данная формула является аналогом функции ЕСЛИ в Excel.

Рис. 2.50. Формула для расчета

12. Результат пересчета представлен на рис. 2.51.

а) б)

Рис. 2.51. Расчет стоимости в выбранных денежных единицах:

а) в долларах; б) в евро

Раздел 3. Создание запросов

3.1. Определение

Запросы – объекты СУБД Access, предназначенные для отбора данных, которые удовлетворяют заданным критериям.

3.2. Создание запросов

3.2.1. Простой запрос

Задание: создать запрос, который будет выводить на экран накладные, выписанные в декабре 2008 года, содержащие информацию о товарах диск CD-R и диск CD-RW.

Порядок работы:

1. В окне базы данных необходимо перейти на вкладку Запросы.

2. Нажать на кнопку Создать и в появившемся диалогом выбрать ссылку Создание запроса в режиме конструктора.

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

Рис. 3.1. Добавление таблиц в запрос

4. На экране отобразится окно создания запроса, которое состоит из двух частей: в верхней части отображены поля выбранных таблиц, а в нижней – таблица для определения параметров запроса (рис. 3.2)

Рис. 3.2. Окно создания запроса

5. В строке Имя таблицы выбирается имя таблицы, из которой будут взяты данные для запроса, а в строке Поле – поле соответствующей таблицы (рис. 3.3).

Рис. 3.3. Определение полей запроса

6. В строке Условие отбора записываются условия, накладываемые на данные (рис. 3.4). Символы, используемые в запросах описаны в табл. 4.

Рис. 3.4. Задание условий отбора

7. Для просмотра результата необходимо на панели инструментов нажать кнопку . Результат запроса отобразится в виде временной (динамической) таблицы (рис. 3.5).

Рис. 3.5. Просмотр результатов запроса

Таблица 4. Символы, используемые в запросах

Символы, используемые в запросах

Описание

Пример

>, <, =,<=, >=, <>

Больше, меньше, равно, меньше или равно, больше или равно, неравно

*

Заменяет любой набор символов в запросе

К* — слова, начинающиеся на букву К;

*.01.2008 — любое число января месяца 2008 года

?

Заменяет один символ в запросе

Сидоров? — после слова Сидоров возможно наличие одного любого символа;

01.01.200? первое января с 2000 по 2009 г.

Окончание табл.4

Символы, используемые в запросах

Описание

Пример

OR

Логическое ИЛИ

*.01.2008 or *.02.2008 — январь или февраль месяц 2008 года;

Иванов or Петров — Иванов или Петров

AND

Логическое И

>10 and <=15 — больше 10 и меньше или равно 15

Between <значение 1> and <значение 2>

МЕЖДУ <значением 1> И <значением 2>

Between 10 and 100 — между 10 и 100

Задание: найти товары, проданные в количестве от 10 до 50 или с ценой более 10000.

В строке Условие отбора записываются условия, накладываемые на данные (рис. 3.6).

Рис. 3.6. Условие отбора

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

Цифрой (1) обозначены записи удовлетворяющие первому условию – цена более 10000, цифрой (2) – записи удовлетворяющие второму условию – количество между 10 и 50 (рис. 3.7).

Рис. 3.7. Результат запроса

3.2.2. Запрос с параметром

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

Для создания запроса с параметром в строке Условие отбора, под соответствующим полем, в квадратных скобках записывается параметр: [Введите <имя поля>] (рис. 3.8).

Рис. 3.8. Запрос с параметром

При выполнении запроса на экране появляется окно Введите значение параметра с полем для ввода значения параметра (рис. 3.9 а). Результат запроса отобразится в виде динамической таблицы (рис. 3.9 б).

а) б)

Рис. 3.9. Результат выполнения запроса:

а) окно для ввода значения параметра; б) результат выполнения запроса

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

При создании запроса в строке Условие отбора под полем Дата в квадратных скобках записываются два параметра (рис. 3.10).

Рис. 3.10. Запрос с двумя параметрами

При вызове запроса на экране последовательно появятся два окна для ввода начальной и конечной даты диапазона (рис. 3.11).

Рис. 3.11. Окна для ввода значений параметров

Результат запроса отобразится в виде динамической таблицы (рис. 3.12).

Рис. 3.12. Результат выполнения запроса

3.2.3. Запрос с группировкой

Запрос позволяет для групп однотипных данных подводить итоги: подсчитывать их количество, сумму, среднее и т.д.

Задание: создать запрос, который будет подсчитывать суммарное количество товара по каждой накладной.

Рассмотрим данные таблицы «Продажа товара» (рис. 3.13). В таблице значения столбца Номер накладно» повторяются многократно (в зависимости от того, сколько товаров продано по накладной). Необходимо создать запрос, который будет для накладных с одинаковым номером суммировать количество товара.

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

Рис. 3.13. Таблица «Накладные»

Для реализации запроса в режиме конструктора добавляется дополнительная строка Групповые операции (рис. 3.14) нажатием на панели инструментов кнопки . Под полем № накладной в строке Групповые операции выбирается команда Группировка (накладные с одинаковым номером группируются), а под полем Кол-во — команда Sum (количество суммируется). Операции, используемые в запросе на группировку, описаны в табл. 5.

Результат выполнения запроса представлен на рис. 3.15. (сравните результат с данными рис. 3.13).

Рис. 3.14. Группировка данных в запросе Рис. 3.15. Результат

выполнения запроса

с группировкой

Таблица 5. Групповые операции

Sum

Суммирование

Avg

Среднее значение

Min

Минимальное значение

Max

Максимальное значение

Count

Количество элементов в столбце

Last

Последний элемент

First

Первый элемент

Условие

Указывает на логическое выражение

Выражение

Указывает на то, что поле вычисляемое

3.2.4. Запрос с вычисляемым полем

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

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

Синтаксис вычисляемого поля: Имя поля : формула

Примечание: в формуле заголовки столбцов таблицы записываются в квадратных скобках.

Задание: создать запрос, который позволяет рассчитать стоимость товаров по каждой накладной.

Вычисляемое поле создается в свободном столбце (рис. 3.16).

Рис. 3.16. Создание вычисляемого поля

Результат выполнения запроса представлен на рис. 3.17.

Рис. 3.17. Результат выполнения запроса с вычисляемым полем

3.2.5. Перекрестный запрос

Задание: создать перекрестный запрос, позволяющий представить данные в виде перекрестной таблицы следующего вида.

накладной

клавиатура

колонки

….

Итоговая

стоимость

по накладной

1

Стоимость товаров

2

3

При создании перекрестного запроса в режиме конструктора необходимо выполнить команду Запрос / Перекрестный. Тогда на экране отобразятся дополнительные строки: Групповая операция, Перекрестная таблица. В запрос добавляются поля:

накладной – заголовки строк, групповая операция – группировка,

Товар – заголовки столбцов, групповая операция – группировка,

Стоимость (вычисляемое поле) – значение на пересечении строки и столбца, групповая операция – сумма,

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

Рис. 3.18. Перекрестный запрос в режиме конструктора

Результат запроса представлен на рис. 3.19. Пояснение: например, по накладной №8 продан товар клавиатура стоимостью 936,00 р., а общая стоимость всех товаров по 8 накладной составила 1176,00 р.

Рис. 3.19. Перекрестный запрос

3.2.6. Запросы-действия

Предыдущие типы запросов не изменяли данные в таблицах, а лишь формировали временные таблицы с данными, удовлетворяющими условиям. Запросы-действия позволяют изменять данные в таблицах и создавать новые таблицы с данными в базе данных.

3.2.6.1. Запрос на обновление

Задание: создать запрос, который позволяет для заданного товара в таблице «Справочник товаров» изменять его цену.

При создании запроса на обновление необходимо указать тип запроса. Для этого в режиме конструктора выбирается пункт меню Запрос и нажимается команда Обновление (рис. 3.20) на экране в окне запроса добавляется новая строка Обновление (рис. 3.21).

Рис. 3.20. Выбор типа запроса

Далее в строку Поле, добавляются поля Товар и Цена.

Под полем Товар в строке Условие отбора записывается параметр [Введите товар], а под полем Цена, в строке Обновление, записывается параметр [Введите новую цену] (рис. 3.21).

Рис. 3.21. Запрос на обновление в режиме конструктора

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

После выполнения запроса исходные данные в таблице «Справочник товаров» изменятся (рис. 3.24).

Рис. 3.22. Ввод параметров

Рис. 3.23. Информационное сообщение о количестве обновленных записей

а) б)

Рис. 24. Таблица «Справочник товаров»: а) данные до обновления;

б) данные после обновления

3.2.6.2. Запрос на удаление

Задание: создать запрос, который позволяет удалять из базы данных накладные, дата выдачи которых меньше 01.01.2002.

При создании запроса на удаление необходимо указать тип запроса. Для этого в режиме конструктора выбирается пункт меню Запрос и нажимается команда Удаление (см. рис. 3.20). На экране в окне запроса добавляется новая строка Удаление (рис. 3.25).

Добавляется таблица «Справочник накладных».

В строку Поле добавляется поле Дата. Под ним в строке Условие отбора записывается условие < 01.01.2002 (рис. 3.25).

Рис. 3.25. Запрос на удаление в режиме конструктора

В результате работы запроса из базы данных будут удалены все накладные, выписанные ранее 01.01.2000.

3.2.6.3.Запрос на создание таблицы

Задание: создать запрос, который позволяет создать новую таблицу в разделе Таблицы, содержащую поля № накладной, Покупатель, Кол-во товара, Дата. Кол-во товара для новой таблицы будет определять пользователь.

При создании запроса на создание таблицы необходимо указать тип запроса. Для этого в режиме конструктора выбирается пункт меню Запрос и нажимается команда Создание таблицы (см. рис. 3.20). На экране появится диалоговое окно, в котором записывается имя новой таблицы (рис. 3.26).

Рис. 3.26. Определение имени таблицы

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

Рис. 3.27. Запрос на создание таблицы в режиме конструктора

В результате работы запроса в разделе Таблицы появится таблица с именем Новая, содержащая записи, удовлетворяющие заданному условию (пользователь ввел количество >10) (рис. 3.28).

Рис. 3.28. Таблица «Новая»

3.2.6.4. Запрос на добавление

Задание: создать запрос, который позволяет добавлять в таблицу Новая информацию о накладных, выписанных заданному покупателю (Наименование покупателя вводит пользователь).

При создании запроса на создание таблицы необходимо указать тип запроса. Для этого в режиме конструктора выбирается пункт меню Запрос и нажимается команда Добавление (см. рис. 3.20). На экране появится диалоговое окно, в котором записывается имя таблицы, в которую будут добавлены записи (рис. 3.29).

Рис. 3.29. Определение имени таблицы, в которую будут добавлены записи

В режиме конструктора добавляются таблицы, информация из которых будет добавляться в таблицу Новая. В строке Условие отбора необходимо записать параметр для ввода покупателя (рис. 3.30).

Рис. 3.30. Запрос на добавление в режиме конструктора

В результате работы запроса в таблицу Новая будут добавлены записи, удовлетворяющие условию.