Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Practicum_DB_College.doc
Скачиваний:
15
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

Задание 7. Использование встроенных функций в запросах Access

Цель задания  создать запрос, в котором вычисляется стоимость заказов с учетом возможной скидки. Скидка назначается в том случае, если размер заказа составляет не менее некоторого количества единиц товара, заданного для каждого поставщика и каждой группы товаров. Проверка этого условия выполняется с помощью функции IIf, которая работает аналогично функции ЕСЛИ из Excel.

Методические указания:

  1. Создать новую таблицу Скидки в режиме Конструктора (Код_скидки – ключевое поле) и ввести в нее данные:

Код_скидки

Код_поставщика

Код_группы

Количество

Скидка

1

1

1

20

2,0

2

1

2

50

2,0

3

2

1

30

1,0

4

2

2

20

1,5

5

3

1

25

1,0

6

3

2

25

2,0

7

4

1

50

3,0

8

4

2

50

3,5

9

5

1

40

2,0

10

5

2

50

3,0

11

6

1

30

1,5

12

6

2

30

1,5

13

7

1

100

2,0

14

7

2

100

3,0

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

  1. Открыть окно «Схема данных» и добавить в него таблицу Скидки. Создать связи: а) между таблицами Группы и Скидки через поле Код_группы; б) между таблицами Поставщики и Скидки через поле Код_ поставщика. Сохранить схему данных.

  2. Создать новый запрос в режиме Конструктора. Выбрать таблицы Поставщики, Клиенты, Товары, Заказы и Скидки для использования в запросе.

  3. Включить в запрос поля Наим_поставщика, Наименование_группы, Модель, Размер_заказа.

  4. В следующий свободный столбец бланка запроса ввести формулу для вычисления итоговой скидки Итог_Скидка: IIf([Размер_заказа]>=[Количество];[Скидка];0) Здесь использована функция IIf (выбрать из категории Управление в окне Построителя выражений), которая работает аналогично функции ЕСЛИ из Excel, т.е. если неравенство, являющееся 1-м аргументом функции, истинно, то значение функции равно 2-му аргументу, а в противном случае оно равно 3-му аргументу.

  5. В следующий свободный столбец бланка запроса ввести формулу для вычисления стоимости заказа с учетом скидки Стоимость_заказа: ([Размер_заказа] *[Опт_цена]* (1+0,01*[Торг_надбавка]) +[Ст_доставки])*(1-0,01*[Итог_Скидка]) Для этого поля вывести на экран контекстное меню и выбрать из него команду Свойства. В окне «Свойства поля» установить формат поля – Фиксированный, число десятичных знаков 2.

  6. Сохранить запрос под именем Заказы(скидка). Запустить его на выполнение и просмотреть результаты.

Задачи для самостоятельного решения.

  1. Создать запрос, в результатах которого вывести список клиентов, заказанные ими модели товаров, размеры заказов и стоимость заказов каждого из них с учетом скидок.

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