Удаление в 1С

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

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

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

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

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

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

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

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

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

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

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

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

Если мы удалим этот элемент справочника Контрагент, как мы это делали выше, то после повторного открытия документа, в котором была указана ссылка на удаленный элемент справочника Контрагент, на месте удаленного элемента мы обнаружим сообщение «Объект не найден».

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

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

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

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

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

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

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

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

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

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

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

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

Пометить выделенные элементы на удаление 1C

Если мы ответим Да, то выделенные объекты будут помечены на удаление  —  слева появятся соответствующие значки.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Продолжение: как программно удалить объект в 1С

Более подробно и основательно разработка в 1С дается в моей книге:
Книга «Программировать в 1С за 11 шагов»

Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»

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

Книга написана понятным и простым языком — для новичка.

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

О том как разрабатывать под управляемым приложением 1С, читайте в книге Книга «Основы разработки в 1С: Такси»

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

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

Промо-код на скидку в 15% — 48PVXHeYu

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


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

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

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Вступайте в мои группы:

Вконтакте: https://vk.com/1c_prosto
Фейсбуке: https://www.facebook.com/groups/922972144448119/
ОК: http://ok.ru/group/52970839015518
Твиттер: https://twitter.com/signum2009

Добавить комментарий

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