Нестандартное разграничение прав пользователей
1с 7.7. Конфигурация простенькая, написана с нуля вручную. В ней есть документ Извещение. Можно ли каким-то образом разграничить права пользователей, чтобы у них был доступ только к тем документам Извещение, которые они вводили сами при входе в систему под своим паролем. Т.е. получается, что интерфейс для всех одинаковый, но чтобы не было возможности видеть документы, введенные другими пользователями.
Для этого определите в конфигурации справочник Пользователей, в котором будут записаны все пользователи системы. В документе определите реквизит (или общий реквизит) “Автор”, в который при записи документа записывайте текущего пользователя, в свойствах реквизита не забудьте поставить галочку “отбор”. При открытии журнала документов “Извещение” открывайте отбор по реквизиту “Автор”. Вот только доступ к общему журналу придется запретить, или также ввести отбор, но это уже на Ваше усмотрение. Как вариант, в процедуре ПриОткрытии() можно написать следующее:
Если Выбран() = 1 Тогда //Проверяем, что это не новый документ, а существующий Если Автор <> глПользователь Тогда СтатусВозврата(0); КонецЕсли; КонецЕсли;
Все... После этого, если автор и пользователь не совпадают, то документ не откроется. Имя (логин) пользователя можно получить системной функцией ИмяПользователя(). Ну, и кроме того, заводить справочник пользователей не обязательно, в самом простейшем случае достаточно хранить автора в реквизите типа строка. Это просто, если у документа есть реквизит Автор. в процедуре ПриОткрытии() добавить строки:
Процедура ПриОткрытии() Если Автор <> ИмяПользователя() Тогда СтатусВозврата(0); КонецПроцедуры
|