К статье
Практический материал

Администрирование · 11 мин

Как удалить объекты с пометкой на удаление в 1С

Как удалить объекты с пометкой на удаление в 1С: обработка «Удаление помеченных объектов», монопольный режим, контроль ссылочной целостности и типичные ошибки.

В 1С объекты не удаляются из базы мгновенно: сначала документу, элементу справочника или файлу ставится пометка на удаление, а физическое удаление выполняется отдельной процедурой. Такой двухэтапный механизм защищает данные от случайной потери — пока стоит только пометка, объект можно восстановить одним действием. Но со временем помеченные объекты накапливаются, занимают место в базе и мешают в отчётах.

Запрос «удалить файлы с пометкой на удаление» обычно означает одно из двух: либо нужно окончательно удалить помеченные элементы справочника «Файлы» (присоединённые файлы в типовых конфигурациях), либо вообще все помеченные объекты — документы, справочники, планы счетов. В обоих случаях используется одна и та же штатная обработка «Удаление помеченных объектов», разница только в том, какие объекты вы отметите к удалению.

Важно понимать: окончательное удаление — необратимая операция. Перед запуском убедитесь, что у вас есть свежая резервная копия базы, а все пользователи завершили работу, если потребуется монопольный доступ.

Что такое пометка на удаление и почему объекты не исчезают сразу

Пометка на удаление — это служебный признак объекта, а не само удаление. Когда вы нажимаете «Удалить» в списке документов или справочника, 1С лишь устанавливает этот признак: объект перестаёт участвовать в движениях и отборах, но физически остаётся в базе. Повторное нажатие снимает пометку, и объект полностью восстанавливается.

Такое поведение объясняется ссылочной структурой данных. На один элемент справочника могут ссылаться десятки документов, на документ — записи регистров. Если бы удаление происходило мгновенно, в базе появлялись бы «битые ссылки» — ссылки на несуществующие объекты. Поэтому физическое удаление выполняется только после проверки, не используется ли объект где-либо ещё.

Для присоединённых файлов действует то же правило. Элемент справочника «Файлы» (или «Присоединенные файлы» конкретного объекта) помечается на удаление, а само содержимое файла остаётся в информационной базе или в томе на диске до запуска процедуры окончательного удаления.

Подготовка перед удалением

Первый шаг — резервная копия. Для файловой базы достаточно скопировать файл 1Cv8.1CD при закрытой программе или сделать выгрузку через конфигуратор (меню «Администрирование» → «Выгрузить информационную базу»). Для клиент-серверной базы используйте штатные средства СУБД или выгрузку в dt. Без копии ошибочное удаление необратимо.

Второй шаг — завершение работы пользователей. Обработка «Удаление помеченных объектов» требует монопольного доступа к базе: если кто-то работает, удаление не запустится или завершится с ошибкой. В файловом режиме проверьте активные сеансы через «Администрирование» → «Активные пользователи», в клиент-серверном — через консоль кластера.

Третий шаг — убедитесь, что у вашей учётной записи есть права на удаление. Обычно требуется роль «Администратор системы» или «Полные права». Если обработка не открывается или кнопки неактивны — это признак недостатка прав, а не сбоя программы.

Окончательное удаление через обработку «Удаление помеченных объектов»

В типовых конфигурациях (Бухгалтерия предприятия, Управление торговлей, ERP, Зарплата и управление персоналом) обработка находится в разделе «Администрирование» → «Обслуживание» → «Удаление помеченных объектов». В некоторых версиях путь выглядит как «НСИ и администрирование» → «Поддержка и обслуживание». Если найти не удаётся, воспользуйтесь поиском по команде «удаление помеченных» в меню «Все функции» или строке поиска команд.

После запуска обработка предложит два режима: автоматическое удаление всех помеченных объектов или выборочное удаление. В автоматическом режиме программа удалит всё, что помечено, и на что нет ссылок. В выборочном режиме вы увидите дерево помеченных объектов и сможете отметить флажками только нужные — например, исключительно файлы, не трогая документы.

Далее нажмите «Удалить». Программа выполнит контроль ссылочной целостности: для каждого объекта проверит, нет ли на него ссылок из других объектов. Объекты без ссылок будут удалены, для остальных появится список мест использования. Процесс на больших базах может занять заметное время — не прерывайте его принудительно.

Порядок действий
  1. 1
    Сделайте резервную копию базы и завершите сеансы пользователей
  2. 2
    Откройте «Администрирование» → «Обслуживание» → «Удаление помеченных объектов»
  3. 3
    Выберите режим: автоматический или выборочный (для выборочного отметьте нужные объекты, например файлы)
  4. 4
    Нажмите «Удалить» и дождитесь контроля ссылочной целостности
  5. 5
    Просмотрите список неудалённых объектов и мест их использования
  6. 6
    Подтвердите завершение и проверьте результат в списках

Как удалить именно помеченные файлы

Присоединённые файлы в типовых конфигурациях хранятся как элементы справочников: «Файлы», «Присоединенные файлы» или специализированные справочники вида «<Имя объекта> присоединенные файлы». Чтобы пометить файл на удаление, откройте карточку объекта-владельца (например, номенклатуры), перейдите к списку присоединённых файлов и установите пометку на нужные элементы. Можно также открыть общий список через «Все функции» → «Справочники» → «Файлы».

После пометки запустите «Удаление помеченных объектов» в выборочном режиме и в дереве объектов отметьте только ветки, относящиеся к файлам. Это безопаснее автоматического режима, если в базе есть помеченные документы или справочники, которые удалять пока рано.

Учтите особенность хранения: если в настройках программы файлы хранятся «в томах на диске», окончательное удаление элемента справочника удалит и физический файл из тома. Если файлы хранятся в информационной базе — удалится запись в базе. В обоих случаях восстановление возможно только из резервной копии.

Что делать, если объект не удаляется

Самая частая ситуация — обработка сообщает, что объект не удалён, потому что на него есть ссылки. В списке мест использования видно, какие документы или записи регистров ссылаются на объект. Варианты действий: удалить или перепровести ссылающиеся документы, заменить в них ссылку на другой элемент либо отказаться от удаления этого объекта.

Если ошибка звучит как «нарушение прав доступа» или обработка недоступна — проверьте права пользователя. Если сообщение говорит о невозможности монопольного доступа — в базе остались активные сеансы, включая фоновые задания и сеансы веб-сервисов. Завершите их и повторите попытку.

Отдельный случай — помеченные объекты, участвующие в обмене данными (РИБ, обмен с другими программами). Удаление таких объектов может привести к рассинхронизации узлов обмена. Перед удалением убедитесь, что изменения выгружены во все узлы, либо согласуйте удаление с администратором обмена.

Типичные ошибки
01
Удаление без резервной копии — при ошибке данные теряются безвозвратно
02
Автоматический режим вместо выборочного — удаляются все помеченные объекты, включая те, что хотели оставить
03
Попытка удалить файлы вручную из тома на диске — в базе остаются ссылки, а файлы становятся недоступны из карточек
04
Игнорирование списка мест использования — объект остаётся в базе, а пользователь считает его удалённым
05
Прерывание обработки на большой базе — часть объектов удалена, часть нет, итоговое состояние непредсказуемо

Альтернативные способы и особые сценарии

Удаление через конфигуратор

В конфигураторе есть команда «Администрирование» → «Удаление помеченных объектов» с аналогичной логикой. Этот способ удобен, когда пользовательский интерфейс недоступен или нужно работать в монопольном режиме с блокировкой сеансов. Порядок тот же: выбор объектов, контроль ссылок, удаление.

Программное удаление

Разработчик может удалить помеченные объекты кодом на встроенном языке с помощью метода УдалитьОбъекты() или обхода справочника с вызовом Удалить() у объекта. Этот путь оправдан для регламентных заданий очистки, но требует аккуратности: метод без контроля ссылок создаст битые ссылки. Для массовой чистки файлов часто пишут обработку, которая удаляет помеченные элементы справочника «Файлы» старше заданной даты.

Регламентная очистка

В некоторых конфигурациях есть настройки автоматической очистки устаревших данных. Если помеченные файлы копятся регулярно, имеет смысл настроить расписание запуска удаления в нерабочее время — это снижает риск конфликтов с сеансами пользователей и не даёт базе разрастаться.

Сравнение способов удаления

Обработка в режиме предприятия

Подходит большинству пользователей; наглядный контроль ссылок, но требует открытия программы

Удаление через конфигуратор

Для администратора; удобно при монопольном режиме, но нет привычного интерфейса списков

Программное удаление

Для автоматизации и регламентных задач; требует навыков разработки и тщательного тестирования

Проверка результата и уход за базой после удаления

После завершения обработки откройте список соответствующих объектов и включите отображение помеченных: удалённые элементы должны отсутствовать. Для файлов дополнительно проверьте пару карточек владельцев — ссылки на удалённые файлы не должны отображаться или должны быть очищены.

Физический размер файловой базы после удаления может не уменьшиться сразу: освобождённое место остаётся зарезервированным внутри файла 1Cv8.1CD. Чтобы реально сжать базу, выполните тестирование и исправление с включённой опцией сжатия таблиц либо выгрузите базу в dt и загрузите обратно. Для клиент-серверных баз аналогичную операцию выполняют средствами СУБД.

Контрольные точки

Как проверить результат

Список помеченных объектов
Норма

Удалённые объекты отсутствуют в списке даже с отбором по пометке

Тревожный признак

Объекты на месте — удаление не выполнено или отменено

Места использования
Норма

Обработка не показывает неудалённые объекты

Тревожный признак

Есть список ссылок — нужно разобрать их и повторить удаление

Размер базы после сжатия
Норма

Файл базы уменьшился после сжатия таблиц

Тревожный признак

Размер прежний — сжатие не выполнялось или удалено мало данных

Если после удаления в отчётах или карточках появляются записи вида «<Объект не найден>», значит, объект был удалён без контроля ссылок — например, программным способом. Такие битые ссылки устраняют заменой ссылок штатной обработкой «Поиск и удаление дублей» либо восстановлением из резервной копии.

Итог

Что важно запомнить

Пометка на удаление — не удаление. Окончательно объекты и файлы удаляются обработкой «Удаление помеченных объектов» после контроля ссылок. Перед запуском — резервная копия и монопольный режим, после — проверка списков и, при необходимости, сжатие базы.

Частые вопросы

Можно ли восстановить объект после окончательного удаления?

Штатными средствами — нет. Единственный способ — восстановить базу из резервной копии, сделанной до удаления. Именно поэтому копия перед запуском обработки обязательна.

Почему обработка не запускается и пишет про монопольный режим?

В базе есть активные сеансы: другие пользователи, фоновые задания, открытые подключения. Завершите сеансы через список активных пользователей или консоль кластера и повторите попытку.

Файлы хранятся в томах на диске. Можно ли просто удалить их из папки?

Нет. Элемент справочника останется в базе и будет ссылаться на несуществующий файл — при открытии карточки пользователь получит ошибку. Удаляйте файлы только через пометку и обработку «Удаление помеченных объектов», тогда 1С корректно очистит и запись, и файл в томе.

Что делать с объектами, на которые есть ссылки, но удалить их нужно?

Откройте список мест использования в обработке и разберите каждую ссылку: удалите лишние документы, замените элемент в карточках на актуальный. После этого повторите удаление. Принудительное удаление в обход контроля создаст битые ссылки.

Как удалить только старые помеченные файлы, не трогая свежие?

Штатная обработка не фильтрует по дате пометки. Используйте выборочный режим и отметьте нужные элементы вручную, либо при больших объёмах закажите у разработчика обработку с отбором по дате изменения.

Нужно ли удалять помеченные объекты регулярно?

Да, это полезная практика: помеченные объекты занимают место и замедляют некоторые операции. Разумный подход — периодическая очистка в нерабочее время с обязательной резервной копией перед каждым запуском.