Как разложить периодический регистр сведений по датам #15232


#0 by РоманВ
Задача из сертификационного задания: сделать отчет остатки и обороты товаров на складах за период с добавлением суммы остатков и оборотов в каком-нибудь выбранном типе цен. Пользоваться надо запросом. Сделал запрос к виртуальной таблице ОстаткиТоваровКомпанииОстаткиОбороты периодами по регистратору с левым соединением ко вложенному запросу ЦеныКомпанииСрезПоследних с условием отбора ТипЦен=&ВыбТипЦен и Период между &ВыбНачПериода И &ВыбКонПериода. При этом во внешнем запросе в итогах по регистратору проходят все записи ЦенКомпании из выбранного периода. То есть как передать во вложенный запрос, что период регистра сведений равен моменту времени регистратора? И отсюда же вытекает другой вопрос: можно ли в принципе сделать запрос к регистру сведений ЦеныКомпании не на дату, а за период, чтобы отчет показывал текущую цену номенклатуры на 1-е число, 2-е, 3-е и так далее
#1 by Волшебник
1) Используй параметры виртуальной таблицы 2) Делай запрос не к СрезПоследних, а к основной таблице
#2 by РоманВ
Дедать запрос не к СрезПоследних, а к основной таблице еще не пробовал, учту. А задавать параметры виртуальной таблицы пытался - пробовал период таблицы ЦеныКомппании брать из поля запроса ОстаткиТоваровКомпанииОстаткиОбороты.Период /или еще пробовал Регистратор.МоментВремени/, запрос ругается - говорит, что такое поле не найдено. И похоже я не правильно задаю связь для левого соединения. Пробовал варианты по ОстаткиОбороты.Номенклатура = ЦеныКомпании.Номенклатура, еще пробовал /(ОстаткиОбороты.Номенклатура = ЦеныКомпании.Номенклатура) И (ОстаткиОбороты.Период >= ЦеныКомпании.Период)/ все не то.
#3 by РоманВ
Пришел к такому варианту:    ВложенныйЗапрос.Цена         Получается почти красиво: в каждю период остатков номенклатуры ставятся цены, период которых не превышает период остатков, проблема в том что их стаится несколько (все которые не превышают). Дальше надо бы во вложенном запросе отобрать записи по условию МАКИМУМ(ЦеныКонтрагентов.Период) но во вложенном запросе я не могу этого сделать, итогов там нет, а в группировку попадает поле цена и все портит. Без включения цены в группировку запрос не выполняется. То есть надо все-таки "руками" обходить результат запроса и подставлять актуальные цены? Но в условии задачи сказано использовать универсальный отчет (управление торговлей), а там используется построитель отчета, и ручной перебор будет боольшим гемороем. Или нет?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С