1с удалить организацию из базы 1с

Обновлено: 30.06.2024

Позволяет удалить организации из любых программ на управляемых формах (БП 3.0, УТ 11, КА 2, ERP 2, ЗУП 3.0, УНФ, Розница 2.0 и пр.). Условие работы - в базе должен присутствовать справочник Организации. Удаляет все данные, которые ссылаются на организации.

В настоящее время предлагаем для решения задачи удаления лишних организаций несколько инструментов:

  • Обработка удаления организаций версии 1.14 без контроля ссылочной целостности. Работает очень быстро, за небольшое время очищает даже большие базы. Удаляет подчиненные справочники удаленных организаций. Также удаляются независимые справочники, содержащие ссылки на удаляемые организации и независимые регистры сведений.
  • Обработка поиска ошибок учета по организациям - тех ошибок, когда в документах одной организации указаны справочники другой организации. В этом случае ни одна обработка удаления организаций не выполнит корректного удаления.

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

Представьте ситуацию, что у Вас база БП 3.0. В нее загружается зарплата из ЗУП. В документе Отражение зарплаты в регл. учете в одной из строк ошибочно указано подразделение организации Б, а сам документ начисляет зарплату по организации А.

Что будет, когда Вам потребуется разделить базы, то есть в данной базе оставить только организацию А? Сначала пометится на удаление Организация Б, потом ее подразделение по ссылке, потом документ начисления зарплаты по организации А, т.к. в нем ошибочно указано подразделение.

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

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

1. Код обработки открыт.

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

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

4. Все замечания или ошибки пишите в комментарии или в личку, оперативно исправлю.

5. Обработка тестировалась на программах: ERP 2.0, БП 3.0, УТ 11.1 как на демобазах, так и на рабочих базах предприятий.

6. Не удаляет предопределенные данные. Соответственно, организацию Управленческая организация удалить с помощью этой обработки не получится.

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

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

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

9. По замечанию от пользователя в комментариях - исправлено удаление контрагентов по ссылке. Теперь поле "Основной договор" очищается и удаление контрагентов не происходит.

10. Запущенные фоновые задания могут мешать установке монопольного режима для быстрого удаления отмеченных объектов. Поэтому рекомендуется отключить на время выполнения обработки частозапускаемые фоновые задания: Администрирование - Поддержка и обслуживание - Регламентные и фоновые задания. На вкладке Фоновые задания можно увидеть частозапускаемые фоновые задания, а на вкладке Регламентные задания - временно их отключить.

Алгоритм действий при работе с обработкой:

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

2. Заходим Администрирование - Поддержка и обслуживание - Регламентные и фоновые задания. На вкладке Фоновые задания смотрим, какие запускаются часто, на вкладке Регламентные задания отключаем их на время. После выполнения удаления данных их необходимо включить обратно. Обычно часто запускаются регламентные задания "Извлечение текста" или "Обновление индекса ПДД".

3. Запускаем обработку. Удаление объектов выполняется не в фоновом задании, поэтому работа в программе будет заблокирована. Это необходимо для того, чтобы пользователь не помешал установке монопольного режима.

4. Если у программы не получилось провести удаление по причине ошибки установки монопольного режима, то проверьте, что нет работающих пользователей в текущей базе. Завершите все сеансы в ней. Зайдите заново. Проверьте еще раз, что нет запускаемых фоновых заданий, запустите после этого обработку заново.

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

Достоинства

Период бесплатной технической поддержки составляет один месяц с момента покупки.

Сравнение версий

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

03.10.2015 - добавлена версия 1.12, которая является небольшой доработкой версии 1.11. Работает аналогично, только разрешает оставить в базе несколько необходимых организаций. Для этого необходимо заполнить список оставляемых организаций вместо одной организации, как было в предыдущей версии.

Гарантия возврата денег

ООО "Инфостарт" гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.

Программа настолько проверена в работе, что мы с полной уверенностью можем дать такую гарантию. Мы хотим, чтобы все наши покупатели оставались довольны покупкой.

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

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

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

Так выглядит обработка на управляемых формах:

Управляемая форма

Так выглядит обработка на обычных формах:

Обычная форма

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

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

Для проверки правильности использования связанных данных служит специальная кнопка. При её нажатии обработка проверяет правильность использования связанной информации по выбранным организациям. Если будут обнаружены объекты, в которых связанные данные используются неправильно, они будут выведены в специальную таблицу в правой части обработки. Колонка «Ссылка на объект» будет содержать ссылку на объект с неправильными данными, колонка «Имя владельца» будет содержать имя реквизита объекта, который является «владельцем» связанной информации. Как правило, этот реквизит называется «Организация», но могут быть и другие имена. Колонка «Значение владельца» будет содержать ссылку на значение реквизита-владельца. Колонка «Имя подчиненного» будет содержать имя реквизита объекта, который «подчинён» реквизиту-владельцу, а колонка «Значение подчиненного» будет содержать ссылку на значение подчинённого реквизита. У этого реквизита, как правило, другой владелец.

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

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

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

Тестирование и исправление информационной базы

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

История изменений:

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

10.01.2020. Исправлена ошибка, возникавшая при обработке табличных частей объектов с количеством строк более 1000.

Гарантия возврата денег

ООО "Инфостарт" гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.

Программа настолько проверена в работе, что мы с полной уверенностью можем дать такую гарантию. Мы хотим, чтобы все наши покупатели оставались довольны покупкой.

Как видим проблема существует и доставляет ряд неприятностей конечным пользователям программ 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С», подобная задача становится сущим пустяком. Сейчас в этом наглядно убедимся, запускаем обработку. На закладке «Настройки» выбираем флажок «Удаление объектов» и нажимаем кнопку далее. В реквизите «Метаданные» укажем объект метаданных «Справочники», а в виде метаданных справочник «Организации». При подобно выбранных реквизитах будут доступны для указания в табличной части все имеющиеся организации в базе. С помощью кнопки «Добавить» укажем удаляемую организацию, в качестве примера, это Конфетпром ООО. Стоит отметить, что в текущем случае нелишним будет активировать удаление в монопольном режиме. Так как, объектов метаданных организации будет приличное количество. Также укажем глубину поиска, чтобы обработка могла максимально захватить и отобразить на удаление все объекты этой организации.

Удаление организации

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

Удаление организации

Чистая база

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

Здравствуйте.<br>Стоит 1с 8.2. бухгалтерия ред. 2.0. 35. В одной информац. базе используется 5-ть организаций.<br>Одна организация закрылась - возникла необходимость полность ее удалить(требование гл.Буха).<br>Удаление вручную всех док-в по организации трудоемко.Штатной процедуры не нашли,хотя<br>вроде должна быть(если добавили возможность ведения несколько организаций в базе)<br>Просьба,подскажите.Спасибо

"Сервис - Групповая обработка справочников и документов" не подходит?

этой обработкой помечаем на удаление все документы по выбранной организации,<br>а так же справочник договоры, т.к. они имеют привязку к организации. Иногда договоры по этой удаляемой организации могут стоять в основном договоре у какого-нибудь контрагента. Надо их отвязать от этих контрагентов уже вручную.<br>Потом вручную удаляем ссылки из регистров сведений, используемые по этой организации. Какие - показывает удаление помеченных документов.<br>Только после всего этого удалится сама организация

Где в "Сервис - Групповая обработка справочников и документов" указать отбор по конкретной организации .

Где указать отбор по выбранной организации .

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

В Обьектах отбора мы указывали все док-ты.<br>В некоторых док. нет реквизита организация,<br>поэтому в отборах у нас не было поля Организация.<br>Если в В Обьектах отбора мы укажем док.реализация,поступление и тд.<br>то организация появится и мы СМОЖЕМ ОТОБРАТЬ док. по конкрет.организ-и и удалить.<br>Примерно такого ответа мы ждали от вас,<br>А в ответ<br>>привлечь стороннего спеца для выполнения этой задачи? Проще будет ему написать обработку по поиску ссылок на организацию в объектах, которая сама все найдет и пометит на удаление. Потом сможете еще не раз такой обработкой воспользоваться

В этой статье узнаем как осуществляется удаление в 1С, научимся удалять объекты в 1С 8.3 напрямую, помечать их на удаление, и удалять помеченные на удаление объекты 1С.

Прямое удаление в 1С

В платформе 1С 8.3 имеется возможность удалить любой объект так, что он сразу исчезнет из базы 1С. Чтобы такая возможность предоставлялась, необходимо для нужного объекта у роли установить право «Интерактивное удаление».

Интерактивное удаление 1С

Если такое право у объекта установлено, то в меню «Ещё» формы списка объекта появится команда «Удалить».

Команда удалить в меню Ещё 1С

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

Вопрос перед удалением объекта 1С

Не рекомендуется в реальной базе оставлять возможность интерактивного удаления объектов.

Сейчас я продемонстрирую почему.

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

Ссылка на справочник в реквизите документа 1С

Объект не найден в 1С

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

Пометка удаления 1С

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

Чтобы пользователь имел возможность пометить на удаление какой-то объект, необходимо, у роли для этого объекта было установлено право «Интерактивная пометка на удаление».

Интерактивная пометка на удаление 1C

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

Сейчас пользователь не может сразу удалить какой-то элемент объекта, для этого ему необходимо сначала пометить этот объекта на удаление. Делается это так: нужно выделить объект в форме списка, вызвать контекстное меню и выполнить команду «Пометить на удаление/снять пометку» (или просто нажать клавишу Del).

Пометить на удаление/снять пометку 1C

Также, можно пометить сразу несколько элементов, выделив нужные.

Пометить на удаление/снять пометку 1C

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

Объекты помеченные на удаление 1C

Нам осталось удалить помеченные объекты из базы.

Удаление помеченных в 1С

Если нам нужно дать пользователю возможность удалять из базы помеченные на удаление элементы какого-нибудь объекта, то необходимо, чтобы у роли было для этого объекта установлено право «Интерактивное удаление помеченных».

Право интерактивное удаление помеченных в 1C

Для удаления помеченных на удаление объектов следует воспользоваться утилитой «Удаление помеченных объектов». Начиная с платформы 1С 8.3.15, путь к ней следующий: необходимо в меню «Сервис и настройка» выполнить команду «Функции для технического специалиста».

Функции для технического специалиста 1С

В открывшемся окне следует в ветке «Стандартные» найти и выполнить команду «Удаление помеченных объектов».

Удаление помеченных объектов 1С

В платформе редакции 8.3.14 и ниже, путь к окну с командой «Удаление помеченных объектов» будет следующий:

Меню все функции 1С

В открывшейся утилите «Удаление помеченных объектов», сначала будет предложено выбрать вариант удаления: полное удаление или выборочное.

Удаление помеченных объектов 1С

Если выбрать выборочное удаление, то в следующем окне будет предложено выбрать те объекты, которые следует удалить.

Удаление помеченных объектов 1С

Удаление помеченных объектов 1С

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

Удаление помеченных объектов 1С

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

Программировать в 1С за 11 шагов

  1. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  2. Научитесь понимать архитектуру 1С;
  3. Станете писать код на языке 1С;
  4. Освоите основные приемы программирования;
  5. Закрепите полученные знания при помощи задачника.

Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

Основы разработки в 1С такси

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog


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

можно оплатить вручную:

Читайте также: