Поиск данных справочника по трем критериям

1. VKuser102815571 18.10.20 20:07 Сейчас в теме
Столкнулся с проблемой, вывести данные справочника по 1 критерию, проблем не возникает, использую код:
фиксНастройки = Новый НастройкиКомпоновкиДанных;
	эОтбор = фиксНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	эОтбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Предмет1");
	эОтбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ТекущаяСтрока = Элементы.Список.ТекущаяСтрока;
	эОтбор.ПравоеЗначение = реквизит1;

		
	
	эОтбор.Использование = Истина;
	
	эОтбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
	 
	ПараметрыФормы = Новый Структура;
	ПараметрыФормы.Вставить("ФиксированныеНастройки", фиксНастройки);
	ОткрытьФорму("Справочник.СГСПУ.Форма.ФормаСписка", ПараметрыФормы,Элементы.Список);
Показать

Но вот вывести сразу по 3м никак не выходит, пробовал сделать запрос но все безуспешно, хелп.
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. bayce 40 18.10.20 20:18 Сейчас в теме
ВидСравненияКомпоновкиДанных.Равно не равно а в списке попробуйте
3. user1479196 18.10.20 21:12 Сейчас в теме
(2) эОтбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Предмет1");
мне нужно каким то образом указать несколько полей для компоновки... я вот этого не особо понимаю
8. sam441 154 19.10.20 10:16 Сейчас в теме
(3)Если у вас несколько условий, то вам необходимо сделать группу(И, ИЛИ) и уже в нее добавлять элементы, см. пример
Группа = Реквизит1.КомпоновщикНастроек.ФиксированныеНастройки.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
Группа.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
Отбор = Группа.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Поле1");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.ПравоеЗначение = "";
Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; 
	
Отбор = Группа.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Поле2");
Отбор.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Отбор.ПравоеЗначение = "";
Отбор.Использование = Истина;
Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; 
Показать
alex-l19041; +1 Ответить
4. tango 487 18.10.20 23:27 Сейчас в теме
эОтбор1 = фиксНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных1")); 
эОтбор2 = фиксНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных2")); 
эОтбор3 = фиксНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных3")); 


Так пробовали?
FatPanzer; user1464234; +2 Ответить
5. FatPanzer 7 19.10.20 00:22 Сейчас в теме
6. dj_tol 97 19.10.20 03:01 Сейчас в теме
&НаСервере
Процедура ДобавитьОтборВДинамическийСписок(СписокОтбора,ВидСравнения,ЭлементОтбора,ПолеКомпоновкиДанных)
		НовЭлементОтбора = СписокОтбора.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
		НовЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ПолеКомпоновкиДанных); НовЭлементОтбора.ВидСравнения = ВидСравнения;
		НовЭлементОтбора.Использование = Истина;
		НовЭлементОтбора.ПравоеЗначение = ЭлементОтбора;  
КонецПроцедуры

&НаСервере
Процедура ФСОбновитьДинамическийСписокКПпоВыбраннойСделке(Сделка)
	ФССписокКПпоСделке.Отбор.Элементы.Очистить();//Очень важно!!!
	
	ДобавитьОтборВДинамическийСписок(ФССписокКПпоСделке,ВидСравненияКомпоновкиДанных.ВСписке,ВернутьСписок(Сделка),"Ссылка");
	
КонецПроцедуры
Показать

//ВернутьСписок(Сделка) - Ваш список
7. dj_tol 97 19.10.20 03:06 Сейчас в теме
ФССписокКПпоСделке - динамический список на форме (ваши таблица)
"Ссылка" - поле по которому ищем
Оставьте свое сообщение
Вопросы с вознаграждением