Как правильно удалить лишние организации и разделить базу в 1С:Бухгалтерия

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

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

Способ 1. Создание начального образа РИБ с отбором по организации (Рекомендуемый)

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

Разберем по шагам алгоритм выполнения:

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

ПланыОбмена.УстановитьГлавныйУзел(Неопределено);

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

Способ 2. Прямое удаление документов и объектов в рабочей базе

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

Проанализируем риски и особенности прямого удаления:

  1. Записи в независимых регистрах сведений: При удалении документов организации в базе сохраняются записи в независимых регистрах, где организация выступает измерением или ресурсом (например, УчетнаяПолитика, ОтветственныеЛица, РегистрацияВНалоговомОргане, настройки зарплаты и счетов учета). Их необходимо очищать вручную или специальными обработками.
  2. Межорганизационные взаиморасчеты: Если между организациями проводились взаимозачеты или перемещения, удаление одной из сторон приведет к появлению битых ссылок вида <Объект не найден> в оставшихся документах.
  3. Тайм-ауты и транзакции: Массовое удаление сотен тысяч документов создает колоссальную нагрузку на СУБД, что может привести к переполнению журнала транзакций или ошибкам блокировок. Удаление следует производить порциями.

Способ 3. Перенос данных в чистую базу через Универсальный обмен XML

Рассмотрим альтернативный вариант, который гарантирует максимальную чистоту целевой информационной базы:

  1. Создаем новую чистую информационную базу той же конфигурации и того же релиза.
  2. С помощью типовой обработки «Универсальный обмен данными в формате XML» настраиваем выгрузку справочников и документов с установкой фильтра по реквизиту Организация.
  3. Загружаем полученные данные в пустую базу. Этот способ исключает перенос лишних записей в неразделенных регистрах и гарантирует отсутствие следов сторонних организаций.

Обязательные действия после очистки и разделения

После того как лишние организации удалены или база отвязана от РИБ, необходимо выполнить завершающие регламентные операции:

  1. Очистка неиспользуемых справочников: В полученной базе останутся контрагенты, номенклатура и договоры, принадлежавшие удаленным организациям. Если базу планируется передать третьим лицам, запускаем процедуру поиска и удаления неиспользуемых элементов справочников.
  2. Тестирование и исправление: Запускаем базу в режиме Конфигуратор и выполняем меню Администрирование — Тестирование и исправление информационной базы с включенными опциями Проверка логической целостности и Проверка ссылочной целостности.
  3. Физическое сжатие базы: Простое удаление записей не уменьшает размер файла базы на диске. В файловом режиме (файл .1CD) необходимо выполнить пункт Сжатие таблиц при тестировании либо выполнить операцию выгрузки и обратной загрузки файла .dt. В клиент-серверном варианте требуется выполнить сжатие базы данных (Shrink/VACUUM) средствами СУБД.
← На главную