0
xintrea
22.01.14
✎
13:23
|
Имеем 1С 8.2., управляемые формы, тонкий клиент, самописная конфигурация.
Есть справочник ОбъектыСтроительства. Сделал для этого справочника форму выбора (просто стандартную). Она нужна для того, чтобы в списке выбора показать только те записи, которые доступны пользователю. Отбор доступных записей пытаюсь сделать через метод ПриСозданииНаСервере():
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Список.Отбор.Элементы.Очистить();
Запрос = Новый Запрос("ВЫБРАТЬ Ссылка
|ИЗ Справочник.ОбъектыСтроительства");
ВыборкаОбъектовСтроительства = Запрос.Выполнить().Выбрать();
// Перебор объектов строительства
Пока ВыборкаОбъектовСтроительства.Следующий() Цикл
ТекущийОбъектСтроительства=ВыборкаОбъектовСтроительства.Ссылка;
Сообщить("Объект строительства: "+ТекущийОбъектСтроительства.Наименование);
Если РаботаСПараметрамиНаСервере.ПолучитьДоступКОбъектамСтроительства(ТекущийОбъектСтроительства, "ПросмотрДокументов")=Истина Тогда
Сообщить("Просмотр разрешен");
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Код");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
ЭлементОтбора.ПравоеЗначение = ТекущийОбъектСтроительства.Код;
Иначе
Сообщить("Просмотр запрещен");
КонецЕсли;
КонецЦикла;
КонецПроцедуры
То есть, у формы ФормаВыбора есть автоматически сформированный реквизит Список (Тип - динамический список, основная таблица - Справочник.ОбъектыСтроительства). У него в дереве видно свойство Отбор. Я и пытаюсь настроить этот отбор.
В результате вижу, что элементы отбора для некоторых объектов добавляются, для других- нет. Но форма выбора по прежнему показывает весь список.
Почему? Что еще нужно сделать чтобы наложить отбор на список записей в справочнике при выборе?
|
|