в запросе, то выход из
Пример:
Процедура ПродВсего()
Перем Запрос, ТекстЗапроса, Таб;
ДатаКон = ДатаКонца;
Если ДатаКон >= ПолучитьДатуТА() Тогда
ДатаКон = Дата(0);
КонецЕсли;
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса = "//{{ЗАПРОС(ПродВсего)
|Период с ДатаНачала по ДатаКон;
|ТОВАР = Документ.РасхНакл.Товар;
|Сумма_Прод = Документ.РасхНакл.СуммаРуб;
|КОЛВО_Прод = Документ.РасхНакл.Количество;
|Группировка ТОВАР;
|Функция Продано = Сумма(КОЛВО_Прод);
|Функция СуммаПродано = Сумма(Сумма_Прод);
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
// Подготовка к заполнению
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("ТабВсего");
Таб.ВывестиСекцию("Отчет");
Пока Запрос.Группировка("Товар") = 1 Цикл
ПродСумма = Запрос.СуммаПродано;
Если Запрос.Товар.ЭтоГруппа() = 1 Тогда
Таб.ВывестиСекцию("Группа");
Иначе
Таб.ВывестиСекцию("Товар");
КонецЕсли;
КонецЦикла;
// Вывод заполненной формы
Таб.ТолькоПросмотр(1);
Таб.Опции(0, 0, 4, 0);
Таб.Показать("Продажа товаров ", "");
КонецПроцедуры
В режие исполнения у нас получится такой отчет:
Далее, допустим, мы хотим получить более подробный отчет по конкретному товару, так, чтобы указав на товар в отчете, и дважды нажав кнопку мыши, мы получали отчет по продажам именно этого товара с точностью до каждого клиента. Для этого откроем в Конфигураторе редактор таблицы нашего отчета и в свойствах ячейки (Свойства ячейки — Текст — поле: Значение), отображающей наименование товара, проставим значение ячейки. («Запрос.Товар»)
Далее, в программном модуле напишем процедуру формирования дополнительного отчета.
Продолжение примера:
//*********************************
// Процедура дополнительного отчета