Ситуация, когда в одной информационной базе 1С ведется учет по нескольким организациям, встречается довольно часто. Однако со временем может возникнуть необходимость «разделить» базу или просто удалить ненужные юридические лица, оставив только одно основное. На первый взгляд задача кажется простой — достаточно пометить организацию на удаление. Но на практике мы сталкиваемся с огромным количеством связей в документах, справочниках и регистрах, которые не позволяют так легко очистить базу. Рассмотрим подробнее проверенные методы и технические нюансы этой процедуры.
Этот способ считается самым безопасным, так как он задействует стандартные механизмы контроля ссылочной целостности 1С. Разберем по шагам, как реализовать этот подход.
Во-первых, воспользуемся обработкой Групповое изменение реквизитов. Нам необходимо отобрать все документы и справочники, где в качестве реквизита указана удаляемая организация. В настройках отбора выберем нужную фирму и установим действие «Пометка на удаление». Важно понимать, что в крупных базах этот процесс может занять значительное время.
Во-вторых, после того как все объекты помечены, запустим стандартную процедуру Удаление помеченных объектов. Рекомендуем использовать режим «Выборочное удаление», чтобы проанализировать связи. Если объект не удаляется, программа покажет ссылки на него. Чаще всего «держат» организацию записи в регистрах сведений (например, учетные политики, ответственные лица) или настройки прав доступа.
Преимущества: Полный контроль над процессом и отсутствие риска появления «битых» ссылок.
Недостатки: Низкая скорость работы на больших объемах данных и сложность удаления объектов с циклической зависимостью.
Этот метод часто называют самым эффективным для быстрого «отпочкования» одной фирмы в отдельную базу. Суть заключается в создании подчиненного узла, в который мигрируют данные только по одной выбранной организации.
Проанализируем алгоритм действий:
ПланыОбмена.УстановитьГлавныйУзел(Неопределено);
После выполнения этого кода база становится автономной. Однако здесь кроется главная проблема, упомянутая в обсуждении: пропадают пользователи и некоторые кадровые данные. Это происходит из-за того, что правила миграции в РИБ по умолчанию могут не передавать общие справочники или специфические регистры, не имеющие прямой привязки к организации.
Для исправления этой ситуации нам потребуется догрузить недостающие данные (пользователей, физических лиц, настройки отчетов) через универсальную обработку Выгрузка и загрузка данных XML из оригинальной базы.
Если ваша цель — получить «стерильную» базу без лишнего цифрового мусора, который неизбежно остается при удалении, лучше всего использовать метод переноса нужного, а не удаления лишнего. Рассмотрим, как это сделать правильно.
Создадим пустую информационную базу той же конфигурации и версии. Используем обработку Выгрузка и загрузка данных XML. При выгрузке из исходной базы установим фильтр по реквизиту Организация для всех типов документов. Программа автоматически подтянет связанные справочники (контрагентов, номенклатуру, договоры), которые задействованы в этих документах.
Этот метод позволяет избежать переноса старых ошибок, битых ссылок и ненужных настроек, которые годами копились в многофирменной базе.
Разберем ситуацию с регламентированной отчетностью. Документы отчетов (НДС, Прибыль, отчеты в фонды) часто имеют сложную структуру хранения данных в хранилищах значений. При простом удалении организации записи о состояниях этих отчетов могут остаться в регистрах, что приведет к ошибкам при формировании новых деклараций. После удаления организации обязательно проверьте регистр сведений Состояния отчетов и очистите его вручную от записей по старым фирмам.
Если в базе использовался механизм Интеркампани (передача товаров между организациями), простое удаление одной из сторон сделки невозможно. Документы типа Передача товаров связывают две фирмы. В этом случае мы рекомендуем:
Проанализируем еще один способ — Свертка информационной базы. В процессе свертки на определенную дату (например, 31 декабря прошлого года) система позволяет указать фильтры. Если мы укажем только одну нужную организацию, система создаст документы ввода остатков только по ней. Все старые документы по всем фирмам будут помечены на удаление. После этого процесс окончательной очистки базы от «хвостов» других организаций пойдет значительно быстрее, так как многие сложные цепочки связей будут разорваны датой свертки.
Важный совет: Перед любыми манипуляциями по удалению данных обязательно создавайте полную резервную копию базы. Оптимальный вариант — проводить процедуру на копии, проверять корректность формирования ОСВ и кадровых приказов, и только после этого повторять действия на рабочей базе или заменять ее проверенной копией.