Имя: Пароль:
1C
 
Управляемая форма не заполняется табличная часть
0 Сергей Роспатнюк
 
14.12.18
10:37
Подскажите что я делаю не так ? хочу заполнить табличную чать упр. формы из 2х колонок, в отладчике значение Объект.ПолеБазы.Количество()  меняется после строки ЗначениеВРеквизитФормы(Объ,"Объект"); с 0 на 10 но на форме пусто ,код написан в модуле другой формы внешней обработки.

Объ = РеквизитФормыВЗначение("Объект");
    
Объ.ПолеБазы.Колонки.Добавить("Имя",Новый ОписаниеТипов("Строка"));
Объ.ПолеБазы.Колонки.Добавить("Путь",Новый ОписаниеТипов("Строка"));
    
    Индекс=0;
    
    Для Каждого Элем Из МИмен Цикл
        
                НоваяСтрока      = Объ.ПолеБазы.Вставить(Индекс);
        НоваяСтрока.Имя  = МИмен[Индекс];
        НоваяСтрока.Путь = МПути[Индекс];
        Индекс=Индекс+1;    
    
        КонецЦикла;
    
    Объект.ПолеБазы.Загрузить(Таблица);
    
    ЗначениеВРеквизитФормы(Объ,"Объект");
1 Сергей Роспатнюк
 
14.12.18
10:44
(0) // Объект.ПолеБазы.Загрузить(Таблица); - это закомментировано
2 Сергей Роспатнюк
 
14.12.18
10:47
0_0 ну же 11 человек давайте решим эту проблему а тапками потом покидаете.
3 JeHer
 
14.12.18
10:50
Обновить надо форму
4 JeHer
 
14.12.18
10:51
(3)+ Через обработку оповещения при закрытии второй формы.
5 Сергей Роспатнюк
 
14.12.18
14:07
спс но через обработку оповещения при закрытии второй формы не подходит, решил так перенес код в форму которая открывается в процедуру при открытии и все заработало.

    
    Объ = РеквизитФормыВЗначение("Объект");
    ТЗ = ДанныеФормыВЗначение(ЭтотОбъект.Объект.ПолеБазы,Тип("ТаблицаЗначений"));
    
    ИндексИ = 0;
    ИндексП = 1;

    Для Каждого Элем Из МИмен Цикл
                
        Стр                 = ТЗ.Добавить();
        Стр.Имя           = МИмен[ИндексИ];
        Стр.Путь          = МПути[ИндексП];
        
        ИндексИ          = ИндексИ+1;
        ИндексП          = ИндексП+1;
    КонецЦикла;
    
    ЗначениеВДанныеФормы(ТЗ, ЭтотОбъект.Объект.ПолеБазы);
6 RomanYS
 
14.12.18
14:11
(0) (5) а зачем в данном случае ДанныеФормыВЗначение, ЗначениеВДанныеФормы, РеквизитФормыВЗначение, ЗначениеВРеквизитФормы?
Почему просто не добавить в Объект.ПолеБазы?
7 Сергей Роспатнюк
 
17.12.18
09:54
(6) в том то и прикол что оно и так в объекте.

в итоге получилось так

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