Имя: Пароль:
1C
1С v8
Табличное поле загрузить в ячейку другого табличного поля
0 User123456
 
10.01.17
10:51
Доброго дня есть Табличное поле -"ГотоваяПродукция" с типом значиний - ТаблицаЗначений, есть второе табличное поле "Комплект" с типом значиний - ТаблицаЗначений . Хочу "Комплект"(который уже заполнил данными) запихать в ячейку строки "ГотоваяПродукция".

Делаю так - ЭлементыФормы.ГотоваяПродукция.ТекущаяСтрока.ТЗ=Комплект
, но при обновлении данных в "Комплект" , ЭлементыФормы.ГотоваяПродукция.ТекущаяСтрока.ТЗ возвращает пустое табполе.
1 Ёпрст
 
10.01.17
10:56
Надо пихать в источник данных, в саму таблицу значений. А не в элемент формы - табличное поле (это тупо окошко, через которое ты на данные источника смотришь)
2 User123456
 
10.01.17
11:02
Сори за тупость, но чегото не соображу как именно.
стр=ЭлементыФормы.ГотоваяПродукция.ТекущаяСтрока;
        стр.ТЗ=Комплект;
но тоже самое
3 Волшебник
 
модератор
10.01.17
11:07
Стр = ГотоваяПродукция[индекс]
4 User123456
 
10.01.17
11:17
Эх

Функция  СохранимТЗДляГотовойПрод()
    если ГотоваяПродукция.Количество()>0 тогда
        ИндексТекСтроки = ГотоваяПродукция.Индекс(ЭлементыФормы.ГотоваяПродукция.ТекущаяСтрока);
        стр=ГотоваяПродукция[ИндексТекСтроки];
        стр.ТЗ=Комплект;                
    конецесли;
КонецФункции


Процедура ГотоваяПродукцияПриАктивизацииСтроки(Элемент)
    ЗаполнимКомплектЗначениеямиСпецификации();
КонецПроцедуры

Функция ЗаполнимКомплектЗначениеямиСпецификации()
    попытка
        Комплект.Очистить();
        таб=Новый ТабличноеПоле;
        таб=ЭлементыФормы.ГотоваяПродукция.ТекущиеДанные.ТЗ;  // вот здесь приходит пустое таб поле
        если таб=Неопределено тогда
            ////
        иначе
            если таб.количество()>0  тогда
                Комплект=таб;
                ЭлементыФормы.Комплект.СоздатьКолонки();
            иначе
                ///    
            конецесли;
        конецесли;
    исключение
    конецпопытки;
КонецФункции


чего то вообще зарылся((( пните в нужную сторону пжт
5 User123456
 
10.01.17
11:18
СохранимТЗДляГотовойПрод() вызывается по кнопке.
6 Ёпрст
 
10.01.17
11:23
лучше так, хотя бы
стр.ТЗ=Комплект.Скопировать();

и это, тип какой у ТЗ твоей ?
7 User123456
 
10.01.17
11:24
Процедура ПриОткрытии()
    ГотоваяПродукция.Колонки.Добавить("ТЗ");
    ЭлементыФормы.ГотоваяПродукция.СоздатьКолонки();
КонецПроцедуры
8 User123456
 
10.01.17
11:25
шайтан машина))))))) стр.ТЗ=Комплект.Скопировать();  сработало. Спасибо огромное.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший