Все просто: есть двойной цикл, перед которым однократно получаем какой-то массив данных 1. На первом уровне цикла получаем еще какой-то массив данных 2. На втором уровне вложенности хотим в запросе поиметь как массив данных 1, так и массив данных 2.
Даже Запрос.Выполнить() без помещения в ВТ, без присваивания в переменную на большой выборке занимает условно в два раза больше времени, чем с помещением в ВТ. Значит где-то трафик SQL-1C фигачит (хотя я не проверял).
На втором уровне цикла хотим в запросе обращаться как к результату, вычисленному на первом уровне выше, так и к "глобальному" результату, вычисленному вообще до цикла.
Трудности с использованием одного менеджера только в нежелании ломать типовые сложные механизмы. В остальном один менеджер хоть в рекурсию пихай, хоть в циклы.
Текст запроса внешнего цикла статичный. Не хочется делать его динамичным. Если я в нем использую несколько раз "ПОМЕСТИТЬ ВТ_1" то это вызовет ошибку (имя ВТ должно быть уникальным в пределах одного МВТ).
Там еще не хочется ломать сам собираемый текст запроса, т.к. он используется в другой логике, где нужна выборка не в ВТ. Переделывать текст выборки на ВТ + добавлять туда уничтожение мне пока показалось некошерным.
Штатно без выгрузки результата запроса в ТЗ (и подкладывание ее параметром в другой запрос с новым МВТ) такое кажется не провернуть. Но вдруг кто-нибудь копал и накопал какой-нибудь хак.
Не знаю. Обычно менеджер и используется для использования данных из разных запросов. А твой кейс свовсем сюда не укладывается. Ты хочешь скопировать данные из двух запросов, используя два менеджера слитые в один. Не очень звучит :) Может тебе имеет смысл одним пакетным запросом получить все таблицы и работать с ними?