Отчеты
319
Код
склада
Код
товара
Количество
Дата
ИТОГО ОТГРУЖЕНО
ОТГРУЗКА ТОВАРА
Код товара
Наименование товара
Цена
Единица
измерения
Ставка НДС
Фото товара
Месяц
Число отгрузок:
Количество отгруженного:
Рис. 7.31.
Проект макета для создания отчета об отгрузке товаров
ОТГРУЗКА, поля:
•
код склада —
КОД_СК
;
•
код товара —
КОД_ТОВ
;
•
количество отгруженного товара —
КОЛ_ОТГР
;
НАКЛАДНАЯ, поле:
•
дата отгрузки —
ДАТА_ОТГР
.
Рис. 7.32.
Подсхема данных отчета об отгрузке товаров
320
Глава 7
Связи перечисленных таблиц определены в подсхеме данных, представленной на
рис. 7.32.
Очевидно, что главную часть отчета должны составить данные из таблицы ТОВАР,
табличную часть отчета — данные из подчиненной таблицы ОТГРУЗКА. Причем
записи таблицы ОТГРУЗКА должны быть дополнены датой, которая хранится
в главной по отношению к ней таблице НАКЛАДНАЯ.
В соответствии с этим создадим составной отчет, содержащий главный отчет и
включенный в него подчиненный отчет.
Создание главного отчета
Главная часть составного отчета должна содержать все сведения о товаре, которые
хранятся в таблице базы данных ТОВАР, и может быть создана как обычный
однотабличный отчет о товарах фирмы. Для автоматического создания отчета,
включающего все поля одной таблицы, достаточно
выбрать в области навига-
ции таблицу ТОВАР и выполнить команду
Отчет
(Report) на вкладке ленты
Соз-
дание
(Create). Таблица ТОВАР будет указана в качестве источника данных этого
отчета.
Созданный однотабличный отчет откроется в режиме макета. В качестве заголовка
отчета использовано имя таблицы. Он включает все поля таблицы. Присоединен-
ные элементы управления для каждого поля отчета связаны с подписями и образу-
ют один табличный макет, размещенный в области данных.
В режиме макета пунктирными линиями показаны границы текста на странице, что
позволяет правильно выбрать местоположение и размер элементов управления.
Можно создать отчет и с помощью команды
Пустой отчет
(Blank Report), которая
открывает пустой макет, и команды
Список полей
(Field List). Перетащив нужные
поля таблицы в макет отчета, можно получить такой же отчет, как и по команде
Отчет
(Report).
Область
Список полей
может быть открыта командой
Добавить
поля
(Add Existing Fields) на
вкладке ленты
Конструктор
(Design) в группе
Сер-
вис
(Tools).
Поскольку в главной части отчета должны отображаться данные только одной
записи, преобразуем его макет в столбик. Для этого выделим табличный макет,
щелкнув в его левом верхнем углу, и выполним команду
В столбик
(Stacked) на
вкладке ленты
Упорядочить
(Arrange) в группе
Таблица
(Table).
Для того чтобы сделать отчет более компактным, переместим поле с фотографией
товара в верхнюю правую часть отчета, освободив место для подчиненного отчета.
Перемещать отдельный элемент управления за пределы макета, а также удалять из
отчета можно только после его удаления из макета. Для удаления
из макета поля
с фотографией и его надписи выделим их и выполним соответствующую команду
контекстного меню. После исключения
элементов управления из макета, не снимая
выделения, переместим их в новое место.
Удалим надпись поля с фотографией, выделив ее и нажав клавишу
.
Отчеты
321
Размещение элементов в макете значительно упрощает их упорядочение в отчете,
но требует выполнения операций по объединению элементов управления в макет и
удаления из него.
Переключимся в режим конструктора, чтобы хорошо видеть структуру разделов
отчета. Для переключения щелкнем на соответствующем значке в строке состоя-
ния. Отчет с данными о товарах в режиме конструктора представлен на рис. 7.33.
Рис. 7.33.
Отчет о товарах фирмы в режиме конструктора
Создание подчиненного отчета
Табличная часть отчета должна содержать все сведения об отгрузках, которые хра-
нятся в таблицах ОТГРУЗКА и НАКЛАДНАЯ. Создадим на основе этих таблиц
отчет, который будет включен в главную часть отчета в качестве подчиненного.
Создадим по таблице ОТГРУЗКА однотабличный отчет с помощью команды
От-
чет
(Report), который откроется в режиме макета. Из области
Список полей
(Field
List) добавим в отчет нужные поля из таблицы НАКЛАДНАЯ.
Источник записей
отчета автоматически дополнится таблицей НАКЛАДНАЯ и ее полями.
322
Глава 7
Табличный макет этого отчета вполне подходит для реализации нужного представ-
ления. Подберем ширину элементов управления таким образом, чтобы все столбцы
отчета поместились на странице, по умолчанию рассчитанной на размер бумаги А4
и книжную ориентацию. Для того чтобы получить возможность уменьшить ширину
столбцов, сохранив полное отображение содержимого, разместим подписи в заго-
ловках столбцов в двух строках, увеличив их высоту.
Для задания интервала между элементами управления и линиями сетки макета вы-
делите макет отчета, щелкнув в его левом верхнем углу, и выберите нужный интер-
вал из списка команды
Внутренние поля
(Control Padding), размещенной на вклад-
ке ленты
Упорядочить
(Arrange).
Сортировка и
группировка записей отчета
Для группировки данных отчета по дате отгрузки выполним команду
Группировка
(Group & Sort) на вкладке ленты
Конструктор
(Design). В открывшейся области
Группировка, сортировка и итоги
(Group, Sort, and Total) щелкнем на кнопке
До-
бавить группировку
(Add a group). Выберем для предлагаемого уровня группи-
ровки поле
ДАТА_ОТГР
. Откроем список, щелкнув на параметре
по кварталам
(by
quarter), и выберем
по месяцам
(by month) (рис. 7.34). Для закрытия списка щелк-
ните на любом месте за его пределами.
Рис. 7.34.
Выбор для поля с датой группировки по месяцам
Для добавления в отчет итоговых сумм по каждому месяцу и общей суммы щелк-
ните на кнопке
Больше
(More), в области параметров
откройте список значений
параметра
с итогами:
СУММА_ОТГР
(with СУММА_ОТГР totaled). В поле спи-
ска
Итог по полю
(Total On) выберите поле
СУММА_ОТГР
, по которому нужно рассчи-
тать итоговые значения. Отметьте флажок
Показать общий итог
(Show Grand
Total) и определите место отображения итоговых значений
по каждому месяцу
вы-
бором флажка
Показать в примечании группы
(Show in group footer) (рис. 7.35).
Поскольку нам нужно подсчитать итоги и по количеству отгруженного, в рас-
крывающемся списке
Итог на
(Total On) выберем поле
КОЛ_ОТГР
и отметим те же
флажки.
З
АМЕЧАНИЕ
В данном отчете расчет итоговых значений для поля с количеством
отгруженного не
имеет смысла, т. к. происходит сложение количеств разных товаров. Однако после того