Имя: Пароль:
1C
 
установить тип значения элемента формы из встроенного языка
0 колодина
 
04.02.05
08:17
коллеги, может кто знает как установить тип значения элемента формы из встроенного языка?
на выражение
ЭлементыФормы.Элемент.ТипЗначения = Справочник.Контрагенты;
ругается, говорит, что нельзя записывать в этот реквизит.
заранее спасибо.
1 alexsy
 
04.02.05
08:23
ЭлементыФормы.Элемент = Справочник.Контрагенты.ПустаяСсылка();
помоему так. поправит меня кто нить? ;)
2 колодина
 
04.02.05
08:27
ну это может быть и сработает, если изменяешь тип значения при выборе именно данного элемента. а если надо изменить из обработки события другого элемента?
Поле объекта недоступно для записи (Контрагент)
ЭлементыФормы.Контрагент = Справочники.Контрагенты.ПустаяСсылка();
так что увы....
3 tsr
 
04.02.05
09:40
ТипК = Новый ОписаниеТипов("СправочникСсылка.Контрагенты");
ЭлементыФормы.Элемент.Значение = ТипК.ПривестиЗначение(Элемент);
4 Shaytan
 
04.02.05
10:08
Связан ли элемент формы с данными? Если нет ты можешь программно связать его с данными нужного типа (Свойство "Данные"). Если связан с реквизитом составного типа - а)можешь ограничить выбираемый тип, б) Можешь перехватывать стандартную процедуру выбора и открывать нужное окно выбора.
5 колодина
 
04.02.05
10:15
большое спасибо, все прекрасно.
6 колодина
 
04.02.05
10:16
(3) - просто и элегантно.
7 Rovan
 
гуру
04.02.05
12:31
У меня еще проще
ЭлементыФормы.КонкретныйЭлемент.ТипЗначения =
  Новый ОписаниеТипов( "СправочникСсылка." + НазваниеСправочника );
8 Shaytan
 
04.02.05
13:03
(7) Это в том случае если не связан с данными, в противном случае "ТипЗначения" - только чтение.