Запрет редактирования документов в 1С:Предприятие по дате — критически важная настройка для бухгалтеров, аудиторов и администраторов систем. Она защищает данные от случайных или умышленных изменений после закрытия периода, обеспечивает достоверность отчетности и соответствие законодательству (например, ст. 9 Федерального закона №402-ФЗ о бухучете). Однако в стандартном интерфейсе 1С 8.3 эта функция не всегда очевидна: её можно настроить как через типовой функционал, так и программно.

В этой статье разберем все возможные способы — от ручных настроек в Администрировании до написания кода на встроенном языке. Особое внимание уделим нюансам для разных конфигураций (1С:Бухгалтерия, 1С:Управление торговлей, 1С:Зарплата и управление персоналом) и типичным ошибкам, из-за которых запрет может не сработать. Если вы администрируете базу или отвечаете за закрытие месяца — сохраните эту инструкцию в закладки.

1. Запрет редактирования через «Регламентированные отчеты» (самый простой способ)

Этот метод подходит для 1С:Бухгалтерии 3.0 и аналогичных конфигураций, где есть раздел Регламентированные отчеты. Он не требует прав администратора и работает на уровне пользовательских ролей.

Алгоритм:

  • 📌 Откройте раздел Отчеты → Регламентированные отчеты.
  • 🔧 Выберите пункт Настройка запрета редактирования (в некоторых версиях — Закрытие периода).
  • 📅 Укажите дату, до которой редактирование разрешено (например, 31.12.2023).
  • 🔒 Сохраните настройки и перезапустите сеанс .

Важно: этот способ блокирует изменение только бухгалтерских документов (счета-фактуры, платежки, накладные). Для торговых операций или кадровых документов потребуются другие методы (см. следующий раздел).

💡

Если пункт Настройка запрета редактирования отсутствует в меню, проверьте, включена ли функциональная опция Регламентированный учет в настройках программы (Администрирование → Функциональность).

Конфигурация 1С Путь к настройке запрета Какие документы блокирует
1С:Бухгалтерия 3.0 Отчеты → Регламентированные отчеты → Настройка запрета Бухгалтерские документы, операции, проводки
1С:Управление торговлей 11 Администрирование → Закрытие периода Заказы, реализации, поступления
1С:Зарплата и управление персоналом 3.1 Настройки → Закрытие месяца Начисления, больничные, кадровые приказы

2. Настройка через «Закрытие периода» (для торговых и складских документов)

В конфигурациях 1С:Управление торговлей или 1С:ERP запрет редактирования настраивается через механизм Закрытие периода. Здесь можно гибко указать даты для разных типов документов (например, заблокировать изменение реализаций, но оставить открытыми заказы покупателей).

Пошаговая инструкция:

  1. Перейдите в Администрирование → Закрытие периода.
  2. Выберите вкладку Настройки запрета редактирования.
  3. Добавьте новую запись, указав:
    • 📋 Тип документа (например, Реализация товаров и услуг),
    • 📅 Дата запрета (включительно),
    • 🔐 Права доступа (кто может редактировать после блокировки).
  4. Сохраните и выполните команду Обновить настройки.
  5. Предупреждение: если в вашей базе используются нетиповые документы (созданные через конфигуратор), их нужно добавлять в список запрета вручную. В противном случае они останутся доступны для редактирования.

    📊 Как часто вы закрываете период в 1С?
    Ежемесячно
    Ежеквартально
    Раз в год
    Никогда не закрывал

    3. Запрет через права пользователей (для администраторов)

    Этот метод универсален и работает во всех конфигурациях 1С:Предприятие 8.3. Он позволяет гибко настроить доступ к документам по датам для отдельных ролей или пользователей. Например, можно разрешить главбуху редактировать документы за прошлый год, а остальным сотрудникам — только за текущий месяц.

    Как настроить:

    • 👤 Откройте Администрирование → Пользователи и права.
    • 🔑 Выберите роль (например, Бухгалтер) или конкретного пользователя.
    • 📝 Перейдите на вкладку Права на данные и добавьте ограничение по дате:
      Дата <= "31.12.2023"
    • 🔄 Примените изменения и перезапустите сеанс.

    Нюанс: этот способ требует понимания механизма ролей в . Если вы ошибётесь с настройкой, пользователи могут потерять доступ ко всем документам, а не только к устаревшим. Рекомендуем сначала протестировать настройку в тестовой базе.

    Что делать, если после настройки прав документы пропали из списка?

    Это означает, что вы установили слишком жесткое ограничение. Вернитесь в настройки роли и проверьте условие. Например, вместо Дата <= "31.12.2023" могло быть указано Дата < "01.01.2026", что исключает все документы 2023 года. Исправьте условие и обновите кэш метаданных (Конфигуратор → Администрирование → Обновить кэш метаданных).

    4. Программный запрет редактирования (для разработчиков)

    Если типовой функционал не подходит (например, нужно заблокировать документы по сложному условию или интегрировать запрет с внешней системой), можно написать обработчик на встроенном языке . Этот метод требует доступа к Конфигуратору и знания основ программирования.

    Пример кода для модуля документа (например, РеализацияТоваровУслуг):

    Процедура ПриЗаписи(Отказ)
    

    Если Дата >= '20260101' И НЕ Пользователь.ЭтоАдминистратор() Тогда

    Сообщить("Редактирование документов за 2026 год запрещено!", СтатусСообщения.Важное);

    Отказ = Истина;

    КонецЕсли;

    КонецПроцедуры

    Где размещать код:

    • 📄 В модуле объекта документа (для блокировки конкретного типа),
    • 📂 В общем модуле (для глобальных правил),
    • 🔧 В обработке ПередЗаписью (для гибкой логики).

    Внимание: программный запрет обходится через режимы Отладчик или Конфигуратор. Чтобы полностью исключить обход, комбинируйте этот метод с настройкой прав (раздел 3).

    Убедитесь, что код добавлен в правильный модуль|Протестируйте запрет на копии базы|Проверьте права пользователей на обход блокировки|Документируйте изменения в конфигурации-->

    5. Использование механизма «Версионирование данных» (для ERP-систем)

    В 1С:ERP и некоторых отраслевых решениях есть встроенный механизм Версионирование данных, который позволяет не только запретить редактирование, но и отслеживать историю изменений. Это полезно для аудита и восстановления данных после ошибок.

    Как включить:

    1. Перейдите в Администрирование → Версионирование данных.
    2. Активируйте флажок Использовать версионирование.
    3. Настройте правила для документов:
      • 📅 Укажите дату, с которой начинается контроль версий,
      • 🔄 Выберите режим блокировки (Запрет редактирования или Уведомление),
      • 📋 Определите, какие поля будут отслеживаться.
    4. Сохраните настройки и выполните регламентное задание Обновление версий.
    5. Преимущество этого метода — возможность восстановить предыдущую версию документа даже после его изменения. Однако он требует дополнительных ресурсов сервера и регулярного архивирования.

      💡

      Версионирование данных — единственный способ отменить ошибочные изменения в документах после их сохранения. В отличие от простого запрета редактирования, он позволяет восстановить исторические данные.

      6. Типичные ошибки и как их избежать

      Даже опытные администраторы сталкиваются с проблемами при настройке запрета редактирования. Вот самые распространённые ошибки и способы их решения:

      ⚠️ Внимание: Если после настройки запрета документы всё равно редактируются, проверьте:
      • 🔹 Права пользователя на роль Администратор (она игнорирует все блокировки),
      • 🔹 Наличие нетиповой обработки, которая сбрасывает дату документа при записи,
      • 🔹 Корректность указателя даты в настройках (иногда сбивается при обновлении конфигурации).
    Ошибка Причина Решение
    Запрет не работает для новых документов Дата запрета указана раньше текущей даты системы Обновите дату в настройках или синхронизируйте время на сервере
    Документы пропали из списка Неправильно настроены права на данные (раздел 3) Проверьте условия ограничения в ролях пользователей
    Запрет срабатывает с задержкой Не обновлен кэш метаданных Выполните Обновить кэш в конфигураторе

    Если вы используете распределённую информационную базу (РИБ), настройку запрета нужно дублировать на всех узлах. В противном случае пользователи смогут обойти блокировку, подключившись к другому узлу.

    7. Как проверить, что запрет работает корректно

    После настройки обязательно протестируйте запрет редактирования, чтобы избежать проблем при закрытии периода. Вот чек-лист для проверки:

    Попробуйте отредактировать документ старше указанной даты|Проверьте доступ к документам под разными ролями (бухгалтер, администратор, менеджер)|Убедитесь, что новые документы создаются без ошибок|Протестируйте печать и проводку заблокированных документов-->

    Для комплексного теста:

    1. Создайте тестовый документ с датой до запрета (например, 30.12.2023).
    2. Попробуйте изменить его реквизиты (номенклатуру, сумму, контрагента).
    3. Проверьте реакцию системы:
      • ✅ Если появляется сообщение "Редактирование запрещено" — настройка сработала.
      • ❌ Если документ сохраняется без предупреждений — ищите ошибку в настройках (см. раздел 6).
  6. Повторите тест под разными пользователями (с правами бухгалтера, менеджера, администратора).
  7. Важно: в некоторых конфигурациях (например, 1С:Комплексная автоматизация) запрет редактирования может конфликтовать с механизмом Управление доступом. Если после настройки блокировки документы перестали отображаться в отчётах, проверьте настройки Ролей доступа в разделе Администрирование → Настройки пользователей и прав.

    FAQ: Частые вопросы по запрету редактирования в 1С

    Можно ли запретить редактирование только для определенных пользователей?

    Да, для этого используйте настройку прав доступа (раздел 3). Создайте отдельную роль (например, Бухгалтер_Архив) и назначьте ей ограничение по дате. Пользователи с этой ролью не смогут редактировать документы старше указанной даты, а остальные — смогут.

    Как разблокировать документ, если запрет мешает исправить ошибку?

    Есть три способа:

    1. Временно измените дату запрета в настройках (раздел 1 или 2).
    2. Войдите в систему под пользователем с ролью Администратор — она игнорирует все блокировки.
    3. Если запрет программный (раздел 4), временно закомментируйте код в модуле документа.
    4. После исправления ошибки не забудьте вернуть настройки запрета!

    Почему после обновления 1С запрет перестал работать?

    Это типичная проблема при обновлении конфигурации. Причины:

    • Сбросились настройки в разделе Закрытие периода (проверьте раздел 2).
    • Изменилась структура метаданных, и программный запрет (раздел 4) стал неактуален.
    • Обновились ролевые настройки (раздел 3), и права сбросились.

Решение: сравните текущие настройки с резервной копией базы до обновления и восстановите изменения.

Можно ли настроить запрет редактирования по нескольким датам (например, запретить изменять документы за 2022 и 2026 годы, но оставить 2023 открытым)?

Да, но способы зависят от конфигурации:

  • В 1С:Бухгалтерии это делается через Регламентированные отчеты (раздел 1) — добавьте несколько правил с разными датами.
  • В 1С:ERP используйте Версионирование данных (раздел 5) с сложными условиями.
  • Для гибких правил напишите программный код (раздел 4) с проверкой диапазонов дат.
Как запретить редактирование не по дате документа, а по дате проведения?

Стандартные настройки блокируют документы по дате документа, а не по дате проведения. Чтобы запретить редактирование по дате проведения, нужно:

  1. Использовать программный метод (раздел 4) с проверкой поля ДатаПроведения.
  2. Либо создать обработку, которая будет автоматически переносить дату документа на дату проведения перед проверкой запрета.

Пример кода для модуля документа:

Процедура ПриЗаписи(Отказ)

Если ДатаПроведения >= '20260101' Тогда

Сообщить("Редактирование документов с датой проведения 2026 года запрещено!");

Отказ = Истина;

КонецЕсли;

КонецПроцедуры