Вход | Регистрация
 

программно установить порядок колонок в табличной части документа на управляемой форме

программно установить порядок колонок в табличной части документа на управляемой форме
Я
   golem14
 
06.02.20 - 13:36
Добавляю программно колонку на форму в ТЧ, реквизит ТЧ уже добавлен в конфигураторе.    
    Элемент =  ЭтаФорма.Элементы.Добавить("ТоварыМакет", Тип("ПолеФормы"), ЭтаФорма.Элементы.Товары);
    Элемент.ПутьКДанным = "Объект.Товары.Макет";
Колонка добавляется в конец. Можно её сместить влево? Как-нибудь вроде такого:
    Этаформа.Элементы.Товары.Колонки.Сдвинуть(3, -1);
Но у "Элементы.Товары" нет такого свойства "Колонки". Что же делать?
   vicof
 
1 - 06.02.20 - 13:38
ЭтаФорма.Элементы.Вставить(
   golem14
 
2 - 06.02.20 - 14:22
Элемент =  ЭтаФорма.Элементы.Вставить("ТоварыМакет", Тип("ПолеФормы"), ЭтаФорма.Элементы.Товары, )

Что-то совсем не понял как использовать этот метод.
Что в четвертом параметре должно быть? Да и с третьим Родитель тоже сомневаюсь.
Подсказка говорит что четвертым параметром должен быть элемент. Какой непонятно.
В синтакс-помощнике нашёл только метод Вставить(<Индекс>) табличной части, а этот так и не могу найти к какой ветке относиться, там их дофига этих методов Вставить.
   golem14
 
3 - 10.02.20 - 08:21
Так им не получилось вставить программно колонку в середину табличной части документа

Читал книгу.
Разработка интерфейса прикладных решений на платформе "1С:Предприятие 8"
Глава 3,20
Добавление колонок в таблицу.

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

но она добавляется последней колонкой. Как её вставить в середину или в начало не описано.

Может есть способ определение места колонок в Элементы.ЭлементТаблицаЗначений?
   Радим1987
 
4 - 10.02.20 - 08:46
Используй метод переместить.  Элементы.Переместить(Элементы.ТвойНовыйЭлемент, Элементы.Список(Родитель), Элементы.ЭлементПередКоторНужноВставить)
   mmmarat
 
5 - 10.02.20 - 08:53
(2) родитель аналогично методу добавить, четвертым параметром элемент перед которым нужно вставить, например элементы.товары.количество
   golem14
 
6 - 10.02.20 - 09:36
Спасибо, получилось так 

 Элемент =  ЭтаФорма.Элементы.Вставить("ТоварыМакет", Тип("ПолеФормы"), ЭтаФорма.Элементы.Товары, ЭтаФорма.Элементы.Товары.ПодчиненныеЭлементы[2]);

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