Администрирование · 11 мин
Как в 1С очистить удалённые документы
Как в 1С удалить помеченные на удаление документы: монопольный режим, поиск ссылок, обработка ссылочной целостности, типичные ошибки и проверка результата.
В 1С документы не стираются мгновенно: сначала им ставится пометка на удаление, а физическое удаление выполняется отдельной процедурой. Такой двухэтапный механизм защищает базу от случайной потери данных и сохраняет ссылочную целостность — программа проверяет, не используется ли документ в других объектах.
Однако со временем помеченных объектов накапливается много. Они продолжают храниться в базе, раздувают её объём, мешают в отчётах и списках, замедляют обмен данными. Периодическая очистка помеченных документов — обязательная часть регламентного обслуживания базы.
Ниже описан полный цикл работы: от подготовки и поиска помеченных объектов до контрольного удаления и проверки результата. Инструкция подходит для типовых конфигураций на управляемых формах (Бухгалтерия предприятия, Управление торговлей, ERP, ЗУП), где используется стандартная обработка «Удаление помеченных объектов».
Почему документы сначала помечаются, а не удаляются сразу
Пометка на удаление — это промежуточный статус объекта. Документ с пометкой перестаёт проводиться, исключается из движений по регистрам и не влияет на учёт, но физически остаётся в базе вместе со своими данными. Это позволяет в любой момент отменить удаление, если пометка была установлена ошибочно.
Такой подход связан со ссылочной структурой 1С: на документ могут ссылаться другие документы, записи регистров, элементы справочников. Если бы удаление происходило мгновенно, в базе появлялись бы «битые ссылки» — объекты, указывающие на несуществующие данные. Поэтому окончательное удаление выполняется только после проверки всех ссылок.
Практический вывод: пометка на удаление не освобождает место и не ускоряет базу. Пока не выполнена процедура удаления помеченных объектов, данные физически присутствуют в информационной базе.
Подготовка: резервная копия и монопольный доступ
Удаление помеченных объектов — необратимая операция. После неё восстановить документы штатными средствами уже нельзя, только из резервной копии. Поэтому первый шаг — сделать актуальный бэкап: в файловой базе достаточно скопировать файл 1Cv8.1CD, в клиент-серверной — выполнить выгрузку через конфигуратор («Администрирование» → «Выгрузить информационную базу») или средствами СУБД.
Второе условие — монопольный доступ. Обработка удаления не запустится, пока в базе работают другие пользователи или выполняются фоновые задания. Попросите коллег выйти из программы, а в клиент-серверном варианте при необходимости установите блокировку сеансов через консоль кластера или параметр блокировки в свойствах базы.
Также проверьте регламентные задания: обмены данными, загрузка курсов валют, синхронизация с сайтом могут стартовать в процессе удаления и заблокировать процедуру. На время очистки их лучше отключить в разделе «Администрирование» → «Регламентные и фоновые задания».
Как найти помеченные на удаление документы
Прежде чем удалять, полезно оценить масштаб: сколько объектов помечено и какие именно. В типовых конфигурациях на управляемых формах перейдите в раздел «Администрирование» → «Обслуживание» → «Удаление помеченных объектов». Обработка сама просканирует базу и покажет дерево помеченных объектов, сгруппированных по типам: документы, справочники, планы счетов и так далее.
Если нужно посмотреть помеченные документы вручную, откройте журнал документов и включите отбор по служебному признаку пометки на удаление (в настройках списка доступен отбор по полю «Пометка удаления»). Это удобно, когда требуется просмотреть конкретный вид документов перед очисткой.
Обратите внимание на объем: если помеченных объектов десятки тысяч, процедура удаления займёт заметное время — от нескольких минут до часов в больших базах. Планируйте её на нерабочее время.
Откройте обработку удаления и посмотрите количество по каждому типу
Обработка покажет объекты, на которые есть ссылки в других данных
Администрирование → Активные пользователи; все должны выйти
Проверьте дату и целостность последнего бэкапа
Запуск удаления помеченных объектов
Основной способ очистки — штатная обработка. Порядок действий одинаков в большинстве типовых конфигураций.
- 1Сделайте резервную копию базы и убедитесь, что она открывается
- 2Завершите сеансы всех пользователей и отключите регламентные задания
- 3Откройте Администрирование → Обслуживание → Удаление помеченных объектов
- 4Дождитесь поиска помеченных объектов и просмотрите список
- 5Выберите режим: полное удаление всех объектов или выборочное по флажкам
- 6Нажмите «Удалить» и дождитесь завершения процедуры
- 7Изучите отчёт: какие объекты удалены, какие остались из-за ссылок
Обработка предлагает два режима. «Полное удаление» стирает все помеченные объекты, на которые нет ссылок. «Выборочное удаление» позволяет отметить флажками только нужные виды документов — это безопаснее, когда очищать всё подряд нельзя, например помеченные контрагенты должны остаться для разбора.
Во время работы обработки база может заметно «подтормаживать», особенно в файловом варианте. Не прерывайте процесс принудительно: аварийное завершение сеанса во время удаления способно оставить данные в несогласованном состоянии.
Что делать с объектами, которые не удаляются из-за ссылок
После удаления обработка выводит список объектов, которые остались в базе, потому что на них есть ссылки. Это нормальная ситуация: например, на помеченный документ «Поступление товаров» ссылается счёт-фактура или связанный документ оплаты.
Есть два пути. Первый — оставить такие объекты как есть: они не влияют на учёт и не мешают работе. Второй — разорвать ссылки: открыть объекты, которые ссылаются на помеченный документ, и очистить в них соответствующие реквизиты или тоже пометить их на удаление. После этого повторный запуск обработки удалит и исходный документ.
Массово разрывать ссылки вручную трудоёмко. В типовых конфигурациях можно воспользоваться поиском ссылок на объект: выделите документ в списке и вызовите команду поиска ссылок (обычно доступна через меню «Ещё» или контекстное меню), чтобы увидеть полный список зависимых объектов и обработать их по очереди.
Как выбрать действие
Очистка в конфигураторе и особенности файловых и серверных баз
В конфигураторе есть альтернативный путь: меню «Администрирование» → «Удаление помеченных объектов». Механизм тот же, но конфигуратор работает только в монопольном режиме, поэтому для файловых баз этот вариант иногда удобнее — гарантированно никто не мешает процедуре.
Важно понимать: физическое удаление записей не уменьшает файл базы автоматически. В файловом варианте после массовой очистки имеет смысл выполнить тестирование и исправление с включённым сжатием таблиц («Администрирование» → «Тестирование и исправление» в конфигураторе). В клиент-серверных базах на MS SQL или PostgreSQL сжатие и перестроение индексов выполняется средствами СУБД — это задача администратора баз данных.
Для регулярной очистки в типовых конфигурациях можно настроить автоматическое удаление помеченных объектов по расписанию через регламентное задание. Это избавляет от ручной работы, но требует дисциплины: пользователи должны понимать, что помеченный документ исчезнет окончательно при ближайшем запуске задания.
Типичные ошибки и как проверить результат
Самая частая ошибка — запуск удаления без резервной копии «на быстрой базе, где всё знакомо». Вторая по частоте — попытка удалить объекты при работающих пользователях: обработка либо не стартует, либо завершается с ошибками блокировок, и часть объектов остаётся необработанной.
Ещё одна ошибка — ожидание, что после очистки сразу уменьшится размер базы и ускорится работа. Без сжатия таблиц файл базы останется прежним, а прирост скорости заметен только при очень больших объёмах удалённых данных.
После завершения обработки проверьте результат по нескольким контрольным точкам.
Как проверить результат
Все выбранные объекты удалены, остались только объекты со ссылками
Массовые ошибки блокировок — процедура не завершилась
Помеченные документы исчезли из списков
Документы с пометкой по-прежнему видны
Отчёты и обороты совпадают с данными до очистки
Изменились итоги — возможно, удалили непомеченное или есть битые ссылки
Синхронизация проходит без ошибок
Ошибки «объект не найден» в узлах обмена
Если после очистки в отчётах обнаружились расхождения, не пытайтесь «дочистить» ещё что-то: восстановите базу из резервной копии и разберитесь, какие объекты были помечены ошибочно.
Что важно запомнить
Пометка на удаление не очищает базу — нужен запуск обработки «Удаление помеченных объектов». Перед процедурой обязательны резервная копия и монопольный режим. Объекты со ссылками не удалятся, пока ссылки не разорваны. После очистки проверьте отчёт обработки и целостность учёта.
Частые вопросы
Почему документ помечен на удаление, но всё равно виден в списке?
Пометка не скрывает объект из журналов — она лишь исключает его из учёта. Документ исчезнет из списков только после физического удаления через обработку «Удаление помеченных объектов». До этого момента можно настроить отбор в списке, чтобы помеченные объекты не отображались.
Можно ли восстановить документ после удаления помеченных объектов?
Штатными средствами — нет. Восстановление возможно только из резервной копии базы, сделанной до удаления. Именно поэтому бэкап перед процедурой обязателен, а выборочный режим удаления предпочтительнее полного в спорных ситуациях.
Обработка пишет, что требуется монопольный режим, хотя все вышли. Что делать?
Проверьте фоновые и регламентные задания — они создают сеансы без пользователей. В клиент-серверной базе посмотрите список сеансов в консоли кластера: там могут остаться «зависшие» соединения. Завершите их и повторите запуск.
Нужно ли удалять помеченные объекты регулярно?
Да, это часть регламентного обслуживания. Регулярная очистка сдерживает рост базы и упрощает обмены. Удобно настроить автоматическое удаление по расписанию, предупредив пользователей, что пометка означает окончательное удаление при ближайшем запуске задания.
Уменьшится ли размер базы после удаления помеченных документов?
Не сразу. Записи удаляются из таблиц, но файл базы сохраняет прежний размер. В файловом варианте выполните тестирование и исправление со сжатием таблиц, в клиент-серверном — сжатие средствами СУБД.
Что будет, если удалить документы, участвующие в обмене данными?
В узлах обмена могут появиться ошибки «объект не найден» при загрузке ссылок на удалённые документы. Перед очисткой в распределённых базах убедитесь, что обмены завершены успешно, и не удаляйте объекты, зарегистрированные к выгрузке.