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