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