Глобальный контекст.УдалитьОбъекты (Global context.DeleteObjects)
Глобальный контекст (Global context)
УдалитьОбъекты (DeleteObjects)
Доступен, начиная с версии 8.0.
Синтаксис:
УдалитьОбъекты(<СписокСсылок>, <Проверять>, <НайденныеДанные>, <ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты>)Параметры:
<СписокСсылок> (обязательный)
Список ссылок на объекты, которые нужно удалить.
<Проверять> (необязательный)
Определяет, выполнять ли контроль ссылочной целостности при выполнении процедуры. Истина - перед удалением проверяется, нет ли ссылок на удаляемый объект. Если есть, то объект не удаляется, а ссылки помещаются в таблицу значений <НайденныеДанные>. Ложь - проверка не выполняется.
Значение по умолчанию: Ложь.
<НайденныеДанные> (необязательный)
Содержит ссылки на найденные объекты в виде ТаблицаЗначений, состоящей из колонок с индексами: 0 - искомая ссылка; 1 - ссылка на объект, если найденная ссылка соответствует объектной таблице или значение, идентифицирующее запись необъектной таблицы; 2 - объект метаданных, которому соответствуют данные, в которых найдена ссылка.
В таблицу выводятся только непосредственно препятствующие удалению объекты (без рекурсии).
<ОбластьПоиска> (необязательный)
Определяет область поиска объектов, которые следует удалить. Область устанавливается комбинацией разделителей, в состав которых включены объекты метаданных, среди данных которых следует выполнять поиск.
Элемент массива имеет тип Массив.
Элемент вложенного массива имеет тип:
- Объект метаданных – Общий реквизит, разделяющий данные.
- Строка – имя общего реквизита, разделяющего данные.
Допустимые значения:
- Неопределено,
- Массив с комбинациями разделителей, определяющий область поиска,
- Пустой массив - область поиска определяется параметрами метода <ВключитьОбъекты> и <ИсключитьОбъекты>.
Значение по умолчанию: Неопределено.
<ВключитьОбъекты> (необязательный)
Позволяет явно указать объекты метаданных, которые должны присутствовать в области поиска ссылок на объекты.
Элементом массива могут быть:
- Объект метаданных.
- Строка – полное имя объекта метаданных.
- Неопределено,
- Пустой массив,
- Массив объектов метаданных.
Значение по умолчанию: Неопределено.
<ИсключитьОбъекты> (необязательный)
В качестве элементов массива могут выступать:
- Объект метаданных,
- Строка – полное имя объекта метаданных.
Допустимые значения:
- Неопределено
- Пустой массив (нет объектов, которые необходимо дополнительно включить в область поиска).
- Массив объектов метаданных.
Значение по умолчанию: Неопределено.
Описание:
Удаляет объекты, ссылки на которые переданы в параметре <СписокСсылок>.
При проверке ссылочной целостности поиск осуществляется среди всех данных, из которых могут быть ссылки на переданные объекты. Если на какой-либо объект нет доступа, то вызывается исключение.
Требует монопольного режима доступа к базе данных.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Вызов метода выполняет обращение к серверу.
Примечание:
Ответственность за удаление объектов, на которые, возможно, имеются ссылки в недоступных данному сеансу данных, возлагается на вызывающего метод.Если выполняется контроль ссылочной целостности, поиск ссылок выполняется в области данных, определенной параметрами <ОбластьПоиска>, <ВключитьОбъекты> и <ИсключитьОбъекты>.
Ссылки на найденные объекты возвращаются в таблице значений со следующими колонками:
- Поле 1 - Исходная ссылка;
- Поле 2 - Ссылка на объект (для объектных данных) или значение (для необъектных данных);
- Поле 3 - Объект метаданных, которому соответствуют данные, в которых найдена ссылка;
- Поле 4 - Комбинации разделителей, идентифицирующих подобласть, в данных которой найдена ссылка на объект.
Требования к реквизитам, разделяющим данные, но не используемые в сеансе:
- У текущего пользователя должен быть доступ на чтение реквизита.
- У текущего пользователя должен быть доступ на запись параметров сеанса, отвечающих за использование и за значение реквизита.
- Этот реквизит не является безопасным. - Требование актуально для информационных баз, опубликованных на веб-сервере.
На мобильной платформе параметры <ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты> игнорируются.
Пример:
| // удаление помеченных объектов с контролем ссылочной целостности Помеченные = НайтиПомеченныеНаУдаление(); Найденные = 0; УдалитьОбъекты(Помеченные, Истина, Найденные); Для каждого Ссылка из Найденные Цикл СтрСообщения = "Объект не удален: " + СокрЛП(Ссылка[0]); СтрСсылка = ", используется в " + СокрЛП(Ссылка[1]); Сообщить (СтрСообщения + СтрСсылка); КонецЦикла; |
Использование в версии:
Доступен, начиная с версии 8.0.