Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Программно добавить колонки в таблицу значений на общей форме

Программно добавить колонки в таблицу значений на общей форме
Я
   ac13
 
18.04.19 - 17:26
есть общая форма, на форме (ТаблицаЗначений) "Товары". нужно программно в "Товары" добавить колонку "Единица" и вывести её на форму.
так не катит:
Товары.Колонки.Добавить("Единица", Новый ОписаниеТипов("СправочникСсылка.ЕдиницыИзмерения"), "Ед.");

и важно, чтобы в елементах на форме колонка "Единица" была после колонки "Номенклатура".

как это сделать?
 
 
   Euguln
 
1 - 18.04.19 - 17:35
УФ?
   lodger
 
2 - 18.04.19 - 17:40
чтобы "после колонки", то надо писать Вставить() вместо Добавить()
   lodger
 
3 - 18.04.19 - 17:43
"так не катит" - катит, просто на форме нет элемента для отображения новой колонки.
НовоеПоле = Элементы.Добавить("Единица",Тип("ПолеВводаФормы"),Элементы.Товары);
потом новому полю надо прописать свойства типа видимости, путькданным и т.д.
   lodger
 
4 - 18.04.19 - 17:43
(2) к (3)  тоже относится.
   ac13
 
5 - 18.04.19 - 17:54
НовыеЭлементы = Новый Массив;
НовыеЭлементы.Добавить(Новый РеквизитФормы("Единица", Новый ОписаниеТипов("СправочникСсылка.ЕдиницыИзмерения"), , "Единица"));

НовыйЭлемент = Элементы.Добавить("Единица", Тип("ПолеВводаФормы"), Элементы.Товары);
НовыйЭлемент.ПутьКДанным = "Единица";
НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
НовыйЭлемент.ТолькоПросмотр = Ложь;
    

Ошибка при вызове метода контекста (Добавить)
НовыйЭлемент = Элементы.Добавить("Единица", Тип("ПолеВводаФормы"), Элементы.Товары);
по причине:
Недопустимое значение параметров
   Euguln
 
6 - 18.04.19 - 17:56
НовыеЭлементы.Добавить(Новый РеквизитФормы("Единица", Новый ОписаниеТипов("СправочникСсылка.ЕдиницыИзмерения"), "Товары", "Единица"));
   Euguln
 
7 - 18.04.19 - 17:56
А где ИзменитьРеквизиты?
   ac13
 
8 - 18.04.19 - 18:02
(7) ИзменитьРеквизиты добавл
(6) че-то не помогло (
НовыеЭлементы = Новый Массив;
НовыеЭлементы.Добавить(Новый РеквизитФормы("Единица", Новый ОписаниеТипов("СправочникСсылка.ЕдиницыИзмерения"), "Товары", "Единица"));
ИзменитьРеквизиты(НовыеЭлементы);
    
НовыйЭлемент = Элементы.Добавить("Единица", Тип("ПолеВводаФормы"), Элементы.Товары);
НовыйЭлемент.ПутьКДанным = "Единица";
НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
НовыйЭлемент.ТолькоПросмотр = Ложь;
   hhhh
 
9 - 18.04.19 - 18:05
(8) наверно здесь не то

Тип("ПолеВводаФормы")

почему поле ввода?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.