Чистка базы 1С от мусора и ошибок: порядок действий для бухгалтера и админа
Содержание
Чтобы навести порядок в 1С, идите по цепочке: резервная копия → проверка учёта → перепроведение и пересчёт итогов → удаление помеченных объектов → тестирование и исправление в Конфигураторе → обслуживание СУБД. Порядок важен: если сначала удалить «мусор», а потом перепроводить, можно потерять документы, на которые ещё ссылаются движения.
Очистка базы 1С решает две задачи. Бухгалтер получает правильные остатки и сальдо без «красных» строк. Администратор получает базу, которая быстрее открывается, быстрее формирует отчёты и меньше весит. Ниже процедура для платформы 8.3 и типовых конфигураций на интерфейсе «Такси»; пути меню даны для 1С:Бухгалтерии 3.0.
С чего начать: резервная копия и замер «до»
Любая чистка меняет данные массово. Откатить её можно только из копии, поэтому первый шаг не обсуждается.
Сделайте полную копию базы до первого изменения и проверьте, что она разворачивается.
Как сделать копию
- 📁 Файловая база. Закройте 1С у всех пользователей и скопируйте каталог базы целиком (главный файл —
1Cv8.1CD). Второй вариант — выгрузка:Конфигуратор → Администрирование → Выгрузить информационную базув файл.dt. - 🖥️ Клиент-серверная база
. Делайте копию средствами СУБД: полный бэкап в SQL Server или
pg_dumpв PostgreSQL. Выгрузка.dtтоже подойдёт, но на больших базах идёт долго.
Копию разверните в отдельную тестовую базу. Все рискованные операции из этой инструкции сначала прогоните там.
Что замерить до начала
Запишите несколько чисел, чтобы потом сравнить результат:
| Что замерить | Где посмотреть |
|---|---|
| Размер базы | Размер 1Cv8.1CD или размер базы данных в СУБД |
| Время открытия базы | Секундомер от запуска до рабочего стола |
| Время тяжёлого отчёта | Например, ОСВ за год |
| Ключевые сальдо | ОСВ по счетам 41, 51, 60, 62, 68 на конец периода |
Последняя строка особенно нужна. После перепроведения сальдо закрытых периодов не должны измениться без понятной причины.
Монопольный режим нужен для тестирования и исправления, загрузки .dt и обновления структуры базы. Предупредите пользователей заранее: их сеансы придётся завершить. Планируйте работу на вечер или выходной.
Ищем ошибки в учёте до чистки
Сначала найдите, что сломано в учёте. Иначе вы ускорите базу, в которой остатки всё равно неверные.
Экспресс-проверка
В Бухгалтерии 3.0 откройте Отчеты → Анализ учета → Экспресс-проверка. Выберите период и запустите. Отчёт покажет:
- 🔴 отрицательные остатки по товарам и материалам;
- 🔴 нарушение последовательности проведения документов;
- 🔴 расхождения в книгах покупок и продаж;
- 🔴 ошибки закрытия месяца и незакрытые счета.
Каждая строка раскрывается в список конкретных документов. Это готовый список задач на исправление.
Сальдо, которых быть не должно
Сформируйте ОСВ и поищите сальдо «не на той стороне»:
- 💰 кредитовое сальдо по 50 и 51 — денег не может быть меньше нуля;
- 📦 кредитовое сальдо по 10, 41, 43 — товар «ушёл в минус»;
- 🔁 одновременно дебетовое и кредитовое сальдо по 60 или 62 у одного контрагента — часто это незачтённый аванс или договор, выбранный не тот.
По каждой аномалии откройте карточку счёта и найдите документ, с которого началось расхождение. Обычно это поступление, введённое позже продажи, или документ с неверной датой.
Дубли в справочниках
Два «ООО Ромашка» с разными ИНН-ошибками дают расщеплённую задолженность. Откройте Администрирование → Обслуживание → Поиск и удаление дублей. Задайте правило сравнения (для контрагентов — по ИНН), найдите дубли и объедините: ссылки в документах перейдут на оставшийся элемент.
Объединяйте дубли до перепроведения. Тогда движения пересчитаются сразу по правильному контрагенту.
Перепроведение документов и пересчёт итогов
Когда ошибки в документах исправлены, движения нужно пересобрать. Для этого есть две разные операции, и путать их не стоит.
Групповое перепроведение
Перепроведение заново формирует проводки и движения регистров по текущим данным документов. Оно нужно, если вы:
- исправили даты или суммы в старых документах;
- объединили дубли контрагентов или номенклатуры;
- сменили учётную политику задним числом;
- увидели в экспресс-проверке нарушение последовательности.
В Бухгалтерии 3.0 обработка находится в Операции → Закрытие периода → Групповое перепроведение документов. Укажите начало периода — с месяца, где появилась первая ошибка. Перепроводить с начала ведения учёта без нужды не надо: на базе за несколько лет это часы работы.
Перепроведение меняет проводки закрытых периодов. Если отчётность за них уже сдана, сначала сравните ОСВ «до» и «после» на тестовой копии. Любое расхождение — повод для уточнённой декларации, а не для молчаливой правки.
После перепроведения повторите закрытие месяца за все затронутые месяцы, по порядку.
Пересчёт итогов
Итоги — это заранее рассчитанные остатки регистров. Благодаря им ОСВ строится быстро. Если итоги «разъехались», отчёты и проводки показывают разные цифры, хотя документы правильные.
Пересчитать итоги можно двумя способами:
| Способ | Где | Когда подходит |
|---|---|---|
| Из режима «Предприятие» | Все функции → Стандартные → Управление итогами | Без монопольного доступа, точечно по регистрам |
| Из Конфигуратора | Администрирование → Тестирование и исправление, галочка «Пересчет итогов» | В составе общей проверки базы |
Пункт «Все функции» включается в Сервис и настройки → Параметры, флажок «Отображать команду “Все функции”».
В «Управлении итогами» также задаётся период рассчитанных итогов. Обычно его ставят на конец прошлого месяца, чтобы текущие проведения пересчитывали меньше данных.
Удаляем помеченные объекты и прочий мусор
Пометка на удаление в 1С не удаляет объект. Он остаётся в базе, занимает место и мешает при подборе. Реальное удаление — отдельная операция.
Удаление помеченных объектов
Откройте Администрирование → Обслуживание → Удаление помеченных объектов (или найдите обработку через Все функции → Стандартные). Порядок:
- Выберите режим с ручным выбором объектов, а не «удалить всё».
- Просмотрите список. Снимите галочки с того, что пометили по ошибке.
- Запустите удаление.
- Изучите список «Не удалены»: обработка покажет, какие документы ещё ссылаются на объект.
Объект, на который есть ссылка, не удалится. Например, помеченный контрагент из проведённой реализации останется в базе. Решение — сначала заменить ссылку в документе или снять с документа пометку проведения, если он сам лишний.
Если удаление обрывается на большой базе, делите его на части: сначала документы, потом справочники. Документы держат ссылки на справочники, а не наоборот.
Журнал регистрации
Журнал регистрации за несколько лет может весить больше самой базы. Сократить его можно в Конфигуратор → Администрирование → Настройка журнала регистрации, кнопка «Сократить». Задайте дату: события до неё удалятся. Перед этим можно сохранить их в файл — пригодится, если журнал нужен для разбора спорных изменений.
Там же выберите уровень записи. Для большинства баз достаточно «Регистрировать ошибки, предупреждения и информацию».
Свёртка базы
Если база ведётся 8–10 лет и тормозит из-за объёма, можно свернуть старые периоды: документы прошлых лет заменяются вводом остатков на дату. В Бухгалтерии 3.0 обработка свёртки находится в разделе Администрирование → Обслуживание.
Свёртка необратима. Перед ней — отдельная архивная копия, которую храните как «базу до свёртки».
Чаще удобнее другой путь: начать новую базу с переносом остатков, а старую оставить для справок.
Кэш пользователей
Кэш не влияет на учёт, но устаревший кэш даёт странные ошибки и замедление на конкретном компьютере. Очистка:
- Закройте все окна 1С на этом компьютере.
- Удалите папки с длинными именами из GUID в
%APPDATA%\1C\1cv8и%LOCALAPPDATA%\1C\1cv8. - Либо запустите базу с параметром
/ClearCache.
"C:\Program Files\1cv8\common\1cestart.exe" /ClearCache
Список баз при этом не пропадёт: он хранится в файле ibases.v8i, который папки кэша не затрагивает.
Тестирование и исправление базы в Конфигураторе
Это главный «ремонтный» инструмент платформы. Он проверяет структуру таблиц и ссылки и исправляет найденное.
Запустите Конфигуратор, завершите сеансы пользователей и откройте Администрирование → Тестирование и исправление.
Какие галочки ставить
| Флажок | Что делает | Ставить? |
|---|---|---|
| Реиндексация таблиц | Перестраивает индексы | Да |
| Проверка логической целостности | Ищет нарушения структуры данных | Да |
| Проверка ссылочной целостности | Ищет ссылки на несуществующие объекты («битые ссылки») | Да |
| Пересчет итогов | Пересчитывает итоги регистров | Да, если не делали отдельно |
| Сжатие таблиц | Убирает пустое место после удаления | Да, для файловой базы |
| Реструктуризация таблиц | Пересоздаёт таблицы | Только по необходимости, очень долго |
Режим и действия при ошибках
Первый запуск делайте в режиме «Тестирование», без исправления. Посмотрите отчёт в окне сообщений.
Дальше выберите, что делать с найденным:
- 🔗 Ссылки на несуществующие объекты. «Создавать объекты» создаст пустые элементы-заглушки вида
<Объект не найден>. «Очищать ссылки» обнулит поле в документе. Безопаснее создавать объекты: потом заглушку можно найти и заменить на правильный элемент. - 🧩 Частичная потеря данных объектов. «Создавать объекты» тоже обычно лучше, чем «Удалять объекты».
«Очищать ссылки» и «Удалять объекты» стирают данные без возможности отменить. Выбирайте их только после проверки на копии.
Утилита chdbfl для файловой базы
Если файловая база не открывается вовсе или Конфигуратор падает на тестировании, используйте chdbfl.exe. Она лежит в каталоге bin установленной платформы, например C:\Program Files\1cv8\8.3.24.1548\bin\.
Утилита проверяет физическую целостность файла 1Cv8.1CD. Укажите путь к файлу, поставьте флажок «Исправлять обнаруженные ошибки» и запустите. Работает только при закрытой базе и только на копии файла, если оригинал вам дорог.
Обслуживание СУБД: ускоряем серверную базу
В клиент-серверной базе «порядок» на уровне 1С — половина дела. Вторая половина — регулярное обслуживание самой СУБД. Без него база замедляется месяц за месяцем, даже если пользователи ничего не меняют.
SQL Server
Настройте план обслуживания (Maintenance Plan) с задачами:
- 📊 обновление статистики — ежедневно, ночью;
- 🔧 перестроение или реорганизация индексов — раз в неделю;
- ✅ проверка целостности
DBCC CHECKDB— раз в неделю; - 💾 полный бэкап — ежедневно, плюс бэкап журнала транзакций, если модель восстановления полная.
Устаревшая статистика — частая причина, по которой отчёт вчера строился за 10 секунд, а сегодня за 3 минуты. Отбор по одному складу внезапно перебирает всю таблицу, потому что оптимизатор ошибается в оценке числа строк.
PostgreSQL
Здесь регулярная задача — VACUUM ANALYZE. Autovacuum обычно включён, но на больших базах 1С его не хватает. Добавьте ночной запуск по расписанию:
vacuumdb --analyze --dbname=buh_base --username=postgres
Что ещё влияет на скорость
- 🧹 Регламентные задания. Откройте
Администрирование → Обслуживание → Регламентные и фоновые задания. Отключите задания, которые вам не нужны: например, загрузку курсов валют, если валютных операций нет. Каждое лишнее задание — фоновая нагрузка. - 📚 Версионирование объектов. Если включено для всех документов, база быстро растёт за счёт истории изменений. Ограничьте его ключевыми объектами и периодически очищайте устаревшие версии.
- 🔍 Полнотекстовый поиск. Обновление индекса на большой базе нагружает сервер. Перенесите его на ночь.
Регламент: как держать базу в порядке
Разовая чистка без регламента даст эффект на полгода. Потом всё вернётся. Помогает дисциплина закрытия периодов.
Закрытие месяца
Закрывайте каждый месяц через Операции → Закрытие месяца, не пропуская. Если закрытие показывает ошибку, исправляйте её в том же месяце. Незакрытые месяцы копятся, и через год экспресс-проверка выдаёт сотни строк.
Дата запрета изменения
После сдачи отчётности ставьте дату запрета: Администрирование → Пользователи и права → Даты запрета изменения. Документы до этой даты нельзя будет поправить «случайно». Это главная защита от того, что сальдо прошлых лет уезжают после чьих-то правок.
Дату можно задать общую или по пользователям: главному бухгалтеру — с правом изменения, остальным — без.
Что и как часто делать
| Операция | Периодичность |
|---|---|
| Закрытие месяца и экспресс-проверка | Ежемесячно |
| Дата запрета изменения | После каждой сданной отчётности |
| Удаление помеченных объектов | Раз в квартал |
| Тестирование и исправление | Раз в квартал, файловая база |
| Сокращение журнала регистрации | Раз в год |
| Обслуживание СУБД | Ежедневно и еженедельно по плану |