Не работает отбор
☑
0
IT_PROGRAMMIST
26.07.11
✎
10:16
Добрый день.Передо мной стояла такая задача: из управляемой формы открыть справочник Пользователи с определенным отбором(по физлицам,которые еть в определенном регистре)
Вот код:
СтандартнаяОбработка=ложь;
СписокЗначений=новый СписокЗначений;
Запрос=новый Запрос;
Запрос.Текст="ВЫБРАТЬ
| ТабельщикиПредприятияСрезПоследних.ФизическоеЛицо
|ИЗ
| РегистрСведений.ТабельщикиПредприятия.СрезПоследних(&Дата, ) КАК ТабельщикиПредприятияСрезПоследних";
Запрос.УстановитьПараметр("Дата",ТекущаяДата());
Выгрузка=Запрос.Выполнить().Выбрать();
Пока Выгрузка.Следующий() цикл
СписокЗначений.Добавить(Выгрузка.ФизическоеЛицо);
КонецЦикла;
ФормаВыбора = ПолучитьФорму("Справочник.Пользователи.ФормаВыбора",,ЭтаФорма);
ЭлементОтбора = ФормаВыбора.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = новый ПолеКомпоновкиДанных("Код");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение=СписокЗначений;
ВыбранноеЗначение=ФормаВыбора.ОткрытьМодально();
при открытие справочника все поля пустые.Хотя отбор есть(Все действия-Настроить список-отбор).Достаточно только подтвердить(нажать на кнопку ОК в окне отбора справочника) его и он срабатывает.
1
Wobland
26.07.11
✎
10:19
СписокОрганизаций.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку(0));
я вот так в список значений грузил
2
Wobland
26.07.11
✎
10:20
ЭлементыФормы.Организации.Значение.Отбор.Ссылка.Использование=Истина;
ЭлементыФормы.Организации.Значение.Отбор.Ссылка.ВидСравнения=ВидСравнения.ВСписке;
ЭлементыФормы.Организации.Значение.Отбор.Ссылка.Значение=СписокОрганизаций;
а так отбор делал. но с УФ не знаю, может, особенности есть
3
IT_PROGRAMMIST
26.07.11
✎
10:25
в УФ такое не прокатывает
4
Wobland
26.07.11
✎
10:26
а при чём тут компоновка данных? и как-то код пытаешься сравнить со ссылкой
5
IT_PROGRAMMIST
26.07.11
✎
10:30
Поле так называется.Ссылка это код
6
Wobland
26.07.11
✎
10:34
>Ссылка это код
давно?
7
IT_PROGRAMMIST
26.07.11
✎
10:39
то я по ходу на солнце перегрелся)).Все спасибо большое.
ЭлементОтбора.ЛевоеЗначение = новый ПолеКомпоновкиДанных("Ссылка");
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.