Запрет сохранения/проведения/отмены проведения документов по пользователям
Администрирование - Роли и права
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
ТОЛЬКО ДЛЯ СУЩЕСТВУЮЩИХ ДОКУМЕНТОВ В БАЗЕ. Новые документы пользователь может создавать, и сохранять/проводить/отменять проведение.
Запрет можно применить к любому типу документа существующего в конфигурации.
Есть три типа запрета:
- Запрет сохранения не проведенных документов (проводить/отменять проведение можно)
- Запрет проведения/отмены проведения документов
- Запрет сохранять/проводить/отменять проведение.
После установки в разделе НСИ и Администрирование -> Сервис появляется пункт "Настройки запрета редактирования документов". По нажатию открывается форма настроек запретов. Выбираем пользователя, и по нужным нам типам документов проставляем тип запрета.
Нужно учесть что данные запреты действуют только для уже существующих документов в базе. Создаваемых пользователем это не касается.
Но собственно это ограничение легко убрать.
В расширении в общем модуле "Проведение документов"
Удалите проверку на новый документ.
Если Выборка.Следующий() Тогда
ВидЗапрета = Выборка.ВидЗапрета;
Если ВидЗапрета = Перечисления.lzmr_ВидыЗапретовРедактирования.ПроведенныеИСохраненныеДокументы Тогда
Если НЕ(Документ.ДополнительныеСвойства.ПроведениеДокументов.СвойстваДокумента.ЭтоНовый) Тогда //Только существующие документы
Отказ = Истина;
Сообщить("У вас нет прав на изменение существующих документов");
КонецЕсли;
ИначеЕсли ВидЗапрета = Перечисления.lzmr_ВидыЗапретовРедактирования.ПроведенныеДокументы Тогда
Если (РежимЗаписи = РежимЗаписиДокумента.Проведение) ИЛИ (РежимЗаписи = РежимЗаписиДокумента.ОтменаПроведения) Тогда
Отказ = Истина;
Сообщить("У вас нет прав на операции сохранения или проведения/отмены проведения документов");
КонецЕсли;
ИначеЕсли ВидЗапрета = Перечисления.lzmr_ВидыЗапретовРедактирования.СохраненныеДокументы Тогда
Если НЕ(Документ.ДополнительныеСвойства.ПроведениеДокументов.СвойстваДокумента.ЭтоНовый) И (РежимЗаписи = РежимЗаписиДокумента.Запись) Тогда //Только существующие документы
Отказ = Истина;
Сообщить("У вас нет прав на сохранение существующих документов");
КонецЕсли;
КонецЕсли;
КонецЕсли;
Писалось для Управления торговлей, но должно работать на любой типовой конфигурации.
Проверено на следующих конфигурациях и релизах:
- Управление торговлей, редакция 11, релизы 11.5.20.101
Вступайте в нашу телеграмм-группу Инфостарт