Замедление работы 1С:Предприятия, ошибки при открытии базы или неожиданные сбои часто связаны с так называемым «багажом 1С» — скоплением устаревших данных, временных файлов, некорректных записей в кэше или раздутых логах, которые перегружают систему. Хотя термин отсутствует в официальной документации, он обозначает реальную проблему: избыточная информация в базе, остатки удалённых объектов или фрагментированные индексы могут приводить к тормозам, ошибкам чтения или даже краху сеанса, особенно в крупных конфигурациях с длительной историей эксплуатации.

В зависимости от контекста «багаж» может означать:

  • 📦 Накопленные временные файлы — остатки после обновлений, отчётов или обменов данными, которые не были очищены автоматически.
  • 🗃️ Устаревшие данные в базе — записи, которые давно не используются, но занимают место (например, архивные документы без пометки на удаление).
  • ⚙️ Ошибки конфигурации — «мусор» после некорректных изменений в структуре базы или после миграций между версиями.
  • 🔄 Дублирующиеся объекты — например, повторяющиеся справочники или документы, созданные из-за сбоев при обмене данными.

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

📊 С какой версией 1С вы работаете чаще всего?
8.3 (обычная)
8.3 (управляемое приложение)
8.2
7.7
Другая

1. Откуда берётся «багаж» в 1С?

Основная причина появления «багажа» — неполная очистка данных после операций, которые должны быть временными. Например:

  • 📥 Обмены данными (через XML, JSON, РИБ или EDI) часто оставляют промежуточные файлы в папках temp или upload.
  • 🔄 Обновления конфигурации — даже после успешного апдейта могут оставаться резервные копии старых версий (.cf, .epf).
  • 📊 Формирование отчётов — некоторые сложные отчёты (например, регламентированная отчётность) создают временные таблицы в базе, которые не всегда удаляются.
  • 🖥️ Работа пользователей — некорректное завершение сеансов (например, при аварийном закрытии программы) оставляет «висящие» блокировки или несохранённые данные.

В клиент-серверном варианте «багаж» чаще накапливается на стороне сервера (в SQL-базе или файлах кластера), а в файловом — прямо в каталоге базы (.1CD). При этом в клиент-серверных системах «багаж» может приводить к замедлению запросов к SQL, а в файловом — к физическому разрастанию файла базы.

⚠️ Внимание: В версиях 1С:Предприятие 8.3.20+ часть временных файлов очищается автоматически при перезапуске сервера, но это не гарантирует полное удаление всех накопленных данных. Для глубокой очистки требуются ручные действия.

2. Как «багаж» влияет на работу 1С?

Накопленный «багаж» проявляется по-разному, но наиболее частые симптомы:

Признак Файловый вариант Клиент-серверный вариант
Замедление открытия форм Да, особенно при большом размере .1CD Да, из-за нагрузки на SQL
Ошибки при обновлении Часто (не хватает места на диске) Реже, но возможны конфликты блокировок
Сбои при обмене данными Да (повреждение временных файлов) Да (ошибки транзакций в SQL)
Увеличение размера бэкапа Значительное (до 2–3 раз) Умеренное (зависит от настроек SQL)

Например, если размер файла базы .1CD вырос с 500 МБ до 2 ГБ без видимых причин, это верный признак накопленного «багажа». В клиент-серверном варианте аналогичную проблему можно выявить через SQL Server Management Studio, проверив размер таблиц _1SJOURN (журнал регистрации) или _1SDATA (основные данные).

💡

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

3. Как найти «багаж» в своей базе 1С?

Для диагностики используйте следующие методы:

🔍 В файловом варианте:

  1. Проверьте размер файла .1CD — если он значительно больше, чем объём реальных данных, это сигнал.
  2. Откройте папку с базой и отсортируйте файлы по дате изменения. Старые файлы с расширениями .tmp, .bak, .log часто являются «багажом».
  3. Используйте утилиту chdbfl.exe (входит в комплект ) для проверки целостности базы:
    chdbfl.exe /F "C:\Path\To\Your\Base.1CD" /L

🖥️ В клиент-серверном варианте:

  • 📊 Запустите запрос к SQL для анализа размера таблиц:
    SELECT
    

    t.NAME AS TableName,

    s.Name AS SchemaName,

    p.rows AS RowCounts,

    SUM(a.total_pages) * 8 AS TotalSpaceKB

    FROM

    sys.tables t

    INNER JOIN

    sys.indexes i ON t.OBJECT_ID = i.object_id

    INNER JOIN

    sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id

    INNER JOIN

    sys.allocation_units a ON p.partition_id = a.container_id

    LEFT OUTER JOIN

    sys.schemas s ON t.schema_id = s.schema_id

    WHERE

    t.NAME NOT LIKE 'dt%'

    AND t.is_ms_shipped = 0

    AND i.OBJECT_ID > 255

    GROUP BY

    t.Name, s.Name, p.Rows

    ORDER BY

    TotalSpaceKB DESC;

  • 🔎 Проверьте журнал регистрации (_1SJOURN) — если он занимает более 10% от общего размера базы, его стоит очистить.

Проверен размер файла .1CD|Проанализированы временные файлы в папке базы|Выполнена проверка chdbfl.exe|Просмотрены логи обменов данными (если используются)|Запущен SQL-запрос для клиент-серверного варианта-->

4. Как очистить «багаж» в 1С: пошаговые инструкции

Способы очистки зависят от типа «багажа» и варианта работы (файловый или клиент-серверный). Ниже — универсальные методы.

🧹 Очистка временных файлов (для обоих вариантов)

  1. Закройте все сеансы .
  2. Удалите вручную файлы с расширениями:
    • 📄 .tmp — временные файлы.
    • 🗑️ .bak — резервные копии.
    • 📜 .log — логи (если не нужны для аудита).
    • 🔄 .mft, .cdx — индексные файлы (только для старых версий 1С 7.7).
  • Для файлового варианта запустите тестирование и исправление базы через Конфигуратор:
    Администрирование → Тестирование и исправление → Выполнить проверку и исправление

    Отметьте галочки:

    • 🔧 Проверять логическую целостность
    • 🔧 Проверять ссылочную целостность
    • 🔧 Реиндексировать таблицы
    • 🗃️ Очистка журнала регистрации (клиент-серверный вариант)

      Если журнал регистрации разросся, очистите его через Конфигуратор:

      1. Откройте Администрирование → Журнал регистрации.
      2. Нажмите Настройка → Очистить журнал.
      3. Укажите дату, до которой нужно удалить записи (например, оставить последние 30 дней).
      4. Подтвердите действие и дождитесь завершения операции.
    Что будет, если не очищать журнал регистрации?

    Если журнал регистрации не очищать годами, он может занять десятки гигабайт на диске. Это приведёт к:

    - Замедлению запросов к базе (SQL будет тратить ресурсы на обработку ненужных записей).

    - Увеличению времени создания бэкапов.

    - Риску переполнения дискового пространства на сервере, особенно если журнал хранится на системном диске C:.

    🔄 Очистка устаревших данных (универсальный метод)

    Для удаления устаревших документов или справочников:

    1. Создайте обработку для поиска и пометки на удаление ненужных объектов. Пример кода для поиска документов старше 5 лет:
      Запрос = Новый Запрос;
      

      Запрос.Текст =

      "ВЫБРАТЬ

      | Ссылка КАК Ссылка

      |ИЗ

      | Документ.<ИмяДокумента> КАК Документ

      |ГДЕ

      | Документ.Дата < ДАТАВРЕМЯ(2019, 1, 1)";

      Результат = Запрос.Выполнить();

      Пока Результат.Следующий() Цикл

      Объект = Результат.Ссылка.ПолучитьОбъект();

      Объект.УстановитьПометкуУдаления(Истина);

      Объект.Записать();

      КонецЦикла;

    2. После пометки выполните Администрирование → Выгрузка/загрузка данных → Удаление помеченных объектов.
    ⚠️ Внимание: Перед массовым удалением данных проверьте, не используются ли они в регламентированной отчётности или архивных целях. Например, документы за закрытые налоговые периоды удалять нельзя.

    5. Автоматизация очистки: инструменты и обработки

    Ручная очистка «багажа» эффективна, но трудоёмка. Для автоматизации используйте:

    🤖 Встроенные механизмы 1С

    • 📅 Регламентные задания — настройте автоматическую очистку журналов регистрации по расписанию (например, раз в месяц).
    • 🔄 Фоновые задания — в версиях 8.3.14+ можно запускать очистку временных файлов без прерывания работы пользователей.
    • 🗑️ Политики хранения данных — в 1С:Документооборот или 1С:ERP настройте автоматическое архивирование и удаление устаревших документов.
    • ⚙️ Сторонние обработки

      Популярные решения для глубокой очистки:

      Обработка Назначение Ссылка (источник)
      ОчисткаБазыДанных.epf Удаление временных таблиц, оптимизация индексов Инфостарт, ITS
      УправлениеЖурналамиРегистрации.epf Гибкая настройка очистки журналов по датам/событиям 1С-Галлерея
      ПоискДублирующихсяОбъектов.epf Выявление и удаление дублирующихся справочников/документов Инфостарт

      Пример использования обработки ОчисткаБазыДанных.epf:

      1. Скачайте файл и загрузите его в Конфигуратор через Файл → Открыть.
      2. Запустите обработку в режиме 1С:Предприятие.
      3. Выберите опции:
        • 🔧 Очистить временные таблицы
        • 🔧 Переиндексировать базу
        • 🔧 Удалить неиспользуемые объекты метаданных (осторожно!)
      4. Нажмите Выполнить и дождитесь завершения.
    💡

    Регулярная очистка «багажа» (раз в 3–6 месяцев) сокращает размер базы на 20–40% и ускоряет работу системы на 15–30%.

    6. Профилактика накопления «багажа»

    Чтобы минимизировать риск появления «багажа», следуйте этим рекомендациям:

    📌 Для администраторов:

    • 🔄 Настройте автоматическое архивирование и очистку журналов регистрации.
    • 📅 Регулярно (раз в квартал) запускайте Тестирование и исправление базы.
    • 🗃️ Разделите диски: системный (C:) и для баз данных (D: или сетевой ресурс).
    • 🛡️ Ограничьте права пользователей на создание временных файлов в корневой папке базы.

    👨‍💻 Для пользователей:

    • 🚫 Не оставляйте открытыми ненужные отчёты или обработки.
    • 📥 После обмена данными проверяйте папку temp на наличие ненужных файлов.
    • 🔄 При работе с большими выборками используйте серверные процедуры вместо клиентских.
    ⚠️ Внимание: В облачных решениях (например, 1С:Fresh) часть «багажа» очищается автоматически, но временные файлы обменов и логи могут накапливаться. Проверяйте их через личный кабинет или обращайтесь в поддержку.

    7. Частые ошибки при очистке «багажа»

    Некоторые действия могут усугубить проблему или привести к потере данных. Избегайте этих ошибок:

    • 🚫 Удаление файлов .1CD вручную — это приведёт к полной потере базы. Используйте только встроенные инструменты.
    • 🚫 Очистка журнала регистрации без бэкапа — если в нём есть критические события (например, ошибки обновления), восстановить их будет невозможно.
    • 🚫 Массовое удаление объектов без проверки — например, удаление всех документов старше года может нарушить ссылочную целостность.
    • 🚫 Использование непроверенных обработок — скачивайте их только с официальных источников (Инфостарт, ITS, 1С-Галлерея).
    • Если после очистки база стала работать хуже или появились ошибки, восстановите её из бэкапа и повторите процедуру с другими параметрами.

      💡

      Перед массовыми изменениями в базе создайте тестовую копию и проработайте сценарий очистки на ней. Это поможет избежать неприятных сюрпризов в рабочей среде.

      FAQ: Ответы на частые вопросы

      ❓ Можно ли очистить «багаж» без остановки работы пользователей?

      В клиент-серверном варианте — да, если использовать фоновые задания (доступны с версии 8.3.14). В файловом варианте для глубокой очистки потребуется закрыть все сеансы.

      Для очистки временных файлов (не затрагивающей саму базу) можно использовать скрипты на PowerShell или Batch, которые будут запускаться ночью. Пример скрипта для удаления файлов старше 7 дней:

      forfiles /P "C:\Path\To\Base\Temp" /S /D -7 /C "cmd /c del @path"
      ❓ Как понять, что «багаж» мешает работе, а не железо?

      Проведите тест:

      1. Создайте пустую тестовую базу на том же сервере.
      2. Загрузите в неё минимальный набор данных (например, только справочники).
      3. Сравните скорость открытия форм/отчётов в тестовой и рабочей базе.

      Если тестовая база работает быстрее, проблема точно в «багаже». Если нет — проверьте дисковое пространство, ОЗУ или настройки SQL-сервера.

      ❓ Что делать, если после очистки база не уменьшилась?

      Возможные причины:

      • 📊 Фрагментация данных — даже после удаления объектов файл .1CD может оставаться большим. Используйте утилиту chdbfl.exe с ключом /C для сжатия:
      • chdbfl.exe /F "C:\Path\To\Base.1CD" /C
      • 🗑️ Не все временные файлы удалены — проверьте скрытые папки (например, AppData\Local\1C на клиентских машинах).
      • 🔄 SQL-сервер не освободил место — для клиент-серверного варианта выполните команду:
      • DBCC SHRINKDATABASE (YourDatabaseName, 10);
      ❓ Может ли «багаж» повлиять на корректность отчётности?

      Да, если «багаж» включает:

      • 📄 Дублирующиеся документы — они могут искажать итоги в отчётах (например, в балансе или книге продаж).
      • 🔗 Повреждённые ссылки — если при очистке нарушена ссылочная целостность, некоторые отчёты могут не формироваться.

      Перед очисткой всегда проверяйте критические отчёты в тестовой базе.

      ❓ Где хранится «багаж» в облачной 1С (например, 1С:Fresh)?

      В облачных решениях «багаж» накапливается в:

      • 🗃️ Журналах регистрации — очищаются автоматически, но можно настроить политики хранения.
      • 📥 Временных файлах обменов — хранятся на серверах , но доступны для очистки через личный кабинет.
      • 🔄 Архивных данных — старые документы не удаляются, но можно запросить архивацию у поддержки.

      Для очистки обратитесь в техническую поддержку 1С:Fresh с указанием проблемы.