---
title: Удаление помеченных объектов
slug: bsp/удаление-помеченных-объектов
---


## УдалитьПомеченныеОбъекты
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Безвозвратно удаляет объекты, помеченные на удаление, выполняя при этом контроль ссылочной целостности.
// Следует вызывать вне транзакции, т.к. функция сама управляет транзакциями и порционностью.
//
// Параметры:
//  УдаляемыеОбъекты - Массив из ПланОбменаСсылка
//                   - Массив из СправочникСсылка
//                   - Массив из ДокументСсылка
//                   - Массив из ПланСчетовСсылка
//                   - Массив из ПланВидовРасчетаСсылка
//                   - Массив из БизнесПроцессСсылка
//                   - Массив из ЗадачаСсылка - объекты для удаления.
//  РежимУдаления - Строка - способ удаления, может принимать значения:
//		"Стандартный" - удаление объектов с контролем ссылочной целостности и сохранением возможности
//					    многопользовательской работы.
//		"Монопольный" - удаление объектов с контролем ссылочной целостности с установкой монопольного режима.
//					    Если монопольный режим установить не удалось, то будет вызвано исключение.
//		"Упрощенный"  - удаление объектов, при котором контроль ссылочной целостности выполняется только в непомеченных
//					    на удаление объектах. В помеченных на удаление объектах ссылки на удаляемые объекты будут очищены.
//
// Возвращаемое значение:
//    Структура:
//      * Успешно - Булево - Истина, если все объекты были удалены.
//      * ПрепятствующиеУдалению - ТаблицаЗначений - объекты, в которых есть ссылки на удаляемые объекты:
//        ** УдаляемыйСсылка - ЛюбаяСсылка
//        ** МестоИспользования - ЛюбаяСсылка - ссылка на объект, препятствующий удалению.
//									  - Неопределено - объект используется в константе или
//									  	в процессе удаление произошла ошибка. Информация о константе указана в поле метаданные.
//									  	Информация об ошибке указана в поле ОписаниеОшибки.
//        ** ОписаниеОшибки - Строка - описание ошибки при удалении объекта.
//        ** ПодробноеОписаниеОшибки - Строка - подробное описание ошибки при удалении объекта.
//        ** Метаданные - ОбъектМетаданных - описание метаданных объекта, препятствующего удалению.
//        * Удаленные - Массив из ЛюбаяСсылка- успешно удаленные объекты.
//        * НеУдаленные - Массив из ЛюбаяСсылка - не удаленные объекты.
//
Функция УдалитьПомеченныеОбъекты(УдаляемыеОбъекты, РежимУдаления = "Стандартный") Экспорт
```

Пример вызова
```bsl
Результат = УдалениеПомеченныхОбъектов.УдалитьПомеченныеОбъекты(УдаляемыеОбъекты, РежимУдаления);
```
</details>

## ПомеченныеНаУдаление
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Формирует помеченные на удаление с учетом разделения и фильтрацией служебных и предопределенных объектов.
// При выполнении в разделенном сеансе будут возвращены объекты с учетом разделителя.
// Предопределенные элементы исключаются из результата поиска.
//
// Параметры:
//   ОтборМетаданных - СписокЗначений из Строка - список из полных имен метаданных, в которых будет
// 												 выполнен поиск помеченных на удаление.
// 												 Например, "Справочник.Номенклатура".
//                   - Неопределено - отбор по объектам метаданных накладываться не будет.
//
//  ИскатьТехнологическиеОбъекты - Булево - если Истина, то поиск будет осуществляться в объектах метаданных,
//											добавленных в исключения поиска ссылок.
//											см. ОбщегоНазначения.ИсключенияПоискаСсылок.
//											Например, в справочнике КлючиДоступа.
//
//
// Возвращаемое значение:
//   Массив из ЛюбаяСсылка
//
Функция ПомеченныеНаУдаление(Знач ОтборМетаданных = Неопределено, ИскатьТехнологическиеОбъекты = Ложь) Экспорт
```

Пример вызова
```bsl
Результат = УдалениеПомеченныхОбъектов.ПомеченныеНаУдаление(ОтборМетаданных, ИскатьТехнологическиеОбъекты);
```
</details>

## ПриСозданииНаСервере
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устанавливает видимость помеченных на удаление.
//
// Параметры:
//   Форма - ФормаКлиентскогоПриложения - форма с динамическим списком
//   НастройкиОтображенияПомеченныхОбъектов - см. НастройкиОтображенияПомеченныхОбъектов
//                                          - ТаблицаФормы - элемент формы динамического списка.
//
// Пример:
// 	// Для настройки одного списка
// 	УдалениеПомеченныхОбъектов.ПриСозданииНаСервере(ЭтотОбъект, Элементы.Список);
//
// 	// Для настройки нескольких списков
// 	НастройкиОтображенияПомеченных = УдалениеПомеченныхОбъектов.НастройкиОтображенияПомеченныхОбъектов();
// 	Настройка = НастройкиОтображения.Добавить();
// 	Настройка.ИмяЭлементаФормы = Элементы.Список1.Имя;
// 	Настройка = НастройкиОтображения.Добавить();
// 	Настройка.ИмяЭлементаФормы = Элементы.Список2.Имя;
//
// 	// Установка основной таблицы необходима для перехода к спискам помеченных объектов
// 	// с предустановленным отбором
// 	ОсновныеТаблицыСписка = Новый СписокЗначений();
// 	ОсновныеТаблицыСписка.Добавить("Справочник.Номенклатура");
// 	Настройка.ТипыМетаданных = ОсновныеТаблицыСписка;
// 	УдалениеПомеченныхОбъектов.ПриСозданииНаСервере(ЭтотОбъект, НастройкиОтображенияПомеченных);
//
Процедура ПриСозданииНаСервере(Форма, Знач НастройкиОтображенияПомеченныхОбъектов) Экспорт
```

Пример вызова
```bsl
УдалениеПомеченныхОбъектов.ПриСозданииНаСервере(Форма, НастройкиОтображенияПомеченныхОбъектов) 
```
</details>

## НастройкиОтображенияПомеченныхОбъектов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Формирует настройки отображения помеченных на удаления объектов.
//
// Возвращаемое значение:
//   ТаблицаЗначений:
//   * ИмяЭлементаФормы - Строка - имя таблицы формы, связанного с динамическим списком.
//   * ТипыМетаданных - СписокЗначений из Строка - типы объектов, отображаемых в динамическом списке.
//   * ИмяСписка - Строка - необязательный. Имя динамического списка на форме.
//
Функция НастройкиОтображенияПомеченныхОбъектов() Экспорт
```

Пример вызова
```bsl
Результат = УдалениеПомеченныхОбъектов.НастройкиОтображенияПомеченныхОбъектов() 
```
</details>

## РежимУдалятьПоРасписанию
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает информацию о настройках удаления помеченных по расписанию.
// Пример использования см. в документации.
//
// Возвращаемое значение:
//   Структура:
//   * Расписание - см. РегламентныеЗаданияСервер.РасписаниеРегламентногоЗадания
//   * Использование - Булево - признак использования регламентного задания.
//
Функция РежимУдалятьПоРасписанию() Экспорт
```

Пример вызова
```bsl
Результат = УдалениеПомеченныхОбъектов.РежимУдалятьПоРасписанию() 
```
</details>

## УстановитьПометкуКомандыПоказатьПомеченные
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устанавливает пометку команды Показать помеченные в соответствии с сохраненными настройками пользователя.
// Используется для установки начального значения пометки кнопки формы.
//
// Параметры:
//   Форма - ФормаКлиентскогоПриложения
//   ТаблицаФормы - ТаблицаФормы - таблица формы, связанная с динамическим списком
//   КнопкаФормы - КнопкаФормы - кнопка, связанная с командой Показать помеченные
//
Процедура УстановитьПометкуКомандыПоказатьПомеченные(Форма, ТаблицаФормы, КнопкаФормы) Экспорт
```

Пример вызова
```bsl
УдалениеПомеченныхОбъектов.УстановитьПометкуКомандыПоказатьПомеченные(Форма, ТаблицаФормы, КнопкаФормы) 
```
</details>

## СсылкиНаУдаляемыеОбъекты
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает перечень объектов, которые удаляются в текущий момент и на которые есть ссылки в объекте Источник.
// Для наборов записей, подчиненных регистратору, возвращает всегда пустой список ссылок:
//  - для уменьшения влияния контроля на производительность;
//  - для бесперебойной работы автоматических механизмов формирования движений (например, закрытия месяца).
//
// Параметры:
//   Источник - СправочникОбъект
//            - ДокументОбъект
//            - РегистрСведенийНаборЗаписей - объект, в котором будет выполнен поиск удаляемых объектов.
//
// Возвращаемое значение:
//   Соответствие из КлючИЗначение:
//   * Ключ - ЛюбаяСсылка - удаляемый объект, ссылка на который есть в объекте Источник.
//   * Значение - Строка - представление ссылки.
//
Функция СсылкиНаУдаляемыеОбъекты(Источник) Экспорт
```

Пример вызова
```bsl
Результат = УдалениеПомеченныхОбъектов.СсылкиНаУдаляемыеОбъекты(Источник) 
```
</details>

## ЗначениеФлажкаУдалятьПоРасписанию
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устарела. Состояние флажка для формы настроек удаления помеченных объектов.
// Следует использовать УдалениеПомеченныхОбъектов.РежимУдалятьПоРасписанию.
//
// Возвращаемое значение:
//   Булево - значение.
//
Функция ЗначениеФлажкаУдалятьПоРасписанию() Экспорт
```

Пример вызова
```bsl
Результат = УдалениеПомеченныхОбъектов.ЗначениеФлажкаУдалятьПоРасписанию() 
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
