Добрый день!
Хочу в одном запросе получить даты, и передать их коллекцией в другую запрос,
второй запрос работает с РегистромНакопления (Остатки и Обороты)
Так вот мне нужно чтобы на каждый элемент коллекции (определенный момент времени) выводились информация по оборотам и остаткам.
Как сделать не соображу, подскажите пожалуйста.
---
для подобных задач придумали и используют МВТ
а то как вы описали путь решения от лукавого

т.е. запроса должно быть не два, а один.
а пакеты этого запроса можете выполнять
- сразу в одном коде
- разнести выполнение пакетов в отдельные вызовы
- любое другое шаманство с МВТ
---
Передавать через МенеджерВременныхТаблиц, соответственно, результат свой помещаешь во временную таблицу, и не удаляешь.

Используя МенеджерВременныхТаблиц, просто передаешь свою таблицу от одного запроса к другому :)
---
Щастье1: В первом запросе выбираете даты. Например, ВЫБРАТЬ РАЗЛИЧНЫЕ НАЧАЛАПЕРИОДА(Период, ДЕНЬ) КАК Дата ПОМЕСТИТЬ ВТ_ДАТЫ ИЗ (... бла-бла-бла...).
В этом же пакете можно вторым запросом посчитать минимум и максимум дат.
В коде создаете МенеджерВременныхТаблиц и присваиваете его запросу.
Выполняете пакет, получаете период.
Далее меняете текст запроса на выборку из регистра накопления с периодичностью День. И внутренне соединяете по датам с вашей временной таблицей. Параметрами можно присвоить начало-конец периода.
Щастье2: как уже кем-то написано, первый ваш запрос по датам Выполнить().Выгрузить().ВыгрузитьКолонку(); - получаете массив дат. Во втором запросе ваш регистрнакопления.ОстаткиИОбороты выбираете с периодичностью по дням, добавляете что-то вроде ГДЕ Период В(&МассивДат), и устанавливаете параметр "МассивДат" этим выгруженным из первого запроса массивом.
---
для подобных задач придумали и используют МВТ
а то как вы описали путь решения от лукавого

т.е. запроса должно быть не два, а один.
а пакеты этого запроса можете выполнять
- сразу в одном коде
- разнести выполнение пакетов в отдельные вызовы
- любое другое шаманство с МВТ
---
что такое МВТ? Временные таблицы?
---
Менеджер временных таблиц
---
Возможно ли такое реализовать с пакетами запросов или Вложенного запроса?
---
Как из одного пакета запроса передать результат в качестве параметра в другой пакет?
---
можно передать параметр таблицу значений, но ее все равно необходимо будет поместить в МВТ.

Лучшее решение сейчас не сыпать вопросами, а подумать и
- выложить то, что вы сделали
- найти примеры самостоятельно
---
Согласен

```1c
    ВЫБРАТЬ
    ТоварыНаСкладах.Регистратор.Дата КАК Дата,
    ТоварыНаСкладах.Регистратор КАК Док,
    ТоварыНаСкладах.Номенклатура.Код КАК Код,
    ТоварыНаСкладах.Номенклатура КАК Номенклатура,
    ТоварыНаСкладах.КоличествоНачальныйОстаток КАК НачОст,
    ТоварыНаСкладах.КоличествоПриход КАК Приход,
    ТоварыНаСкладах.КоличествоРасход КАК Расход,
    ТоварыНаСкладах.КоличествоКонечныйОстаток КАК КонОст
    ПОМЕСТИТЬ ОстНаСкл
    ИЗ
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(
    &НачалоПериода,
    &КонецПериода,
    Авто,
    ,
    Номенклатура = &Номенклатура
    И Склад = &Склад) КАК ТоварыНаСкладах
    ;

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

    УПОРЯДОЧИТЬ ПО
    Дата
```
---
Можно как написано выше поместить все ваши даты во временную таблицу, а в том запросе, что вы показали, убрать параметры &НачалоПериода и &КонецПериода, а вместо них сделать левое соединение, где указать, что Период Между Дата1 и Дата2 из временной таблицы
---
Никак
---
ой ли?
---
типа?
Запрос1.УстановитьПараметр("Даты",Запрос2.Выполнить().Выгрузить().ВыгрузитьКолонку("Дата"));
---
Да, типа того)) Но возможно ли теперь это сделать в рамках одного запроса?
---
да в чем проблема то, совершенно не ясно!
Ну помещайте в ВТ_даты свои даты, а потом что-то типа...

ВЫБРАТЬ
ВТ_даты.Дата,
РгистрНакопления.ТекущийОстаток

Из ВТ_даты
ЛЕВОЕ СОЕДИНЕНИЕ РгистрНакопления
---
согласен это уже ни один год мусолится на формуах 1с
---
Лучше воспользоваться временными таблицами в запросе - и сделать связку, так проще будет и отлаживать код и в случае чего разобраться что от куда получилось через консоль запросов
---
просто это надо сделать в СКД, там есть связь двух источников данных (запросы) где строчки/значения одного запроса назначаются параметрами другого! Это как раз то что вам надо!

либо результат одного запроса связывать двумя левыми соединениями со вторым запросом для получения ближайшего значения по дате
---
В вопросах тестирования 1С:Профессионал по платформе есть такой
"При использовании в запросе параметра вместо указания имени таблицы, при задании значения параметра может использоваться:"
Один из правильных вариантов ответа "результат запроса".

Стало быть можно передавать результат запроса в качестве параметра без шаманства?
---
Правильных ответа 3:
Таблица значений, табличная часть, результат запроса