Источник: https://infostart.ru/public/203445/
ТЗ_рез = РеквизитФормыВЗначение("ТЗДокументы");
МассивРеквизитов = Новый Массив;
//Удалим ранее созданные колонки в ТЗДокументы
Для Каждого Колонка Из ТЗ_рез.Колонки Цикл
МассивРеквизитов.Добавить("ТЗДокументы." + Колонка.Имя);
КонецЦикла;
ИзменитьРеквизиты(,МассивРеквизитов);
//Удалим отображение таблицы на форме и создадим новую
ЭлементТаблица = Элементы.Найти("ТЗДокументы");
Если ЭлементТаблица <> Неопределено Тогда
Элементы.Удалить(ЭлементТаблица);
КонецЕсли;
ЭлементТаблица=Элементы.Добавить("ТЗДокументы",Тип("ТаблицаФормы"));
ЭлементТаблица.ПутьКДанным = "ТЗДокументы";
ЭлементТаблица.Отображение = ОтображениеТаблицы.Список;
ТЗ_рез = Данные;
//Создадим реквизиты ТЗ
МассивРеквизитов.Очистить();
Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл
МассивТипов = Новый Массив;
МассивТипов.Добавить(Колонка.ТипЗначения);
НоваяКолонка = Новый РеквизитФормы(Колонка.Имя, Новый ОписаниеТипов(МассивТипов), "ТЗДокументы");
МассивРеквизитов.Добавить(НоваяКолонка);
КонецЦикла;
ИзменитьРеквизиты(МассивРеквизитов);
ЗначениеВРеквизитФормы(ТЗ_рез, "ТЗДокументы");
//Создаем элементы на форме для отображения колонок
ЭлементТЗ = Элементы.ТЗДокументы;
Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл
НовыйЭлементФормы = Элементы.Добавить("ТЗДокументы"+Колонка.Имя, Тип("ПолеФормы"), ЭлементТЗ);
НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеВвода;
НовыйЭлементФормы.ПутьКДанным = "ТЗДокументы." + Колонка.Имя;
КонецЦикла;
Выгрузить динамический список в таблицу значений
СформироватьОписаниеКолонок (БСП)
Таблица значений из списка колонок
Функция копирования колонок в таблицу или дерево значений (конструктор таблиц и деревьев значений)
ДобавитьНаборыЗначенийДоступа (БСП)
Типизированная таблица значений