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