Как загрузить таблицу значений в реквизит формы с типом таблица значений ?

1. azsw 14 19.08.13 11:14 Сейчас в теме
Выполняем разные запросы и грузим их таблицу значений
Проблема в том ,таблица загружаемая меняет структуру и
надо очистить таблицу в которую загружаем перед следущей
загрузкой.
&НаСервере
Процедура ЗагрузкаТЗвТП(ИмяТП,ТЗ)

МассивУдоляемыхРеквизитов = Новый Массив;
Для Каждого Колонка Из ПолучитьРеквизиты(ИмяТП) Цикл
Если Колонка.Имя="П" Тогда
Иначе
МассивУдоляемыхРеквизитов.Добавить(ИмяТП+"."+Колонка.Имя);
КонецЕсли;
КонецЦикла;
ИзменитьРеквизиты(,МассивУдоляемыхРеквизитов);




МассивДобавляемыхРеквизитов = Новый Массив;

Для Каждого Колонка Из ТЗ.Колонки Цикл
РеквизитФормы = Новый РеквизитФормы(Колонка.Имя, Колонка.ТипЗначения, ИмяТП, Колонка.Имя);
МассивДобавляемыхРеквизитов.Добавить(РеквизитФормы);
КонецЦикла;

// пакетное создание и удаление колонок в РЕКВИЗИТЕ ФОРМЫ "ДанныеТаблицы" (тип Таблица Значений)

ИзменитьРеквизиты(МассивДобавляемыхРеквизитов);

// создаем элементы

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


КонецПроцедуры
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. DoctorRoza 19.08.13 12:30 Сейчас в теме
(1) azsw, как вариант почему бы перед работой обработчиков создавать колонки ТаблицыЗначений заранее. Туманное описание вопроса у Вас получилось, поэтому не совсем понятно, что вы в итоге то хотите. Если будете пользоваться методом Загрузить(), то реквизит будет очищен. Если пробегать все строки из ТЗ, то тут ничего не будет очищаться, странно как то! Так что инициализируйте ТЗ заранее через
Таблица = Новый ТаблицаЗначений;
Таблица.Колонки.Добавить("Номер", Новый ОписаниеТипов("Число"));
Таблица.Колонки.Добавить("Дата", Новый ОписаниеТипов("Дата"));
Таблица.Колонки.Добавить("Контрагент", Новый ОписаниеТипов("СправочникСсылка.Контрагенты"));

Код приписать внизу модуля, после всех обработчиков
3. Ranetka 23 22.01.23 16:25 Сейчас в теме
удОляемых реквизитов АААААААААААААААААААА
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот