При выполнении этого задания необходимо создать в форме Агенты список «№ агентов» для их выбора из списка по № агента.
Для этого в форме Агенты, находящейся в режиме конструктора выберите из панели элементов кнопку Поле со списком (см. рис. 1 выше) и установите его в форме. Ответьте на вопросы диалогового окна: Создание полей со списком:
1)Способ, которым поле со списком получает свои значения: поиск записи в форме на основе значения, которое содержит поле со списком
Далее.
2)Таблица: Агенты
Показать: таблицы
Далее
3) Выбранные поля: № агента
Далее.
4) Подпись, которую содержит поле со списком: № агента
Готово.
Откройте форму в режиме Просмотра, ее вид:
В итоге выбор информации по агентам можно осуществлять в форме на основании списка агентов по номерам, выбирая необходимый номер агента автоматически выдаются данные о его продажах.
Сохраните и закройте форму.
Создание запросов.
! Запрос – вопрос о данных, хранящихся в таблицах или своего рода инструкция на отбор необходимых записей. Ниже приведены примеры запросов, которые могут быть созданы с помощью MАccess.
Задание 13:
Осуществите выборку данных об обороте Агентов за период времени (год), а также рассчитайте помесячно (общую сумму за месяц) себестоимость и общую договорную стоимость проданной продукции.
Данную выборку можно осуществить с помощью запроса на выборку данных из таблиц Каталог, Агенты, Заказчики, Продажи за год.
! Запрос на выборку-наиболлее часто используемый тип запросов, он является основой для всех типов запросов. Запрос на выборку совмещает данные из одной или нескольких таблиц и иногда плюс результаты, которые по желанию пользователь может изменить. Запрос на выборку может иметь однотабличную и многотабличную форму.
Для создания запроса в окне БД нажмите вкладку Запросы-Создать.
Выберите режим Конструктора.
В окне Добавление таблицы выберите таблицы: Агенты, Каталог, Заказчики, Продажи за год, Добавить-Закрыть.
Включите поле ФИО агента из таблицы Агенты в запрос. Для этого щелкните левой кнопкой мыши по полю ФИО агента в таблице Агенты, поле автоматически включилось в запрос. Аналогично включите поля:
ФИО заказчики из таблицы Заказчики
Наименование изделия из таблицы Каталог
Месяц из таблицы Продажи за год
Проданное количество из таблицы Продажи за год
№ агента из таблицы Агенты
В свободное поле введите формулу для расчета себестоимости проданной продукции с помощью Построителя выражений:
Себестоимость:([Каталог]![Цена за единицу]*[Продажи за год]![Проданное количество])
Ввод выражений с помощью построителя.
В свободном поле введите заголовок поля: Себестоимость:(
Далее установите в этом поле курсор и нажмите на панели инструментов кнопку Построить:
Открывается окно диалога Построитель выражений.
Построим заданное выражение:
В списке элементов выражения выберите Таблицы дважды щелкните левой клавишей мыши.
Выберите таблицу Каталог
В среднем окне выберите Цена за единицу и нажмите кнопку Вставить
Поставьте знак умножения, который находится на панели инструментов Построителя выражений
Выберите в первом окне таблицу Продажи за год
В среднем окне выберите Проданное количество, нажмите кнопку Вставить
Закройте круглую скобку
Нажмите кнопку ОК
Окно мастера построителя автоматически закроется, а выражение будет введено в свободное поле.
В следующем свободном поле введите выражение с помощью построителя выражений:
Общая договорная цена: ([Продажи за год]![Договорная цена за единицу]*[Продажи за год]![Проданное количество])
Далее в запросе проследите наличие крестиков в строке Вывод на экран.
В итоге, конструктор запроса должен выглядеть:
Нажмите кнопку Запуск запроса на панели инструментов и сравните полученный результат с таблицей:
ФИО агента | ФИО заказчика | Наименование изделия | Месяц | Проданное количество | № агента | себестоимость | Общая договорная цена |
Котов | Иванов | дискета 3,5 | |||||
Котов | Иванчук | дискета 3,5 | |||||
Великанов | Иванчук | дискета 3,5 | |||||
Никулин | Петров | дискета 5,25 | |||||
Никулин | Федоров | дискета 5,25 | |||||
Никулин | Федоров | дискета 5,25 | |||||
Котов | Иванов | картридж для принтера | |||||
Великанов | Иванов | картридж для принтера | |||||
Великанов | Иванчук | картридж для принтера | |||||
Котов | Петров | бумага для принтера | |||||
Котов | Федоров | бумага для принтера | |||||
Великанов | Петров | бумага для принтера | |||||
Никулин | Давиденко | Чернила | |||||
Никулин | Иванов | Чернила | |||||
Никулин | Иванчук | Чернила | |||||
Котов | Никитина | Скоросшиватели | |||||
Великанов | Петров | Скоросшиватели | |||||
Великанов | Федоров | Скоросшиватели |
Закройте запрос, сохранив его под именем под именем: «Запрос на выборку».
Задание14: