helpf.pro
Регистрация
 +2 
Распечатать

1С 8.3 : Динамический список ~ отбор в динамическом списке программно

Для установки отбора в динамическом списке используется свойство Отбор.

Добавление нового элемента отбора осуществляется следующим образом:

Код 1C v 8.2 УП
 ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));   

Для того чтобы новый отбор начал работать необходимо установить у элемента отбора свойства ЛевоеЗначение, ВидСравнения и ПравоеЗначение, а также установить свойство Использование в Истина.

Код 1C v 8.2 УП
 ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Поле1");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение = Значение1;

Кроме простых условий в отборе возможно создание условий по нескольким полям. При чём как по условию "И", так и по условиям "Или" и "Не". Для данной операции используется специальный тип данных ГруппаЭлементовОтбораКомпоновкиДанных.

Код 1C v 8.2 УП
 ГруппаОтбора = Список.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИЛИ;

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

ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.Родитель = ГруппаОтбора;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Поле2");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение = Значение2;
Разместил:   Версии: | 8.2 УП | 8.3 |  Дата:   Прочитано: 93986
 +2 
Распечатать
Возможно, вас также заинтересует
Google maps : вывод точек на карту и режим панорамы 9
В отличие от яндекс карт в GMaps можно использовать панорамы - за что им большой плюс! Надеюсь в яндексе прочитают этот пост и тоже когда-нибудь это сделают! Для клиента нужно было сделать вывод объектов на карту С возможностью просмотра панора
Как в УТ 11.3, в справочник номенклатуры добавить остатки на складах и актуальные цены 12
Попросил клиент добавить в справочник номенклатуры остатки и цены на текущий момент. Нужно!? Делаем: 1. Открываем форму списка номенклатуры и в свойства СписокНоменклатуры - Настройка списка Корректируем запрос добавляя выборку по остаткам скла
Как выбрать запросом записи регистра сведений и удалить их? 0
В регистре сведений штрих кодов появились ошибочные записи, которые надо было быстро удалить... можно конечно и ручками выбирать и жать Delete, но это не наш метод! Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Штрихкоды.Штрихкод, | Штрихкод
Как изменять записи регистра накопления? 9
Основной шаблон такой: Набор = РегистрыНакопления.ВашРегистр.СоздатьНаборЗаписей(); Набор.Отбор. НазваниеОтбора .Установить( ЗначениеОтбора ); Набор.Прочитать(); Для Каждого ТекДвижение Из Набор Цикл //Делаете с записями регистра то - что вам
Как открыть форму списка документов с отбором? 2
Данный код позволяет открыть список документов с установленным отбором, также можно открыть список элементов справочника с нужным отбором Форма = ОткрытьФорму("Документ.РасходнаяНакладная.Форма.ФормаСписка"); //Открываем форму ОтборВладелец =Форма
Посмотреть все результаты поиска похожих
Комментарии
VILenin
16.08.2023 04:44Комментарий: 3
VILenin

благодарочка за комменты!!!

okwell5
29.05.2023 03:33Комментарий: 2
okwell5

В версии 8.3.22.1923 в строке 

ГруппаОтбора=Список.Отбор.Элементы.Добавить[/pre]

Отсутствует свойство Элементы. А так не работает:

ГруппаОтбора=Список.Отбор.Организация.Добавить[/pre]

В произвольной форме устанавливаю Список как основной реквизит, но невозможно установить произвольный запрос списка. В результате не понятно, как делать отбор.

ad82117
06.10.2021 18:51Комментарий: 1
ad82117
Код 1C v 8.2 УП
 ГруппаОтбора=Список.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных"));
ГруппаОтбора.Использование=Истина;
ГруппаОтбора.ТипГруппы=ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИЛИ;
ЭлементОтбора=ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.Использование=Истина;
ЭлементОтбора.ЛевоеЗначение=Новый ПолеКомпоновкиДанных("Поле1");
ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение=Значение1;
ЭлементОтбора=ГруппаОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.Использование=Истина;
ЭлементОтбора.ЛевоеЗначение=Новый ПолеКомпоновкиДанных("Поле2");
ЭлементОтбора.ВидСравнения=ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение=Значение2;
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.