Универсальное удаление данных из 1С или решение проблем с удалением
Как видим проблема существует и доставляет ряд неприятностей конечным пользователям программ 1С. Однако не отчаиваемся, ведь Вы уже читаете эту статью, а это значит, что решение найдено и называется «Универсальное удаление данных из 1C». Не придется больше "ломать" голову вопросом как удалить данные в 1С 8.3. Что это такое и с чем его едят? Это обработка, которая предназначается для удаления данных из базы с функцией наглядного отображения ссылочного дерева. После того, как приходит небольшое понимание того, с чем сегодня будем иметь дело, давайте определимся с функциональными возможностями обработки. А также рассмотрим список поддерживаемых конфигураций 1С. После этого приступим к практической части, где на примерах разберем работу обработки.Список того, что умеет данное решение:
- Удаление объектов. Основная функция обработки предназначенная для удаления объекта 1С из информационной базы. Позволяет выбирать конкретные «Метаданные» и «Вид метаданных». Доступен выбор способа удаления(полное удаление);
- Удаление не используемых объектов. Способ удаления объектов, которые не используются в конфигурации. Из списка выбранных метаданных обработка предоставляет список значений неиспользуемых данных;
- Монопольный режим. Осуществляется возможность организации монопольного способа удаления, который ускоряет процесс удаления большого количества данных;
- Дерево ссылок. Перед тем как произвести удаление данных обработка отобразит полный список зависимых ссылок в регистрах сведений, где можно перепроверить правильность выбранных на удаление данных;
- Максимальная глубина поиска. Настройка, позволяющая отыскать полную ссылочную зависимость удаляемого объекта с объектами базы.
Поддерживаемые конфигурации:
Решение универсально и будет работать в любой конфигурации как типовой, так и не типовой с доработками и без них на платформе 8.2 и 8.3. В процессе разработки работа была успешно протестирована в следующих типовых конфигурациях: 1С:Бухгалтерия предприятия 3.0, 1С:Зарплата и управление персоналом 3.0, 1С:Управление торговлей 11, 1С:Управление торговлей 10.3, 1С:Управление нашей фирмой, редакция 1.6, 1С:Управление производственным предприятием, редакция 1.3.
Универсальное удаление на практике
В начале хотелось бы разобрать самые примитивные ситуации, при которых пришлось бы использовать обработку «Универсальное удаление данных из 1С». Так будет проще разобраться с функционалом обработки и понять принцип ее работы. В качестве примера буду использовать конфигурацию «Бухгалтерия предприятия 3.0». И так первым делом необходимо добавить обработку в конфигурацию. Это можно сделать двумя способами, первым и самым простым, просто перетащить обработку из каталога(компьютера) в конфигурацию. Или вторым способом, перейдя в раздел «Администрирование»-«Печатные формы, отчеты и обработки»-«Дополнительные отчеты и обработки», нажать кнопку «Добавить из файла» и добавить данную обработку. Начальная страница, она же «Настройки» выглядит следующим образом.
На данной странице выбирается один из режимов работы, после чего осуществляется переход к этапу выбора данных для удаления. Выберем режим «Удаление объектов» и нажмем кнопку «Далее», чтобы перейти к выбору метаданных, которые хотим удалить. На закладке «Что и как нужно удалить?» выбираем метаданные, например, «Документы» и следом укажем вид метаданных «Ведомость в банк». Далее по необходимости можем указать чек-бокс «Удалять в монопольном режиме», но лучше это делать при большом количестве удаляемых объектов. Поэтому в данной ситуации активировать флажок не будем. Также нужно не забывать установить глубину поиска, чтобы полностью удалить документ и все связанные с ним ссылки (если данный реквизит не был установлен, тогда глубина поиска по умолчанию будет равна трем). После заполнения всех реквизитов, перейдем к заполнению табличной части, где с помощью кнопки «Добавить» можно добавить один конкретный объект. Если необходимо добавить сразу все объекты выбранного вида метаданных, тогда можно воспользоваться кнопкой «Заполнить» и табличная часть автоматически будет заполнена объектами, выбранного вида метаданных. В данном случае добавим только один объект и нажмем «Далее».

На закладке «Удаление» отобразится табличная часть, в которой выведется информация в виде дерева со всеми связанными с объектом ссылками. В табличной части отражается:
- «Представление» - представление удаляемого объекта;
- «Ссылка» - связанная ссылка на объект;
- «Полное имя» - отображается полное наименование удаляемого объекта;
- «Количество подчиненных» - отображается количество подчиненных объектов удаляемых метаданных.

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

Ну и на десерт оставили сладкое, ситуацию когда встает необходимость разделения единой базы, в которой велся учет по двум организациям на две совершенно отдельные друг от друга информационные базы. Да, не типичный пример, но имеет место быть. И к сожалению, стандартный механизм удаления объектов в конфигурациях 1С никогда не сможет справиться с поставленной задачей. Рассмотрим как подобное можно провернуть, используя обработку универсального удаления. Перейдем в конфигуратор центральной базы и выгрузим базу в *.dt-файл. Следом создадим новую чистую базу, которую назовем, к примеру, «Бухгалтерия 2».

После создания новой базы, открываем конфигуратор и загружаем ранее выгруженный *.dt-файл. Таким образом, получается две базы с одинаковыми данными. В порядке очереди запускаем первую (центральную базу) и с помощью обработки универсального удаления отчищаем информацию от второй организации способом, который был описан выше. Аналогичные манипуляции производим с новой базой (Бухгалтерия 2), в которую уже был загружен основной *dt-файл, за исключением удаления информации о первой организации. В результате получаем две отдельные базы, в которых теперь будет вестись отдельный учет. То есть, в центральной базе будет вестись учет по Конфетпром ООО, а в базе (Бухгалтерия 2) учет по организации (Торговый дом "Комплексный" ООО). Казалось бы, простая в использовании обработка, но так много применений, которые упрощают жизнь. На этой ноте хотелось бы закончить, удачи и спасибо за внимание!!!
Купить "Универсальное удаление данных из 1С"