Имя: Пароль:
1C
1С v8
Запрет изменений условий отбора в форме выбора на УФ
0 mzelensky
 
13.05.14
09:27
Доброго всем. Делаю так:

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

Все открывается, все отбирается. Но вопрос - как запретить пользователям изменять отбор по данному элементу?

П.С. - это управляемые формы (для обычных все понятно)
1 mzelensky
 
13.05.14
09:53
НУ апп

Кстати, сейчас открыл отбор на форме и почему-то данный программный отбор там не отображается. Хотя он применился. Почему?
2 mikecool
 
13.05.14
10:04
(1) странный вопрос, ты его применил
3 mzelensky
 
13.05.14
10:18
(2) Да, я его применил, НО:

1 - если открыть форму отборов (в пользовательском режиме), то ЭТОТ мой отбор там НЕ отображается (хотя он применился)
2 - как сделать так, чтобы пользователь НЕ МОГУ самостоятельно устанавливать/снимать определенные отборы

?
4 mzelensky
 
13.05.14
10:21
(3) Для аналогии - в обычных формах я могу сделать так:

ФормаВыбора.ЭлементыФормы.СправочникСписок.НастройкаОтбора.Ссылка.доступность = Ложь;

и таким образом пользователь уже не может управлять отбором по указанному полю (в данном случае ссылка), но может управлять остальными отборами.

Как тоже самое сделать на УФ ?
5 mikecool
 
13.05.14
10:24
видимо в УФ недоступные отборы просто не отображаются
6 mzelensky
 
13.05.14
10:28
(5) Хорошо, как его сделать доступным (ну например)
7 mzelensky
 
13.05.14
11:04
По поводу видимости установленного отбора нашел. ЗА это отвечает свойство:

    ЭлементОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;