Получить связанные документы запросом

1. HaIIpuKoJIe 28.02.19 11:38 Сейчас в теме
Добрый день. 1С:ERP Управление предприятием 2.4.6.174. Не могу понять как получить запросом РасходныйОрдерНаТовары который привязан к определенному заказу. У него нет реквизита ДокументОснование. Можно так :
ВЫБРАТЬ РАЗРЕШЕННЫЕ
	СтруктураПодчиненности.Ссылка КАК Ссылка
ИЗ
	КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СтруктураПодчиненности
ГДЕ
	СтруктураПодчиненности.Ссылка.ПометкаУдаления = ЛОЖЬ
	И СтруктураПодчиненности.Ссылка.Проведен = ИСТИНА
Показать

Но этот вариант не подходит.
По теме из базы знаний
Найденные решения
4. lefthander 28.02.19 15:52 Сейчас в теме
(3)И в чем трудности? Есть общая форма - СтруктураПодчиненности, там все прозрачно и понятно. Процедура ВывестиПодчиненныеОбъекты - Находите любой заказКлиента, ставите останов на процедуре и находите подчиненные для заказа, выуживаете текст запроса для заказа и все. Дальше можно передавать в цикле массив заказов и формировать подчиненные им Ордера.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. lefthander 28.02.19 11:56 Сейчас в теме
(1)В расходном ордере в модуле объекта есть запрос на построение зависимых заказов клиента. Вызывается из процедуры СформироватьСписокЗависимыхЗаказов() ее и смотрите.
3. HaIIpuKoJIe 28.02.19 15:23 Сейчас в теме
(2)
СформироватьСписокЗависимыхЗаказов()

Да, он находит заказы привязанные к ордеру. Мне нужно наоборот, имея список заказов находить их ордера.
4. lefthander 28.02.19 15:52 Сейчас в теме
(3)И в чем трудности? Есть общая форма - СтруктураПодчиненности, там все прозрачно и понятно. Процедура ВывестиПодчиненныеОбъекты - Находите любой заказКлиента, ставите останов на процедуре и находите подчиненные для заказа, выуживаете текст запроса для заказа и все. Дальше можно передавать в цикле массив заказов и формировать подчиненные им Ордера.
5. HaIIpuKoJIe 01.03.19 12:32 Сейчас в теме
Спасибо за наводку. Вроде получается. А как правильно передать массив в параметр запроса? Пробую так:
&НаСервере
Функция ОбъектыПоКритериюОтбора()
	
	
	
	  Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	СписокЗаказовНаОтгрузкуЗаказы.Заказ КАК Заказ
		|ИЗ
		|	Документ.СписокЗаказовНаОтгрузку.Заказы КАК СписокЗаказовНаОтгрузкуЗаказы
		|ГДЕ
		|	СписокЗаказовНаОтгрузкуЗаказы.Ссылка = &Ссылка";
	
	Запрос.УстановитьПараметр("Ссылка", Объект.СписокЗаказов);
	
	 МассивЗаказов = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Заказ");


		
			
	УстановитьПривилегированныйРежим(Истина);
	
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	|	СвязанныеДокументы.Ссылка
	|ИЗ
	|	КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СвязанныеДокументы";
	
	Запрос.УстановитьПараметр("ЗначениеКритерияОтбора", МассивЗаказов);
	Возврат Запрос.Выполнить().Выгрузить();
	
КонецФункции
Показать


Ошибка обработки представления "КритерийОтбора.СвязанныеДокументы:Несоответствие типов (Параметр номер ""1"")"
<<?>>КритерийОтбора.СвязанныеДокументы(&ЗначениеКритерияОтбора) КАК СвязанныеДокументы
6. Anyu-n 28 21.07.21 16:45 Сейчас в теме
(5) Передавать в запрос надо ссылку :))))
7. taasha25 13 08.08.22 11:22 Сейчас в теме
Благодарю всех! Пригодилось.)
8. serko8547 110 22.02.23 09:08 Сейчас в теме
ув. Автор, заметел, что данный запрос значительно увеличивает время открытия заказа. (время обработки данного запроса - 2-4 секунды на SQL, ну такое.)

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

Запрос.Текст =
"ВЫБРАТЬ
| СвязанныеДокументы.Ссылка
|ИЗ
| КритерийОтбора.СвязанныеДокументы(&Ссылка) КАК СвязанныеДокументы";
Запрос.УстановитьПараметр("Ссылка", Ссылка);
Выб = Запрос.Выполнить().Выбрать();

// Источник: https://forum.infostart.ru/forum9/topic205771/
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот