Почему база 1С 7.7 не уменьшилась после свертки и как правильно проверить корректность оборотов в ОСВ

Программист 1С v7.7 1C:Бухгалтерия Бухгалтерский учет IT и автоматизация бизнеса
← На главную

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

Разбираем причины незначительного сжатия базы

Рассмотрим ситуацию: вы выполнили свертку с помощью стандартной обработки wrap.ert, удалили помеченные объекты (например, 70 000 документов), сделали «упаковку» в Конфигураторе и даже выполнили выгрузку/загрузку данных. Но база уменьшилась, скажем, с 2.6 Гб до 2.0 Гб. На первый взгляд кажется, что удаление такого колоссального объема данных должно было дать больший эффект. Проанализируем, где могут скрываться «лишние» мегабайты.

1. Накопление данных в системных журналах (SYSLOG)

Одной из самых частых причин большого веса базы является папка SYSLOG и файл 1cv7.mlg (журнал регистрации). Процесс свертки и последующее массовое удаление объектов генерируют огромное количество записей в журнале регистрации. Каждое удаление — это отдельная строка в логе. Если не очистить журнал вручную, он может вырасти на сотни мегабайт именно в процессе свертки. Рекомендуется архивировать или удалять содержимое этой папки перед финальным замером объема.

2. Объем папки ExtForms

Проверим содержимое каталога ExtForms. В этой папке хранятся регламентированные отчеты, внешние печатные формы и обработки. Часто за несколько лет работы там скапливаются архивы отчетов за каждый квартал. Каждый такой набор может весить от 50 до 150 Мб. При свертке эти файлы не удаляются автоматически, так как они не являются объектами базы данных. Если отчетность за 2012–2015 годы вам в оперативной базе больше не нужна, их удаление существенно освободит место.

3. Периодические реквизиты (1SCONST)

Файл 1SCONST.DBF хранит историю всех периодических констант и реквизитов справочников (цены номенклатуры, курсы валют, ставки налогов). Обработки свертки часто не трогают историю этих значений. Если цены менялись ежедневно для тысяч позиций, этот файл будет весить очень много. Выясним его размер: если он составляет значительную часть базы, стоит воспользоваться специализированными обработками для очистки истории периодических реквизитов на дату свертки.

Корректная очистка бухгалтерских итогов

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

Иногда штатный режим «Тестирование и исправление» не очищает таблицы итогов полностью. Рассмотрим пошаговый алгоритм «жесткой» очистки итогов:

  1. Создайте резервную копию базы данных (обязательно!).
  2. В каталоге базы данных найдите и удалите (или переместите в архив) следующие файлы:
    • 1SBKTTL.DBF и 1SBKTTL.CDX (основная таблица итогов);
    • 1SBKTTLC.DBF и 1SBKTTLC.CDX (таблица итогов по валютам/разделителям учета).
  3. Зайдите в базу в монопольном режиме.
  4. Перейдите в меню Операции — Управление бухгалтерскими итогами.
  5. Установите расчет по текущий период и нажмите «Полный пересчет».

Этот метод заставляет систему заново сформировать все итоги на основании только тех проводок, которые реально остались в базе (таблица 1SENTRY). Это часто помогает уменьшить размер файлов итогов, если в них скопился «мусор» от удаленных документов.

Почему обороты в ОСВ стали «в разы меньше»?

Этот вопрос часто беспокоит бухгалтеров. Проанализируем логику свертки. До процедуры ваша ОСВ за период, например, 2012–2016 гг., включала в себя все хозяйственные операции: закупки, продажи, перемещения между складами, списания, оплаты. Это создавало огромные обороты по дебету и кредиту счетов.

Что происходит при свертке:

Посмотрим на пример: если в течение года вы перемещали товар со склада на склад 100 раз, общие обороты по счету 41 будут включать сумму всех этих 100 перемещений. После свертки останется только финальный остаток товара на складе. Таким образом, обороты за свернутый период обязаны уменьшиться — это прямое следствие удаления детальных проводок. Главный критерий успешности — совпадение входящего сальдо на дату начала «живого» периода (01.01.2017 в данном случае).

Поиск «фантомных» документов и проводок

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

  1. Откройте Общий журнал документов.
  2. Установите интервал дат, начиная с «пустой» даты (01.01.0001).
  3. Проверьте начало списка. Если вы видите документы с датами типа 01.01.1980 или документы в «нулевом» году, это может быть признаком некорректной работы обработки свертки или старых ошибок ввода.
  4. Такие документы нужно либо перепровести правильной датой (если они нужны для остатков), либо удалить.

Также проанализируем таблицу 1SENTRY.DBF. Это физическая таблица проводок. При свертке через wrap.ert бывает ситуация, когда «Операции» (объекты из таблицы 1SOPER) удаляются, а связанные с ними записи в 1SENTRY остаются «сиротами». Выгрузка и последующая загрузка данных через Конфигуратор (в формате .zip) обычно эффективно решает эту проблему, так как в файл выгрузки попадают только логически связанные объекты.

Итоговый чек-лист для оптимизации базы 1С 7.7

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

Соблюдение этих правил позволит вам не только уменьшить физический размер базы, но и обеспечить стабильную и быструю работу системы в послесверточный период.

← На главную