Е.Ю. ХрусталеваРазработка сложных отчетов в «1С:Предприятии 8». Система компоновки данных, 4-е стереотипное переиздание
Данная книга адресована программистам и разработчикам прикладных решений в системе «1С:Предприятие 8». Она позволяет самостоятельно изучить возможности системы компоновки данных — механизма, предназначенного для создания сложных аналитических отчетов в программах «1С:Предприятия 8». Для начинающих разработчиков в книге описывается устройство системы компоновки данных, приводятся простые примеры создания отчетов, снабженные большим количеством иллюстраций и комментариев. Значительная часть книги описывает выполнение практических примеров создания и настройки сложных отчетов. Эти примеры можно использовать для того, чтобы «попрактиковаться» и «набить руку» в создании и модификации отчетов, использующих систему компоновки данных. Для опытных разработчиков книга содержит подробное описание отдельных возможностей системы компоновки данных. Эту часть книги можно использовать в качестве справочного пособия или для более глубокого изучения возможностей механизма. Все примеры, рассматриваемые в книге, можно скачать с портала ИТС. Для создания примеров использована платформа «1С:Предприятия» версии 8.2.15.319. Новое издание заменяет в ассортименте «1С» книгу «Разработка сложных отчетов в 1С:Предприятии 8. Система компоновки данных». Издание 3, стереотипное" (артикул 4601546145536, ISBN 978–5–9677–3121–1). Содержательно книга не отличается от 3-го издания 2021 года, поэтому издание обозначено как «стереотипное», при этом ее материал актуален.
Выделим режим настроек первой, составной, группировки и на закладке Другие настройки установим значения параметров вывода Тип макета – Вертикально (Расположение полей в макетах группировок) и Расположение итогов – Нет (Расположение общих итогов). Тем самым мы зададим вывод реквизитов документа в виде вертикального списка без итогов (рис. 2.250).
Проблема в том, что у поля ВидНоменклатуры не указана роль реквизита измерения. Для решения этой проблемы нужно указать родительское поле в роли поля-реквизита. Так, в приведенном выше примере нужно у поля ВидНоменклатуры указать роль Измерение и указать в качестве родительского поле Номенклатура (рис. 2.233).
Для решения нашей задачи – вывода списка номенклатуры с остатками – мы выбрали вариант соединения двух таблиц в запросе, чтобы продемонстрировать эту возможность системы компоновки данных. Но эту же задачу можно решить с использованием двух связанных наборов данных – данных из справочника Номенклатура и регистра накопления ОстаткиНоменклатуры.Остатки.
Второй вариант лучше использовать в том случае, если получение данных одним запросом породит слишком сложный запрос, когда необходимо выводить в отчет данные с расчетом итогов, без учета дублирующихся записей, при выводе в результат данных из различных типов наборов данных (например, из запроса и таблицы значений).