Имя: Пароль:
1C
1С v8
Как получить описание типа из переменной?
0 lanc2233
 
07.02.15
22:37
Функция Тест(а)
тз = Новый ТаблицаЗначений();
тз.Колонки.Добавить("ИмяКолонки",Новый ОписаниеТипов("Что сюда написать?"))
КонецФункции

Нужно в таблицу добавить типизированую колонку, с типом переменной.
Пробую разные варианты
Новый ОписаниеТипов(Тип(а))
Новый ОписаниеТипов(Строка(Тип(а)))
Новый ОписаниеТипов(ТипЗнч(а))

Все выдают ошибку. Не могу попасть на нормальное описание, типа "СправочникСсылка.Номенклатура".

как его описать?
1 H A D G E H O G s
 
07.02.15
22:41
тз.Колонки.Добавить("ИмяКолонки",Новый ОписаниеТипов( "СправочникСсылка.Номенклатура"));
2 lanc2233
 
07.02.15
22:43
Я не знаю что переменная "а" - это "СправочникСсылка.Номенклатура". Она может быть какого угодно типа.
3 H A D G E H O G s
 
07.02.15
22:44
Новый ОписаниеТипов(ТипЗнч(а))
4 lanc2233
 
07.02.15
22:48
Ошибка при вызове конструктора (ОписаниеТипов)
    тзРез.Колонки.Добавить("Ссылка",Новый ОписаниеТипов(ТипЗнч(Док)));
по причине:
Несоответствие типов (параметр номер '1')
5 alle68
 
07.02.15
22:50
(4) СП почитай, там решение твоей проблемы описано.
6 H A D G E H O G s
 
07.02.15
22:51
(4) Давай удаленно отладим...

Сообщить(ТипЗнч(Док));
Сообщить(Док);
7 ShoGUN
 
07.02.15
22:52
(3)(4) Там массив типов должен быть, бездари.
8 lanc2233
 
07.02.15
22:53
Проблема в том что он не так тип отображает
ТипЗнч(Док) = "Заказ покупателя"
9 ShoGUN
 
07.02.15
22:54
МассивТипов = Новый Массив;
МассивТипов.Добавить(ТипЗнч(Док))
тзРез.Колонки.Добавить("Ссылка",Новый ОписаниеТипов(МассивТипов));
10 lanc2233
 
07.02.15
22:55
Спасибо. Работает.
11 H A D G E H O G s
 
07.02.15
23:05
(7) Разогнать всех нахрен!
12 ДенисЧ
 
08.02.15
10:04
(7) Кто тебе сказал?
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.