|   |   | 
| 
 | Таблица значений в отчете УФ | ☑ | ||
|---|---|---|---|---|
| 0
    
        zenon46 02.08.22✎ 16:35 | 
        Доброго дня!
 Имеется внешний отчет, у него есть реквизит "Таблица" - ТаблицаЗначений, выкинул таблицу на форме, ест-но она без колонок, в модуле форме НаСервере есть обработчик считывания внешнего Xbase файла, обработчик возвращает "ТаблицуЗначений" - так вот как эту "ТаблицуЗначений" загрузить в "Таблицу" на форме что бы она стала видна пользователю ? | |||
| 1
    
        vicof 02.08.22✎ 16:37 | 
        ЗначениеВРеквизитФормы?     | |||
| 2
    
        6awkup_true 02.08.22✎ 16:40 | 
        (1) не прокатит - колонок то у него нет. нужно программно создать колонки тч, элементы формы, загрузить значения     | |||
| 3
    
        zenon46 02.08.22✎ 16:41 | 
        (1) пробовал - ошибка     | |||
| 4
    
        6awkup_true 02.08.22✎ 16:45 | 
        как пример. создает таблицу по дням с значением булево 
 //Изменяет состав колонок табличной части МассивРеквизитов = Новый Массив; Для Счетчик= 1 По 10 Цикл НоваяКолонка = Новый РеквизитФормы("Д" + Счетчик, Новый ОписаниеТипов("Булево"), "ТабличнаяЧастьФормы"); НоваяКолонка.Заголовок = Счетчик; МассивРеквизитов.Добавить(НоваяКолонка); КонецЦикла; ИзменитьРеквизиты(МассивРеквизитов); ТЗ_рез = РеквизитФормыВЗначение("ТабличнаяЧастьФормы"); //Заполняешь тут таблицу по своим данным //Создает колонки на форме. ЭлементТЗ = Элементы.ТабличнаяЧастьПоДням; Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл НовыйЭлементФормы = Элементы.Добавить(""+Колонка.Имя, Тип("ПолеФормы"), ЭлементТЗ); НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеФлажка; НовыйЭлементФормы.ПутьКДанным = "ТабличнаяЧастьФормы." + Колонка.Имя; КонецЦикла; | |||
| 5
    
        6awkup_true 02.08.22✎ 16:46 | 
        МассивРеквизитов = Новый Массив;
 Для Счетчик= 1 По 10 Цикл НоваяКолонка = Новый РеквизитФормы("Д" + Счетчик, Новый ОписаниеТипов("Булево"), "ТабличнаяЧастьФормы"); НоваяКолонка.Заголовок = Счетчик; МассивРеквизитов.Добавить(НоваяКолонка); КонецЦикла; ИзменитьРеквизиты(МассивРеквизитов); ТЗ_рез = РеквизитФормыВЗначение("ТабличнаяЧастьФормы"); //Заполняешь тут таблицу по своим данным //Создает колонки на форме. ЭлементТЗ = Элементы.ТабличнаяЧастьФормы; Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл НовыйЭлементФормы = Элементы.Добавить(""+Колонка.Имя, Тип("ПолеФормы"), ЭлементТЗ); НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеФлажка; НовыйЭлементФормы.ПутьКДанным = "ТабличнаяЧастьФормы." + Колонка.Имя; КонецЦикла; | |||
| 6
    
        6awkup_true 02.08.22✎ 16:49 | 
        перед созданием колонок еще нужно запихать данные в таблицу
 ЗначениеВРеквизитФормы(ТЗ_рез, "ТабличнаяЧастьФормы"); потом создаешь колонки | |||
| 7
    
        zenon46 02.08.22✎ 17:11 | 
        Сделал в итоге вот так :
 Для Каждого Колонка ИЗ таблицаЗначений.Колонки Цикл Заг=СокрЛП(Колонка.Заголовок); Заг=?(Заг="",Колонка.Имя, Заг); Если не Элементы.Найти(Заг) = неопределено тогда продолжить конецесли; МассивДобавляемыхРеквизитов = Новый Массив; МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы(Заг, Колонка.ТипЗначения,"Таблица" ,Заг)); ИзменитьРеквизиты(МассивДобавляемыхРеквизитов); НоваяКолонка =Элементы.Добавить(Заг,Тип("ПолеФормы"), Элементы.Таблица); НоваяКолонка.Заголовок = Заг; НоваяКолонка.ПутьКДанным = "Таблица."+Заг; НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода; КонецЦикла; ЗначениеВРеквизитФормы(таблицаЗначений,"Таблица"); | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |