Работа с программой 1С:Зарплата и Управление Персоналом (ЗУП) часто сопровождается накоплением помеченных на удаление объектов — сотрудников, документов, справочников. Эти записи занимают место в базе, замедляют работу системы и могут вызывать ошибки при обновлениях или формировании отчетности. Однако просто поставить пометку на удаление недостаточно: объекты продолжают храниться в базе до физического удаления.

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

Материал будет полезен бухгалтерам, кадровикам, администраторам 1С и IT-специалистам, обслуживающим базы ЗУП. Все инструкции актуальны для последних версий платформы 1С:Предприятие 8.3 (включая облачные решения) и конфигураций ЗУП 3.1, ЗУП КОРП, Зарплата и Кадры государственного учреждения.

Почему помеченные объекты не удаляются автоматически

Механизм пометки на удаление в 1С — это защита от случайного удаления критически важных данных. Когда вы нажимаете "Пометить на удаление" в карточке сотрудника или документе, система:

  • 🔹 Не удаляет запись физически, а лишь ставит метку ПометкаУдаления = Истина в служебном поле
  • 🔹 Исключает объект из большинства отчетов и обработок (но не из всех!)
  • 🔹 Сохраняет ссылки на объект в связанных документах (например, в начислениях зарплаты)

Автоматическое удаление не происходит по нескольким причинам:

  1. Целостность данных. Если объект используется в других документах (например, сотрудник указан в ведомостях за прошлые периоды), его физическое удаление нарушит связность базы.
  2. Возможность восстановления. Пометка позволяет отменить удаление в течение регламентного периода (обычно 30 дней).
  3. Производительность. Массовое удаление тысяч записей в рабочее время может заблокировать базу для других пользователей.
💡

Перед массовым удалением помеченных объектов всегда делайте резервную копию базы через Администрирование → Резервное копирование. Восстановление из бэкапа — единственный способ вернуть данные при ошибке.

Способы окончательного удаления помеченных объектов

Существует 4 основных метода для физического удаления помеченных записей. Выбор зависит от ваших прав в системе, версии 1С и количества объектов:

Метод Требуемые права Когда использовать Ограничения
Ручное удаление через интерфейс Полные права или роль "Администратор" Единичные объекты (1-10 записей) Долго для массовых операций
Обработка "Удаление помеченных объектов" Права на администрирование Массовая очистка (100+ записей) Может заблокировать базу
SQL-запрос (прямое удаление) Доступ к СУБД (PostgreSQL, MSSQL) Критические ошибки базы Риск повреждения данных
Регламентное задание Права на настройку заданий Автоматическая очистка по расписанию Не удаляет связанные объекты

Рассмотрим каждый метод подробно, начиная с самого безопасного.

Метод 1: Ручное удаление через интерфейс 1С

Это самый простой способ, подходящий для удаления единичных объектов (например, ошибочно созданного сотрудника или документа). Инструкция:

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

Для документов путь аналогичный: Зарплата → Все документы по зарплате → фильтр по помеченным → удаление.

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

Проверить права пользователя (должна быть галочка "Удаление помеченных объектов")

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

Закрыть все сеансы других пользователей с этим объектом-->

Что делать если кнопка "Удалить помеченные" неактивна?

Если кнопка неактивна, проверьте:

1. Права пользователя — в настройках ролей (Администрирование → Пользователи) должна быть разрешена операция "Удаление помеченных объектов".

2. Блокировки — объект может быть заблокирован другим пользователем (проверьте в Администрирование → Активные пользователи).

3. Связанные данные — если объект используется в неудаленных документах (например, сотрудник есть в текущих начислениях), система заблокирует удаление.

4. Режим работы — в управляемом приложении некоторые операции доступны только в "монопольном" режиме (запуск 1С с ключом /UC).

Метод 2: Массовое удаление через обработку "Удаление помеченных объектов"

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

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

Обратите внимание на ключевые настройки обработки:

  • 🔧 Удалять реквизиты объектов — если включено, очищаются также истории изменений и служебные поля.
  • 🔧 Контролировать ссылки — система проверит, не используются ли объекты в других записях.
  • 🔧 Режим удаления — "Быстрое" (только пометка) или "Полное" (физическое удаление).

Раз в месяц

Раз в квартал

Только при ошибках

Никогда не очищаю-->

⚠️ Внимание: Обработка может занять несколько часов для больших баз (100 000+ записей). Запускайте ее вне рабочего времени (вечером или в выходные), так как в процессе очистки база блокируется для других пользователей. Прерывание операции (например, закрытие 1С) может привести к повреждению данных.

Метод 3: Прямое удаление через SQL-запросы (для администраторов)

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

  • 🛑 Стандартные методы не работают из-за ошибок базы.
  • 🛑 Нужно удалить объекты, заблокированные системой.
  • 🛑 Требуется очистка служебных таблиц (например, _AccumRgT{ГУИД} для регистров накопления).

Пример запроса для PostgreSQL (удаление помеченных сотрудников):

DELETE FROM "Справочник.Сотрудники"

WHERE "ПометкаУдаления" = TRUE

AND "Ссылка" NOT IN (

SELECT DISTINCT "Сотрудник_Key"

FROM "Документ.НачислениеЗарплаты"

WHERE "ПометкаУдаления" = FALSE

);

Для Microsoft SQL Server синтаксис аналогичен, но имена таблиц могут отличаться (используйте INFORMATION_SCHEMA.TABLES для поиска).

⚠️ Внимание: Перед выполнением SQL-запросов:
  1. Отключите всех пользователей от базы.
  2. Сделайте полный бэкап через pg_dump (PostgreSQL) или SQL Server Management Studio.
  3. Проверьте запрос на тестовой копии базы.
  4. Используйте транзакции (BEGIN; ... COMMIT;), чтобы откатить изменения при ошибке.
💡

SQL-запросы следует использовать ТОЛЬКО если вы понимаете структуру базы данных 1С. Ошибка в запросе может привести к потере критически важных данных, не подлежащих восстановлению.

Метод 4: Автоматическая очистка через регламентные задания

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

  1. Перейдите в Администрирование → Поддержка и обслуживание → Регламентные задания.
  2. Создайте новое задание с типом УдалениеПомеченныхОбъектов.
  3. Укажите расписание (рекомендуемое время — 2-4 часа ночи в выходные дни).
  4. В параметрах задания выберите типы объектов для очистки (например, только справочники или только документы старше 6 месяцев).

Преимущества метода:

  • Автоматизация — не требует ручного контроля.
  • 📅 Гибкость — можно настроить очистку только устаревших данных (например, документов старше 3 лет).
  • 🔒 Безопасность — задание выполняется в фоновом режиме без блокировки пользователей.

Ограничения:

  • ❌ Не удаляет объекты, используемые в текущих периодах (например, сотрудников с активными начислениями).
  • ❌ Не очищает служебные таблицы (требуется отдельная обработка для регистров).

Частые ошибки и как их избежать

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

Ошибка Причина Решение
"Объект используется в документе X" Сотрудник или справочник связан с неудаленными записями Сначала удалите или перенастройте зависимые документы
"Недостаточно прав" У пользователя нет роли "Администратор" или "Полные права" Запросите права у администратора или запустите 1С в режиме конфигуратора
"База заблокирована" Другой пользователь работает с теми же данными Дождитесь завершения сеансов или запустите удаление в монопольном режиме
"Ошибка контроля ссылочной целостности" Повреждение базы или некорректное удаление через SQL Выполните Тестирование и исправление базы в конфигураторе

Специфическая ошибка для ЗУП 3.1:

⚠️ Внимание: При удалении помеченных сотрудников в ЗУП 3.1 может возникать ошибка "Не найден план видов расчета для физического лица". Это связано с тем, что система пытается пересчитать регистры накопления для удаляемых записей. Решение:
  1. Отключите флаг "Пересчитывать регистры" в настройках обработки удаления.
  2. Или предварительно удалите все начисления по этому сотруднику через Зарплата → Все начисления.

Как восстановить случайно удаленные данные

Если вы удалили объекты, которые еще нужны, есть 3 способа восстановления:

  1. Откат через резервную копию:
    • 🔄 Восстановите базу из бэкапа (если он сделан до удаления).
    • 🔄 Используйте инструменты 1C:Repair или V8Unpack для извлечения отдельных объектов.
  • Восстановление через журнал регистрации:
    • 📜 Откройте Администрирование → Журнал регистрации.
    • 📜 Найдите событие удаления и посмотрите ID объекта.
    • 📜 Используйте обработку "Восстановление удаленных объектов" (доступна в 1C:ИТС).
    • Ручное создание дубликата:
      • 📝 Если нет бэкапа, создайте новый объект с теми же реквизитами.
      • 📝 Для документов используйте механизм "Копировать из" (доступен в журнале документов).

    Важно: Восстановление через журнал регистрации возможно только если:

    • 🔹 В настройках 1С включена запись событий удаления (Администрирование → Настройки журнала регистрации).
    • 🔹 Прошло не более 30 дней с момента удаления (срок хранения логов по умолчанию).

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

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

    Нет, для окончательного удаления требуются права "Администрирование" или роль "Полные права". Однако вы можете:

    • 🔹 Просматривать помеченные объекты (если разрешено в настройках ролей).
    • 🔹 Ставить пометку на удаление (но не удалять физически).
    • 🔹 Обратиться к администратору с запросом на очистку.
    Сколько времени занимает массовое удаление 10 000 записей?

    Время зависит от:

    • 🔹 Конфигурации сервера: на SSD-дисках и с 16+ ГБ ОЗУ — 10-30 минут; на слабых машинах — до 2-3 часов.
    • 🔹 Типа объектов: справочники удаляются быстрее, чем документы с регистрами.
    • 🔹 Настроек СУБД: в PostgreSQL включите maintenance_work_mem = 256MB для ускорения.

    Рекомендуем тестировать скорость на тестовой базе перед очисткой рабочей.

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

    Физическое удаление записей не всегда сокращает размер файла базы, потому что:

    1. 1С использует транзакционный механизм: данные помечаются как свободные, но место не освобождается сразу.
    2. СУБД резервирует пространство: например, PostgreSQL не уменьшает файлы таблиц автоматически.
    3. Индексы и служебные таблицы занимают значительный объем.

    Чтобы реально уменьшить размер базы:

    • 🔹 Выполните VACUUM FULL (PostgreSQL) или Shrink Database (MSSQL).
    • 🔹 Используйте обработку "Сжатие информационной базы" из 1C:ИТС.
    Можно ли удалить помеченные объекты в облачной версии 1С?

    В 1С:Fresh и других облачных решениях:

    • ✅ Доступна стандартная обработка "Удаление помеченных объектов" (в разделе "Администрирование").
    • ❌ Запрещены SQL-запросы и прямое вмешательство в базу.
    • ⚠️ Массовые операции могут быть ограничены тарифом (проверьте лимиты в личном кабинете).

    Для критичных операций рекомендуем:

    1. Создать запрос в техническую поддержку 1С с просьбой выполнить очистку.
    2. Использовать тестовый период облака для проверки последствий удаления.
    Как удалить помеченные объекты в ЗУП 2.5 (устаревшая версия)?

    В ЗУП 2.5 алгоритм аналогичен, но есть особенности:

    • 🔹 Обработка удаления находится в Сервис → Удаление помеченных объектов.
    • 🔹 Нет регламентных заданий — очистку придется запускать вручную.
    • 🔹 При удалении сотрудников обязательно проверяйте регистр "СотрудникиОрганизаций", так как в 2.5 он не всегда очищается автоматически.
    ⚠️ Внимание: ЗУП 2.5 не поддерживается с 2021 года. Для работы с актуальными отчетами (например, по СЗВ-ТД или 6-НДФЛ) рекомендуем обновиться до ЗУП 3.1.