Как правильно разделить учет по двум организациям в облачной базе 1С и оставить только одну фирму?

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

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

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

Способ 1. Использование механизма РИБ (Распределенной информационной базы)

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

Давайте подробно разберем этот процесс по шагам:

  1. Выгрузка базы на локальный компьютер. Если вы работаете в облаке, напрямую создать РИБ-ноду часто невозможно из-за ограничений прав доступа и безопасности облачной инфраструктуры. Поэтому первым шагом мы должны выгрузить резервную копию базы (файл .dt или через выгрузку автономного рабочего места) и развернуть её локально на компьютере.
  2. Включение синхронизации данных. Открываем локальную базу под учетной записью с правами администратора. Переходим в раздел Администрирование — Синхронизация данных и устанавливаем флаг Синхронизация данных.
  3. Настройка РИБ с фильтрами. Переходим по ссылке Настройки синхронизации данных, нажимаем кнопку Новая синхронизация и выбираем пункт Распределенная информационная база (РИБ) по организации. В мастере настройки указываем именно ту организацию, данные которой мы хотим оставить. Все документы и справочники, привязанные к другой организации, автоматически отсекаются.
  4. Создание начального образа. Следуя указаниям мастера, создаем начальный образ подчиненного узла. Программа сформирует файл базы данных (обычно файловый вариант 1Cv8.1CD), в котором будут содержаться только нужные нам данные.
  5. Отключение связи с главным узлом. Это ключевой технический шаг, без которого новая база останется "подчиненной" и в ней нельзя будет полноценно работать, изменять настройки или обновлять её конфигурацию. Нам нужно запустить созданную новую базу в режиме "Предприятие". Поскольку база считает себя подчиненным узлом, нам необходимо программно разорвать эту связь. Для этого открываем групповую обработку или встроенную консоль кода и выполняем следующую команду: ПланыОбмена.УстановитьГлавныйУзел(Неопределено); После выполнения этого кода база данных становится полностью автономной и самостоятельной.
  6. Загрузка базы обратно в облако. Полученную очищенную базу мы архивируем и загружаем обратно в облачный сервис вместо старой базы (или создаем под нее новое приложение).

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

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

Прежде чем начать массовое удаление, проанализируем критически важную настройку — дату запрета изменения данных. Если в базе установлена дата запрета, программа заблокирует любые попытки пометить документы на удаление в прошлых периодах. Поэтому обязательно переходим в Администрирование — Поддержка и обслуживание — Даты запрета изменения и временно отключаем этот контроль.

Теперь разберем алгоритм группового удаления по шагам:

  1. Групповая пометка на удаление документов. Вручную помечать тысячи документов не имеет смысла. Мы воспользуемся встроенным инструментом Групповое изменение реквизитов (доступно через меню Администрирование — Обслуживание — Корректировка данных).
    1. В поле "Изменяемые объекты" выбираем все виды документов, которые велись по удаляемой фирме.
    2. Добавляем условие отбора: Организация Равно [Ссылка на удаляемую организацию].
    3. В табличной части реквизитов находим строку ПометкаУдаления и устанавливаем значение Да.
    4. Нажимаем кнопку Изменить реквизиты. Программа массово установит пометку удаления на все выбранные документы.
  2. Очистка зависимых справочников. Документы помечены на удаление, но остались справочники, жестко привязанные к удаляемой организации (например, ДоговорыКонтрагентов, банковские счета, кассы организации, склады). Нам необходимо повторить процедуру группового изменения реквизитов для этих справочников, также установив отбор по владельцу (организации) и пометив их на удаление.
  3. Удаление помеченных объектов. Переходим в раздел Администрирование — Обслуживание — Удаление помеченных объектов. Выбираем автоматический режим. Программа начнет анализ ссылочной целостности. Те объекты, на которые нет ссылок в оставшейся организации, будут безвозвратно удалены. Если возникнут конфликты (например, на договор удаляемой организации ссылается документ оставшейся организации), программа покажет эти связи. Их придется обработать вручную, заменив ссылки или удалив конфликтующие документы.
  4. Удаление карточки организации. В самом конце, когда все документы, договоры и счета удалены, мы помечаем на удаление саму карточку организации в справочнике Организации и производим финальное удаление.

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

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

Для этого используется стандартная обработка ВыгрузкаЗагрузкаДанныхXML. Мы открываем ее в исходной базе, выбираем все необходимые типы документов и справочников, но настраиваем жесткий отбор по реквизиту Организация. Программа выгружает в XML-файл только те данные, которые относятся к оставляемой фирме. Затем в пустую облачную базу мы загружаем этот файл. Этот способ гарантирует отсутствие "хвостов" удаляемой организации, однако имеет нюанс: регламентированная отчетность прошлых периодов может не перенестись автоматически, и её придется перезаполнить или перегрузить отдельно.

Важные нюансы работы в облачной среде

При реализации любого из описанных методов в облаке (особенно в сервисе 1С:Фреш) необходимо учитывать специфические ограничения платформы:

← На главную