|
Как через обработку поменять права в конфигураторе какой-нибудь базы? | ☑ | ||
---|---|---|---|---|
0
Cerera
05.06.13
✎
08:59
|
Допустим у меня есть список документов и список галочек прав. Как мне используя эту информацию менять права в ролях? можно ли так как-нибудь програмно менять права в роли. допустим хочу всем поставить запрет на редактирование прав справочника "контрагенты"
|
|||
1
Галахад
гуру
05.06.13
✎
09:00
|
Фигу.
|
|||
2
Cerera
05.06.13
✎
09:01
|
(1)ну хоть как-нибудь? прямым доступом к SQL и структуре базы
|
|||
3
Галахад
гуру
05.06.13
✎
09:04
|
(2) Тем более фигу.
|
|||
4
Cerera
05.06.13
✎
09:08
|
(3)что я даже под админскими правами не смогу поменять ничего в правах?
|
|||
5
Cerera
05.06.13
✎
09:52
|
а что это никто не знает ?
|
|||
6
Шапокляк
05.06.13
✎
09:55
|
- Как можно вытащить себя из болота за волосы?
- Никак. - Даже если я очень сильный? - Даже если ты очень сильный. - а что это никто не знает? |
|||
7
ICWiner
05.06.13
✎
09:58
|
Добавить роль РедактированиеКонтрагентов
ПриЗаписи Если Не РольДоступна("РедактированиеКонтрагентов") Тогда Отказ = Истина; КонецЕсли; ну можно еще Если Не ЭтоНовый()И Не РольДоступна("РедактированиеКонтрагентов") Тогда |
|||
8
Cerera
05.06.13
✎
10:08
|
(7)ну а я вообще чтоб из режима 1с предприятия можно было загрузить любую роль и галочками поиграться чтоб в конфигураторе эти галочки появились. через ОЛЕ там или т.п.
|
|||
9
Godofsin
05.06.13
✎
10:12
|
(8) посмотри, как в бух 2.0 сделан справочник "Пользователи", а точнее закладку "Пользователи БД".
|
|||
10
Godofsin
05.06.13
✎
10:14
|
(1) (3) Да ну?
|
|||
11
Шапокляк
05.06.13
✎
10:15
|
(9) ТС хочет менять конфигурацию из предприятия. Ну вроде как зубы дергать через задний проход причем у себя же самого.
|
|||
12
Godofsin
05.06.13
✎
10:18
|
(11) Если я его правильно понял, он хочет замутить универсальную обработку, которая бы позволяла ему рулить правами пользователей на объекты конфигурации из режима предприятия.
|
|||
13
PR
05.06.13
✎
10:21
|
(2) Прямым доступом можно, что ж нельзя-то.
Прямым доступом все можно. |
|||
14
Cerera
05.06.13
✎
10:21
|
(12)да. именно так. но чтобы это был как аналог прав конфигуратора.
|
|||
15
Cerera
05.06.13
✎
10:21
|
(13)вопрос в том открыт ли формат БД для внесения таких изменений
|
|||
16
Шапокляк
05.06.13
✎
10:21
|
(12) в (0) "менять права в ролях" - была роль "менеджер продаж", надо там с галками поиграть.
|
|||
17
PR
05.06.13
✎
10:22
|
(15) Конечно. Это же MS SQL.
|
|||
18
Cerera
05.06.13
✎
10:24
|
(17)ну то что SQL это да. но сам формат 1с закрыт. мы не можем знать как менять содержимое таблицы где хранится информация о правах.
|
|||
19
Godofsin
05.06.13
✎
10:26
|
(16) А ну да, все, сообразил, что он хочет. Тогда действительно фиг
|
|||
20
PR
05.06.13
✎
10:27
|
(18) Ну, пользуйся Винхексом например.
Не думаю, что человека, решившего изобрести очередной велосипед, потому что все изобретенные велосипеды его не устраивают, это остановит. |
|||
21
Cerera
05.06.13
✎
10:31
|
Дано: Файл 1Cv8.1CD
задача: сделать так, чтобы при открытии базы в режиме 1с-конфигуратор, у каждой роли этой базы на справочник "контрагенты" была выставлена галочка "изменение" вот это сделать прямым доступом к файлу хотябы (20)а других альтернатив томучто мне надо ещё не изобрели. |
|||
22
PR
05.06.13
✎
10:36
|
(21) В левом углу ринга Cerera.
А в правом углу заслуженный боец Кааанфигуратоооооор! |
|||
23
PR
05.06.13
✎
10:36
|
+(22) Это к тому, что якобы пока еще ничего не придумали.
|
|||
24
Cerera
05.06.13
✎
10:59
|
(23)я бы тоже на вашем месте сидел угорал на форуме еслиб у меня была фирма в которую я запросто могу набрать проджект менеджеров за 130 и прогеров за 100 и обеспечить их работой )
|
|||
25
Godofsin
05.06.13
✎
11:03
|
(24) Завидуешь что ли? =)
|
|||
26
Cerera
05.06.13
✎
11:06
|
(25)нет. хочу на самом деле на такую вакансию но в МСК перебираться не готов. тут только что семью создал, тачку купил, квартиру новую достал и работа хорошая хоть и в Казани. но все равно хотелось бы у PR работать или в аналогичном месте.
|
|||
27
Godofsin
05.06.13
✎
11:07
|
(26) ноу комментс
|
|||
28
Идентификатор
05.06.13
✎
11:13
|
(22) :DDD зачет!)))))0
|
|||
29
Necessitudo
05.06.13
✎
12:29
|
(26) гыггыгы))Даже если подобное делать прямым запросом, то таки все равно нужна СУБД)
|
|||
30
andreymongol82
05.06.13
✎
12:38
|
(0) Вообще что-то подобное можно сделать, но для этого нужно очень все доработать.
Например, создать справочник, где будут хранится объекты (имена как конфигураторе), сделать регистр сведений, где эти объекты, пользователи, и различные права (чтение там, запись и т.д.). Нарисовать во всех ролях шаблоны ограничений. И вуаля! (Идея беззастенчиво подсмотрена) |
|||
31
orefkov
05.06.13
✎
12:57
|
Можно в конфигураторе автоматизировать таким скриптом для примера:
for(var k = 1, c = metadata.current.rootObject.childObjectsCount("Роли"); k < c; k++) { var mdObj = metadata.current.rootObject.childObject("Роли", k) var view = mdObj.editProperty("Права") var form = view.getInternalForm() var tree = form.getControl("treeTypes").extInterface var listCtr = form.getControl("listRights") tree.currentRow = findRow(findRow(tree.dataSource.root.firstChild, "Справочники"), "АдресныеСокращения") if(!listCtr.value.Get(2).Check) { var grid = listCtr.extInterface grid.currentRow = grid.dataSource.root.firstChild.next.next form.sendEvent(listCtr.id, 17, 1) Message("Установлено право Изменение для справочника АдресныеСокращения роли " + mdObj.name) } } Скрипт перебирает все роли в метаданных, открывает их права, позиционируется на нужный справочник и если право "Изменение" не установлено, позиционируется на праве и ставит галку. Понятно, что можно и для других прав допилить. Рабочую демку снегопата можно взять здесь: http://snegopat.ru/demo.php |
|||
32
orefkov
05.06.13
✎
12:58
|
+(31)
Не весь текст скрипта привел, там еще: function findRow(parentRow, text) { for(var r = parentRow.firstChild; r; r = r.next) { if(r.getCellAppearance(0).text == text) return r } return undefined } |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |