|
Как в СКД на 8.2 сделать не видимым параметр | ☑ | ||
---|---|---|---|---|
0
URAL
09.12.11
✎
10:35
|
сделал отчет в СКД и появилась необходимость на уровне прав сделать так чтобы некоторые пользователи могли видеть только данные по своему подразделению. В запросе набора данных прописал условие и при открытии формы отчета задаю параметр нужного подразделения. Но как мне сделать не видимым параметр подразделение когда открывают отчет не избранные )))
|
|||
1
URAL
09.12.11
✎
10:37
|
например руководителю нужно чтобы он мог видеть как по всем подразделениям так и выборочно, поэтому просто включить ограничение доступности не вариант, а как обратится программно при открытии к нужному параметру не могу сообразить
|
|||
2
URAL
09.12.11
✎
10:42
|
Как программно управлять ограничением доступности при открытии формы отчета?
|
|||
3
URAL
09.12.11
✎
10:49
|
Например можно установить параметр
Настройки = Отчет.КомпоновщикНастроек.Настройки; Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Подразделение", Отчет.Подразделение); или так ЗначениеПараметра = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Подразделение")); ЗначениеПараметра.Использование = Истина; ЗначениеПараметра.Значение = Отчет.Подразделение; А как сделать не видимым данное поле? |
|||
4
zippygrill
09.12.11
✎
10:52
|
можешь здесь посмотреть
|
|||
5
zippygrill
09.12.11
✎
10:52
|
КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы
|
|||
6
URAL
09.12.11
✎
10:54
|
(5) пробовал уже, и в цикле перебирал и обращался через индекс, но там нет управления видимостью или ограничение доступности
|
|||
7
zippygrill
09.12.11
✎
10:58
|
нда тоже сейчас смотрел и не видил ОграничениеДоступность
|
|||
8
URAL
09.12.11
✎
11:00
|
нужно обратится к полю, но при попытке получить нужное поле мне возвращает НЕОПРЕДЕЛЕНО
|
|||
9
darkvett
09.12.11
✎
11:02
|
отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[2].РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный
|
|||
10
URAL
09.12.11
✎
11:02
|
Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПоляПараметров.НайтиПоле(Новый ПолеКомпоновкиДанных("Подразделение"))
|
|||
11
URAL
09.12.11
✎
11:03
|
(9) ща пробую
|
|||
12
URAL
09.12.11
✎
11:24
|
(9) нет не помогло, я все равно могу менять подразделение
|
|||
13
darkvett
09.12.11
✎
11:29
|
Должно помочь. У меня работает.
&НаКлиенте Процедура ПриОткрытии(Отказ) УстановитьВидимостьПараметра(); КонецПроцедуры &НаСервере Процедура УстановитьВидимостьПараметра() Если ПараметрыСеанса.ТекущийПользователь.Наименование = "Наталья Васильевна" Тогда отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[2].РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; КонецЕсли; КонецПроцедуры Главное отладчиком пойми какой у тебя номер индекса. |
|||
14
URAL
09.12.11
✎
11:59
|
(13) и что не отображается само поле, мне нужно чтобы в параметрах поле выбора подразделения не отображалось
|
|||
15
milan
09.12.11
✎
12:03
|
(14) А ограничение доступности у параметра ?
|
|||
16
darkvett
09.12.11
✎
12:05
|
А смысл отображать поле если ни как его не изменить??
Если только с точки зрения информации для пользователя то активировать: В СКД Настройки --- ДругиеНастройки --- ВыводитьПараметры |
|||
17
milan
09.12.11
✎
12:08
|
Не путай параметр запроса и отбор. Можешь в параметр передать подразделение, а на форму положить отбор по отобранным подразделениям.
|
|||
18
URAL
09.12.11
✎
12:09
|
(16) а у меня позволяет изменить, и в отладчике я его нашел, программно я задам параметр на нужного пользователя, мне нужно чтобы он не клацал и не выбирал, поэтому нужно сделать данное поле не видимым
|
|||
19
URAL
09.12.11
✎
12:10
|
как обратится к самой СКД в отчете?
|
|||
20
URAL
09.12.11
✎
12:11
|
я так понимаю управление ограничением доступности там находится, но никак в ни в компанивщике настроек
|
|||
21
URAL
09.12.11
✎
12:12
|
(15, 17) мне нужно управлять видимостью поля параметра программно
|
|||
22
URAL
09.12.11
✎
12:13
|
(15,17) что такое отбор и параметр мне известно
|
|||
23
milan
09.12.11
✎
12:16
|
(22) отлично, при открытиии отчета 1 раз устанавливаешь параметр подразделение, если манагеру надо не по всем доступным он использует отбор.
|
|||
24
URAL
09.12.11
✎
12:20
|
(23) там у меня не только по подразделению, там порядка 4 параметров и мне нужно управлять видимостью поля параметра, было бы одно подразделение только я бы и не заморачивался, включил бы в отбор и решена задача
|
|||
25
URAL
09.12.11
✎
12:28
|
Вопрос остается открытым, как управлять видимостью поля параметра программно?
|
|||
26
darkvett
09.12.11
✎
12:39
|
Уточним. Тебе надо управлять доступностью поля выбора параметра или управлять видимостью параметра?
|
|||
27
URAL
09.12.11
✎
12:45
|
(26) видимостью параметра
|
|||
28
URAL
09.12.11
✎
12:46
|
(26) и как доступностью тоже интересно узнать
|
|||
29
darkvett
09.12.11
✎
12:48
|
(27) Но ведь если мы параметру установим режим отображения "Недоступный" то этот параметр внешне ни где не будет отображаться. Почему при данном режиме отображения ты его видишь не пойму.....
|
|||
30
URAL
09.12.11
✎
12:51
|
Сейчас попробую код с натальей васильевной )))
|
|||
31
URAL
09.12.11
✎
12:59
|
(29) не работает
|
|||
32
URAL
09.12.11
✎
13:00
|
РежимОтображенияЭлементаНастройкиКомпоновкиДанных (DataCompositionSettingsItemViewMode)
Недоступный (Inaccessible) Описание: Этот элемент настройки не предназначен для изменения в составе пользовательской настройки. |
|||
33
jump if zero
09.12.11
✎
13:01
|
СхемаКомпоновкиДанных.Параметры.Найти("Валюта").ОграничениеИспользования=Истина;
КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); КомпоновщикНастроек.ЗагрузитьНастройки(КомпоновщикНастроек.Настройки); |
|||
34
URAL
09.12.11
✎
15:05
|
Если при открытии использовать ДанныеФормыВЗначение то в ТонкомКлиенте Выдает ошибку, но при толстом все ок отрабатывает, а если использую на сервере то ничего не меняется
&НаСервере Процедура УправлениеВидимостьюПараметра(); СхемаКомпоновкиДанных = ДанныеФормыВЗначение(Отчет, Тип("ОтчетОбъект.РРПМ")).СхемаКомпоновкиДанных; СхемаКомпоновкиДанных.Параметры.Найти("Подразделение").ОграничениеИспользования = Истина; Отчет.КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(Отчет.КомпоновщикНастроек.Настройки); КонецПроцедуры; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |