Имя: Пароль:
1C
1С v8
программный отбор в управляемой форме
0 ВикторП
 
17.02.12
13:08
Делаю программный отбор в управляемой форме для списка документов.
Все почти хорошо. Только когда хочу сделать отбор для реквизита в виде двух элементов отбора, что- то в виде - первый элемент отбора условие >= , а второй в виде <=,
код такой

           Новыйбольше=Отбор.Добавить(тип("ЭлементОтбораКомпоновкиДанных"));
           ИндексБольше=Отбор.Индекс(НовыйБольше);
       
       ПерПлан=Новый ПолеКомпоновкиДанных("ПериодПланирования");
       
       ОтбБольше=Отбор[ИндексБольше];
       ОтбБольше.ВидСравнения=ВидСравненияКомпоновкиДанных.БольшеИлиРавно;
       ОтбБольше.Использование=Истина;
       ОтбБольше.ЛевоеЗначение=ПерПлан;
       ОтбБольше.ПравоеЗначение=Значение;

Для второго элемента отбора  левое значение не заполняется вообще
1 ВикторП
 
17.02.12
13:09
в режиме предприятия оба отбора добавляются хорошо
2 Grusswelle
 
17.02.12
13:09
мб динамический список прорулит?
3 ВикторП
 
17.02.12
13:10
список динамический
4 ВикторП
 
17.02.12
13:12
из ситуации я пока вышел так - нужные мне значения загоняю в список значений- их на самом деле немного и ставлю условие в списке
5 ВикторП
 
17.02.12
16:02
.
6 ilpar
 
17.02.12
19:07
можно было и по другому
7 ilpar
 
17.02.12
19:08
в параметрах компоновки для поля к примеру Вес, делал ВесОт и ВесДо
потом устанавливал уже эти параметры у списка
8 ilpar
 
17.02.12
19:10
если поле не заполнено, снимал использование.
Там только логику надо внимательно просмореть
9 ВикторП
 
20.02.12
12:34
Сделал в итоге так
добавляю ГруппаЭлементовОтбораКомпоновкиДанных с типом И и список ее элементов нужные мне отборы- они добавляются и отрабатывают корректно
в (7) можно сделать аналогично- сделать группу элементов для веса и добавить два элемента в одной вес >= , в другой вес <=