Чистка базы 1С от мусора и ошибок: порядок действий для бухгалтера и админа

· 10 мин

Содержание

Чтобы навести порядок в 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 у одного контрагента — часто это незачтённый аванс или договор, выбранный не тот.

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

Дубли в справочниках

Два «ООО Ромашка» с разными ИНН-ошибками дают расщеплённую задолженность. Откройте Администрирование → Обслуживание → Поиск и удаление дублей. Задайте правило сравнения (для контрагентов — по ИНН), найдите дубли и объедините: ссылки в документах перейдут на оставшийся элемент.

Объединяйте дубли до перепроведения. Тогда движения пересчитаются сразу по правильному контрагенту.

Перепроведение документов и пересчёт итогов

Когда ошибки в документах исправлены, движения нужно пересобрать. Для этого есть две разные операции, и путать их не стоит.

Групповое перепроведение

Перепроведение заново формирует проводки и движения регистров по текущим данным документов. Оно нужно, если вы:

  1. исправили даты или суммы в старых документах;
  2. объединили дубли контрагентов или номенклатуры;
  3. сменили учётную политику задним числом;
  4. увидели в экспресс-проверке нарушение последовательности.

В Бухгалтерии 3.0 обработка находится в Операции → Закрытие периода → Групповое перепроведение документов. Укажите начало периода — с месяца, где появилась первая ошибка. Перепроводить с начала ведения учёта без нужды не надо: на базе за несколько лет это часы работы.

Перепроведение меняет проводки закрытых периодов. Если отчётность за них уже сдана, сначала сравните ОСВ «до» и «после» на тестовой копии. Любое расхождение — повод для уточнённой декларации, а не для молчаливой правки.

После перепроведения повторите закрытие месяца за все затронутые месяцы, по порядку.

Пересчёт итогов

Итоги — это заранее рассчитанные остатки регистров. Благодаря им ОСВ строится быстро. Если итоги «разъехались», отчёты и проводки показывают разные цифры, хотя документы правильные.

Пересчитать итоги можно двумя способами:

СпособГдеКогда подходит
Из режима «Предприятие»Все функции → Стандартные → Управление итогамиБез монопольного доступа, точечно по регистрам
Из КонфигуратораАдминистрирование → Тестирование и исправление, галочка «Пересчет итогов»В составе общей проверки базы

Пункт «Все функции» включается в Сервис и настройки → Параметры, флажок «Отображать команду “Все функции”».

В «Управлении итогами» также задаётся период рассчитанных итогов. Обычно его ставят на конец прошлого месяца, чтобы текущие проведения пересчитывали меньше данных.

Удаляем помеченные объекты и прочий мусор

Пометка на удаление в 1С не удаляет объект. Он остаётся в базе, занимает место и мешает при подборе. Реальное удаление — отдельная операция.

Удаление помеченных объектов

Откройте Администрирование → Обслуживание → Удаление помеченных объектов (или найдите обработку через Все функции → Стандартные). Порядок:

  1. Выберите режим с ручным выбором объектов, а не «удалить всё».
  2. Просмотрите список. Снимите галочки с того, что пометили по ошибке.
  3. Запустите удаление.
  4. Изучите список «Не удалены»: обработка покажет, какие документы ещё ссылаются на объект.

Объект, на который есть ссылка, не удалится. Например, помеченный контрагент из проведённой реализации останется в базе. Решение — сначала заменить ссылку в документе или снять с документа пометку проведения, если он сам лишний.

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

Журнал регистрации

Журнал регистрации за несколько лет может весить больше самой базы. Сократить его можно в Конфигуратор → Администрирование → Настройка журнала регистрации, кнопка «Сократить». Задайте дату: события до неё удалятся. Перед этим можно сохранить их в файл — пригодится, если журнал нужен для разбора спорных изменений.

Там же выберите уровень записи. Для большинства баз достаточно «Регистрировать ошибки, предупреждения и информацию».

Свёртка базы

Если база ведётся 8–10 лет и тормозит из-за объёма, можно свернуть старые периоды: документы прошлых лет заменяются вводом остатков на дату. В Бухгалтерии 3.0 обработка свёртки находится в разделе Администрирование → Обслуживание.

Свёртка необратима. Перед ней — отдельная архивная копия, которую храните как «базу до свёртки».

Чаще удобнее другой путь: начать новую базу с переносом остатков, а старую оставить для справок.

Кэш пользователей

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

  1. Закройте все окна 1С на этом компьютере.
  2. Удалите папки с длинными именами из GUID в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8.
  3. Либо запустите базу с параметром /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

Что ещё влияет на скорость

  • 🧹 Регламентные задания. Откройте Администрирование → Обслуживание → Регламентные и фоновые задания. Отключите задания, которые вам не нужны: например, загрузку курсов валют, если валютных операций нет. Каждое лишнее задание — фоновая нагрузка.
  • 📚 Версионирование объектов. Если включено для всех документов, база быстро растёт за счёт истории изменений. Ограничьте его ключевыми объектами и периодически очищайте устаревшие версии.
  • 🔍 Полнотекстовый поиск. Обновление индекса на большой базе нагружает сервер. Перенесите его на ночь.

Регламент: как держать базу в порядке

Разовая чистка без регламента даст эффект на полгода. Потом всё вернётся. Помогает дисциплина закрытия периодов.

Закрытие месяца

Закрывайте каждый месяц через Операции → Закрытие месяца, не пропуская. Если закрытие показывает ошибку, исправляйте её в том же месяце. Незакрытые месяцы копятся, и через год экспресс-проверка выдаёт сотни строк.

Дата запрета изменения

После сдачи отчётности ставьте дату запрета: Администрирование → Пользователи и права → Даты запрета изменения. Документы до этой даты нельзя будет поправить «случайно». Это главная защита от того, что сальдо прошлых лет уезжают после чьих-то правок.

Дату можно задать общую или по пользователям: главному бухгалтеру — с правом изменения, остальным — без.

Что и как часто делать

ОперацияПериодичность
Закрытие месяца и экспресс-проверкаЕжемесячно
Дата запрета измененияПосле каждой сданной отчётности
Удаление помеченных объектовРаз в квартал
Тестирование и исправлениеРаз в квартал, файловая база
Сокращение журнала регистрацииРаз в год
Обслуживание СУБДЕжедневно и еженедельно по плану
Чистка базы 1С: отметьте выполненное
Выполнено: 0 / 11

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

Можно ли удалять помеченные объекты, когда в базе работают люди?
В современных типовых конфигурациях — да, обработка работает без монопольного режима. Но на большой базе она нагружает сервер и может конфликтовать с проведением. Лучше запускать вечером.
Почему после пересчёта итогов база стала работать медленнее?
Сразу после пересчёта платформа заново строит кэши и статистику СУБД может устареть. Обновите статистику на сервере или подождите сутки. Если медленно и дальше, проверьте период рассчитанных итогов.
Насколько уменьшится база после чистки?
Зависит от того, что в ней лежало. Сжатие таблиц после массового удаления в файловой базе может дать десятки процентов. Больше всего обычно освобождают журнал регистрации и версии объектов.
Нужно ли перепроводить документы после обновления конфигурации?
Только если в описании обновления сказано, что изменились алгоритмы проведения, и вы хотите применить их к прошлым периодам. Иначе перепроведение закрытых периодов не нужно.
Что делать с объектами «Объект не найден» после тестирования?
Найдите документы, где они используются, через поиск ссылок на объект. Замените заглушку на правильный элемент справочника, затем пометьте заглушку на удаление и удалите.