Доброго дня! Помогите с запросом, для получения остатков на каждый день. Есть интервал нужно получить остаток на каждый день этого интервала. С прямыми запросами познакомился относительно недавно. Сейчас у меня такой запрос, но не могу побороть ошибку : Недопустимое имя столбца "Номенклатура"
Текст запроса : |declare @@curDate datetime |declare @@endDate datetime | |set @@curDate = cast('"+НачДатаПрод+"' AS datetime) |set @@endDate = cast('"+КонДатаПрод+"' AS datetime) | |set nocount on |while @@curDate<=cast('"+КонДатаПрод+"' AS datetime) |begin | insert into #DateTable([Номенклатура],[Количество],[Расход],[Дата]) | | SELECT | Рег.Номенклатура [Номенклатура], | SUM(Рег.Количество) [Количество], | SUM(Рег.Расход) [Расход], | @@curDate [Дата] | FROM | ( | SELECT | $rg.Номенклатура [Номенклатура], | $rg.Количество [Количество], | 0 [Расход] | FROM | $РегистрИтоги.ОстаткиТМЦ AS rg (nolock) | WHERE | rg.period = dateadd(m,-1,dateadd(dd,-day(@@curDate)+1,@@curDate)) |AND $rg.Номенклатура IN (SELECT val FROM #TempTable) | UNION ALL | SELECT | $ra.Номенклатура [Номенклатура], | $ra.Количество*(1-ra.debkred*2) [Количество], | 0 [Расход] | FROM | $Регистр.ОстаткиТМЦ ra (nolock) | INNER JOIN | _1sjourn j (nolock) on j.iddoc = ra.iddoc | WHERE | cast(left(j.date_time_iddoc,8) AS datetime) between dateadd(dd,-day(@@curDate)+1,@@curDate) AND @@curDate |AND $ra.Номенклатура IN (SELECT val FROM #TempTable) | UNION ALL | SELECT | $ra2.Номенклатура [Номенклатура], | 0 [Количество], | $ra2.Количество*ra2.DEBKRED [Расход] | FROM | $Регистр.ОстаткиТМЦ ra2 (nolock) | INNER JOIN | _1sjourn j (nolock) on j.iddoc = ra2.iddoc | WHERE | cast(left(j.date_time_iddoc,8) AS datetime) = @@curDate |AND $ra2.Номенклатура IN (SELECT val FROM #TempTable) | UNION ALL | SELECT | $ra3.Номенклатура [Номенклатура], | 0 [Количество], | 0 [Расход] | FROM | $Регистр.ОстаткиТМЦ ra3 (nolock) | INNER JOIN | _1sjourn j (nolock) on j.iddoc = ra3.iddoc | WHERE | cast(left(j.date_time_iddoc,8) AS datetime) between @@curDate AND @@endDate |AND $ra3.Номенклатура IN (SELECT val FROM #TempTable) | ) Рег | GROUP BY | Рег.Номенклатура | set @@curDate = dateadd(dd,1,@@curDate) | end
|