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