Как в 1с посмотреть кто поставил пометку на удаление

Обновлено: 03.07.2024

Необходимо получить список всех помеченных на удаление элементах, в ОПРЕДЕЛЁННЫХ объектах конфигурации. Использую:

Возвращаются ВСЕ помеченные объекты, во всех справочниках, документах и т.п.

Ни каких ошибок, просто игнорирует параметры отбора и всё. Пытался передать массив со списком справочников первым параметром - ошибка несоответствия типов. Где-то вычитал, что в первый параметр надо пустой массив, а во второй уже список - результата нет. Оставлял первый параметр пустым - тот же эффект. СП читал долго и нудно. Версия платформы 8.3.15, совместимости нет.

Заранее спасибо за отклик!

Поиск по конкретным объектам метаданным не работает, но можно исключить остальные объекты метаданных.

Всем большое спасибо за участие в столь горячем обсуждении! Пошёл путем заполнения третьего параметра т.е. указания объектов которые НЕ надо искать. Работает! С точки зрения архитектуры - криво, с точки зрения реального продакшена - самый адекватный вариант. Обращаться в 1с ни какого смысла не вижу, они об этой проблеме явно знают. Почему воз и ныне там - вопрос риторический. Заинтересовал, однако, другой вопрос: что должно быть в первом параметре? Общие реквизиты-разделители? В СП как-то так написано, что примерно понятно, но по факту понятно слабо. Есть у кого-нибудь примеры, использовал кто-нибудь?
Ну судя по платформе и отсутствию режима совместимости, то должно работать.
Кроме номенклатуры находит и другие объекты?
Тогда ставьте последнюю платформу тестируйте, если воспроизводится пишите в 1С. (4) Так и я думаю, что должно работать, а не работает) В 1с можно писать годами, а решение нужно сейчас. С платформой, чисто ради интереса, поиграюсь. Но во-первых, не думаю что это что-то даст. Во-вторых, продакшен будет всё равно на этой платформе. (5) не правда, грамотный вопрос и ответ в течении пары дней. А на форуме платформу не пишут, а только дают советы как кто-то наступал на такие же грабли и возможно нашел решение! получить список всех помеченных на удаление элементах - может быстрее будет запросом? программно сформировать текст запроса по требуемым объектам метаданных.

(2) Вот мой последний вариант, здесь приведенный, он как раз по этому шаблону. Единственное, поясните (не могу понять):

Какой смысл несет? Этот массив нигде не используется ведь?

Примечание:
На мобильной платформе параметры <ОбластьПоиска>, <ВключитьОбъекты> и <ВключитьОбъекты> игнорируются. (3) Не мобильная, обычная платформа. Код исполняется в серверном привилегированном модуле, проблем с правами тоже не должно быть. (8) Тут с вами не согласен. Просто, если проблему ни кто не встречал, то на её решение требуется время, а иногда у людей его не много и приходится ждать.
Хотя в 1С можно написать параллельно, они может что то официально ответят про особенности.

Поиск по конкретным объектам метаданным не работает, но можно исключить остальные объекты метаданных.

На одном форуме нашел описание опытов человека, он пишет что:
1) Если первый параметр указать, то будет работать второй параметр.
2) Если не указать, то будет искать везде, если не указаны исключения.
Видимо поэтому в примерах указывается первый параметр как пустой массив. Но видимо так не работает и надо что бы массив был не пустым. Но у меня нет базы для проверки этой теории, так как ни общие реквизиты, ни разделение данных не используется. А городить тестовую базу нет возможности. (11) ранее на форуме писали, что нужно пошаманить, в справке в принципе все расписано, нужно только тестировать. (12) В справке описан поиск всех объектов и что можно добавить или исключить объекты поиска, но о том что это как то по особому работает, ничего не написано. Пока не проверен вариант с разделением данных (первый параметр), то предполагаю, что поиск работает везде, если не указано исключение.

Глобальный контекст (Global context)
НайтиПомеченныеНаУдаление (FindMarkedForDeletion)
Синтаксис:
НайтиПомеченныеНаУдаление(<ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты>)
Параметры:
<ОбластьПоиска> (необязательный)
Тип: Массив.
Определяет область поиска объектов, помеченных на удаление. Область устанавливается комбинацией разделителей, в состав которых включены объекты метаданных, среди данных которых следует выполнять поиск.
Элемент массива имеет тип Массив.
Элемент вложенного массива имеет тип:
Объект метаданных – Общий реквизит, разделяющий данные.
Строка – имя общего реквизита, разделяющего данные.
По умолчанию имеет значение Неопределено.
Допустимые значения:
Неопределено - выбираются все объекты метаданных, если параметр <ВключитьОбъекты> также имеет значение Неопределено. Иначе равносильно передаче пустого массива.
Массив с комбинациями разделителей, определяющий область поиска.
Примечание. Если комбинация разделителей содержит повторы, то вызывается исключение, т.к. в конфигурации не может быть объектов метаданных, дважды включенных в состав одного разделителя.
Значение по умолчанию: Неопределено.
<ВключитьОбъекты> (необязательный)
Тип: Массив.
Позволяет явно указать объекты метаданных, которые должны присутствовать в области поиска ссылок помеченных на удаление объектов.
Элементом массива могут быть:
Объект метаданных.
Строка – полное имя объекта метаданных.
Допустимые значения:
Неопределено,
Пустой массив,
Массив объектов метаданных.

Значение по умолчанию: Неопределено.
<ИсключитьОбъекты> (необязательный)
Тип: Массив.
В качестве элементов массива могут выступать:
Объект метаданных,
Строка – полное имя объекта метаданных.
Свойство позволяет явно указать объекты метаданных, которые следует исключить из области поиска объектов, помеченных на удаление.
Допустимые значения:
Неопределено
Пустой массив (нет объектов, которые необходимо дополнительно включить в область поиска).
Массив объектов метаданных.

Значение по умолчанию: Неопределено.
Возвращаемое значение:
Тип: Массив.
Массив со списком ссылок помеченных на удаление объектов.
Описание:
Осуществляет поиск всех помеченных на удаление объектов, которые доступны пользователю в рамках текущего сеанса и которые попадают в область поиска, заданную параметрами <ОбластьПоиска>, <ВключитьОбъекты> и <ИсключитьОбъекты>.
Если параметр <ИсключитьОбъекты> не определен или используется режим совместимости конфигурации Версия8_3_4 и ниже, поиск осуществляется среди всех объектов, которые доступны в рамках текущего сеанса с учетом разделения (учитывается и условное разделение). При этом параметры <ВключитьОбъекты> и <ИсключитьОбъекты> не учитываются.
Если режим совместимости не используется и параметры <ОбластьПоиска> и <ВключитьОбъекты> имеют , отличном от Неопределено выполняет поиск всех помеченных на удаление объектов, которые доступны пользователю из текущего сеанса и которые попадают в область поиска, заданную параметрами <ОбластьПоиска>, <ВключитьОбъекты> и <ИсключитьОбъекты>.

Поиск выполняется среди доступных пользователю данных: у пользователя должно быть право на чтение объекта, данные выбираются только после проверки прав ограничения доступа.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер).
Вызов метода выполняет обращение к серверу.
Примечание:
На мобильной платформе параметры <ОбластьПоиска>, <ВключитьОбъекты> и <ВключитьОбъекты> игнорируются.
Пример:
ПомеченныеОбъекты = НайтиПомеченныеНаУдаление();
Для Каждого ПомеченныйЭлемент Из ПомеченныеОбъекты Цикл
Сообщить("Помечен на удаление: " + ПомеченныйЭлемент);
КонецЦикла;
Использование в версии:
Доступен, начиная с версии 8.3.5.
Методическая информация

Глобальный контекст (Global context)
НайтиПомеченныеНаУдаление (FindMarkedForDeletion)
Синтаксис:
НайтиПомеченныеНаУдаление(<ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты>)
Параметры:
<ОбластьПоиска> (необязательный)
Тип: Массив.
Определяет область поиска объектов, помеченных на удаление. Область устанавливается комбинацией разделителей, в состав которых включены объекты метаданных, среди данных которых следует выполнять поиск.
Элемент массива имеет тип Массив.
Элемент вложенного массива имеет тип:
Объект метаданных – Общий реквизит, разделяющий данные.
Строка – имя общего реквизита, разделяющего данные.
По умолчанию имеет значение Неопределено.
Допустимые значения:
Неопределено - выбираются все объекты метаданных, если параметр <ВключитьОбъекты> также имеет значение Неопределено. Иначе равносильно передаче пустого массива.
Массив с комбинациями разделителей, определяющий область поиска.
Примечание. Если комбинация разделителей содержит повторы, то вызывается исключение, т.к. в конфигурации не может быть объектов метаданных, дважды включенных в состав одного разделителя.
Значение по умолчанию: Неопределено.
<ВключитьОбъекты> (необязательный)
Тип: Массив.
Позволяет явно указать объекты метаданных, которые должны присутствовать в области поиска ссылок помеченных на удаление объектов.
Элементом массива могут быть:
Объект метаданных.
Строка – полное имя объекта метаданных.
Допустимые значения:
Неопределено,
Пустой массив,
Массив объектов метаданных.

Значение по умолчанию: Неопределено.
<ИсключитьОбъекты> (необязательный)
Тип: Массив.
В качестве элементов массива могут выступать:
Объект метаданных,
Строка – полное имя объекта метаданных.
Свойство позволяет явно указать объекты метаданных, которые следует исключить из области поиска объектов, помеченных на удаление.
Допустимые значения:
Неопределено
Пустой массив (нет объектов, которые необходимо дополнительно включить в область поиска).
Массив объектов метаданных.

Значение по умолчанию: Неопределено.
Возвращаемое значение:
Тип: Массив.
Массив со списком ссылок помеченных на удаление объектов.
Описание:
Осуществляет поиск всех помеченных на удаление объектов, которые доступны пользователю в рамках текущего сеанса и которые попадают в область поиска, заданную параметрами <ОбластьПоиска>, <ВключитьОбъекты> и <ИсключитьОбъекты>.
Если параметр <ИсключитьОбъекты> не определен или используется режим совместимости конфигурации Версия8_3_4 и ниже, поиск осуществляется среди всех объектов, которые доступны в рамках текущего сеанса с учетом разделения (учитывается и условное разделение). При этом параметры <ВключитьОбъекты> и <ИсключитьОбъекты> не учитываются.
Если режим совместимости не используется и параметры <ОбластьПоиска> и <ВключитьОбъекты> имеют , отличном от Неопределено выполняет поиск всех помеченных на удаление объектов, которые доступны пользователю из текущего сеанса и которые попадают в область поиска, заданную параметрами <ОбластьПоиска>, <ВключитьОбъекты> и <ИсключитьОбъекты>.

Поиск выполняется среди доступных пользователю данных: у пользователя должно быть право на чтение объекта, данные выбираются только после проверки прав ограничения доступа.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Вызов метода выполняет обращение к серверу.
Примечание:
На мобильной платформе параметры <ОбластьПоиска>, <ВключитьОбъекты> и <ВключитьОбъекты> игнорируются.
Пример:
ПомеченныеОбъекты = НайтиПомеченныеНаУдаление();
Для Каждого ПомеченныйЭлемент Из ПомеченныеОбъекты Цикл
Сообщить("Помечен на удаление: " + ПомеченныйЭлемент);
КонецЦикла;
Использование в версии:
Доступен, начиная с версии 8.3.5.
Методическая информация

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