Очистка базы 1С:Предприятие: от удаления документов до пустой копии
Содержание
Стереть базу 1С так, чтобы осталась рабочая конфигурация без документов и справочников, проще всего двумя путями. Первый — сохранить конфигурацию
в файл .cf и создать из неё новую пустую информационную базу. Второй — очистить данные внутри базы: снять проведение, пометить объекты на удаление и запустить Удаление помеченных объектов.
Какой путь выбрать, зависит от задачи. Нужно убрать тестовые документы за пару месяцев и сохранить справочники — чистите внутри базы. Нужна «голая» база под новую организацию — проще создать пустую. Ниже оба способа, плюс серверный вариант через консоль кластера и честный разбор, почему прямые SQL-запросы к таблицам 1С почти всегда плохая идея.
Перед тем как очищать базу 1С: копия и выбор способа
Любая очистка необратима. Удалённые объекты не попадают в «корзину», и отменить удаление нельзя.
Сначала выгрузите базу в .dt или сделайте резервную копию средствами СУБД — без этого не начинайте.
Как сделать копию:
- Откройте базу в Конфигураторе.
- Выберите
Администрирование → Выгрузить информационную базу…. - Укажите путь и имя файла, например
D:\backup\buh_2026-10-07.dt. - Дождитесь сообщения о завершении выгрузки.
Для файловой базы есть дополнительный простой вариант: при закрытых сеансах скопировать каталог базы целиком, вместе с файлом 1Cv8.1CD.
Выгрузка в .dt требует монопольного доступа. Все пользователи должны выйти из базы, иначе Конфигуратор сообщит об ошибке установки монопольного режима.
Дальше выберите способ по задаче:
| Способ | Когда подходит | Что остаётся | Риски |
|---|---|---|---|
| Удаление помеченных объектов | Убрать часть документов, тестовые данные | Конфигурация, нужные справочники, настройки | Долго на больших базах, мешают ссылки |
| Пустая база из .cf | Нужна полностью чистая база | Только конфигурация | Пропадают пользователи и настройки |
| Консоль кластера, «Очистить базу данных» | Серверная база, нужно стереть всё | Пустая база данных на СУБД | Стирается и конфигурация |
| SQL-запросы к таблицам | Почти никогда | Непредсказуемо | Разрушение ссылочной целостности |
Штатная очистка базы 1С: пометка и удаление объектов
Это основной способ стереть данные в базе 1С, не трогая конфигурацию. Он работает во всех типовых конфигурациях на управляемых формах: БП 3.0, ЗУП 3.1, УТ 11 и других. Программа сама проверяет ссылки и не даст удалить то, на что ещё что-то ссылается.
Шаг 1. Снимите проведение документов
Проведённый документ хранит движения в регистрах. Удалять его можно и с проведением: движения уйдут вместе с ним. Но на больших объёмах удобнее сначала отменить проведение пакетом.
- Откройте журнал нужных документов, например
Банк и касса → Банковские выписки. - Отберите документы по периоду через
Ещё → Установить период. - Выделите строки:
Ctrl+Aдля всего списка илиShift+ щелчок для диапазона. - В меню
Ещёвыберите отмену проведения.
Шаг 2. Поставьте пометку на удаление
Выделенные документы помечаются клавишей Delete или командой Ещё → Пометить на удаление / Снять пометку. Помеченная строка отображается с красным крестиком на значке.
Со справочниками так же: откройте список, выделите элементы, нажмите Delete. Предопределённые элементы (основная касса, некоторые виды операций) пометить не получится — это нормально, они нужны конфигурации.
Документы помечайте раньше справочников. Пока на контрагента ссылается хоть один непомеченный документ, удалить контрагента не выйдет.
Шаг 3. Запустите удаление помеченных объектов
В БП 3.0 и других конфигурациях на БСП обработка находится в Администрирование → Обслуживание, в группе корректировки данных. Если раздел у вас выглядит иначе, откройте её через меню Все функции → Стандартные → Удаление помеченных объектов.
Команду Все функции включают в настройках интерфейса: значок шестерёнки в правом верхнем углу → Настройки… → флажок «Отображать команду «Все функции»».
Порядок работы:
- Выберите режим удаления: всех помеченных или с выбором объектов.
- Нажмите кнопку удаления и дождитесь окончания проверки ссылок.
- Посмотрите список объектов, которые не удалились, и причины.
Если объекты не удаляются
Обработка показывает, кто держит объект. Типичные «держатели»:
- 🔗 непомеченный документ, где выбран удаляемый контрагент или номенклатура;
- 🔗 записи регистров сведений, например цены номенклатуры или курсы;
- 🔗 настройки пользователей и реквизиты других справочников;
- 🔗 сам объект предопределённый — такой не удаляется вовсе.
Пометьте держателей или уберите ссылку в них, затем повторите удаление. На базе в несколько гигабайт полный проход занимает часы, поэтому запускайте его вечером, когда никто не работает .
Ручная чистка в режиме 1С:Предприятие
Не всё в базе удаляется через пометку. Регистры сведений, константы и служебные данные пометки на удаление не имеют.
Что и как чистится вручную:
- 📋 Независимые регистры сведений (цены, курсы валют). Откройте регистр через
Все функции → Регистры сведений, выделите записи и удалите их клавишейDelete— запись удаляется сразу, без пометки. - 📋 Константы — откройте
Все функции → Константыи очистите значения. Учётную политику и параметры организаций лучше править в их формах, а не через константы. - 📋 Регистры накопления и бухгалтерии — напрямую не чистятся. Их записи принадлежат документам-регистраторам и уходят вместе с ними.
- 📋 Пользователи программы — справочник
Администрирование → Настройки пользователей и прав → Пользователи. Лишних отключите или пометьте на удаление.
Удаление записей регистра сведений происходит сразу и без проверки ссылок. Перед массовым удалением курсов или цен проверьте, что выделены именно нужные строки.
Ручной режим хорош для точечной работы. Если удалить нужно почти всё, это слишком долго — переходите к пустой базе.
Как полностью стереть данные базы 1С и сохранить конфигурацию
Самый надёжный способ получить чистую базу — не чистить старую, а создать новую с той же конфигурацией. Никаких хвостов в регистрах, никаких висящих ссылок.
Сохраните конфигурацию
- Откройте базу в Конфигураторе.
- Выберите
Конфигурация → Сохранить конфигурацию в файл…. - Сохраните
.cf, напримерD:\backup\buh.cf.
Если в базе подключены расширения, выгрузите и их: Конфигурация → Расширения конфигурации, затем для каждого расширения сохранение в файл .cfe.
Создайте пустую базу
- В окне запуска 1С нажмите
Добавить… → Создание новой информационной базы. - Выберите создание базы без конфигурации.
- Укажите каталог (для файловой) или сервер и имя базы (для клиент-серверной).
- Откройте новую базу в Конфигураторе и выполните
Конфигурация → Загрузить конфигурацию из файла…, выбрав сохранённый.cf. - Согласитесь на обновление конфигурации базы данных.
- Загрузите расширения из
.cfe, если они были.
При первом запуске в режиме 1С:Предприятие типовая конфигурация заполнит начальные данные и предложит пройти стартовый помощник.
Что перенести из старой базы
В новой базе нет пользователей, организаций и справочников. Если нужны справочники без документов, используйте перенос через выгрузку в XML. Для этого подходит обработка универсального обмена данными в формате XML: выгружаете нужные справочники из старой базы и загружаете в новую.
Не путайте с загрузкой .dt. Загрузка .dt полностью заменяет базу вместе с данными — это откат, а не очистка.
Очистка базы в консоли администрирования кластера
Для клиент-серверной базы есть серверный способ стереть всё разом. Он удаляет данные вместе с конфигурацией, поэтому сначала сохраните .cf, если он понадобится.
Завершите сеансы и заблокируйте вход
Консоль подключается к агенту сервера 1С (по умолчанию порт 1540).
- Откройте
Консоль администрирования серверов 1С Предприятия. - Раскройте
Кластеры → <кластер> → Информационные базы → <база>. - Откройте свойства базы и включите флажок «Блокировка начала сеансов включена». Можно указать сообщение пользователям и код разрешения.
- Там же включите блокировку регламентных заданий.
- В узле
Сеансыбазы завершите оставшиеся сеансы.
Завершение сеанса обрывает работу пользователя без сохранения. Предупредите сотрудников заранее и делайте это вне рабочего времени.
Удалите информационную базу
Щёлкните по базе правой кнопкой и выберите удаление. Консоль предложит три варианта:
| Вариант | Что происходит |
|---|---|
| Не удалять базу данных | База удаляется из кластера, данные на СУБД остаются |
| Удалить базу данных | База данных на СУБД удаляется целиком |
| Очистить базу данных | Таблицы очищаются, сама база на СУБД остаётся |
Вариант «Не удалять базу данных» полезен, когда базу нужно снять с кластера и разобраться с ней отдельно: данные сохранятся и их можно снова подключить.
Тот же список баз доступен из командной строки через утилиту rac. Получить список кластеров — rac cluster list, остальные параметры смотрите в rac help.
Прямое удаление данных через SQL: почему почти всегда нельзя
Желание «просто сделать TRUNCATE таблиц документов» возникает у каждого, кто видел базу 1С в SQL Server Management Studio или pgAdmin. Не делайте этого в рабочей базе.
Почему:
- ❌ Имена таблиц служебные:
_Document123,_Reference45,_AccumRg678. Какая таблица чему соответствует, знает только платформа. - ❌ Документ хранится в нескольких таблицах: шапка, табличные части, движения, последовательности, итоги регистров. Очистив одну, вы получите «битые ссылки».
- ❌ Итоги регистров накопления и бухгалтерии хранятся отдельно от движений. Без пересчёта итогов остатки покажут цифры несуществующих документов.
Если всё же нужно понять, как объекты разложены по таблицам (например, для анализа размера), используйте встроенную функцию ПолучитьСтруктуруХраненияБазыДанных(). Её вызывают из внешней обработки или консоли кода, она возвращает соответствие объектов метаданных и имён таблиц.
Где SQL уместен — это работа с базой данных целиком:
-- MS SQL Server: резервная копия перед очисткой
BACKUP DATABASE [buh] TO DISK = N'D:\backup\buh.bak' WITH COPY_ONLY, INIT;
# PostgreSQL: резервная копия в формате custom
pg_dump -U postgres -Fc -f /backup/buh.dump buh
Удаление всей базы на СУБД после снятия её с кластера (DROP DATABASE) тоже допустимо. Но сначала убедитесь, что база удалена из кластера 1С, иначе в консоли останется база без данных.
Что сделать после того, как стёрли данные в 1С
После массового удаления файл базы или база данных на СУБД не уменьшается сам собой. Место освобождается внутри, а не на диске. Плюс в базе могут остаться нарушения ссылок.
Тестирование и исправление
- Закройте все сеансы.
- В Конфигураторе:
Администрирование → Тестирование и исправление…. - Отметьте проверки:
- реиндексация таблиц информационной базы;
- проверка логической целостности информационной базы;
- проверка ссылочной целостности информационной базы;
- пересчёт итогов;
- сжатие таблиц информационной базы.
- Выберите «Тестирование и исправление», для битых ссылок — вариант «Создавать объекты» или «Очищать ссылки» по ситуации.
- Нажмите
Выполнить.
Режим работает в монопольном доступе, на больших базах — долго.
Сократите журнал регистрации
Журнал регистрации после удаления тысяч объектов сильно разрастается: каждое удаление пишется в него.
В Конфигураторе: Администрирование → Журнал регистрации, затем команда Сократить…. Укажите дату, до которой удалить события, и при необходимости файл для их сохранения.
Сожмите базу на стороне СУБД
Для серверных баз освобождение места на диске — задача СУБД:
- 🗄️ в MS SQL Server — сжатие файлов базы (
DBCC SHRINKFILE) после очистки и полной резервной копии; - 🗄️ в PostgreSQL —
VACUUM FULLпо базе, в нерабочее время: команда блокирует таблицы.
VACUUM FULL и сжатие файлов нагружают диск и блокируют таблицы. Пользователи на это время в базу не заходят.
Проверьте результат
Откройте оборотно-сальдовую ведомость за весь период и пару отчётов по остаткам. Если документы удалены, а остатки остались, итоги регистров не пересчитаны — повторите пересчёт итогов в «Тестировании и исправлении».