Имя: Пароль:
1C
1С v8
НайтиПоСсылкам() , параметр ИсключитьОбъекты
0 Голубушка
 
04.08.14
16:47
Задача :Платформа 8.3, УТ11 измененая. Необходимо проверить наличие ссылок на проблемные упаковки номенклатуры.

Выгружаем проблемные упаковки в МассивСсылок.

Есть регистры накоплений в которых упаковка является , либо измерением , либо реквизитом. Найти ссылки по запросу не составляет большого труда и работает намного быстрей чем НайтиПоСсылкам(). Но потом возникает вопрос, найти оставшиеся ссылки. Для этого используем
НайтиПоСсылкам(МассивСсылок), но в этом случае производится поиск всех ссылок . Хочется НайтиПоСсылкам(МассивСсылок), исключив поиск по регистраторам регистров накопления, для этого пытаюсь использовать параметр "ИсключитьОбъекты"

НайтиПоСсылкам(МассивСсылок,,,МассивИсключений)

В качестве МассивИсключений , передавала массив типа

МассивИсключений.Добавить("Документ.РасходныйОрдерНаТовары");
МассивИсключений.Добавить("Документ.ПриходныйОрдерНаТовары");

ругается на тип 4 параметра

звтем попробовала передать массив из объектов метаданных
МассивИсключений.Добавить(Метаданные.Документы.РасходныйОрдерНаТовары);
МассивИсключений.Добавить(Метаданные.Документы.ПриходныйОрдерНаТовары);

результат тот же "Несоответствие типов (параметр номер '4')"

Может , кто сталкивался ? Какого вида должен быть этот массив?
1 Maxus43
 
04.08.14
16:50
в 8.3.4 нет параметров кроме первого... что за платформа? у меня СП не тот, продайте свежий!
2 Голубушка
 
04.08.14
16:52
Синтаксис:

НайтиПоСсылкам(<СписокСсылок>, <ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты>)
3 Голубушка
 
04.08.14
16:53
Платформа 8.3.5.1068
4 ssh2QQ6
 
04.08.14
16:56
хм, в 8.3.5 появились эти параметры
5 Голубушка
 
04.08.14
16:57
по описанию в синтаксис помошнике , все равно не работает :(
6 Maxus43
 
04.08.14
16:59
(2) <ИсключитьОбъекты> - что там в расшифровке, тип какой?
7 ale-sarin
 
04.08.14
16:59
(5) А что там про <ИсключитьОбъекты> написано?
8 Голубушка
 
04.08.14
17:00
НайтиПоСсылкам (FindByRef)
Синтаксис:

НайтиПоСсылкам(<СписокСсылок>, <ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты>)
Параметры:

<СписокСсылок> (обязательный)

Тип: Массив.
Массив со списком ссылок на объекты, ссылки на которые нужно найти.
<ОбластьПоиска> (необязательный)

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

По умолчанию имеет значение Неопределено.

Допустимые значения:
Неопределено,
Массив с комбинациями разделителей, определяющий область поиска,
Пустой массив - область поиска определяется параметрами метода ВключитьОбъекты и ИсключитьОбъекты.

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

Тип: Массив.
Позволяет явно указать объекты метаданных, которые должны присутствовать в области поиска ссылок на объекты.
Элементом массива могут быть:
Объект метаданных.
Строка – полное имя объекта метаданных.
Допустимые значения:
Неопределено,
Пустой массив,
Массив объектов метаданных.

Значение по умолчанию: Неопределено.
<ИсключитьОбъекты> (необязательный)

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

Значение по умолчанию: Неопределено.
Возвращаемое значение:

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

Осуществляет поиск ссылок на объекты, переданные в параметре <СписокСсылок>.
Поиск выполняется только в данных, которые доступны в рамках текущего сеанса с учетом разделения (условное разделение также учитывается).

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Примечание:

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

Ссылки = НайтиПомеченныеНаУдаление();
ТабСсылок = НайтиПоСсылкам(Ссылки);
Для Каждого Ссылка из ТабСсылок Цикл
    Сообщить ("" + СокрЛП(Ссылка[0]) + "  " + СокрЛП(Ссылка[1]));
КонецЦикла;
9 Maxus43
 
04.08.14
17:05
попробуй МассивИсключений.Добавить("ДокументЫ.РасходныйОрдерНаТовары");

или

МассивИсключений.Добавить("ДокументСсылка.РасходныйОрдерНаТовары");
10 hhhh
 
04.08.14
17:21
(9) написано же объект метаданных
11 Maxus43
 
04.08.14
17:22
(10) написано же - или "Строка – полное имя объекта метаданных."
12 Голубушка
 
04.08.14
17:38
Строка – полное имя объекта метаданных

вообще то это просто "РасходныйОрдерНаТовары", .. я пробовала не работает ,

("ДокументЫ.РасходныйОрдерНаТовары"); тоже пробовала , не работает
13 Голубушка
 
04.08.14
17:45
МассивИсключений.Добавить("ДокументСсылка.РасходныйОрдерНаТовары");
МассивИсключений.Добавить("ДокументСсылка.ПриходныйОрдерНаТовары");

тоже не работает ,

я пробовала загрузить в массив ссылки на регистраторы , которые получила запросом

все равно не работает ..


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

кстати и ОбластьПоиска тоже не работает

В обшем если кто то поймет как это должно работать , напишите пожалуйста
14 Голубушка
 
04.08.14
17:47
с ОбластьПоиска там сложней , там не ссылки , а разделители , у меня общие реквизиты есть , но они не разделяют данные , поэтому я этот параметр не использую
15 hhhh
 
04.08.14
17:49
(13) ну так

МассивИсключений.Добавить("Метаданные.Документ.РасходныйОрдерНаТовары");
МассивИсключений.Добавить("Метаданные.Документ.ПриходныйОрдерНаТовары");
16 Голубушка
 
04.08.14
18:23
(15) и так не работает
17 EvgeniuXP
 
04.08.14
21:57
да это и не надо, всё элементарно запросом делается
18 Franchiser
 
гуру
04.08.14
23:59
(16) а если пустой массив туда передать, ругается? 1с часто недоделывает, возможно оставили задел на будущее.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn