Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

1С 8 3 УТП управление множественным отбором в списке документа

1С 8 3 УТП управление множественным отбором в списке документа
Я
   Nysha1210
 
07.12.18 - 13:55
Как построить Отбор по нескольким условиям обновременно, а потом его сбрасывать?
Просто перечислить все отборы по порядку?

Множественный отбор по Списку значений не работает. Почему? 
Если ЭлементыФормы.Флажок1.Значение=истина тогда 
СписокОтбора = новый СписокЗначений; 
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.ВРаботе,,,); 
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Оплачен,,,); 
СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Отправлен,,,); 
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Установить(СписокОтбора); 
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=истина; 
иначе 
ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=Ложь; 
КонецЕсли;

+ Как можно задать здесь отбор по проведенным документам?
 
 
   Гипервизор
 
1 - 07.12.18 - 14:45
СП читать не пробовали про метод Установить()?
"При выполнении данного метода вид сравнения устанавливается в значение Равно."
   Nysha1210
 
2 - 07.12.18 - 14:55
Ок, значит в методе Установить() можно перечислить значения через ИЛИ?
А как установить отбор по проведенным документам тогда?
Можно подсказку, плиз?
   Nysha1210
 
3 - 07.12.18 - 14:58
Через ИЛИ не работает ((( - ругается (((
   Гипервизор
 
4 - 07.12.18 - 15:04
(2) Нет, не значит. Вот как-то так:

ДокументСписок.Отбор.СтатусЗаказа.ВидСравнения = ВидСравнения.ВСписке;
ДокументСписок.Отбор.СтатусЗаказа.Значение = СписокОтбора;
ДокументСписок.Отбор.СтатусЗаказа.Использование = Истина;
   Nysha1210
 
5 - 07.12.18 - 15:12
РЕШЕНИЕ
    Если ЭлементыФормы.Флажок1.Значение=истина тогда
         СписокОтбора = новый СписокЗначений;
         СписокОтбора.Добавить(Перечисления.СтатусЗаказа.ВРаботе,,,);
         СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Оплачен,,,);
         СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Отправлен,,,);
         ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=истина;    
         ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.ВидСравнения = ВидСравнения.ВСписке;         
         ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Значение = СписокОтбора;
    иначе
        ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=Ложь; 
    КонецЕсли;
   Nysha1210
 
6 - 07.12.18 - 15:12
Спасибо)))
Как теперь добавить условие - только для проведенных документов?
   Гипервизор
 
7 - 07.12.18 - 15:18
Никак.
   Nysha1210
 
8 - 07.12.18 - 15:20
В 77 такая возможность была, не может быть что в 8 3 ее нет.
   Nysha1210
 
9 - 07.12.18 - 15:47
РЕШЕНИЕ, может кому то пригодится.
В модуле Списка документов добавляем процедуру

Процедура ПриОткрытии() 
        ЭлементыФормы.Список.НастройкаОтбора.Проведен.Доступность = Истина; 
КонецПроцедуры 

тогда в отборе появляется возможность отбора по статусу проведения документов

делаем двойной отбор:

Если ЭлементыФормы.Флажок1.Значение=истина тогда
         СписокОтбора = новый СписокЗначений;
         СписокОтбора.Добавить(Перечисления.СтатусЗаказа.ВРаботе,,,);
         СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Оплачен,,,);
         СписокОтбора.Добавить(Перечисления.СтатусЗаказа.Отправлен,,,);
         ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=истина;    
         ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.ВидСравнения = ВидСравнения.ВСписке;         
         ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Значение = СписокОтбора;
         ЭлементыФормы.Список.Значение.Отбор.Posted.Использование=Истина;
         ЭлементыФормы.Список.Значение.Отбор.Posted.ВидСравнения=ВидСравнения.Равно;
         ЭлементыФормы.Список.Значение.Отбор.Posted.Значение = ложь;
    иначе
         ЭлементыФормы.Список.Значение.Отбор.СтатусЗаказа.Использование=Ложь;
         ЭлементыФормы.Список.Значение.Отбор.Posted.Использование=ложь;        
    КонецЕсли;    
ВСе работает. Всем спасибо за помощь.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует