Имя: Пароль:
1C
1С v8
отбор в форме выбора документа по регистратору
,
0 Kurbash
 
04.09.13
12:16
Дорабатываю док Авансовый отчет, хочу чтобы в ТЧ прочее заполнялись данные по одному документу делаю запрос из регистра накопления:

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

Теперь формирую новую структуру отбора и пытаюсь отобрать с ее помощью только документы которые отобраны в запросе:

    РезультатПоБилетам=ЗапросПоБилетам.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
    
    ЗначениеОтбора = Новый Структура("Ссылка",РезультатПоБилетам);
    ПараметрыВыбора = Новый Структура("Отбор", ЗначениеОтбора);
    ОткрытьФормуМодально("Документ.ИТ_УчетБезналичныхКомандировочныхРасходов.ФормаСписка", ПараметрыВыбора);
    
    док=документы.ИТ_УчетБезналичныхКомандировочныхРасходов.ПолучитьФормуВыбора().ОткрытьМодально();


при открытии формы выходит весь список доков, т.е. отбор не работает, в чем ошибся?
1 IBTM
 
04.09.13
12:22
что в отладчике получается в РезультатПоБилетам?
2 Kurbash
 
04.09.13
12:27
результат запроса нормальный, проверял
3 hhhh
 
04.09.13
12:34
(2) но там же не значение отбора, а целый массив значений
4 Kurbash
 
04.09.13
12:42
почему?я же вытаскиваю только ссылку
5 Kurbash
 
04.09.13
12:43
мне кажется в структуре что то не так сделал
6 Kurbash
 
04.09.13
12:56
ау, люди
7 Kurbash
 
09.09.13
13:41
Ладно фиг с ним, с регистратором, если выбирать не ссылку на регистратор а тупо номер? как сделать отбор в форме выбора?
8 Kurbash
 
09.09.13
15:17
что никто так и не подскажет?
9 Ilch
 
09.09.13
15:43
Задай программно отбор на свою форму списка ИТ_УчетБезналичныхКомандировочныхРасходов
10 Ilch
 
09.09.13
15:45
ФормаВыбора         = Документы.ЗаказПокупателя.ПолучитьФормуВыбора(, ЭлементыФормы.СписокДокументов);
    
    Отбор                 = ФормаВыбора.Отбор.СтатусЗаказа1;
    Отбор.Использование = Истина;
    Отбор.Значение         = Перечисления.битСтатусЗаказаПокупателя.ПереданВНабор;
    
    Отбор = ФормаВыбора.Отбор.ДатаОтгрузки;
    Отбор.Использование = Истина;
    Отбор.Значение = ТекущаяДата();
    
    ФормаВыбора.ЗакрыватьПриВыборе = Ложь;
    ФормаВыбора.Открыть();
11 Ilch
 
09.09.13
15:46
Вот так, указываешь свои параметры и получаешь, то что надо
12 hhhh
 
09.09.13
16:01
(8) у вас РезультатПоБилетам - это целая колонка, а не значение. Поэтому там в отборе надо поставить ВидСравнения.ВСписке
13 Kurbash
 
09.09.13
17:31
(12)-точно, протупил, спс
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.