Имя: Пароль:
1C
 
УПП. Дата запрета редактирования. Исключение некоторых документов ...
0 Беглый Чебурашка
 
30.03.06
14:18
Задача.
Для определенных ролей нужно разрешить редактировать определенные документы, даже если они раньше даты ЗР.
Почитал форум, ИТС, посмотрел конфу - есть вопросы. Подскажите как реалтизовать наиболее эффективно.
Я так понимаю, что как вариант, достаточно в конфигураторе для роли/документа убрать ограничение RLS.
Другой вариант. Для каждой роли хранить список видов документов-исключений. Изменить запрос RLS, чтобы проверялось вхождение документа в список документов-исключений. Второй вариант представляется более гибким, т.к. позволяет настраивать списки в режиме предприятия.
Собственно вопрос - что хранить в подобном списке, чтобы затме можно было испеользовать для сравнения в запросе? Представление докумета? Тип?
1 ТелепатБот
 
гуру
30.03.06
14:18
2 France
 
30.03.06
14:27
В общем, делаем бронированный сейф с навороченной системой защиты... и оставляем мааааааленькую дверцу для директора...
3 Беглый Чебурашка
 
30.03.06
14:27
Плин, одни опечатки :)
И как лучше хранить такой список? В регистре сведений? В табличной части какого-нибудь справочника, например, Пользователи или Группы пользователей.
4 Беглый Чебурашка
 
30.03.06
14:29
(2) Неее.. для "консультанта 1с" и буха продвинутого :)
Подобное было сделано ещё в комплексной, но там всё проще, понятнее.
5 х86
 
30.03.06
14:59
зависит от твоих задач, если нужно быстро(оперативно) менят права, тогда список исключений, если сделал и забыл тогда редактируй RLS.
6 Neco
 
30.03.06
14:59
(3) В УПП сейчас ограничение по дате запрета редактирования реализовано через регистр сведений "ГраницыЗапретаИзмененияДанных". Структура регистра:
Измрения:
    Роль - Тип: Перечисление.НаборПравПользователей
    Организация - Тип: СправочникСсылка.Организации
Ресурс:
    ГраницаЗапретаИзменений - Тип: Дата

Как видим из структуры регистра механизм ограничения по дате может работать только  для определнных организаций.
Как решение вашей проблемы можно в данный регистр добавить еще одно измерение - "ВидДокумента", но тогда нужно корректировать все запросы в настройках ролей.
7 х86
 
30.03.06
15:01
(5) и в том и вдругом случае "нужно корректировать все запросы в настройках ролей"
8 Беглый Чебурашка
 
30.03.06
15:06
Вот меня и интересует, что хранить в качестве ВидДокумента? Представление докумета? Тип?
9 Konst1Cv8
 
30.03.06
15:42
Самый простой вариант:
10 Konst1Cv8
 
30.03.06
15:44
В момент сохранения определенного документа двигаем границу запрета изменения данных, а затем возвращаем ее в обычное состояние.
11 Konst1Cv8
 
30.03.06
15:46
Правда могут возникнуть проблемы с монопольным режимом - но это мелочи :)
12 Neco
 
30.03.06
16:09
(8) В базе данных нельзя сохранить данные типа "Тип", нужно сохранять имя объекта, можно воспользоватся объектом Метаданные:

Метаданные.Имя
13 Беглый Чебурашка
 
30.03.06
16:22
(11) Ну да, "оно" передвигается только в монопольном режиме вроде.
(12) Хм.. не знал про тип.
Да, только как потом в запросе сравнить "что-то" документа с этим именем?
Вроде условия:
НужныйДокумент.Что-то в &СписокДокументовИсключений
14 Neco
 
30.03.06
16:31
(13) Запрос ты пишел для определнного документа, в настройке ролей.
15 Беглый Чебурашка
 
30.03.06
16:36
(14) Это я понял. Так там и нужно проверить, входит ли этот документ в список исключений.
16 Neco
 
30.03.06
16:37
(15) Мммм... нет там тебе нужно проверить только на доступность по поределнным ролям, т.е. вообщем-то механизм описанный в (12) не нужен
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс