Загрузил wigef

Линейный прямой порядок обхода в языке запросов 1С

реклама
13.02.2019
Линейный (прямой) порядок обхода
Линейный (прямой) порядок обхода
Линейный обход результата запроса – самый простой способ обхода выборки. При линейном обходе
выборка будет выдавать записи в той последовательности, в которой они располагаются в
результате запроса. В нашем примере (см. рис. 2.33) это будут записи с номерами 1, 2, 3, 4, 5 и так
далее до записи с номером 20.
Для получения линейной выборки из результата запроса необходимо вызвать метод Выбрать()
объекта РезультатЗапроса без параметров либо с параметром ОбходРезультатаЗапроса.Прямой
(листинг 2.21).
Листинг 2.21. Прямой порядок обхода выборки
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|
ПриходнаяНакладнаяСостав.Товар КАК Товар,
|
ПриходнаяНакладнаяСостав.Количество КАК Количество
|ИЗ
|
Документ.ПриходнаяНакладная.Состав КАК ПриходнаяНакладнаяСостав
|
|УПОРЯДОЧИТЬ ПО
|
Товар
|ИТОГИ
|
СУММА(Количество)
|ПО
|
Товар ИЕРАРХИЯ";
РезультатЗапроса = Запрос.Выполнить();
СпособВыборки = ОбходРезультатаЗапроса.Прямой;
ВыборкаЗапроса = РезультатЗапроса.Выбрать(СпособВыборки);
Сообщение = Новый СообщениеПользователю;
Пока ВыборкаЗапроса.Следующий() Цикл
Сообщение.Текст = "Товар: " + ВыборкаЗапроса.Товар.Наименование +
" Итого: " + ВыборкаЗапроса.Количество +
" Тип записи: " + ВыборкаЗапроса.ТипЗаписи() +
" Уровень: " + ВыборкаЗапроса.Уровень() +
" Группировка: " + ВыборкаЗапроса.Группировка();
Сообщение.Сообщить();
КонецЦикла;
Пример этой процедуры находится в демонстрационной конфигурации «Язык запросов»,
прилагающейся к книге, в обработке Работа с запросами.
В этом примере в окно сообщений формы обработки последовательно выдаются данные о
поступлении товаров с иерархическими итогами по каждому товару.
https://its.1c.ru/db/content/pubqlang/src/59.html?_=1549465893#_print
1/1
Скачать