Имя: Пароль:
1C
 
Отбор в списке справочника по списку значений
,
0 ac13
 
27.09.17
16:03
СтандартнаяОбработка = Ложь;
ФормаВыбора = Справочники.Контрагенты.ПолучитьФормуВыбора(, Элемент);
ФормаВыбора.РежимВыбора = Истина;
СЗ = Новый СписокЗначений;
СЗ.Добавить(Справочники.Контрагенты.НайтиПоКоду("001"));
СЗ.Добавить(Справочники.Контрагенты.НайтиПоКоду("002"));
ФормаВыбора.Отбор.Код.Использование = Истина;
ФормаВыбора.Отбор.Код.Значение = СЗ;
ФормаВыбора.Отбор.Код.ВидСравнения = ВидСравнения.ВСписке;
ФормаВыбора.ЭлементыФормы.СправочникСписок.ИерархическийПросмотр = Ложь;
ФормаВыбора.Открыть();


При открытии формы выбора в настройках отбора установлен отбор по Ссылке - В списке, значение при этом пустое.
Простейший пример, что не так?
1 Beduin
 
27.09.17
16:05
(0) Ты по объектам отбираешь
2 xaozai
 
27.09.17
16:07
СЗ.Добавить("001");
3 ac13
 
27.09.17
16:07
(1) ой, нет. в коде так на самом деле:

    
СтандартнаяОбработка = Ложь;
ФормаВыбора = Справочники.Контрагенты.ПолучитьФормуВыбора(, Элемент);
ФормаВыбора.РежимВыбора = Истина;
СЗ = Новый СписокЗначений;
СЗ.Добавить(Справочники.Контрагенты.НайтиПоКоду("001"));
СЗ.Добавить(Справочники.Контрагенты.НайтиПоКоду("002"));
ФормаВыбора.Отбор.Ссылка.Использование = Истина;
ФормаВыбора.Отбор.Ссылка.Значение = СЗ;
ФормаВыбора.Отбор.Ссылка.ВидСравнения = ВидСравнения.ВСписке;
ФормаВыбора.ЭлементыФормы.СправочникСписок.ИерархическийПросмотр = Ложь;
ФормаВыбора.Открыть();
4 trooba
 
27.09.17
16:07
+1 (1) + и еще отборы все нужно сбрасывать
5 ac13
 
27.09.17
16:08
мне нужно отобрать именно по ссылке
6 trooba
 
27.09.17
16:08
(3) Справочники.Контрагенты.НайтиПоКоду("001").Ссылка
7 Beduin
 
27.09.17
16:09
Ты проверял Справочники.Контрагенты.НайтиПоКоду("001") точно находит?
8 xaozai
 
27.09.17
16:10
(6) НайтиПоКоду возвращает ссылку.
Когда не находит по коду, возвращает пустую ссылку.
9 trooba
 
27.09.17
16:12
(8) Еще неопределно... но там, если код не задан... ступил
10 ac13
 
27.09.17
16:13
СЗ.Добавить(Справочники.Контрагенты.НайтиПоКоду("001").Ссылка);

так тоже делал.
нахождение справочника по коду находит.
бред какой-то...
11 xaozai
 
27.09.17
16:22
А так, сначала вид сравнения, потом значение?
ФормаВыбора.СправочникСписок.Отбор.Ссылка.ВидСравнения = ВидСравнения.ВСписке;//СправочникСписок - реквизит формы
ФормаВыбора.СправочникСписок.Отбор.Ссылка.Значение = СЗ;
12 ac13
 
27.09.17
16:23
(11) отлично, спасибо!
после выбора типа сравнения значение получает соответствующий тип))