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