Имя: Пароль:
1C
1С v8
Как в параметр запроса передать несколько значений ?
,
0 dart909
 
08.09.15
13:05
Добрый день подскажите пожалуйста. Обычных формаы.Есть перечисления СтатусыСотрудника (Уволен,Принят,Больничный) Код;

Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)    
      //ПараметрДолжности
     ПараметрДолжность = Параметр.Должность;
     ПараметрСтатус = Параметр.Статус;
     Запрос = Новый Запрос;
     Запрос.Текст =
     "ВЫБРАТЬ
     |    ИнформацияПоСотрудникамСрезПоследних.Сотрудник
     |ИЗ
     |    РегистрСведений.ИнформацияПоСотрудникам.СрезПоследних КАК ИнформацияПоСотрудникамСрезПоследних
     |ГДЕ ИнформацияПоСотрудникамСрезПоследних.Статус = &Статус И
     | ИнформацияПоСотрудникамСрезПоследних.Должность = &Должность";
    
     Если ЗначениеЗаполнено(ПараметрСтатус) Тогда
         Запрос.УстановитьПараметр("Статус",Параметр.Статус);
     Иначе
        
     КонецЕсли;
     Запрос.УстановитьПараметр("Должность",Параметр.Должность);
    
     РезультатЗапроса = Запрос.Выполнить();
     ТЗО = РезультатЗапроса.Выгрузить();

    
     Результат = Запрос.Выполнить();
     ВыборкаДетальныеЗаписи = Результат.Выбрать();
        
     МойСписок = Новый СписокЗначений;
    
         Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
                 МойСписок.Добавить(ВыборкаДетальныеЗаписи.Сотрудник);
         КонецЦикла;
        
     МойОтбор = СправочникСписок.Отбор.Ссылка ;
     МойОтбор.ВидСравнения = ВидСравнения.ВСписке;
     МойОтбор.Значение = МойСписок;
     МойОтбор.Использование = Истина;
КонецПроцедуры


Вопрос такой, как в ветке Иначе в параметр Статус передать все значения из перечисления?
1 Ненавижу 1С
 
гуру
08.09.15
13:07
ГДЕ ИнформацияПоСотрудникамСрезПоследних.Статус В (&Статус)

и передавай список значений
2 butterbean
 
08.09.15
13:08
(1) а чо не массив?
3 Ненавижу 1С
 
гуру
08.09.15
13:08
(2) да пох
4 dart909
 
08.09.15
13:14
(3) В смысле через установить параметр?
5 butterbean
 
08.09.15
13:15
(0) сделай условие (&ЛюбойСтатус ИЛИ ИнформацияПоСотрудникамСрезПоследних.Статус = &Статус) и
Запрос.УстановитьПараметр("ЛюбойСтатус",не ЗначениеЗаполнено(ПараметрСтатус));
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.