Имя: Пароль:
1C
1С v8
v8: Установка типа
0 iceman2112
 
07.08.12
13:54
Если у реквизита справочника составной тип данных. Как устанавливать его тип?

Если ВидОперации = Перечисления.ВидыОперацийУстановкиЦен_МХ.ЦеныОрганизации Тогда
       ЭлементыФормы.ТипЦен.ТипЗначения =   Новый ОписаниеТипов("СправочникСсылка.ТипыЦенНоменклатуры");
   Иначе
       ЭлементыФормы.ТипЦен.ТипЗначения = Справочники.ТипыЦенНоменклатурыКонтрагентов.ПустаяСсылка();
   КонецЕсли;

Выдаёт ошибку:  Поле объекта недоступно для записи (ТипЗначения)
1 Homer
 
07.08.12
13:57
ПривестиЗначение
2 iceman2112
 
07.08.12
14:01
Если ВидОперации = Перечисления.ВидыОперацийУстановкиЦен_МХ.ЦеныОрганизации Тогда
       НовыйТип = Новый ОписаниеТипов("СправочникСсылка.ТипыЦенНоменклатуры");
       НовыйТип.ПривестиЗначение(ЭлементыФормы.ТипЦен.Значение);  
   Иначе
       НовыйТип = Новый ОписаниеТипов("СправочникСсылка.ТипыЦенНоменклатурыКонтрагентов");
       НовыйТип.ПривестиЗначение(ЭлементыФормы.ТипЦен.Значение);  
   КонецЕсли;


Не помогает. Все равно я должен выбирать тип.
3 Homer
 
07.08.12
14:03
Тип = Новый ОписаниеТипов("СправочникСсылка.Склады");
Заказчик = Тип.ПривестиЗначение(Заказчик);
4 aleks-id
 
07.08.12
14:03
продам СП. дорого.


ПривестиЗначение (AdjustValue)
Синтаксис:

ПривестиЗначение(<Значение>)
Параметры:

<Значение> (необязательный)

Тип: Произвольный.
Значение, которое будет приводиться.
Возвращаемое значение:

Тип: Произвольный.
Если значение передано, то выполняется проверка на соответствие значения описанию типа. Если значение соответствует, то метод возвращает переданное значение. Если значение не соответствует, то оно приводится к типу, доступному в описании типа.
Если значение не передано, то выдается значение по умолчанию для данного описания типа.
Описание:

Формирует значение на основании описания типа и переданного значения.

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

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Пример:

// В форме расположено табличное поле Товары, в котором для ячейки
// колонки Номенклатура определено событие НачалоВыбора, процедура
// обработчик которого приведена в примере
Процедура ТоварыНоменклатураНачалоВыбора(Элемент,СтандартнаяОбработка)
   ТипСтр = "СправочникСсылка.Номенклатура";
   Элемент.ОграничениеТипа = Новый ОписаниеТипов(ТипСтр);
   Значение = Элемент.Значение
   Элемент.Значение = Элемент.ОграничениеТипа.ПривестиЗначение(Значение);
   Элемент.ВыбиратьТип = Ложь;
КонецПроцедуры
5 iceman2112
 
07.08.12
14:05
за сколько?
6 iceman2112
 
07.08.12
14:06
(3) Спасибо
Ошибка? Это не ошибка, это системная функция.