Дата запрета в 1С:Предприятие — это ключевой инструмент для контроля действий пользователей с объектами системы. Она позволяет заблокировать изменение или удаление данных после определённой даты, предотвращая случайные ошибки или мошеннические действия. Но как правильно её установить, чтобы не нарушить бизнес-процессы? В этой статье разберём все способы — от ручного ввода до автоматического назначения через обработки.

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

Что такое дата запрета в 1С и зачем она нужна

Дата запрета — это атрибут объекта в , который ограничивает возможности редактирования или удаления записи после указанной даты. Например, если для номенклатуры установлена дата запрета 01.01.2026, то после этой даты пользователи не смогут изменить её наименование, цену или удалить позицию из справочника.

Основные цели использования:

  • 🔒 Защита от случайных изменений — предотвращение ошибок при работе с историческими данными.
  • 📊 Соблюдение регламентов — соответствие требованиям бухгалтерского учёта или аудита.
  • 🛡️ Контроль доступа — ограничение прав пользователей на редактирование устаревших записей.
  • ⚖️ Юридическая значимость — фиксация данных на определённую дату для отчётности.

Важно понимать, что дата запрета не блокирует просмотр объекта — только его модификацию. Также она не влияет на уже проведённые документы, но может ограничить создание новых с использованием заблокированной номенклатуры или контрагента.

📊 Для каких объектов вы чаще всего используете дату запрета в 1С?
Номенклатура
Контрагенты
Документы
Справочники
Не использую

Где в 1С можно установить дату запрета

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

Тип объекта Примеры Где настроить
Справочники Номенклатура, Контрагенты, Сотрудники, Организации Карточка объекта → вкладка "Дополнительно" или "Реквизиты"
Документы Реализация товаров, Поступление, Счёт-фактура Форма документа → кнопка "Ещё" → "Установить дату запрета"
Планы обмена Обмен данными между базами Настройки плана обмена → параметры синхронизации
Регистры сведений Цены номенклатуры, Курсы валют Настройки регистра → ограничения по датам

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

⚠️ Внимание: В конфигурациях на базе 1С:Предприятие 7.7 механизм даты запрета работает иначе или может отсутствовать. Для устаревших версий требуется доработка через внешние обработки.

Пошаговая инструкция: как поставить дату запрета для номенклатуры

Рассмотрим процесс на примере справочника Номенклатура в 1С:Управление торговлей 11:

  1. Откройте справочник Номенклатура через меню Справочники → Товары и услуги → Номенклатура.

  2. Найдите нужную позицию (можно использовать поиск по наименованию или артикулу).

  3. Дважды кликните по строке, чтобы открыть карточку номенклатуры.

  4. Перейдите на вкладку Дополнительно (в некоторых конфигурациях — Реквизиты или Прочее).

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

  6. Укажите дату в формате ДД.ММ.ГГГГ. Например, 31.12.2026.

  7. Сохраните изменения кнопкой Записать и закрыть.

Убедиться, что номенклатура не используется в незакрытых документах|

Проверить права пользователя на изменение реквизитов|

Сверить дату с учётной политикой организации|

Создать резервную копию базы (рекомендуется для критичных объектов)-->

После установки даты запрета при попытке изменить номенклатуру после указанной даты система выдаст сообщение: "Изменение запрещено! Дата документа позже даты запрета изменений для данной номенклатуры".

Как массово установить дату запрета для нескольких объектов

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

  1. Откройте справочник (например, Номенклатура).

  2. Выделите нужные строки с помощью клавиш Ctrl или Shift.

  3. Нажмите правой кнопкой мыши и выберите Изменить выделенные (или Групповая обработка).

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

  5. Подтвердите изменения кнопкой Выполнить.

Для сложных сценариев (например, установка даты запрета по определённому признаку) можно использовать внешние обработки. Популярные решения:

  • 📄 Обработка "Массовое изменение реквизитов" (входит в стандартные поставки некоторых конфигураций).
  • 🖥️ Скрипты на встроенном языке для автоматического назначения даты по условию (например, для номенклатуры, не используемой более года).
  • 🔧 Доработки конфигурации через Конфигуратор (требует прав администратора).
💡

Перед массовой обработкой экспортируйте данные в Excel через Файл → Выгрузить. Это поможет восстановить информацию при ошибке.

Особенности работы с датой запрета в документах

Для документов (например, реализации или поступления) дата запрета работает иначе, чем для справочников. Здесь она обычно ограничивает проводку или редактирование документа после определённой даты. Чтобы установить её:

  1. Откройте нужный документ (например, через журнал Продажи → Реализация товаров).

  2. Нажмите кнопку Ещё (или Действия) в верхнем меню формы.

  3. Выберите пункт Установить дату запрета редактирования (название может отличаться).

  4. Укажите дату и сохраните.

Важные нюансы:

  • 📅 Дата запрета документа не блокирует его проведение, если документ уже проведён. Она только ограничивает дальнейшие изменения.
  • 🔄 В некоторых конфигурациях дату запрета можно сбросить через Администрирование → Настройки пользователей (требуются права администратора).
  • 📎 Для документов с подчинёнными объектами (например, счёт-фактура к реализации) дата запрета может распространяться и на них.
⚠️ Внимание: В 1С:Бухгалтерия 8.3 при установке даты запрета на документ необходимо перепровести связанные операции (например, движения по регистрам). Иначе возможны расхождения в отчётности.

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

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

Ошибка Последствия Как исправить
Установка даты в прошлом Блокировка всех операций с объектом, включая текущие Перенести дату на будущую или сбросить через администрирование
Неучёт связанных объектов Расхождения в отчётности (например, блокировка номенклатуры, используемой в открытых заказах) Проверять использование объекта через отчёт "Анализ связей"
Игнорирование прав пользователей Пользователи с полными правами могут обойти ограничения Настроить роли в Администрирование → Пользователи
Массовая установка без резервной копии Потеря данных при сбое Всегда создавать бэкап перед групповыми операциями

Частая проблема — невозможность изменить дату запрета после её установки. Это происходит, если:

  • 🔐 У пользователя недостаточно прав (требуется роль с правом Администрирование).
  • 📅 Дата запрета уже наступила, и система блокирует её редактирование.
  • 🔧 В конфигурации отключена возможность изменения этого реквизита.
Как обойти дату запрета в экстренных случаях?

Если дата запрета мешает критичным операциям, её можно сбросить через Конфигуратор:

1. Зайдите в режим Конфигуратор (требуются права администратора).

2. Откройте справочник или документ через Все функции → Открыть форму.

3. В форме объекта найдите реквизит с датой запрета и очистите его значение.

4. Сохраните изменения.

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

Как автоматизировать установку даты запрета

Для крупных баз с тысячами объектов ручная установка даты запрета неэффективна. Автоматизировать процесс можно несколькими способами:

1. Через регламентные задания:

  • 📅 Настройте задание в Администрирование → Регламентные задания.
  • 🖥️ Используйте обработку, которая будет проверять условия (например, отсутствие движений по номенклатуре более 6 месяцев) и устанавливать дату запрета.

2. С помощью внешних обработок:

  • 🛠️ Скачайте готовые обработки с сайта 1С-Сообщество (например, "Массовая установка даты запрета").
  • 📝 Настройте правила отбора (по дате последнего изменения, группе номенклатуры и т. д.).

3. Через программный код:

Пример скрипта для установки даты запрета для номенклатуры, не используемой полгода:

Процедура УстановитьДатаЗапрета()

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| Номенклатура.Ссылка КАК Ссылка

|ИЗ

| Справочник.Номенклатура КАК Номенклатура

|ГДЕ

| НЕ Номенклатура.ПометкаУдаления

| И НЕ Существует(

| ВЫБРАТЬ РАЗЛИЧНЫЕ

| ДвижениеНоменклатуры.Номенклатура КАК Номенклатура

| ИЗ

| РегистрНакопления.ОстаткиТоваров.Обороты КАК ДвижениеНоменклатуры

| ГДЕ

| ДвижениеНоменклатуры.Период > ДобавитьМесяц(ТекущаяДата(), -6)

| И ДвижениеНоменклатуры.Номенклатура = Номенклатура.Ссылка

| )";

Результат = Запрос.Выполнить();

Выборка = Результат.Выбрать();

Пока Выборка.Следующий() Цикл

Объект = Выборка.Ссылка.ПолучитьОбъект();

Объект.ДатаЗапретаИзменений = ТекущаяДата() + 365; // Запрет через год

Объект.Записать();

КонецЦикла;

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

⚠️ Внимание: Автоматическая установка даты запрета может конфликтовать с бизнес-процессами. Например, если номенклатура временно не используется, но планируется к возврату в оборот. Всегда тестируйте скрипты на копии базы.
💡

Автоматизация установки даты запрета экономит время, но требует предварительного анализа данных. Начните с тестовой выборки из 10-20 объектов, чтобы убедиться в корректности логики.

FAQ: Частые вопросы по работе с датой запрета в 1С

Можно ли установить дату запрета для группы номенклатуры сразу?

Да, для этого используйте групповую обработку:

  1. Выделите нужную группу в справочнике Номенклатура.
  2. Нажмите правой кнопкой → Изменить выделенные.
  3. Укажите дату в поле Дата запрета изменений.

Если групповая обработка недоступна, используйте внешнюю обработку или скрипт.

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

Для этого есть два способа:

  1. Через отчёт Анализ связей объектов (доступен в большинстве конфигураций).
  2. Через запрос в Конфигураторе:
    ВЫБРАТЬ
    

    Документ.Ссылка КАК Ссылка,

    Документ.ДатаЗапретаРедактирования КАК ДатаЗапрета

    ИЗ

    Документ.<ИмяДокумента> КАК Документ

    ГДЕ

    Документ.ДатаЗапретаРедактирования <> ДАТАВРЕМЯ(1, 1, 1)

Что делать, если дата запрета мешает работе?

Если дата запрета установлена ошибочно:

  1. Проверьте, есть ли у вас права на её изменение (роль Администратор или Полные права).
  2. Если дата в будущем, просто перенесите её или очистите поле.
  3. Если дата уже наступила, обратитесь к администратору базы для сброса через Конфигуратор.

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

Влияет ли дата запрета на выгрузку данных в другие системы?

Нет, дата запрета в не блокирует выгрузку данных через Обмен данными или Интеграцию. Она ограничивает только редактирование внутри текущей базы. Однако некоторые обработки обмена могут учитывать этот реквизит при фильтрации данных — уточняйте логику в документации к конкретной обработке.

Можно ли настроить уведомления о приближении даты запрета?

Да, для этого:

  1. Создайте регламентное задание, которое будет проверять объекты с датой запрета в ближайшие 30 дней.
  2. Настройте отправку уведомлений через Почта → Настройки почты.
  3. Используйте шаблон письма с перечнем объектов и датами блокировки.

Пример кода для проверки:

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| Номенклатура.Наименование КАК Наименование,

| Номенклатура.ДатаЗапретаИзменений КАК ДатаЗапрета

|ИЗ

| Справочник.Номенклатура КАК Номенклатура

|ГДЕ

| Номенклатура.ДатаЗапретаИзменений МЕЖДУ &ДатаНачала И &ДатаКонца";

Запрос.УстановитьПараметр("ДатаНачала", ТекущаяДата());

Запрос.УстановитьПараметр("ДатаКонца", ТекущаяДата() + 30);