|
Запрос по остаткам на каждый день | ☑ | ||
---|---|---|---|---|
0
Seeker
31.10.13
✎
10:06
|
Добрый день
Пытаюсь в консоле запросов получить запрос который выдаст остатки на каждый день выбранного периода, связывал календарь и остатки и т.д. ничего не получается. Может кто делал? Всякие СКД и дополнения периодов и итоги по группировкам с ГруппировкиДляЗначенийГруппировок не предлагать, т.к. нужен результат имено в запросе. |
|||
1
PR
31.10.13
✎
10:07
|
Детализация день.
|
|||
2
Нуф-Нуф
31.10.13
✎
10:07
|
не хочешь скд - свяжи календарь и остатки
|
|||
3
Necessitudo
31.10.13
✎
10:13
|
ОстаткиИОбороты
|
|||
4
GANR
31.10.13
✎
10:15
|
(0) Простейший способ - (3). Можно еще накопительный итог по движениям по регистру / оборотам подсчитать - но этого без нужды делать не советую - такие запросы в 1С запросто могут сервер завалить http://www.sql-ex.ru/help/select19.php?Lang=0.
|
|||
5
Seeker
31.10.13
✎
10:24
|
(2)(3) - если нет движений по остаткам за какой либо день, то остаток по этому дню будет пустой.
|
|||
6
Bober
31.10.13
✎
10:28
|
(5) в СКД делаешь у поля период дополнение и СКД сама подставит остаток
|
|||
7
Seeker
31.10.13
✎
10:31
|
(6) кто нить читает стартовую тему?
черным по русскому написал, СКД и прочее от антихриста не предлагать... |
|||
8
vhl
31.10.13
✎
10:37
|
(0) Справа вверху красная буква "Я"
|
|||
9
GANR
31.10.13
✎
10:49
|
(5) Тогда нужно сгенерировать последовательность дат, а для этого надо сгенерировать числовую последовательность http://kb.mista.ru/article.php?id=704. Если нужно запросом - а н а л и з и р у й это сообщение и (4).
|
|||
10
BuHu
31.10.13
✎
10:50
|
(5) если свяжешь календарь и остатки , то как может какой то день не попасть в результат запроса?
|
|||
11
neckto
31.10.13
✎
10:55
|
(5) >>если нет движений по остаткам за какой либо день, то остаток по этому дню будет пустой.
Если нет движений за день, то остаток волшебным образом обнуляется? |
|||
12
Seeker
31.10.13
✎
10:57
|
(10) ВЫБРАТЬ
ВложенныйЗапрос.ДатаГрафика, ТоварыНаСкладахОстаткиИОбороты.Номенклатура, ТоварыНаСкладахОстаткиИОбороты.Склад, ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток ИЗ (ВЫБРАТЬ КалендарныеГрафики.ДатаГрафика КАК ДатаГрафика ИЗ РегистрСведений.КалендарныеГрафики КАК КалендарныеГрафики ГДЕ КалендарныеГрафики.Календарь = &Календарь И КалендарныеГрафики.ДатаГрафика МЕЖДУ &Дата1 И &Дата2) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты( &Дата1, &Дата2, День, , Склад = &Склад И Номенклатура = &Номенклатура) КАК ТоварыНаСкладахОстаткиИОбороты ПО ВложенныйЗапрос.ДатаГрафика = ТоварыНаСкладахОстаткиИОбороты.Период такой запрос выдает NULL в те дни когда не было движений |
|||
13
vittany
31.10.13
✎
11:00
|
(12) Так если мешает толь NULL, то ставишь ЕСТЬNULL(ТоварыНаСкладахОстаткиИОбороты.ВНаличииНачальныйОстаток,0) и у тебя будут нули
|
|||
14
Seeker
31.10.13
✎
11:02
|
да не нужен мне ноль, мне нужен реальный остаток
|
|||
15
Seeker
31.10.13
✎
11:13
|
(9) задача похожа, но реализация.... проще уж в цикле каждый раз получать остаток, чем разобраться в этом.
|
|||
16
hhhh
31.10.13
✎
11:16
|
(15) ПО ВложенныйЗапрос.ДатаГрафика >= ТоварыНаСкладахОстаткиИОбороты.Период
|
|||
17
anaed
31.10.13
✎
11:28
|
(15) а собрать циклом текст запроса религия не позволяет?
|
|||
18
GANR
31.10.13
✎
12:02
|
(15) Вот то-то и оно. Но вот в МС СКЛ 2012 можно и в запросе достаточно просто и незатрано накопительный итог подсчитать.
|
|||
19
Seeker
31.10.13
✎
12:02
|
(17) религия то позволяет, просто этот запрос как часть большого запроса, и как все это дело туда вклинить ума не приложу.
|
|||
20
Seeker
31.10.13
✎
12:15
|
(16) вообще какая то хеза получается, но как только сформировался запрос показалось что все получилось....
значения остатка заполнены, но не корректными значениями. |
|||
21
ptiz
31.10.13
✎
12:22
|
||||
22
GANR
31.10.13
✎
12:33
|
(20) Да даже если запрос и получится - он будет громоздким и медленным. Так что делай кодом и не тревожь мозг.
|
|||
23
kochurovg
31.10.13
✎
12:53
|
попробуй вот так :
ВЫБРАТЬ Графики.ДатаГрафика КАК ДатаГрафика МАКСИМУМ(ОстаткиИ.Период) КАК ПериодОстатка ПОМЕСТИТЬ _ДатыОстатков ИЗ РегистрСведений.КалендарныеГрафики КАК Графики ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты( &Дата1, &Дата2, День, , Склад = &Склад И Номенклатура = &Номенклатура) КАК ОстаткиИ ПО ОстаткиИ.Период<=ДатаГрафика ГДЕ КалендарныеГрафики.Календарь = &Календарь И КалендарныеГрафики.ДатаГрафика МЕЖДУ &Дата1 И &Дата2 ; ВЫБРАТЬ ДатыОстатков.ДатаГрафика КАК ДатаГрафика, ОстаткиИ.Номенклатура, ОстаткиИ.Склад, ОстаткиИ.ВНаличииНачальныйОстаток ИЗ _ДатыОстатков КАК ДатыОстатков ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты( &Дата1, &Дата2, День, , Склад = &Склад И Номенклатура = &Номенклатура) КАК ОстаткиИ ПО ДатыОстатков.ПериодОстатка = ОстаткиИ.Период |
|||
24
GANR
31.10.13
✎
17:50
|
Да кстати, любителям сложных запросов советую http://sql-ex.ru/
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |