В 1С:Предприятие удаление документов часто происходит в два этапа: сначала объект помечается на удаление (мягкое удаление), а затем требуется физическое удаление из базы. Этот механизм защищает данные от случайного уничтожения, но может вызывать путаницу у пользователей. Если вы столкнулись с ситуацией, когда документ «висит» в базе с пометкой НаУдаление = Истина, но не исчезает из списков — эта статья поможет разобраться, как его удалить окончательно.

Проблема усложняется тем, что в разных конфигурациях (1С:Бухгалтерия, 1С:УТ, 1С:ЗУП и др.) и версиях платформы (8.3, 8.3.20+) способы удаления могут отличаться. Например, в 1С:ERP для этого предусмотрены специальные обработки, а в 1С:Розница может потребоваться ручная чистка через Консоль запросов. Мы рассмотрим универсальные методы, которые работают в большинстве случаев, а также нюансы для типовых конфигураций.

Важно понимать: физическое удаление документов — это необратимая операция. После неё восстановить данные можно только из резервной копии. Поэтому перед началом работ обязательно сделайте бэкап базы или убедитесь, что резервная копия создана автоматически (например, через Регламентные задания).

📊 Какую конфигурацию 1С вы используете?
1С:Бухгалтерия
1С:Управление торговлей
1С:Зарплата и Управление Персоналом
1С:ERP
Другая конфигурация

1. Почему документ не удаляется сразу?

Механизм пометки на удаление (ПометкаУдаления) в служит для:

  • 🔄 Сохранения связности данных. Например, если документ уже проведён и повлиял на остатки или регистры, его мгновенное удаление может нарушить целостность учёта.
  • 🛡️ Защиты от случайных действий. Пользователь может передумать или осознать, что удаляет не тот документ.
  • 📊 Соблюдения бизнес-логики. В некоторых конфигурациях (например, 1С:ЗУП) удаление кадровых документов блокируется, если они связаны с начислениями.
  • 🔄 Возможности отмены. Пока документ помечен на удаление, его можно «восстановить» через стандартные средства.

Однако в некоторых случаях пометка на удаление становится проблемой:

  • 🚫 Документ продолжает отображаться в отчётах или журналах, мешая аналитике.
  • 🔄 Не удаётся создать новый документ с тем же номером (если нумерация уникальная).
  • 📉 Накапливаются «мусорные» данные, увеличивающие размер базы.
⚠️ Внимание: В конфигурациях с регламентированным учётом (например, 1С:Бухгалтерия для сдачи отчётности в ФНС) физическое удаление документов за закрытые периоды может привести к расхождению с данными отчётности. Перед удалением проверьте, не влияет ли документ на уже сданные декларации.

2. Способ 1: Удаление через стандартный интерфейс

Самый простой метод — использовать встроенные инструменты . Он подходит для большинства типовых конфигураций и не требует прав администратора.

Шаги для удаления:

  1. Откройте журнал документов, в котором находится помеченный объект (например, Продажи → Реализация товаров и услуг).
  2. Включите отображение помеченных на удаление объектов:
    • В 1С 8.3: нажмите Ещё → Показать помеченные на удаление.
    • В старых версиях: Действия → Показать удаляемые.
  • Найдите нужный документ (он будет выделен серым цветом или с иконкой корзины).
  • Выделите его и выберите Действия → Удалить помеченные объекты (или Удалить окончательно).
  • Подтвердите действие в диалоговом окне.
  • Если пункт Удалить помеченные объекты отсутствует, значит в вашей конфигурации это действие заблокировано. В таком случае используйте альтернативные способы (см. следующие разделы).

    Проверьте права доступа (нужны права на удаление объектов)

    Создайте резервную копию базы

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

    Закройте все отчёты, где может использоваться этот документ-->

    3. Способ 2: Консоль запросов (для опытных пользователей)

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

    Инструкция:

    1. Откройте Консоль запросов:
      • В 1С:Предприятие 8.3: Файл → Открыть → Консоль запросов.
      • В конфигураторе: Сервис → Консоль запросов.
  • Выполните запрос для поиска помеченных документов (пример для документа РеализацияТоваровУслуг):
    ВЫБРАТЬ
    

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

    ИЗ

    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг

    ГДЕ

    РеализацияТоваровУслуг.ПометкаУдаления = ИСТИНА

  • Для физического удаления используйте запрос (замените СсылкаНаДокумент на реальную ссылку из результатов):
    УНИЧТОЖИТЬ Объект = СсылкаНаДокумент;
  • Пример для конкретного документа:

    УНИЧТОЖИТЬ Объект = Документ.РеализацияТоваровУслуг.НайтиПоНомеру("РТ-000123", Дата(2026,05,15));
    ⚠️ Внимание: Запрос УНИЧТОЖИТЬ необратимо удаляет объект из базы, включая все его движения по регистрам. Если документ уже проведён, это может привести к расхождению итогов в отчётах. Перед выполнением проверьте, не влияет ли документ на текущие остатки или начисления.
    Что делать, если запрос возвращает ошибку "Недостаточно прав"?

    Если при выполнении запроса УНИЧТОЖИТЬ появляется ошибка доступа, значит у вашего пользователя недостаточно прав. Решения:

    1. Выполните запрос от имени администратора (пользователь с полными правами).

    2. В конфигураторе временно добавьте себе роль Администрирование (Администрирование → Пользователи → [Ваш пользователь] → Роли).

    3. Используйте внешнюю обработку с повышенными правами (см. Способ 4).

    4. Способ 3: Обработка «Удаление помеченных объектов»

    В некоторых конфигурациях (например, 1С:ERP или 1С:КА 2.4) предусмотрена специальная обработка для массового удаления помеченных объектов. Она позволяет очистить базу от «мусорных» данных без ручного поиска каждого документа.

    Как найти и использовать обработку:

    1. Перейдите в раздел Администрирование → Обслуживание → Удаление помеченных объектов (путь может отличаться в зависимости от конфигурации).
    2. В открывшемся окне выберите типы объектов, которые нужно очистить (например, Документы, Справочники).
    3. Нажмите Выполнить и дождитесь завершения операции.
    4. Если обработка отсутствует в меню, её можно:

      • 🔍 Найти в Все функции (кнопка Ещё → Все функции).
      • 📥 Скачать с сайта 1С:ИТС (раздел Обработки для администрирования).
      • 🛠️ Создать самостоятельно в конфигураторе (для программистов).

      Преимущества этого способа:

      • 🔄 Массовая очистка (можно удалить все помеченные документы за раз).
      • 🛡️ Безопасность: обработка проверяет связи объектов перед удалением.
      • 📊 Логирование: ведётся журнал удалённых объектов.
      Конфигурация Путь к обработке Особенности
      1С:ERP 2.5 Администрирование → Обслуживание → Удаление помеченных объектов Поддерживает фильтрацию по периодам и типам документов
      1С:УТ 11.5 Сервис → Удаление помеченных объектов Требует прав Администратор
      1С:Бухгалтерия 3.0 Отсутствует в стандартной поставке Нужно скачивать обработку с ИТС или писать самостоятельно
      1С:ЗУП 3.1 Настройки → Обслуживание → Удаление помеченных Блокирует удаление документов за закрытые периоды

      5. Способ 4: Программное удаление (для разработчиков)

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

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

      Процедура УдалитьПомеченныеДокументы()
      

      Выборка = Документы.РеализацияТоваровУслуг.ВыбратьПомеченныеНаУдаление();

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

      Попытка

      Выборка.Удалить(Истина); // Истина - физическое удаление

      Сообщить("Удалён документ: " + Выборка.Ссылка.Наименование);

      Исключение

      Сообщить("Ошибка при удалении: " + ОписаниеОшибки());

      КонецПопытки;

      КонецЦикла;

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

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

      • В внешней обработке (если нет прав на изменение конфигурации).
      • В модуле управляемого приложения (для глобальных процедур).
      • В команде формы (если нужно добавить кнопку в интерфейс).

    Критично: При физическом удалении документа через код не проверяются ссылки из других объектов. Например, если в документе ПоступлениеТоваров есть ссылка на удаляемую Реализацию, это может привести к ошибкам при открытии связанных объектов.

    💡

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

    6. Способ 5: Удаление через SQL (для администраторов базы)

    В исключительных случаях, когда другие методы не работают (например, при повреждении базы), можно удалить помеченные документы напрямую через SQL-запрос. Этот способ рискован и требует доступа к серверу или SQL Server.

    Порядок действий:

    1. Подключитесь к базе через SQL Server Management Studio (или другой клиент).
    2. Найдите таблицу с документами. Для 1С 8.3 она обычно имеет вид:
      SELECT * FROM [dbo].[_Document{ИД_ТипаДокумента}]

      где {ИД_ТипаДокумента} — уникальный идентификатор типа (например, _Document123 для РеализацияТоваровУслуг).

    3. Удалите записи с пометкой DeletionMark = 1:
      DELETE FROM [dbo].[_Document123]
      

      WHERE DeletionMark = 1 AND Ref LIKE '%НомерДокумента%';

    ⚠️ Внимание: Прямое изменение базы через SQL нарушает целостность данных и может привести к:
    • 🔄 Рассинхронизации регистров (остатки не будут совпадать с документами).
    • 🚫 Ошибкам при обновлении конфигурации.
    • 📉 Потере связей между объектами.

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

    Как узнать ИД_ТипаДокумента:

    SELECT
    

    t.name AS TableName,

    c.name AS ColumnName

    FROM

    sys.tables t

    INNER JOIN

    sys.columns c ON t.object_id = c.object_id

    WHERE

    t.name LIKE '_Document%' AND c.name = 'DeletionMark';

    7. Частые ошибки и их решения

    При удалении помеченных документов пользователи часто сталкиваются с типичными проблемами. Рассмотрим самые распространённые и способы их решения.

    Ошибка 1: «Недостаточно прав для удаления объекта»

    • 🔑 Решение: Запросите у администратора роль Администрирование или выполните действие от имени пользователя с полными правами.
    • 🛠️ Альтернатива: Используйте внешнюю обработку с повышенными правами (см. Способ 4).

    Ошибка 2: «Объект используется в другом месте»

    • 🔍 Причина: Документ связан с другими объектами (например, в 1С:ЗУП кадровый приказ может быть привязан к начислению зарплаты).
    • 📋 Решение:
      1. Найдите все ссылки на документ через запрос:
        ВЫБРАТЬ РАЗРЕШЕННЫЕ
        

        Ссылка КАК Объект,

        ТипЗнч(Ссылка) КАК ТипОбъекта

        ИЗ

        РегистрСведений.СсылкиОбъектов КАК СсылкиОбъектов

        ГДЕ

        СсылкиОбъектов.Ссылка = &СсылкаНаДокумент

      2. Удалите или перенастройте зависимые объекты.

    Ошибка 3: «Документ заблокирован другим пользователем»

    • 🔄 Решение:
      1. Проверьте активные сеансы в Администрирование → Активные пользователи.
      2. Принудительно завершите сеанс блокирующего пользователя (кнопка Завершить сеанс).
      3. Если блокировка «зависшая», перезапустите сервер 1С:Предприятие.
    💡

    Перед принудительным завершением сеансов других пользователей предупредите их о возможной потере несохранённых данных.

    Ошибка 4: «Нельзя удалить документ за закрытый период»

    • 📅 Причина: В конфигурациях с регламентированным учётом (например, 1С:Бухгалтерия) запрещено удалять документы за периоды, по которым уже сдана отчётность.
    • 🔄 Обходные пути:
      1. Перенесите документ на текущую дату, удалите, затем верните дату обратно (если это допустимо по бизнес-логике).
      2. Используйте Консоль запросов с флагом ОбходОграничений = Истина (только для опытных пользователей).
      3. Снимите пометку на удаление и создайте документ-аннулятор (например, Корректировка записей регистров).

    8. Как избежать проблем с удалением в будущем

    Чтобы не сталкиваться с необходимостью ручного удаления помеченных документов, следуйте этим рекомендациям:

    • 📌 Настройте права доступа: Ограничьте возможность пометки на удаление для рядовых пользователей. Разрешите это действие только ответственным лицам.
    • 🔄 Используйте механизм аннулирования: Вместо удаления создавайте документы-аннуляторы (например, Возврат товара вместо удаления Реализации).
    • 📅 Автоматизируйте очистку: Настройте регламентное задание для периодического удаления помеченных объектов старше определённого срока.
    • 📊 Ведите журнал изменений: Включите аудит удалений в настройках (Администрирование → Журналы регистрации).
    • 🛠️ Обновляйте конфигурацию: В новых версиях улучшаются инструменты для работы с помеченными объектами.
    • Если в вашей организации часто возникают ситуации с «зависшими» помеченными документами, рассмотрите возможность:

      • 📈 Доработки конфигурации: Добавьте обработку, которая автоматически удаляет помеченные объекты при закрытии месяца.
      • 🤝 Обучения пользователей: Проводите тренинги по правильной работе с документами (например, как использовать Отмена проведения вместо удаления).
      • ⚠️ Внимание: В облачных версиях (например, 1С:Фреш) некоторые методы удаления могут быть ограничены. Уточняйте возможности в документации вашего тарифа.

        FAQ: Ответы на частые вопросы

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

        Нет, после выполнения операции УНИЧТОЖИТЬ или прямого удаления через SQL документ нельзя восстановить стандартными средствами. Единственный способ — восстановить базу из резервной копии, созданной до удаления. Если бэкапа нет, обратитесь к специалистам по восстановлению данных (например, в 1С:Франчайзи), но успех не гарантирован.

        Почему после удаления документа в отчётах остаются движения?

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

        1. Выполните Перепроведение документов за период (Администрирование → Обслуживание → Перепроведение документов).
        2. Используйте обработку Корректировка записей регистров для ручного исправления остатков.
        3. В крайнем случае примените Тестирование и исправление ИБ (Администрирование → Тестирование и исправление), выбрав опцию Пересчёт итогов.
        Как удалить помеченный документ в 1С:ЗУП, если он связан с начислениями?

        В 1С:Зарплата и Управление Персоналом документы, влияющие на начисления (например, Приём на работу, Кадровый перевод), блокируются от удаления. Чтобы их удалить:

        1. Сначала удалите все зависимые начисления (через Начисления → История начислений).
        2. Используйте обработку Удаление помеченных объектов с галочкой Игнорировать блокировки (если доступна).
        3. Для сложных случаев создайте документ-аннулятор (например, Увольнение с датой, предшествующей приёму).

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

      Что делать, если после удаления документа появилась ошибка «Не найден объект»?

      Эта ошибка возникает, когда в базе остались ссылки на удалённый документ. Решения:

      • 🔍 Найдите все объекты, ссылающиеся на удалённый документ, через запрос:
        ВЫБРАТЬ
        

        Ссылка КАК Объект

        ИЗ

        РегистрСведений.СсылкиОбъектов КАК СсылкиОбъектов

        ГДЕ

        СсылкиОбъектов.Ссылка = &СсылкаНаУдалённыйДокумент

      • 🛠️ Очистите кэш (Администрирование → Обслуживание → Очистка кэша).
      • 🔄 Выполните Тестирование и исправление ИБ с опцией Реиндексация таблиц.
      • Если ошибка сохраняется, обратитесь к администратору базы для проверки целостности данных.

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

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

      1. Используйте обработку Удаление помеченных объектов (см. Способ 3) с правами администратора.
      2. Настройте регламентное задание для автоматической очистки (например, раз в месяц). Путь: Администрирование → Регламентные задания → Создать.
      3. Для сложных случаев напишите внешнюю обработку с фильтрацией по дате пометки, типу документа или пользователю.

      Пример кода для пакетного удаления всех помеченных документов старше 30 дней:

      Процедура УдалитьСтарыеПомеченныеДокументы()
      

      ДатаГраница = ТекущаяДата() - 30;

      Выборка = Документы.ВыбратьПомеченныеНаУдаление();

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

      Если Выборка.ДатаПометкиУдаления <= ДатаГраница Тогда

      Выборка.Удалить(Истина);

      КонецЕсли;

      КонецЦикла;

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