Имя: Пароль:
1C
1С v8
как сделать чтобы при попытке выбрать реквизит, происходил отбор по владельцу ?
0 Cerera
 
14.08.13
16:31
Есть элемент справочника. В нём используется реквизит типа СправочникСсылка.ЗначенияСвойствОбъектов

В свою очередь этот реквизит подчинен ПланыВидовХарактеристик.СвойстваОбъектов

Мне надо, чтоб при выборе элемента, происходил отбор по нужному свойству, чтоб пользователь мог выбрать только ограниченное свойство. Как это сделать? Пишу и получаю ошибку

Процедура ПроизводительНачалоВыбора(Элемент, СтандартнаяОбработка)
    // Вставить содержимое обработчика.
    Эл=ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("Производитель");
    Элемент.Значение.Владелец=Эл;
КонецПроцедуры

в чем моя ошибка?
1 Cerera
 
14.08.13
16:35
И вобще может быть кто посоветует? может мне под Производителей отдельный справочник завести? Раз уж в характеристику номенклатуры в качестве реквизита решили вставить это поле?
2 Naumov
 
14.08.13
16:35
отменяешь стандартную обработку ( = Ложь). Создаешь форму выбора, устанавливаешь в ней отборы, открываешь для выбора. В ОбработкаВыбора смотришь источник и заполняешь нужное.
3 КонецЕсли
 
14.08.13
16:54
+(2)
Так это выглядит для формы списка документов (отбор по контрагенту)
Стандартнаяобработка=Ложь;
ФормаСписка = Документы.МойДокумент.ПолучитьФормуСписка("ФормаСписка",ЭтаФорма,ЭтаФорма);
        
ФормаСписка.Отбор.Контрагент.ВидСравнения  = ВидСравнения.Равно;
ФормаСписка.Отбор.Контрагент.Значение      = КакойТоКонтрагент;
ФормаСписка.Отбор.Контрагент.Использование = Истина;
ФормаСписка.Открыть();