В начало

Отчет с SQL-запросом

 

            Нижеприведенный код формирует отчет на основании общего макета, с использование табличного документа и с SQL-запросом к периодическому регистру сведений. В запросе использован параметр выбора и сортировка данных.

 

Листинг. Процедуры и функции

&НаСервере

Функция ОтчетСЗапросом ()

ТабДок = Новый ТабличныйДокумент ();

 

//Получение макета

Макет = ПолучитьОбщийМакет ("КурсУЕ");

 

//Получение части документа из макета

ОбластьЗаголовок = Макет.ПолучитьОбласть ("Заголовок");

ОбластьШапка = Макет.ПолучитьОбласть ("Шапка");

ОбластьСтрока = Макет.ПолучитьОбласть ("Строка");

 

ТабДок.Вывести (ОбластьЗаголовок);

ТабДок.Вывести (ОбластьШапка);

 

//===========================

//Запрос к регистру сведений

//===========================

Запрос = Новый Запрос  ();  //Создаем запрос

Запрос.УстановитьПараметр  ("Период", '20140415'); //Задаем параметр отбора

Запрос.Текст = "ВЫБРАТЬ

                                               |Курсы.Период, Курсы.Курс

                                               |ИЗ РегистрСведений.Курсы КАК Курсы

                                               |ГДЕ Курсы.Период >= &Период

                                               |УПОРЯДОЧИТЬ ПО Период УБЫВ";

РезультатЗапроса = Запрос.Выполнить  (); //Выполняем запрос

 

//============================

//Выборка результатов запроса

//============================

Выборка = РезультатЗапроса.Выбрать ();

            Пока Выборка.Следующий () Цикл

            ОбластьСтрока.Параметры.Дата = Выборка.Период;

            ОбластьСтрока.Параметры.Значение = Выборка.Курс;

            ТабДок.Вывести (ОбластьСтрока);           

            КонецЦикла;

 

Возврат ТабДок;

КонецФункции

 

&НаКлиенте

Процедура Кнопка (Команда)

            ОтчетСЗапросом ().Показать ();

КонецПроцедуры

 

 

 

Рис. 1. Результат вывода отчета

Рис. 1. Результат вывода отчета

 

ПРИМЕЧАНИЕ: отчет проверен на 1С: Предприятие 8.2.