Перенос организации в отдельную базу, полная очистка базы от данных организации (версия от 25.07.2024)

Данная обработка позволяет удалить организацию и все связанные с ней данные – документы, элементы справочников, записи регистров сведений. Обработка полезна для выделения организации в отдельную базу. Доработано для ЗУП 3.1.

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

Доступны 3 режима удаления данных организаций:

  • По выбранной организации
  • По всем организациям, кроме выбранной
  • По всем организациям, помеченным на удаление в справочнике Организации.

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

Как выделить организацию в отдельную базу.

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

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

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

Я тестировал обработку на конфигурации Бухгалтерия предприятия 3.0.64.34, 3.0.71.77, ЗУП 3.1.8.246.

38 Comments

  1. Timur.V

    Если размер базы приближается к 1Тб, а количество организаций в базе 900.

    Сколько дней ваша обработка будет выделять одну организацию т.е. как быстро она работает?

    Я где-то нашёл обработку, очень похожую на вашу. Она удаляла каждые 50 организаций за 3-4 часа.

    Reply
  2. serge_msk

    Я не проводил тестирование производительности.

    Возможно, при таком объёме базы быстрее будет работать серверный вариант, а не файловый.

    Пометка на удаление документов, справочников и т.п. происходит достаточно быстро.

    Долго работает стандартный анализатор помеченных на удаление объектов.

    Для ускорения работы можно сделать опцию «Удалять из базы непосредственно» в обход стандартной процедуры удаления помеченных объектов.

    Reply
  3. TMV

    Через РИБ с фильтром по организации уже делают такое и давно

    Reply
  4. serge_msk

    Через РИБ не каждый сможет.

    А тут простой как клещи инструмент.

    Reply
  5. Timur.V

    (3) Я так и выделяю. Занимает по времени, кажется 30 мин.

    Reply
  6. Timur.V

    (4) Как правило, разработчики таких обработок пишут, что не несут ответственности за порчу или потерю информации.

    Reply
  7. serge_msk

    Разработчики обычно пишут, что работать следует с копией БД.

    Данная обработка сама ничего не удаляет, лишь помечает на удаление.

    Reply
  8. alex_4x

    Увы, мне кажется универсальное решение для всех видов конфигураций (даже при наличии одинакового справочника «Организации») такое не сделаешь. Столкнулся с тем, что бухгалтера хотели почистить всё «лишнее», а лишнее по их задумке понималось как всё, не имеющее отношение к деятельности одной выделяемой организации, а это и пользователи и физические лица и контрагенты и договора и номенклатура и ос и склады и подразделения и ты ды.

    Reply
  9. serge_msk

    (8) Я бы сделал так:

    Сначала вычистил всё, что не имеет непосредственное отношение к оставляемой организации. Я пока не разобрался, но иногда требуется 2 прохода моей обработки для полной очистки (пометка — удаление, снова пометка — удаление), иногда с ручной пометкой неких элементов, не имеющих прямого отношения к организациям, но мешающих удалению связанных объектов.

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

    Таким образом будут удалены все «лишние «элементы.

    Reply
  10. alex_4x

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

    Reply
  11. Neznayka

    Здравствуйте! Обработка с бюджетными конфигурациями совместима?

    БГУ 1

    БГУ 2

    ЗКБУ

    ЗКГУ

    Reply
  12. serge_msk

    Добрый день!

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

    С бюджетными конфигурациями не тестировал. Готов внести исправления если возникнет ошибка.

    24.09 вернусь из отпуска и протестирую.

    Reply
  13. Neznayka

    Доброго времени! По ЗИКГУ не помечает все объекты. Так как есть открытые позиции штатного расписания. Поэтому нет возможности поставить Подразделение на удаление, пока не закрыты позиции штатного расписания и так же пока не расформировано подразделение..

    Reply
  14. Neznayka

    На БГУ 2.0 ошибка:

    {ВнешняяОбработка.УдалениеОрганизацииБУХ30.Форма.Форма.Форма(1139)}: Ошибка при вызове метода контекста (СодержитТип)

    Если изм.Тип.СодержитТип(типОрг) Или изм.Тип.СодержитТип(типПодр) Тогда

    по причине:

    Несоответствие типов (параметр номер ‘1’)

    На ЗикБУ, обработка вообще не открывается.

    Reply
  15. serge_msk

    (14)

    Ошибку исправил.

    Заодно понял, что не все реквизиты проверяю при поиске ссылок на организацию.

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

    Reply
  16. Neznayka

    Спасибо. На ЗКБУ работать будет?

    Reply
  17. serge_msk

    (16)

    Протестировал на базах БГУ и ЗКГУ — работает.

    Однако встречается сильно запутанная структура зависимости объектов и не все необходимые объекты помечаются на удаление — приходится вручную помечать в обработке «Удаление помеченных объектов».

    Как будет время, сделаю рекурсивную процедуру анализа зависимых данных.

    Reply
  18. aronskiy

    Не работает

    Reply
  19. serge_msk

    (18) Я проверю что это может быть.

    Возможно, повторный прогон завершит удаление взаимосвязанных объектов.

    Reply
  20. serge_msk

    (18) Усовершенствовал обработку, заодно ускорил.

    Подобных ошибок теперь не должно происходить. проверил на нескольких базах ЗУП 3.1.

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

    Пишите подробное описание проблемы и я внесу исправления.

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

    Reply
  21. pavel06

    (20)

    проверил на нескольких базах ЗУП 3.1.

    А обработка может удалить 10 организаций из 15? А пять организаций оставить?

    Платформа 8.3.12.1616 годится для обработки?

    Если некоторые физлица задействованы сотрудниками как в удаляемой организации, так и в оставляемой, то они не удалятся?

    Если база ЗУП 3.1 получена апгрейдом из версии 2.0, то данные прошлых лет в регистрах удаляемых организаций удалятся?

    Reply
  22. serge_msk

    (21) А обработка может удалить 10 организаций из 15?

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

    Платформа 8.3.12.1616 годится для обработки?

    Платформа не критична.

    Если некоторые физлица задействованы сотрудниками как в удаляемой организации, так и в оставляемой, то они не удалятся?

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

    Если база ЗУП 3.1 получена апгрейдом из версии 2.0, то данные прошлых лет в регистрах удаляемых организаций удалятся?

    Обработка анализирует ВСЕ типы объектов в базе, так что ответ — да.

    Reply
  23. serge_msk

    (21) Совсем забыл, для удаления отдельных организаций по списку есть возможность в текущей версии.

    Необходимо пометить организации на удаление средствами 1С и выбрать команду обработки «Пометить на удаление данные по помеченным на удаление организациям»

    Reply
  24. pavel06

    (22)

    Обработка не удаляет объекты, а лишь помечает на удаление.

    А удаление помеченных как потом делать? Не в обработке?

    Reply
  25. serge_msk

    (24) да, стандартным поиском и удалением помеченных объектов.

    Reply
  26. pavel06

    (22)

    Думаю, Физлица удаляемых организаций будут помечены на удаление

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

    Reply
  27. gerasimov_v

    добрый день

    на ЗУПе 2.5 есть информация, работает обработка, отзывы были?

    c уважением, Владимир

    Reply
  28. serge_msk

    (27) обработка для платформы 8.3 и управляемых форм.

    если базу 2.5 перевести на ЗУП 3.1, то потом можно будет использовать эту обработку.

    Хотя первую версию я делал для 8.2, возможно, она бы подошла.

    Reply
  29. hanio

    подскажите а вы не доработали удаление организаций помеченных на удаление в справочнике после того как удалены документы? Ну пометить на удаление это понятно что можно сделать и потом пройти удалением помеченных объектов

    Reply
  30. serge_msk

    (29) Корректнее всего делать окончательное удаление через стандартный механизм удаления помеченных объектов. Я не стал его дублировать.

    Обработка лишь помечает объекты.

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

    Reply
  31. hanio

    Ув. Сергей вы же не думаете что пользователь настолько хорошо что может подумать о том что ему нужно а что нет? Я вас умоляю, ему главное чтобы результат был и положительный )). Ладно я согласен что надо через удаление помеченных объектов. Вот только действо это при удалении объемной базы я сейчас буду ставить так есть прогноз что суток двое не меньше займет… Тяжелый механизм и иногда думаешь а удалить все непосредственно и потом через конфигуратор ТиИ сделать, но нет это от лукавого )))

    Reply
  32. hanio

    дополнение к обработке сделайте пожалуйста чтобы пометка на удаление пачек РСВ 6 была правильно сделана — там надо по всем помеченным на удаление организациям в справочнике комплекты перс учета поменялся реквизит состояние пачки с отправлено на в работе и тогда все происходит на ура.

    Reply
  33. serge_msk

    (32)

    удаление организациям в справочнике комплекты перс учета поменялся реквизит состояние пачки с отправлено на в работе

    ОК, поправлю и обновлю, спасибо за комментарий!

    Reply
  34. hanio

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

    Reply
  35. serge_msk

    (32)

    Наконец у меня дошли руки проверить ситуацию с регл. отчётами и их статусами.

    Статусы удаляются автоматически совсем, их менять не надо.

    Я обнаружил, что транспортные сообщения не удаляются, если используется сервис 1с-Отчётность.

    Я это исправил. Выкладываю обновлённую версию.

    Reply
  36. hanio

    Да все верно у нас используется 1С-Отчетность и именно там не сработало смена статусов в комплектах перс учета.

    Reply
  37. boris_a1

    Спасибо. Обработка отработала достаточно хорошо, некоторые вещи тем не менее пришлось руками доработать, но это не так страшно, ибо их было мало. Касательно статусов — в БП не меняются статусы РСВ-1.

    Reply
  38. boris_a1

    (4) Через РИБ не так сложно, тащатся обороты только по нужным организациям, но нужно по новой настраивать подключаемое оборудование и пользователям придется объяснить, что настройки им придется делать по-новой. Из минусов РИБ — если есть кривая ссылка на организацию, то документ мигрирует в дочернюю базу. Минус далеко не единственный, но здесь не о них.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *