Имя: Пароль:
1C
1С v8
ещё раз о связке ТабличнаяЧасть - ТаблицаЗначений...
0 warkan
 
09.04.14
12:01
Доброго времени суток.

Ээээммммм... Растолкуйте, пожалуйста.

Внешняя обработка. Форма. На ней табличная часть.
Свойства:
Имя: табНач_
Данные: табНач
ТипЗначения: ТаблицаЗначений

Какова технология программного создания колонок в таблице значений таким образом, чтобы в табличной части всё отображалось автоматически.
Искал, искал... и получается у меня только паралельно создавать колонки и там и там. А хочется работая только с таблицей значений, видеть результаты этой работы в табличной части.
Как организовать эту связку?

Спасибо.
1 vicof
 
09.04.14
12:05
На форме располагаются элементы, отображающие какие-то данные. Данными может быть реквизит формы, может быть реквизит обработки.
Создай колонки в табличной части обработки вручную, они автоматом покажутся в элементе формы, который связан с твоей табличной частью.
2 Cube
 
09.04.14
12:06
(0) У тебя ТЧ или ТЗ, ты уж определись...
3 Cube
 
09.04.14
12:07
а вообще, кури СП:

ТабличноеПоле.СоздатьКолонки (TableBox.CreateColumns)
ТабличноеПоле (TableBox)
СоздатьКолонки (CreateColumns)
Синтаксис:

СоздатьКолонки()
Описание:

Удаляет старые колонки и загружает новые колонки из источника данных.

Доступность:

Толстый клиент.
Пример:

ЭлементыФормы.ТабличноеПоле1.Значение = ТаблицаДанных;
ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки();
4 warkan
 
09.04.14
13:15
(1) это понятно, но мне нужно создавать коонки программно.
(2) и то и другое: ТЧ должна отображать содержимое ТЗ

А вот (3) похоже в тему. То есть при выполнении метода элемента формы "ТабличноеПоле" .СоздатьКолонки() старое содержимое табличного поля удаляется и заменяетс я новым - содержимым таблицы значений "ТаблицаДанных". Так?
5 warkan
 
09.04.14
13:17
Да, согласно хелпу всё так. Это то, что я искал. Большое всем спасибо. Особенно - Cube!
6 warkan
 
09.04.14
13:58
Народ, извините за оффтоп, так сказать, в догонку...

Условие
табНач.Колонки.Найти("D"+текКод).Имя = "D"+текКод
Использую для определения, что такая колонка в таблице есть.
А как правильно это записать в виде
текСпрНоменклатура <> Справочники.Номенклатура.ПустаяСсылка()?
То есть просто проверять, возвращает ли "табНач.Колонки.Найти("D"+текКод)" значение типа "Колонка таблицыЗначений"?

Спасибо.
7 warkan
 
09.04.14
14:58
up
8 salvator
 
09.04.14
15:05
... = Тип("КолонкаТаблицыЗначений")
9 skunk
 
09.04.14
15:05

если табНач.Колонки.Найти("D"+текКод) = неопределенно тогда
  сообщить("нет такой колонки")


зыЖ если я правильно понял чего требуется
10 warkan
 
09.04.14
15:34
(8) да.
(9) Во, я дееебиииил... :((( Ну эт же просто так! Это тоже подходит!

Спасибо, люди добрыя.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn