Почему не удаляются старые документы после свёртки базы в 1С:Управление торговлей и как это исправить?

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

При проведении свёртки информационной базы в конфигурациях «1С:Управление торговлей» (УТ 11, УТ 3.0) пользователи часто сталкиваются с проблемой: документы за прошлые периоды помечены на удаление, однако физически не удаляются через штатную операцию удаления помеченных объектов. При попытке удаления система указывает на наличие ссылок в документах Корректировка регистров или документах ввода остатков, которые были сформированы самой обработкой свёртки. В результате размер базы данных не уменьшается, а скорость работы системы продолжает снижаться. Проанализируем причины возникновения этой проблемы и разберем эффективные варианты её решения.

Причины сохранения ссылок на сворачиваемые документы

Выясним, почему стандартный механизм свёртки сохраняет ссылки на документы старого периода и не дает их физически удалить из базы:

  1. Незакрытые остатки по регистрам накопления: Конфигурация «Управление торговлей» ведет учет в разрезе глубоких аналитических измерений (партии товаров, документы расчетов с контрагентами, ГТД, заказы). Если в сворачиваемом периоде учет велся с ошибками (например, оприходование товара есть, а списание партии не прошло, либо взаиморасчеты закрыты по сумме, но «разъехались» по документам расчетов), на дату свёртки по регистрам остаются развернутые остатки. Чтобы сохранить корректность итогов, обработка свёртки переносит эти остатки в документ Корректировка регистров или документы ввода остатков вместе со ссылками на исходные документы-основания.
  2. Записи в служебных регистрах сведений: Ссылки на документы могут блокироваться не только регистрами накопления, но и служебными механизмами:
    • История изменений в регистре сведений Версии объектов (версионирование);
    • Записи регистраций изменений для обмена данными в узлах плана обмена;
    • Данные о правах доступа и настройках аналитики.
  3. Строгий контроль ссылочной целостности: Платформа 1С:Предприятие запрещает удаление любого объекта, если на него ссылается хотя бы одна запись в базе данных. Пока документ указан в качестве аналитики в документах остатков, удаление невозможно.

Способ 1. Исправление ошибок учета и повторная свёртка

Рассмотрим последовательность действий для корректной подготовки информационной базы перед проведением свёртки:

  1. Проанализируем ведение учета в сворачиваемом периоде. Необходимо выполнить все регламентные процедуры: провести документы закрытия месяца, выполнить расчет партий и распределение расходов.
  2. Сформируем отчеты по остаткам (ведомость по товарам на складах, ведомость по партиям товаров, ведомость по расчетам с клиентами/поставщиками) с максимальной детализацией — до документа-движения и регистратора.
  3. Устраним отрицательные остатки и «пересортицу» по документам расчетов и партиям с помощью документов пересортицы, корректировок взаиморасчетов или исправлением последовательностей.
  4. После того как регистры корректно закроются «в ноль», повторно запустим обработку свёртки. В этом случае документы остатков не будут содержать ссылок на старые партии и документы расчетов, что позволит успешно выполнить физическое удаление.

Способ 2. Подготовка и очистка служебных данных

Разберем по шагам порядок очистки базы от ссылок, не связанных с финансовыми остатками:

  1. Очистка версий объектов: Перейдем в настройки администрирования и очистим историю версионирования для сворачиваемых видов документов за прошлые годы.
  2. Снятие с регистрации для обмена: Проверим узлы планов обмена. Если старые документы зарегистрированы для выгрузки в другие базы (например, в 1С:Бухгалтерию), необходимо отменить их регистрацию с помощью обработки «Регистрация изменений для обмена данными».
  3. Распроведение документов: Для всех документов сворачиваемого периода, помеченных на удаление, выполним отмену проведения и очистку таблиц движений по всем регистрам накопления и сведений.

Способ 3. Замена документов-оснований в остатках на служебный объект

Если исправить старый учет невозможно из-за огромного объема данных, а ссылки на старые документы нужны только для заполнения аналитики в документах остатков, применяют методику замены ссылок:

  1. Создается один служебный документ (например, вспомогательный документ расчетов или ввод остатков).
  2. В сформированных документах Корректировка регистров или в документах ввода остатков ссылки на реальные старые документы программно или с помощью обработки «Поиск и замена дублей» меняются на созданный служебный объект.
  3. После выполнения замены старые документы освобождаются от ссылочной связи и без препятствий удаляются через стандартную операцию «Удаление помеченных объектов».

Способ 4. Перенос остатков в чистую информационную базу (Рекомендуемый метод)

Проанализируем наименее трудоемкий и наиболее надежный способ для крупномасштабных баз «Управление торговлей»:

  1. Создаем новую пустую информационную базу той же конфигурации.
  2. Переносим из рабочей базы только нормативно-справочную информацию (справочники Номенклатура, Контрагенты, Партнеры, Организации, Склады и т.д.).
  3. В исходной базе формируем документы ввода остатков на дату свёртки.
  4. Переносим сформированные документы ввода остатков в новую чистую базу.
  5. Исходную базу сохраняем как архив для обращения к истории, а текущую работу продолжаем в созданной чистой базе, полностью освобожденной от мусорных записей и зацикленных ссылок.

Важно: Перед выполнением любых операций по изменению движений, массовой замене ссылок или удалению объектов обязательно создавайте резервную копию информационной базы (файл .dt или дамп СУБД).

← На главную