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