Skip to content

В строгих типах выборка вложенных записей не наследует поля #1360

Open
@adminimusRU

Description

Описание ошибки

Метод Выбрать() объекта ВыборкаИзРезультатаЗапроса возвращает дочерний объект ВыборкаИзРезультатаЗапроса, который должен наследовать поля исходной выборки.
Должно было быть исправлено в рамках #1221, но похоже этот случай всё таки исправление не задело.

Как воспроизвести

// @strict-types
 
// Возвращаемое значение:
//  ВыборкаИзРезультатаЗапроса:
//  * ПолеСтрока - Строка
//  * ПолеЧисло - Число
//
Функция ВыборкаДанных()
	
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	|	""Строка"" КАК ПолеСтрока,
	|	1 КАК ПолеЧисло
	|ИТОГИ
	|	МАКСИМУМ(ПолеЧисло)
	|ПО
	|	ПолеСтрока";
	
	Возврат Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
	
КонецФункции

Процедура Процедура1()
	
	ВыборкаПервогоУровня = ВыборкаДанных();
	
	Пока ВыборкаПервогоУровня.Следующий() Цикл
		
		ЗначениеСтрока = ВыборкаПервогоУровня.ПолеСтрока;
		
		ВыборкаВторогоУровня = ВыборкаПервогоУровня.Выбрать();
		
		Пока ВыборкаВторогоУровня.Следующий() Цикл
			
			ЗначениеИтогЧисло = ВыборкаВторогоУровня.ПолеЧисло;
			
		КонецЦикла;
		
	КонецЦикла;
	
КонецПроцедуры

В объекте ВыборкаВторогоУровня поля потерялись.

Скриншоты

No response

Ожидаемое поведение

Поля выборки должны наследоваться.

Лог рабочей области

не требуется

Версия 1С:Code style V8

0.5.0.133

Версия 1С:EDT

2023.1.1

Операционная система

Windows

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

No response

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions