Как очистить базу 1С 8.2 от объектов с пометкой удаления
Содержание
В 1С 8.2 с обычными формами (БП 2.0, ЗУП 2.5, УТ 10.3) помеченные объекты удаляют через меню Операции → Удаление помеченных объектов: кнопка «Контроль» проверяет ссылки, кнопка «Удалить» стирает всё, на что никто не ссылается. В управляемом приложении на 8.2 та же команда находится в Все функции → Стандартные → Удаление помеченных объектов.
Статья про платформу 8.2. Пометка удаления сама по себе ничего не стирает: элемент или документ остаётся в базе, просто перечёркнут красным крестом. Чтобы данные ушли физически, нужен отдельный запуск удаления. Сделать это без потерь можно за один вечер, если заранее подготовить копию и предупредить пользователей.
Подготовка базы 1С 8.2 к удалению помеченных объектов
Удаление необратимо. Отменить его кнопкой нельзя, вернуть данные можно только из копии.
Сделайте резервную копию
Перед удалением обязательно выгрузите базу в файл .dt.
- Запустите базу в режиме «Конфигуратор».
- Откройте
Администрирование → Выгрузить информационную базу. - Укажите папку и имя файла, например
buh_2026-10-07.dt. - Дождитесь сообщения о завершении выгрузки.
Для файловой базы можно дополнительно скопировать каталог с файлом 1Cv8.1CD, но только когда в базе никто не работает
. Для клиент-серверной базы надёжнее полная копия средствами SQL-сервера.
Попросите пользователей выйти
Удаление в 8.2 удобнее всего выполнять, когда в базе никого нет. Окно удаления предлагает установить монопольный режим, а он не включится, пока открыты чужие сеансы.
- 🕐 планируйте работу на вечер или выходной;
- 📢 предупредите бухгалтерию заранее, а не за пять минут;
- 🖥️ в клиент-серверной базе проверьте список сеансов в консоли администрирования кластера.
Принудительное завершение чужого сеанса обрывает работу пользователя: незаписанный документ пропадёт. Делайте это только после предупреждения.
Проверьте права
Запускать удаление должен пользователь с полными правами. Для самой операции нужно право «Интерактивное удаление помеченных» на объекты, а для монопольного режима — право «Монопольный режим». В типовых конфигурациях оба входят в роль «Полные права».
Посмотрите, что именно помечено
Полезно заранее пройтись по спискам и проверить пометки. Частая история: кто-то пометил контрагента по ошибке, а через полгода его удалили вместе с историей. Если элемент нужен, снимите пометку: в 8.2 это то же действие, что и установка, — клавиша Delete или команда «Установить пометку удаления» на выделенной строке переключает её туда и обратно.
Как удалить помеченные объекты в 1С 8.2 через меню программы
Порядок для обычного приложения — самого распространённого варианта на 8.2.
Пошагово
- Запустите 1С:Предприятие под администратором.
- Откройте
Операции → Удаление помеченных объектов. - На вопрос об установке монопольного режима ответьте «Да». Если режим не установился, работайте дальше только после того, как выйдут остальные пользователи.
- Программа соберёт список всех помеченных объектов и покажет его деревом по видам: справочники, документы, планы видов характеристик и так далее.
- Галочками отметьте, что удалять. По умолчанию отмечено всё.
- Нажмите «Контроль». Платформа проверит, ссылаются ли на эти объекты другие данные.
- Посмотрите результат: объекты без ссылок будут готовы к удалению, а у остальных в нижней части окна появится список того, что мешает.
- Нажмите «Удалить». Стираются только те объекты, на которые никто не ссылается.
На базе в несколько гигабайт контроль может идти от десятков минут до нескольких часов. Не закрывайте окно и не перезагружайте компьютер: прервав операцию, вы просто начнёте её заново.
Если помеченных объектов тысячи, снимите галочки с больших групп и удаляйте частями: сначала документы, потом справочники. Так быстрее видно, что застряло.
В управляемом приложении 8.2
Конфигурации на управляемых формах (первые релизы БП 3.0, УТ 11) на платформе 8.2 используют ту же стандартную обработку, но вызывают её иначе:
| Вариант интерфейса | Где команда |
|---|---|
| Обычное приложение | Операции → Удаление помеченных объектов |
| Управляемое приложение | Все функции → Стандартные → Удаление помеченных объектов |
| Своя обработка конфигурации | в разделе администрирования или сервиса, если разработчик её добавил |
Логика та же: список, проверка ссылок, удаление того, что можно удалить.
Как работает контроль ссылок при удалении
Главное правило платформы: объект не удалится, пока на него ссылается хотя бы один не удаляемый объект.
Что считается ссылкой
- 📄 документ, где в реквизите указан помеченный контрагент или номенклатура;
- 📚 элемент справочника, у которого помеченный объект выбран в поле, например договор с помеченным владельцем;
- 📊 запись регистра сведений или движение регистра с этим значением в измерении или ресурсе;
- 🔗 табличная часть любого объекта, где этот элемент выбран в строке.
Почему порядок удаления не важен
Если удаляются оба объекта сразу — например, помеченный документ и помеченный контрагент из него, — платформа учитывает это. Ссылка из удаляемого документа не мешает удалить контрагента , потому что документ тоже уйдёт.
Проблема возникает только тогда, когда ссылающийся объект пометки не имеет. Тогда в нижней части окна вы увидите, кто держит объект, и сможете открыть этот документ двойным щелчком.
Что делать с найденными ссылками
| Ситуация | Что сделать |
|---|---|
| Ссылается ненужный документ | пометить его на удаление и повторить контроль |
| Ссылается нужный документ, а объект — дубль | заменить в документе дубль на правильный элемент |
| Дублей много | использовать обработку поиска и замены значений |
| Объект всё-таки нужен | снять с него пометку удаления |
Помеченный на удаление проведённый документ уже не проведён: при установке пометки платформа отменяет его проведение и удаляет движения. Если документ пометили по ошибке, после снятия пометки его надо провести заново.
Стандартная обработка «Удаление помеченных объектов»: тонкости
Кроме платформенной команды, в 8.2 бывают и другие инструменты. Важно понимать разницу.
Платформенная команда и обработки конфигураций
Команда в меню Операции — часть самой платформы, она есть в любой конфигурации на обычных формах. Некоторые конфигурации на управляемых формах добавляют свою обработку с тем же названием: она работает поверх платформенного механизма и обычно предлагает выбор между полным и выборочным удалением.
Замена дублей перед удалением
Типичная задача: в справочнике «Номенклатура» три карточки одного товара, две из них лишние. Если просто пометить дубли, они не удалятся — на них ссылаются накладные.
Решение в три шага:
- Определите один правильный элемент.
- Обработкой поиска и замены значений (она входит в набор стандартных обработок с диска ИТС) замените ссылки на дубли ссылкой на правильный элемент.
- Пометьте дубли и запустите удаление.
Чем опасно непосредственное удаление
В 8.2 можно стереть объект сразу, без пометки, если у пользователя есть право «Интерактивное удаление». В списке это делается сочетанием Shift+Delete.
Проверки ссылок при этом нет. Документы, где был выбран удалённый элемент, начнут показывать в поле <Объект не найден> с длинным идентификатором. То же происходит, если программист удаляет объекты кодом через метод Удалить().
Отключите право «Интерактивное удаление» у всех ролей, кроме администратора. Пусть пользователи только ставят пометки, а удаляет один человек после контроля.
Очистка базы в режиме Конфигуратора
Удалить помеченные объекты в Конфигураторе нельзя: такой команды там нет. Но Конфигуратор нужен до и после удаления.
Тестирование и исправление
Инструмент находится в Администрирование → Тестирование и исправление. Он требует монопольного доступа к базе.
Что отметить для очистки после удаления:
- ✅ «Реиндексация таблиц информационной базы»;
- ✅ «Проверка логической целостности информационной базы»;
- ✅ «Проверка ссылочной целостности информационной базы»;
- ✅ «Пересчёт итогов»;
- ✅ «Сжатие таблиц информационной базы».
Режимы исправления битых ссылок
При проверке ссылочной целостности программа спрашивает, что делать со ссылками на несуществующие объекты. Варианты:
| Режим | Что произойдёт | Когда выбирать |
|---|---|---|
| Создавать объекты | на месте пропавшего появится пустой элемент-заглушка | если хотите потом разобраться, что было |
| Очищать ссылки | поле в документах станет пустым | если ссылки точно мусорные |
| Не изменять | только отчёт о проблемах | для первичной диагностики |
Начинайте с «Не изменять»: посмотрите протокол и только потом выбирайте исправление. Режим «Очищать ссылки» опасен для проведённых документов: пустой контрагент в старой накладной может исказить отчёты прошлых периодов.
Перезагрузка через .dt
Для файловой базы есть ещё один способ освободить место: выгрузить базу
в .dt и загрузить её обратно в новый пустой каталог. Файл 1Cv8.1CD создаётся заново, без «дыр» от удалённых записей.
Загрузка .dt полностью заменяет данные базы, куда вы загружаете. Загружайте только в новую пустую базу или в ту, которую точно можно перезаписать.
Если помеченные объекты не удаляются: ошибки и решения
Если не помогло
- 🔍 Найдите, кто ссылается на объект, через нижнюю панель окна удаления и откройте этот объект: иногда ссылка спрятана в табличной части или в записи регистра сведений.
- 🧹 Запустите «Тестирование и исправление» с проверкой ссылочной целостности в режиме «Не изменять» — протокол покажет повреждённые ссылки.
- 💾 Если база повреждена и удаление падает с ошибкой, восстановите её из .dt, сделанного на шаге подготовки, и повторите процедуру после тестирования.
Как вернуть базе скорость после удаления данных
Удаление записей не уменьшает размер базы автоматически. Файл или таблицы SQL держат освобождённое место за собой.
Файловая база
- Выполните «Тестирование и исправление» со «Сжатием таблиц информационной базы».
- Сравните размер файла
1Cv8.1CDдо и после. - Если сжатие почти ничего не дало, перезагрузите базу через .dt в новый каталог.
Клиент-серверная база
Место в базе SQL освобождается средствами самого сервера СУБД. Попросите администратора:
- 📉 обновить статистику и перестроить индексы после массового удаления;
- 💽 при необходимости сжать файлы базы данных;
- 🗓️ настроить регулярный план обслуживания, если его ещё нет.
Итоги регистров
После удаления большого количества документов пересчитайте итоги. В обычном приложении это делается через «Тестирование и исправление» с пунктом «Пересчёт итогов». Отчёты будут считать остатки быстрее, а расхождения между итогами и движениями исчезнут.
Как не копить мусор
- 📅 удаляйте помеченные объекты регулярно: раз в месяц или после закрытия квартала;
- 👤 закрепите операцию за одним администратором;
- 🔒 у рядовых пользователей оставьте только право ставить пометку.