0
xintrea
26.10.12
✎
15:25
|
Здравствуйте!
Управляемое приложение, управляемые формы, платформа 8.2.
Есть у меня справочник "Проекты", а так же подчиненный ему справочник "Этапы". (Т.е. в каждом проекте есть несколько этапов).
Так же есть документ "Карточка", у которого имеется реквизит "Проект". Через этот реквизит указывается, какому проекту принадлежит карточка.
В форме списка документа "Карточка" у меня сверху добавлено поле выбора проекта. При изменении этого поля срабатывает код:
Отбор=Элементы.СписокКарточекДокументов.Родитель.Список.Отбор;
Отбор.Элементы.Очистить();
ЭлементОтбора = Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Проект.Код");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ПравоеЗначение = КодПроекта;
То есть, в списке документов видны только те документы, которые принадлежат выбранному проекту. Для простоты, назовем это "фильтрацией через код".
До этого момента все работает правильно.
. . .
Теперь мне нужно, чтобы пользователи могли зайти в стандартные настройки списка "Все действия" -> "Настоить список", и в закладке "Отбор" выбрать реквизит "Этап", "равно", и выбрать значение.
Но проблема в том, что когда выбирается значение, видны ВСЕ этапы, существующие в системе. А нужно, чтобы были видны этапы только ДЛЯ ТЕКУЩЕГО выбранного проекта. Проблема усложнаяется тем, что у разных проектов могут быть этапы с одинаковыми назавниями, и при выборе вообще непонятно, какой конкретно этап выбирается.
Вопрос. Как сделать так, чтобы в стандартном интерфейсе настройки списка можно было работать только с данными (и c зависимыми данными), которые принадлежат только "отфильтрованым через код" данным?
|
|