Имя: Пароль:
1C
1С v8
Отобразить реквизиты в табличном поле(проблема с типом данных)
0 mailwood
 
26.01.12
10:55
Проблема в следующем. Создаю справочник, где хранятся типы значений. Для этого на форму вывел объект "табличноеполе" с типом "ТаблицаЗначений". Делаю в этой ТЗ 2 колонки. У первой тип "Строка". У второй тип "ОписаниеТипов". При записи сохраняю в табличную часть  объекта значения из ТЗ(тип у обоих реквизитов уже строка, т.к. тип "ОписаниеТипов" в ТЧ объекта не поддерживается). При открытии ранее созданного документа, первый реквизит("Строка") отображается. Второй не получается отобразить.
Пытаюсь отобразить так:
Для каждого стр из ТабличнаяЧасть1 Цикл
НоваяСтрока =    ТабЗначений.Добавить();
НоваяСтрока.Реквизит = стр.Реквизит;
// НоваяСтрока.ТипДанных =  стр.ТипДанных;
 (здесь слева тип "ОписаниеТипов" справа "Строка". Не получается отобразить)
КонецЦикла
1 mailwood
 
26.01.12
11:04
ап
2 Vakhrin
 
26.01.12
11:07
Может и поможет:
на форме ТЗ с типом колнки "ОписаниеТипов", в ТЧ колонка с типом "ХранилищеЗначения"
3 mailwood
 
26.01.12
11:53
(2) Спасибо, помогло. Сделал так:

Процедура ПередЗаписью(Отказ)
  Массив1 = Новый Массив;
  Пер= ТабличноеПоле1.Скопировать();
  Массив1.Добавить(Пер);
  Хранилище1 = Новый ХранилищеЗначения(Массив1,Новый СжатиеДанных(9));
  Хранилище = Хранилище1;
  //ТабличнаяЧасть1.Загрузить(ТабличноеПоле1);
КонецПроцедуры

И получаю :

Если хранилище.Получить()<>Неопределено тогда
зна = Хранилище.Получить();
ЭлементыФормы.ТабличноеПоле1.Значение = зна[0];
ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки();
Иначе
..
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший