Как выполнить свертку 1С:Управление торговлей 10.3 с полным удалением старых документов?

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

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

Однако при попытке физического удаления документов возникает ключевая проблема: ссылки на исторические первичные документы выступают измерениями в ключевых регистрах накопления, таких как ТоварыПоПартиямНаСкладах, НДСПоПартиямЗапасов или регистрах взаиморасчетов. Если удалить документ, на который ссылается остаток партии, база выдаст ошибку битой ссылки вида <Объект не найден>, а механизмы списания себестоимости сломаются.

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

Опасности изменения структуры метаданных (измерений регистров)

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

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

  1. Поломка алгоритмов проведения: Все механизмы конфигурации, отвечающие за проведение документов расхода (например, модуль УправлениеЗапасами.СписатьПартииТоваров), рассчитывают на то, что измерение партионного регистра является именно документом. Смена типа данных потребует тотального переписывания стандартного кода программы.
  2. Разрыв учета НДС: В 1С:УТ 10.3 партионный учет НДС завязан на конкретные первичные документы оприходования и счета-фактуры. При подмене документа на справочник перестанет работать автоматическое распределение НДС и формирование книги покупок/продаж.
  3. Сложности при обновлениях: Изменение типа измерения в типовом регистре снимает конфигурацию с поддержки и делает любые последующие обновления крайне трудоемкими.

Способ 1. Замена ссылок в движениях на технический документ

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

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

  1. Партионный учет товаров: Создаем новый документ ОприходованиеТоваров на дату свертки. Переносим в него все текущие остатки номенклатуры по складам и партиям. После этого программно или через документ КорректировкаЗаписиРегистров подменяем в измерениях регистров партионного учета ссылки со старых документов поступления на новый документ ОприходованиеТоваров.
  2. Взаиморасчеты с контрагентами: Для закрытия долгов и сохранения сведений о документах расчетов используем штатный объект ДокументРасчетовСКонтрагентом (ручной учет). Сформируем по одному такому документу на каждую открытую позицию задолженности, перенеся туда дату и номер исходного документа поступления или реализации, и подменим ссылки в регистре взаиморасчетов.

После того как ссылки в регистрах накопления и сведений перепривязаны к новым техническим документам, старые документы полностью освобождаются от ссылочной целостности и их можно безопасно удалить из базы стандартной обработкой Удаление помеченных объектов или программным вызовом УдалитьОбъекты().

Способ 2. Очистка табличных частей и распроведение исходных документов

Посмотрим на еще один компромиссный вариант, если клиент согласен оставить сам факт существования записей в списках, но требует полностью очистить их содержимое для уменьшения объема базы данных и исключения утечки коммерческой информации.

Проанализируем порядок действий при таком подходе:

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

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

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

Проанализировав практику свертки крупных информационных баз 1С:Управление торговлей 10.3, самым чистым и технически безупречным является способ переноса данных в пустую информационную базу.

План действий при переносе остатков в чистую базу:

  1. Создаем новую пустую информационную базу из файла конфигурации (.cf) рабочей базы.
  2. С помощью универсальной обработки выгрузки и загрузки данных XML (или настроенных правил обмена в 1С:Конвертация данных) переносим из рабочей базы только справочную информацию:
    • Справочники: Номенклатура, Контрагенты, ДоговорыКонтрагентов, Склады, Организации и т.д.
    • Необходимые регистры сведений: цены номенклатуры, штрихкоды, контактная информация.
  3. На дату начала учета в новой базе формируем стандартные документы ввода остатков:
    • ОприходованиеТоваров — для восстановления остатков на складах по себестоимости.
    • ВводНачальныхОстатковПоВзаиморасчетам или ДокументРасчетовСКонтрагентом — для фиксации задолженностей.
  4. Проводим созданные документы и проверяем сходимость ведомостей по товарам на складах и ведомостей по взаиморасчетам между старой и новой базами.
  5. Старую рабочую базу сохраняем в качестве архивной (переведя пользователей в режим «только чтение»).

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

← На главную