kb-personal/src/content/docs/knowledge-base/Общие/Динамические списки/Обход всех строк динамического списка.md
2025-06-16 21:46:27 +05:00

41 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Обход всех строк динамического списка
slug: общие-динамические-списки/обход-всех-строк-динамического-списка
---
```bsl
&НаСервере
Функция ДанныеВсехСтрокДинамическогоСпискаПулНоменклатурыРазмещение()
//Получаем схема компановки данных (здесь хранится текст запроса)
Схема = Элементы.ПулНоменклатурыРазмещение.ПолучитьИсполняемуюСхемуКомпоновкиДанных();
//Получаем настройки пользователя (отборы, сортировки и т.п.)
Настройки = Элементы.ПулНоменклатурыРазмещение.ПолучитьИсполняемыеНастройкиКомпоновкиДанных();
//Выводим динамический список в таблицу значений
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных();
МакетКомпоновки = КомпоновщикМакета.Выполнить(Схема, Настройки, , ,Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
Результат = ПроцессорВывода.Вывести(ПроцессорКомпоновки); // Тут таблица значений со строками ДС
ДанныеСтрок = Новый Массив;
Для Каждого Строка Из Результат Цикл // Обходим ТЗ
ДанныеСтроки = ПараметрыЗаполненияСтрокиТабличнойЧастиРазмещение();
ЗаполнитьЗначенияСвойств(ДанныеСтроки, Строка);
ДанныеСтроки.Количество = Строка.Разместить;
ДанныеСтрок.Добавить(ДанныеСтроки);
КонецЦикла;
Возврат ДанныеСтрок;
КонецФункции
```