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