Отборы в динамическом списке, на поле правой кнопкой мышки - Найти
1С:Бухгалтерия 3.0
1С:ERP Управление предприятием 2
1С:Управление нашей фирмой 3.0
1С:Розница 3.0
1С:Предприятие 8
1С 8.3
1.
user-z99999
78
15.06.26 15:14
Сейчас в теме
В динамическом списке, на поле правой кнопкой мышки - Найти.
И список фильтруется по этому полю, а само поле добавляется вверху.
Нужно выполнить это действие программно.
Например, можно сделать отбор за период так:
Как добавит любое другое поле в такой отбор (поле есть в Списке)?
Отборы отображаются в разделе Состояние просмотра, динамического списка.
Поиск ответа, пока не получается...
Вариант ниже не подходит. Хочется, чтобы как Период был отбор.
И список фильтруется по этому полю, а само поле добавляется вверху.
Нужно выполнить это действие программно.
Например, можно сделать отбор за период так:
Список.Период.Вариант = ВариантСтандартногоПериода.ПроизвольныйПериод;
ТекущаяДата = ТекущаяДата();
Список.Период.ДатаНачала = ДатаНачала;
Список.Период.ДатаОкончания = ДатаОкончания;
Список.Обновить();
Как добавит любое другое поле в такой отбор (поле есть в Списке)?
Отборы отображаются в разделе Состояние просмотра, динамического списка.
Поиск ответа, пока не получается...
НовыйЭлемент = Элементы.Список.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
НовыйЭлемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТС");
НовыйЭлемент.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
НовыйЭлемент.ПравоеЗначение = Параметры.ТС;
НовыйЭлемент.Использование = Истина;Вариант ниже не подходит. Хочется, чтобы как Период был отбор.
Список.Параметры.УстановитьЗначениеПараметра("ТС", Параметры.ТС); По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
2.
Avatarzorro
81
16.06.26 01:54
Сейчас в теме
программно можно установить только обычный отбор и будет это выглядить как отбор сделанный через - еще - настроить список - отбор
Сделать как пкм - найти, чтобы вверху была эта плашка программно невозможно.
Делать естесна через бсп.
либо можешь просто искать параметр. Если он есть то запоминать значение. Потом присваивать вид сравнения .ВСписке и пихать туда массив
Сделать как пкм - найти, чтобы вверху была эта плашка программно невозможно.
Делать естесна через бсп.
либо можешь просто искать параметр. Если он есть то запоминать значение. Потом присваивать вид сравнения .ВСписке и пихать туда массив
4.
Avatarzorro
81
16.06.26 10:10
Сейчас в теме
(3) тем что как минимум это удобнее и в одну строку. Глупо писать с нуля то что уже есть. Признак хорошего прогера - лень. Если ты не ленивый - ты плохой прогер. Плюс там есть всякие доп проверки на тип сравнения и тд
6.
nedomolkov.ivan
232
28.08.26 12:01
Сейчас в теме
(1) В (2) сказано, что программно так нельзя. Можно, и упирается это в один реквизит.
Плашка сверху - не отдельный механизм, а пользовательские настройки компоновки.
Элемент отбора попадает в них тогда, когда у него заполнен
ИдентификаторПользовательскойНастройки, а наверху показывается тогда, когда режим
отображения БыстрыйДоступ.
Проверял на 8.3.27:
Эл = Компоновщик.Настройки.Отбор.Элементы.Добавить(
Тип("ЭлементОтбораКомпоновкиДанных"));
Эл.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
Эл.ВидСравнения = ВидСравненияКомпоновкиДанных.Содержит;
Эл.ПравоеЗначение = "руб";
Эл.Использование = Истина;
Эл.ИдентификаторПользовательскойНастройки = "МойОтбор";
Эл.РежимОтображения =
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
У динамического списка на форме это Список.КомпоновщикНастроек.Настройки.Отбор.
Что именно я замерил, а не предположил. До установки идентификатора в
КомпоновщикНастроек.ПользовательскиеНастройки.Элементы ноль элементов, после
установки - один. И вторая тонкость: пользовательская копия приезжает с режимом
Авто, даже когда у базового элемента стоит БыстрыйДоступ. Поэтому дожимать надо
на самой копии:
У = Компоновщик.ПользовательскиеНастройки.Элементы[0];
У.РежимОтображения =
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
Это встаёт, проверял: до Авто, после Быстрый доступ.
Оговорка честности ради: я гонял компоновщик в коде, а не живую форму со списком,
поэтому за отрисовку самой плашки в вашей форме не расписываюсь, там ещё влияет
свойство таблицы формы про показ пользовательских настроек. Но механизм именно
такой, и БСП для него не нужна, тут (3) прав.
Плашка сверху - не отдельный механизм, а пользовательские настройки компоновки.
Элемент отбора попадает в них тогда, когда у него заполнен
ИдентификаторПользовательскойНастройки, а наверху показывается тогда, когда режим
отображения БыстрыйДоступ.
Проверял на 8.3.27:
Эл = Компоновщик.Настройки.Отбор.Элементы.Добавить(
Тип("ЭлементОтбораКомпоновкиДанных"));
Эл.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Наименование");
Эл.ВидСравнения = ВидСравненияКомпоновкиДанных.Содержит;
Эл.ПравоеЗначение = "руб";
Эл.Использование = Истина;
Эл.ИдентификаторПользовательскойНастройки = "МойОтбор";
Эл.РежимОтображения =
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
У динамического списка на форме это Список.КомпоновщикНастроек.Настройки.Отбор.
Что именно я замерил, а не предположил. До установки идентификатора в
КомпоновщикНастроек.ПользовательскиеНастройки.Элементы ноль элементов, после
установки - один. И вторая тонкость: пользовательская копия приезжает с режимом
Авто, даже когда у базового элемента стоит БыстрыйДоступ. Поэтому дожимать надо
на самой копии:
У = Компоновщик.ПользовательскиеНастройки.Элементы[0];
У.РежимОтображения =
РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
Это встаёт, проверял: до Авто, после Быстрый доступ.
Оговорка честности ради: я гонял компоновщик в коде, а не живую форму со списком,
поэтому за отрисовку самой плашки в вашей форме не расписываюсь, там ещё влияет
свойство таблицы формы про показ пользовательских настроек. Но механизм именно
такой, и БСП для него не нужна, тут (3) прав.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот