|
ЗУП 3.1. Поставляемые профили - не редактируются. Что делать? | ☑ | ||
---|---|---|---|---|
0
bolobol
31.10.18
✎
14:00
|
День добрый!
Есть, так назовём их - "поставляемые профили" в ЗУП-е, состав ролей в которых не редактируется. Это надо исправить. Подскажите, пожалуйста, как это можно сделать? Спасибо. |
|||
1
Натуральный Йог
31.10.18
✎
14:04
|
Нужно позвать программиста
|
|||
2
bolobol
31.10.18
✎
14:05
|
(1) Позови, будь другом, пусть подскажет чё путного)
|
|||
3
Натуральный Йог
31.10.18
✎
14:12
|
(2) Программисты не подсказывают, а открывают конфигуратор и программируют.
|
|||
4
Натуральный Йог
31.10.18
✎
14:13
|
В пользовательском режиме изменить поставляемые профили нельзя
|
|||
5
Eiffil123
31.10.18
✎
14:18
|
А зачем? Можно же скопировать их, отредактировать список ролей и измененные назначить пользователям.
|
|||
6
Фрэнки
31.10.18
✎
14:21
|
(5) но это же все равно должен делать 1С-ник :-)
|
|||
7
unregistered
31.10.18
✎
14:24
|
(0) Надо редактировать профили программно. В общем модуле УправлениеДоступомПереопределяемый есть экспортная процедура ПриЗаполненииПоставляемыхПрофилейГруппДоступа(ОписанияПрофилей, ПараметрыОбновления).
Вставляешь в неё вызов своей процедуры, где будет примерно такой код. Потом запускаешь процедуру обновления конфигурации - запуск с параметром ЗапуститьОбновлениеИнформационнойБазы или обработку обновления служебных данных из пакета разработчика от БСП той версии, какая в твоей ЗУПе (см. регистр сведений ВерсииПодсистем). Для каждого ОписаниеПрофиля Из ОписанияПрофилей Цикл // Описание для заполнения профиля "Главный бухгалтер". Если ОписаниеПрофиля.Наименование = "Главный бухгалтер" Тогда ОписаниеПрофиля.Роли.Добавить("ДобавлениеИзменениеДанныхБухгалтерииМоейКонторы"); ОписаниеПрофиля.Роли.Добавить("ДобавлениеИзменениеНастроекБухгалтерииМоейКонторы"); // Описание для заполнения профиля "Бухгалтер". ИначеЕсли ОписаниеПрофиля.Наименование = "Бухгалтер" Тогда ОписаниеПрофиля.Роли.Добавить("ДобавлениеИзменениеДанныхБухгалтерииМоейКонторы"); УдалитьРольИзОписанияПрофиля(ОписаниеПрофиля, "ДобавлениеИзменениеДанныхСотрудников"); КонецЕсли; КонецЦикла; Ну и еще одна процедурка. Процедура УдалитьРольИзОписанияПрофиля(ОписаниеПрофиля, Роль) ИндексРоли = ОписаниеПрофиля.Роли.Найти(Роль); Если ИндексРоли = Неопределено Тогда Возврат; КонецЕсли; ОписаниеПрофиля.Роли.Удалить(ИндексРоли); КонецПроцедуры // |
|||
8
unregistered
31.10.18
✎
14:30
|
(5) Да, да, да. А потом трахаться после установки каждого обновления от 1С из-за ошибок, что какие-то роли были добавлены или исключены из поставляемого профиля, а твоя копия поставляемого профиля об этом почему-то ничего не знает.
Придётся либо каждый раз контролировать все такие изменения (которые делаются программно), либо всё равно вписываться в типовые алгоритмы БСП (в модуль УправлениеДоступомПереопределяемый), чтобы дублировать изменения поставляемых профилей и твои скопированные. А зачем так усложнять?... |
|||
9
unregistered
31.10.18
✎
14:33
|
+ к (7) Естественно все подобные доработки можно запилить в расширении с вызовом &После. Если неохота включать возможность изменения объекта конфигурации поставщика.
|
|||
10
bolobol
31.10.18
✎
14:35
|
(7) Спасибо! Ознакомлюсь детально. Один лишь вопрос остался - когда я исправлю "поставляемый профиль" - там, при обновлении, далее код обновляет всех юзеров с этим профилем?
|
|||
11
unregistered
31.10.18
✎
14:43
|
(10) > далее код обновляет всех юзеров с этим профилем?
За это как раз и отвечает обновление служебных данных из пакета инструментов разработчика БСП (обработка ОбновлениеВспомогательныхДанных.epf из папки ExtFiles\Инструменты разработчика , размещенной в папке с шаблоном конфигурации БСП после установки). Ну или можно один раз запустить конфу с параметром "ЗапуститьОбновлениеИнформационнойБазы" (при обновлении автоматически обновляются все вспомогательные данные). |
|||
12
unregistered
31.10.18
✎
14:49
|
||||
13
bolobol
31.10.18
✎
15:02
|
Вответькак! Спасибо-спасибо!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |