Администрирование · 12 мин
Как в 1С 8.3 запретить редактирование документов и справочников
Как в 1С 8.3 запретить редактирование документов и справочников: права ролей, дата запрета, RLS, блокировки. Пошаговые инструкции, типичные ошибки, FAQ.
Запрет редактирования в 1С 8.3 — одна из базовых задач администрирования: закрытые периоды не должны меняться, проведённые документы не должны корректироваться без контроля, а отдельные справочники должны быть доступны пользователям только на просмотр. В зависимости от задачи применяются разные механизмы: роли и права доступа, дата запрета изменения данных, ограничение доступа на уровне записей (RLS), а также программные блокировки в коде конфигурации.
Выбор способа зависит от того, что именно нужно защитить. Если речь о бухгалтерском периоде после сдачи отчётности — используется дата запрета. Если нужно, чтобы менеджер видел накладные, но не мог их править — настраиваются права роли. Если запрет касается только конкретных условий (например, документов другого подразделения) — применяется RLS или программная проверка в модуле объекта.
Ниже разобраны все основные подходы с конкретными шагами настройки, их ограничениями и способами проверить, что запрет действительно работает.
Способы запрета редактирования: что выбрать под свою задачу
Платформа 1С:Предприятие 8.3 предлагает несколько независимых уровней защиты данных от изменения. Они не заменяют, а дополняют друг друга, и в рабочей базе обычно комбинируются. Прежде чем настраивать, определите границы запрета: для всех пользователей или для части, для всех объектов или только выбранных видов, навсегда или до определённой даты.
Основные механизмы:
- Роли и права — запрет на уровне видов объектов: пользователь не сможет изменять, например, любые документы «Реализация товаров и услуг».
- Дата запрета изменения данных — блокирует редактирование документов и записей регистров раньше заданной даты, типовой инструмент закрытия периода.
- RLS (ограничение доступа на уровне записей) — запрет на конкретные строки данных по условию: организация, склад, контрагент.
- Программный запрет — проверки в обработчиках «ПередЗаписью», «ПриЗаписи» и процедура «Заблокировать» для управляемых сценариев.
Как выбрать действие
Запрет через права и роли пользователей
Самый надёжный способ — убрать у пользователя права на изменение объектов. В платформе право «Изменение» разрешает запись объекта, «Интерактивное изменение» — правку через формы, «Добавление» — создание новых элементов. Если оставить только «Чтение» и «Просмотр», пользователь откроет документ, посмотрит его, но кнопки записи и проведения будут недоступны.
В типовых конфигурациях (Бухгалтерия предприятия, Управление торговлей, ЗУП) роли уже собраны в профили групп доступа. Настройка выполняется так: откройте «Администрирование» → «Настройки прав и пользователей» → «Профили групп доступа». Создайте копию типового профиля, снимите в ней разрешенные роли, связанные с изменением нужных объектов (например, «Добавление изменение документов продажи»), и назначьте профиль пользователю через группу доступа.
В конфигураторе права настраиваются тоньше. Откройте роль (ветка «Общие» → «Роли»), найдите нужный объект в списке и снимите флажки «Добавление», «Изменение», «Интерактивное добавление», «Интерактивное изменение», «Интерактивное удаление» и «Интерактивная пометка удаления». После обновления конфигурации базы данных пользователи с этой ролью потеряют возможность править объект, сохранив просмотр.
Дата запрета изменения данных: закрытие периода
Дата запрета — штатный механизм библиотеки стандартных подсистем, встроенный в большинство типовых конфигураций. Он запрещает создание и изменение документов, а также записей регистров с датой раньше указанной. Это стандартный способ закрыть месяц, квартал или год после сдачи отчётности.
Настройка в типовых решениях: «Администрирование» → «Поддержка и обслуживание» → «Регламентные операции» → «Настроить дату запрета изменения данных» (в некоторых конфигурациях путь: «Администрирование» → «Пользователи и права»). Установите общую дату для всех пользователей или задайте индивидуальные даты по пользователям и по разделам данных — например, бухгалтерский учёт закрыт по 31 декабря, а зарплата — по 31 января.
Для отдельных сотрудников (главбух, администратор) дату можно сдвинуть назад или вовсе не устанавливать — тогда закрытый период смогут править только они. После изменения настроек пользователям нужно перезайти в базу либо подождать обновления кэша настроек.
Как проверить, что запрет работает
Настройка не считается завершённой без проверки под учётной записью реального пользователя. Войдите в базу под его именем и выполните целевое действие: откройте документ закрытого периода и попробуйте перепровести, создайте новый элемент справочника, измените существующий. Ожидаемое поведение — сообщение о нарушении прав или о дате запрета, либо недоступные кнопки записи.
Отдельно проверьте обходные пути: групповое изменение реквизитов, обработку «Универсальный подбор и обработка объектов», загрузку данных из файла, обмены между базами. Права и дата запрета действуют и на эти сценарии, но только если у пользователя нет роли «Администратор системы» или «Полные права» — с ними большинство ограничений не применяется.
Как проверить результат
Сообщение «Дата запрета изменения данных», запись не выполняется
Документ проводится без предупреждений
Форма в режиме просмотра, кнопки записи недоступны
Поля доступны для ввода, документ сохраняется
Отказ с сообщением о нарушении прав доступа
Реквизиты изменяются массово без сообщений
Администратор редактирует всё без ограничений
Даже администратор получает отказ — значит, программный запрет написан без исключений
Типичные ошибки и ограничения
Чаще всего запрет «не работает» не из-за сбоя платформы, а из-за неполной настройки. Ниже — ситуации, которые встречаются регулярно.
Ещё одно ограничение касается движений документов: запрет изменения самого документа не всегда защищает записи регистров, если они изменяются непосредственно. Дата запрета в типовых конфигурациях контролирует и регистры, но при самостоятельной разработке проверку нужно добавлять и в модули наборов записей.
Помните и про обмены: если база синхронизируется с другой системой, изменения могут приходить извне. Для таких сценариев в типовых решениях предусмотрены настройки дат запрета для сеансов обмена, а также регистрация изменений должна учитывать закрытые периоды.
Что важно запомнить
Закрытый период защищайте датой запрета изменения данных, режим «только просмотр» — правами ролей без «Изменения» и «Добавления», выборочные запреты — через RLS или проверку в «ПередЗаписью». Любую настройку проверяйте под учётной записью реального пользователя и помните: полные права отменяют большинство ограничений.
Частые вопросы
Как запретить редактирование только одного конкретного документа?
Штатных прав на отдельный экземпляр документа нет — права задаются на вид объекта. Используйте программный запрет: пометьте документ признаком (например, «Заблокирован») и в обработчике «ПередЗаписью» отклоняйте запись при установленном признаке. В типовых конфигурациях для этого иногда применяют механизм статусов или согласования.
Почему пользователь с датой запрета всё равно редактирует старые документы?
Проверьте три вещи: не входит ли пользователь в список исключений в настройках даты запрета, нет ли у него профиля с полными правами, и перезаходил ли он в базу после изменения настроек. Также убедитесь, что дата установлена для нужного раздела данных — настройка по разделам может отличаться.
Можно ли запретить редактирование, но разрешить печать документов?
Да. Печать работает при наличии прав «Чтение» и «Просмотр», которые не зависят от права «Изменение». Достаточно снять у роли права на добавление и изменение — пользователь сможет открывать документы, просматривать и выводить на печать, но не сохранять изменения.
Как временно разрешить правку закрытого периода одному сотруднику?
В настройках даты запрета переключитесь на режим «По пользователям» и задайте для этого сотрудника более позднюю дату или уберите ограничение. После завершения правок верните общую настройку. Альтернатива — временно выдать профиль с расширенными правами и отозвать его после работы.
Действует ли запрет редактирования при загрузке данных через обмен?
Дата запрета по умолчанию контролирует и сеансы обмена, но в настройках можно задать исключения для узлов обмена. Права пользователей при обмене проверяются для учётной записи, под которой выполняется синхронизация, — если у неё полные права, ограничения не сработают. Проверяйте настройки дат запрета для сеансов обмена данными отдельно.