|
УФ. СКД. Недоступность отдельного отбора пользователю. Как? | ☑ | ||
---|---|---|---|---|
0
bolobol
07.11.18
✎
09:55
|
День добрый!
Есть на УФорме динамический список. Устанавливаю в нём отбор программно, необходимо, чтобы пользователь не мог изменить его, однако, в настройке списка этот отбор доступен. Подскажите, пожалуйста, как сделать недоступный пользователю отбор? Делаю доступный пользователю отбор так: КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); Отбор.ЛевоеЗначение= ... Отбор.ВидСравнения= ... Отбор.Использование= ... Отбор.ПравоеЗначение= ... |
|||
1
Fragster
гуру
07.11.18
✎
10:15
|
Надо манипулировать пользовательскими настройками с режимом отображения "недоступный" РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный (DataCompositionSettingsItemViewMode.Inaccessible)
РежимОтображенияЭлементаНастройкиКомпоновкиДанных (DataCompositionSettingsItemViewMode) Недоступный (Inaccessible) Описание: Этот элемент настройки не предназначен для изменения в составе пользовательской настройки. |
|||
2
bolobol
07.11.18
✎
10:15
|
Более того, этот код не работает вообще, если пользователь назначит свой отбор или изменит этот
|
|||
3
toypaul
гуру
07.11.18
✎
10:20
|
фиксированные настройки
|
|||
4
toypaul
гуру
07.11.18
✎
10:21
|
"Более того, этот код не работает вообще, если пользователь назначит свой отбор" отбор не может "не работать" если только его не отключат.
|
|||
5
Fragster
гуру
07.11.18
✎
10:22
|
(3) фиксированные норм пока пользователь не установит отбор на то же поле, что и в фиксированных настройках. Сколько уже копий на партнерском сломано, чтобы там была сумма отборов, но воз и ныне там.
|
|||
6
Fragster
гуру
07.11.18
✎
10:22
|
(4) может
|
|||
7
toypaul
гуру
07.11.18
✎
10:24
|
(5) мде? то есть добавленный пользователем отбор по тому же полю заменяет отбор из фиксированных настроек?
а отбор из пользовательских настроек не заменяет? |
|||
8
bolobol
07.11.18
✎
10:27
|
Т.е. - использовать:
КомпоновщикНастроек.ПОЛЬЗОВАТЕЛЬСКИЕнастройки... надо? |
|||
9
bolobol
07.11.18
✎
10:41
|
Хотя, хватило и просто добавления в код (0) строки:
Отбор.РежимОтображения= РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; Хоть СП говорит совсем о другом применении данного. Однако, у пользователя осталась возможность напридумать свой отбор, который бы запретить ему делать. Это возможно? |
|||
10
Fragster
гуру
07.11.18
✎
10:43
|
(9) ну прокликай галочки "включать в пользовательские настройки" в настройках ДС
|
|||
11
Fragster
гуру
07.11.18
✎
10:43
|
но пользователь должен мочь добавлять свои отборы, имхо
|
|||
12
bolobol
07.11.18
✎
10:50
|
Вот он их и добавил - не убрать теперь
|
|||
13
Fragster
гуру
07.11.18
✎
10:55
|
(12) пользователь добавил - пусть пользователь и убирает. тем более, что они у него прям на форму должны вывестись.
|
|||
14
bolobol
07.11.18
✎
11:01
|
Ага! Смешно))
|
|||
15
bolobol
07.11.18
✎
11:17
|
ПользовательскоеПоле= КомпоновщикНастроек.ПользовательскиеНастройки.Элементы[0].ДоступныеПоляОтбора.Элементы.Найти(ИмяПоля);
Если ПользовательскоеПоле <> Неопределено Тогда КомпоновщикНастроек.ПользовательскиеНастройки.Элементы[0].ДоступныеПоляОтбора.Элементы.Удалить(ПользовательскоеПоле); КонецЕсли; - не работает так... |
|||
16
Fragster
гуру
07.11.18
✎
11:32
|
(15) думай, болобол, думай!
|
|||
17
bolobol
07.11.18
✎
11:52
|
(16) Тут "думать" не поможет. Тут инструкция нужна.
|
|||
18
bolobol
07.11.18
✎
11:53
|
Угадать мюсли разрабов 1С - тот ещё квест
|
|||
19
bolobol
07.11.18
✎
12:56
|
Апну вопросец.
Как из доступных пользователю полей отбора удалить поле? |
|||
20
Ns33
07.11.18
✎
14:21
|
В при открытии формы проверяешь на пользователя и:
поле=СхемаКомпоновкиДанных.НаборыДанных.НаборДанных1.ПОля.НАйти(Новый ПолеКомпоновкиДанных("Контрагент")); поле.ОграничениеИспользования.Условие=Истина; поле.ОграничениеИспользованияРеквизитов.Условие=Истина; КомпоновщикНастроек.Инициализировать( Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); В отборе, даже если он был выведен, стоит красный крест и пользоваться им нельзя. |
|||
21
bolobol
07.11.18
✎
15:25
|
А у Динамического списка - как выйти на Поля?
|
|||
22
Ns33
07.11.18
✎
16:19
|
Мас=Новый Массив;
Мас.Добавить("Контрагент"); ДС.УстановитьОграниченияИспользованияВОтборе(Мас); |
|||
23
bolobol
07.11.18
✎
17:55
|
Супер! Спасибо!!!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |