Помогите с отбором в списке
☑
0
IoannVic
18.08.15
✎
12:09
Формы управляемые. Открываю форму выбора, устанавливаю там отбор. Мне нужно чтобы пользователь имел возможность этот отбор снять. Чего-то я туплю)))
Открывал так:
ЗначениеОтбора = Новый Структура("Ссылка", ПолучитьДиректораКонтрагента(Объект.Партнер));
ПараметрыВыбора = Новый Структура("Отбор", ЗначениеОтбора);
ОткрытьФорму("Справочник.ФизическиеЛица.ФормаВыбора", ПараметрыВыбора,ЭтаФорма);
И вот так:
//Форма = ПолучитьФорму("Справочник.ФизическиеЛица.ФормаВыбора");
//ЭлементОтбора = Форма.Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
//ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
//ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
//ЭлементОтбора.Использование = Истина;
//ЭлементОтбора.ПравоеЗначение = ПолучитьДиректораКонтрагента(Объект.Партнер);
//Форма.Открыть();
В обоих случаях в пользовательском режиме не вижу настройки(
1
IoannVic
18.08.15
✎
12:58
Мдаа, думал быстро ответ получу. Я понимаю, что копать нужно в сторону РежимаОтображенияКомпоновкиДанных и РежимаОтображенияЭлементаКомпоновкиДанных. Но вот куда именно??
2
kosts
18.08.15
✎
13:02
Положи на форму реквизит отборФизическоеЛицо.
И при изменении реквизита меняй отбор. Соответственно при очистке реквизита отключай отбор.
3
IoannVic
18.08.15
✎
13:08
(2) Это не совсем корректно, я бы хотел реализовать не прибегая к изменению формы Физ. лиц. То бишь компановщиком
4
IoannVic
18.08.15
✎
13:12
ЕЕее, я реализовал это))
Стучаться надо было не в отбор, а в Компановщик настроек.
Может кому пригодится код
Форма = ПолучитьФорму("Справочник.ФизическиеЛица.ФормаВыбора");
ЭлементОтбора = Форма.Список.КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Форма.Список.Отбор.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Ссылка");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение = ПолучитьДиректораКонтрагента(Объект.Партнер);
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ;
Форма.Открыть();
5
IoannVic
18.08.15
✎
13:21
+ к (4) Необходимо указать ИдентификаторПользовательскойНастройки
ЭлементОтбора.ИдентификаторПользовательскойНастройки = "ВыборДиректораПартнера";
Смутно понял что это, СП невнятное что-то ответил. Но без нее не работает
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший