Отчет "Остатки материалов"
Экранная форма диалога отчета выглядит следующим образом:
Шаблон печатной формы (в Конфигураторе):
Модуль отчета:
Процедура Сформировать()
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса = "
|Материал = Регистр.ОстаткиМатериалов.Материал;
|Склад = Регистр.ОстаткиМатериалов.Склад;
|Количество = Регистр.ОстаткиМатериалов.Количество;
|Функция КоличествоКонОст = КонОст(Количество);
|Группировка Материал;
|Группировка Склад;
|Условие (Материал в ВыбрМатериалГруппа);
|Условие (Склад в ВыбрСклад);
|";
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
...Возврат;
КонецЕсли;
Таб = СоздатьОбъект("Таблица");
Таб.ВывестиСекцию("Заголовок");
Пока Запрос.Группировка(1) = 1 Цикл
Если Запрос.Материал.ЭтоГруппа()=1 Тогда
... Таб.ВывестиСекцию("Группа");
Иначе
Таб.ВывестиСекцию("Материал");
Если Фл_НеВыводитьСклады = 0 Тогда
...Пока Запрос.Группировка(2) = 1 Цикл
......Таб.ВывестиСекцию("Склад");
...КонецЦикла;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Таб.Опции(0);
Таб.Показать("ОстаткиМатериалов", "");
КонецПроцедуры
Примеры работы отчета:
В следующем примере отключена детализация по складам: