Имя: Пароль:
1C
1С v8
Добавить строку в ТабличноеПоле на форме
0 prostovityaz
 
12.04.16
11:50
Друзья! Хелп!
Не могу справиться с Табличном полем, созданном программно.

добавлю его так на форму в Панель1:
        ТаблПоле = ЭлементыФормы.Добавить(Тип("ТабличноеПоле"), "Сеанс"+сеанс, Истина, ЭлементыФормы.Панель1);
        ТаблПоле.ТолькоПросмотр = Ложь;

далее при двойном клике в одной ТЧ на форме, хочу перенести некоторые значения в созданное ТабличноеПоле.

Процедура ДокументыСправочникиРезультатИзЖРВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    
    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].добавитьстроку();
        ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].колонки.Добавить("Имя");
    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].колонки.Добавить("Ссылка");
    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].колонки.Добавить("Событие");
    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].колонки.Добавить("Запуск");
        
        //тут что-то наподобие такого:
    //НоваяСТрока.имя = ВыбраннаяСтрока.Имя;
    //НоваяСТрока.Ссылка = ВыбраннаяСтрока.Ссылка;
    //НоваяСТрока.Событие = ВыбраннаяСтрока.Событие;
    //НоваяСТрока.Запуск = ВыбраннаяСтрока.Запуск;

    ДокументыСправочникиРезультатИзЖР.Удалить(ВыбраннаяСтрока);
КонецПроцедуры

не получается ничего... в отладчике ТекущаяСтрока, Значение, Данные = Неопределено, не пойму ничего, куда копать.
1 zladenuw
 
12.04.16
11:55
2 prostovityaz
 
12.04.16
12:41
Разобрался
добавил к созданию Табличного Поля пару строк

        ТабПоле = ЭлементыФормы.Добавить(Тип("ТабличноеПоле"), "Сеанс"+сеанс, Истина, ЭлементыФормы.Панель1);
        ТабПоле.ТипЗначения = Новый ОписаниеТипов("ТаблицаЗначений");
        ТабПоле.ТолькоПросмотр = Ложь;
        ТабПоле.ИзменяетДанные = Истина;
        ТабПоле.Доступность = Истина;
        ТабПоле.ИзменятьСоставСтрок = Истина;
        ТабПоле.значение.колонки.Добавить("Имя");                                                                      
        ТабПоле.значение.колонки.Добавить("Ссылка");
        ТабПоле.значение.колонки.Добавить("Событие");
        ТабПоле.значение.колонки.Добавить("Запуск");
        ТабПоле.СоздатьКолонки();

и собсно заполнение:
Процедура ДокументыСправочникиРезультатИзЖРВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].добавитьстроку();
    
    Таблица= новый ТаблицаЗначений;
    Таблица.колонки.Добавить("Имя");                                                                      
    Таблица.колонки.Добавить("Ссылка");
    Таблица.колонки.Добавить("Событие");
    Таблица.колонки.Добавить("Запуск");

    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].ТекущаяСтрока.имя = ВыбраннаяСтрока.Имя;                                                            
    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].ТекущаяСтрока.Ссылка = ВыбраннаяСтрока.Ссылка;
    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].ТекущаяСтрока.Событие = ВыбраннаяСтрока.Событие;
    ЭлементыФормы[ЭлементыФормы.Панель1.ТекущаяСтраница.Имя].ТекущаяСтрока.Запуск = ВыбраннаяСтрока.Запуск;

    ДокументыСправочникиРезультатИзЖР.Удалить(ВыбраннаяСтрока);
КонецПроцедуры
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.