Может у кого есть пример?
В инете нашел несколько вариантов, но запутался в них, не настолько силен в 1се, что бы сразу понять, а самый подходящий пример платный.
---
по-моему вполне понятный пример, весь код написан в статье
https://infostart.ru/public/296433/
---
для УФ
```1c
    МассивДобавляемыхРеквизитов = Новый Массив;
    МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ИмяРеквизитаТЗ", Новый ОписаниеТипов("ТаблицаЗначений")));
    МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("Организация", Новый ОписаниеТипов("СправочникСсылка.Организации"),"ИмяРеквизитаТЗ" ,"Организация"));
    //... тут сколько надо еще колонок
    ИзменитьРеквизиты(МассивДобавляемыхРеквизитов);

    ТаблицаФормы = Элементы.Добавить("ИмяЭлементаТЗ", Тип("ТаблицаФормы"), Элементы.СтраницаОсновное);
    ТаблицаФормы.Заголовок = "Тут заголовок";
    ТаблицаФормы.ПутьКДанным = "ИмяРеквизитаТЗ";

    НоваяКолонка = Элементы.Добавить("ИмяЭлементаТЗОрганизация", Тип("ПолеФормы"), Элементы.ИмяЭлементаТЗ);
    НоваяКолонка.Заголовок = "Оганизация";
    НоваяКолонка.ПутьКДанным = "ИмяРеквизитаТЗ.Организация";
    НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода;

    //... + дальше колонки
```

(2) Самой ТЗ - да не может быть.
---
учись, открывай для себя удивительный мир 1с, скоро ты узнаешь что формы могут быть управляемыми и обычными. Можно конечно догадаться, что программное создание подразумевает управляемую форму. Только на управляемом клиенте не может быть таблицы значений.
---
Форма управляемая, у меня ТЧ объекта строки состоящие из Показатель, Колонки, Значение, Это все я хочу развернуть ТЗ в реквизите формы, это вроде можно и на УФ, по крайней мере делал уже с фиксированной ТЗ. Вот у меня у ТЗ первая колонка Показатель, а вот все остальные разворачиаются, то есть к ТЗ нужно добавлять и удалять колонки при смене реквизита формы и все это выводить на форму..
Силенок пример понять пока не хватает, ИмяРеквизитаТЗ - это имя колонки ТЗ?
ИзменитьРреквизиты - это что,, в одном из примеров встречалось, но там еще было и массив удаляемых реквизитов, потом как он поймет что нужно именно у одной таблицы значений менять колонки?
насчет колонок - на форме ничего не надо добавлять, как он расположение поймет где надо?
---
по-моему вполне понятный пример, весь код написан в статье
https://infostart.ru/public/296433/
---
с таким уровнем знаний надо книжки читать, да курсы проходить...
---
То что понял, реквизит ТЗ на форме не создается в конфигураторе, а создается программно, ладно, немного сложнее но попробую, Элементы формы создаются без указания куда создавать, было бы неплохо на страницу какую нибудь, еще - я так полагаю можно и только для чтения для некоторых колонок назначить, только вот как запретить удалять и добавлять строки, это добавить обработчики событий с отменой?
---
о, отмена удаления уже описана
---
Элементы.ИмяСтраницы.Добавить Так можно разместить в нужное место формы, или нужно группу а не страницу создавать?
---
лучше группу, в методе есть параметр указывающий перед какой группой добавить
---
Нужно четко понять, что есть реквизит формы, а что элемент управления и как они связаны. Программно добавить на форму можно и то и другое. Элемент без связи с реквизитом бесполезен.
Если получилось создать реквизит - определитесь в каком месте формы нужно разместить связанный с реквизитом элемент управления.
вот рабочий пример создания таблицы по списку ревизитов и размещение ее на странице

СписокРеквизитов = "Колонка1
|Колонка2
|Колонка3
|Колонка4
|Колонка5";

```1c
    Процедура СоздатьТабличнуюЧастьТМДляПросмотра( Форма, ЭлементРодитель, СписокРеквизитов = ", ИмяТабличнойЧастиТМ = " ) Экспорт

    Элементы = Форма.Элементы;

    СтраницаТМ = Элементы.Добавить( "СтраницаТарныеМеста", Тип("ГруппаФормы"), ЭлементРодитель );
    СтраницаТМ.Вид = ВидГруппыФормы.Страница;
    СтраницаТМ.Заголовок = "Тарные места";

    ТаблицаТМ = Элементы.Добавить("ТарныеМеста", Тип("ТаблицаФормы"), Элементы.СтраницаТарныеМеста);
    ТаблицаТМ.ПутьКДанным = ?( ИмяТабличнойЧастиТМ = ", "Объект.ТарныеМеста", "Объект." + ИмяТабличнойЧастиТМ );

    ТаблицаТМ.ТолькоПросмотр = Не РольДоступна("АдминистраторСистемы");

    Для Индекс=1 по СтрЧислоСтрок( СписокРеквизитов ) Цикл
    ИмяРеквизита = СтрПолучитьСтроку( СписокРеквизитов, Индекс );

    Колонка = Элементы.Добавить("ТарныеМеста" + ИмяРеквизита, Тип("ПолеФормы"), ТаблицаТМ);
    Колонка.Заголовок = ИмяРеквизита ;
    Колонка.Вид = ВидПоляФормы.ПолеВвода;
    Колонка.ПутьКДанным = ?( ИмяТабличнойЧастиТМ = ", "Объект.ТарныеМеста.", "Объект." + ИмяТабличнойЧастиТМ + "." ) + ИмяРеквизита;

    КонецЦикла;

    КонецПроцедуры
```
---
Где? Элементы.Добавить используется дважды, у метода есть параметр - родитель, вы про это?
Если так то в первом случае надо Элементы.Добавить("ТЗН", Тип("ТаблицаФормы"),Элементы.ИмяГруппы)
---
получилось, спасибо
---
Столкнулся с такой проблемой, при изменения поля пересчитываются значения табличной части, при первом изменении все срабатывает, при повторном пишет что не может добавить реквизит формы, хотя я его предварительно удаляю.
Код удаления
```1c
    Элементы.Удалить(ЭтаФорма.Элементы.ТаблицаПоказателей.ТЗН);
```

Код добавления
```1c
    ТаблицаПолейВыбора = Элементы.Добавить("ТЗН", Тип("ТаблицаФормы"),Элементы.ТаблицаПоказателей);
```
---
Аналогичная проблема. Не смотря на удаление при повторном добавлении как-то находит и выпадает в ошибку "Не уникальное имя реквизита".
Хотя если после удаления сделать вручную поиск элемента, то его не находит на форме.
---
Та же ошибка "Не уникальное имя реквизита" при повторном программном добавлении реквизитов в ТЧ.
Открываю обработку, добавляю реквизиты, удаляю только-что добавленные реквизиты, пытаюсь добавить повторно - ошибка: "Не уникальное имя реквизита".
После удаления проверяю отладчиком - нет таких реквизитов, все удаляется. Ошибка остается.