bsl-language-server icon indicating copy to clipboard operation
bsl-language-server copied to clipboard

[FP] CreateQueryInCycle не применим для запроса к КритерийОтбора.СтруктураПодчиненности в цикле

Open antonsm2011 opened this issue 3 years ago • 0 comments

Диагностика

CreateQueryInCycle

Версия

v0.20.0

Описание ложного срабатывания диагностики

В структуре подчиненности нельзя сделать запрос кроме как в цикле по списку документов. Поэтому диагностика не применима, когда запрос сделан к КритерийОтбора.СтруктураПодчиненности.

Пример кода

` ТЗ = Новый ТаблицаЗначений; ТЗ.Колонки.Добавить("ЗаказПокупателя", Новый ОписаниеТипов("ДокументСсылка.ЗаказПокупателя")); ТЗ.Колонки.Добавить("ЗаказПоставщику", Новый ОписаниеТипов("ДокументСсылка.ЗаказПоставщику"));

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

	Для каждого ЗаказПоставщику Из Массив Цикл
		НоваяСтрока = ТЗ.Добавить();
		НоваяСтрока.ЗаказПокупателя = ЗаказПокупателя;
		НоваяСтрока.ЗаказПоставщику = ЗаказПоставщику;
	КонецЦикла; 
КонецЦикла; 

`

Скриншоты

изображение

Дополнительная информация

antonsm2011 avatar Oct 17 '22 14:10 antonsm2011