Расширенные средства ввода данных
1) ЛЕКЦИЯ 12. РАСШИРЕННЫЕ СРЕДСТВА ВВОДА ДАННЫХ. СОЗДАНИЕ ПОДЧИНЕННЫХ ФОРМ
Например, есть перекрестный запрос, согласно которому определяются суммы продаж по каждому товару за каждый месяц. Известно, что с помощью Мастера перекрестных запросов мы можем найти сумму по строке (по каждому товару). Еще одним удобным способом отображения перекрестных запросов является форма.
Предположим, первоначально мы создали форму
Код товара Код товара
I квартал II квартал Январь Янв-2000 Апрель Апр-2000 Февраль Февр-2000 Май Май-2000 Рекомендуемые материалыЛР №1 - реализация абстрактного типа данных FREE Типизированные файлы. Базы данных с выборкой FREE Проектирование базы данных "Больница" FREE Разработка базы данных футбольного клуба FREE Создание с помощью SQL Server базы данных для магазина продуктов FREE База данных Март Март-2000 Июнь Июнь-2000 |
на основе следующего запроса:
Код товара | Янв-2000 | Февр-2000 | Март-2000 | Апрель-2000 | Май-2000 | Июнь-2000 |
1 | 30 | 10 | 11 | 10 | ||
2 | 50 | 15 | ||||
3 | 10 | 12 |
При таком запросе результат выполнения формы будет выглядеть следующим образом:
Код товара 1 Январь 30 Апрель 11 Февраль Май Март 10 Июнь 10 |
Пусть нам нужно определить суммы продаж по каждому кварталу, а затем – общую сумму за год. Для этого необходимо добавить вычисляемые поля, складывающие значения по продажам по каждому кварталу. Однако в некоторых месяцах объем продаж равен нулю. В этих случаях Access не будет подсчитывать значения итоговых сумм. Для этого нужно сделать следующее:
1) Выделить поля Янв-2000 и вызвать его Свойства. Во вкладке Данные будет стоять янв-2000 (имя поля исходного запроса). Нам нужно сделать так, чтобы, если значения этого поля нулевые (is Null), то в форме на ее месте должен находиться 0, а иначе – значение данного поля. Для этого в строке Данные нужно вызвать Построитель и с помощью функций записать выражение:
If (is Null ([янв-2000])); 0; [янв-2000]
2) Во вкладке Имя изменить имя поля Янв-2000 на Январь, т.к. при подсчетах суммы за квартал мы будем использовать теперь не поле исходного запроса Янв-2000, а наше расчетное поле. Поэтому их имена должны отличаться.
3) То же самое проделать с остальными полями формы. В построителе выражений удобно использовать для ввода названий полей список полей формы.
4) Под каждым столбцом, содержащим данные по месяцам одного и того же квартала, добавить вычисляемое поле
Если Вам понравилась эта лекция, то понравится и эта - 3 - Морские навигационные карты.
Итого = [Январь]+[Февраль]+[Март]
Заметим, что для подсчета сумм используются не исходные поля [Янв-2000] и т.д., а имена вычисляемых полей [Январь] и т.д.
5) Вызвать Свойства добавленных полей и присвоить им имена (вкладка Все, строка Имя): Квартал I, Квартал II…
6) Добавить еще одно поле, определяющее сумму продаж за год
Итого за год = [Квартал 1]+[Квартал 2]+…