Автор: Vofka 04.08.12, 10:02
Нужно предоставить кому-либо доступ к базе в режиме только-просмотр. Новый сотрудник на испытательном сроке, или же аудиторы-проверщики. Легкий способ решить эту проблему изложен ниже, с приложенной подсистемой.
Чтобы пользователь не мог не только редактировать документы, но и портить сознательно/несознательно наши справочники, нужно:
- создать пустую роль, не дающую доступ ни к какому элементу данных;
- создать три подписки на события перед записью: для всех Документов, Справочников, Регистров сведений;
- в обработчиках подписок анализировать доступность этой роли, и возвращать отказ, если роль доступна.
Поскольку роль ничего не разрешает, а, напротив, имеет запретительную природу, я назвал её "ЗапретРедактирования" (вместо того, чтобы именовать "Только просмотр"), но это дело вкуса. Для полноты картины еще можно создать подписки для констант, планов счетов, планов видов характеристик, но основное и самое критичное - документы, справочники и регистры сведений. При этом сам пользователь может иметь произвольный набор ролей в вашей конфигурации, тоесть можно создать кассира-только чтение, или экономиста-толькочтение, или кадровика без возможности изменять базу. Даже для полных прав будет работать, хотя специально не проверял.
Сама идея достаточно проста, и возможно, даже слишком для публикации на этом сайте. Однако, я сам некоторое время ходил другими путями - например, дата запрета редактирования, которая разрешает менять справочники, либо спецроль с указанием доступа к данным (её нужно постоянно актуализировать, и править типовые элементы конфигурации).
Этот путь считаю простым, а главное - разовым. После добавления документов/справочников/регистров, они всё так дже останутся недоступными для редактирования.
http://pro1c.org.ua/redirect.php?http://infostart.ru/public/145723/
Автор: logist 04.08.12, 10:55
По-моему все таки проще использовать только Роль.
Цитата(Vofka @ 04.08.12, 11:02)
либо спецроль с указанием доступа к данным (её нужно постоянно актуализировать, и править типовые элементы конфигурации).
Не понятно что автор имел ввиду под постоянной актуализацией - ведь используя подписки нужно все равно выполнять их актуализацию. Про править типовые элементы вообще не понятно, что там и где нужно править. А вот подводные камни при работе с таким решением найдутся, например в некоторых конфигурациях при работе пользователя осуществляется запись констант и регистров сведений, иначе просто не получится работать в базе.
Автор: Constantus 29.09.17, 16:13
А имеется ли возможность программно редактировать подписку на событие?
В частности изменять список документов и справочников?
Автор: logist 02.10.17, 19:21
Цитата(Constantus @ 29.09.17, 17:13)
имеется ли возможность программно редактировать подписку на событие?
Нет.