СКД в отборе создать группу ИЛИ ?

Добрый день.

Подскажите, пожалуйста, как программно в СКД в отборе создать группу ИЛИ?

Ответ:

ГруппаОтбора 						= КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип(«ГруппаЭлементовОтбораКомпоновкиДанных»));
ГруппаОтбора.ТипГруппы 				= ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ГруппаОтбора.Использование 			= Истина;
 
ПервыйОтборГруппы 					= ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ПервыйОтборГруппы.Использование 	= Истина;
ПервыйОтборГруппы.ЛевоеЗначение 	= Новый ПолеКомпоновкиДанных("Поле1");
ПервыйОтборГруппы.ВидСравнения 		= ВидСравненияКомпоновкиДанных.Равно;
ПервыйОтборГруппы.ПравоеЗначение 	= ЗначениеОтбора1;
 
ВторойОтборГруппы 					= ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ВторойОтборГруппы.Использование 	= Истина;
ВторойОтборГруппы.ЛевоеЗначение 	= Новый ПолеКомпоновкиДанных("Поле2");
ВторойОтборГруппы.ВидСравнения 		= ВидСравненияКомпоновкиДанных.Равно;
ВторойОтборГруппы.ПравоеЗначение 	= ЗначениеОтбора2;
Подписаться
Уведомить о
guest
4 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
also
12 лет назад

Элементы = КомпоновщикНастроек.Настройки.Отбор.Элементы;
ГруппаОтбора = Элементы.Добавить(Тип(«ГруппаЭлементовОтбораКомпоновкиДанных»));
ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ГруппаОтбора.Использование = Истина;
ПервыйОтборГруппы = Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
ПервыйОтборГруппы.Родитель = ГруппаОтбора;
ПервыйОтборГруппы.Использование = Истина;
ПервыйОтборГруппы.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(«Поле1»);
ПервыйОтборГруппы.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ПервыйОтборГруппы.ПравоеЗначение = ЗначениеОтбора1;
ВторойОтборГруппы = Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
ПервыйОтборГруппы.Родитель = ГруппаОтбора;
ВторойОтборГруппы.Использование = Истина;
ВторойОтборГруппы.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(«Поле2»);
ВторойОтборГруппы.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ВторойОтборГруппы.ПравоеЗначение = ЗначениеОтбора2;

igormiro
igormiro
12 лет назад

Спасибо.

dpagon
dpagon
9 лет назад

Свойство родитель доступно только для чтения! Есть какие нибудь ещё варианты для создания отбора с признаком ИЛИ программно?

mpudy
mpudy
9 лет назад

Вдруг кому пригодится
Элементы = КомпоновщикНастроек.Настройки.Отбор.Элементы;
ГруппаОтбора = Элементы.Добавить(Тип(«ГруппаЭлементовОтбораКомпоновкиДанных»));
ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;
ГруппаОтбора.Использование = Истина;
ПервыйОтборГруппы = ГруппаОтбора.Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
//ПервыйОтборГруппы.Родитель = ГруппаОтбора;
ПервыйОтборГруппы.Использование = Истина;
ПервыйОтборГруппы.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(«Поле1»);
ПервыйОтборГруппы.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ПервыйОтборГруппы.ПравоеЗначение = ЗначениеОтбора1;
ВторойОтборГруппы = ГруппаОтбора.Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
//ПервыйОтборГруппы.Родитель = ГруппаОтбора;
ВторойОтборГруппы.Использование = Истина;
ВторойОтборГруппы.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(«Поле2»);
ВторойОтборГруппы.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ВторойОтборГруппы.ПравоеЗначение = ЗначениеОтбора2;