|
Остатки товаров на момент заказа в запросе | ☑ | ||
---|---|---|---|---|
0
MistaEr
24.09.16
✎
13:26
|
Хочу получать остатки товаров на момент заказа, что то не так делаю
ВЫБРАТЬ ЗаказыПокупателейОбороты.Регистратор.Дата КАК ДатаЗаказа, ЗаказыПокупателейОбороты.Номенклатура КАК Номенклатура, ЗаказыПокупателейОбороты.ХарактеристикаНоменклатуры, ЗаказыПокупателейОбороты.КоличествоПриход КАК КоличествоЗаказа, ЗаказыПокупателейОборотыРеализации.КоличествоРасход ПОМЕСТИТЬ ВТ_Заказы ИЗ РегистрНакопления.ЗаказыПокупателей.Обороты(&НачДата, &КонДата, Регистратор, Номенклатура В ИЕРАРХИИ (&КаталогНоменклатуры)) КАК ЗаказыПокупателейОбороты ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПокупателей.Обороты(&НачДата, &КонДата, Регистратор, Номенклатура В ИЕРАРХИИ (&КаталогНоменклатуры)) КАК ЗаказыПокупателейОборотыРеализации ПО ЗаказыПокупателейОбороты.ЗаказПокупателя = ЗаказыПокупателейОборотыРеализации.ЗаказПокупателя И ЗаказыПокупателейОбороты.Номенклатура = ЗаказыПокупателейОборотыРеализации.Номенклатура И ЗаказыПокупателейОбороты.ХарактеристикаНоменклатуры = ЗаказыПокупателейОборотыРеализации.ХарактеристикаНоменклатуры ГДЕ ЗаказыПокупателейОборотыРеализации.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура, ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры, ВТ_Заказы.ДатаЗаказа КАК ДатаВремяЗаказа, МАКСИМУМ(ВЫБОР КОГДА ТоварыНаСкладахОстаткиИОбороты.Период = &НачДата ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток ИНАЧЕ ВЫБОР КОГДА ТоварыНаСкладахОстаткиИОбороты.Период <= ВТ_Заказы.ДатаЗаказа ТОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоОборот ИНАЧЕ 0 КОНЕЦ КОНЕЦ) КАК КоличествоКонечныйОстаток ПОМЕСТИТЬ ВТ_Остатки ИЗ ВТ_Заказы КАК ВТ_Заказы, РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты( &НачДата, &КонДата, День, , Номенклатура В ИЕРАРХИИ (&КаталогНоменклатуры) И Склад.КодДилера = &КодДилера) КАК ТоварыНаСкладахОстаткиИОбороты СГРУППИРОВАТЬ ПО ТоварыНаСкладахОстаткиИОбороты.Номенклатура, ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры, ВТ_Заказы.ДатаЗаказа ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_Заказы.ДатаЗаказа КАК ДатаЗаказа, ВТ_Заказы.Номенклатура КАК Номенклатура, ВТ_Заказы.ХарактеристикаНоменклатуры, ВТ_Заказы.КоличествоЗаказа, ЕСТЬNULL(ВТ_Остатки.КоличествоКонечныйОстаток, 0) КАК КоличествоКонечныйОстаток ИЗ ВТ_Заказы КАК ВТ_Заказы ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Остатки КАК ВТ_Остатки ПО ВТ_Заказы.Номенклатура = ВТ_Остатки.Номенклатура И ВТ_Заказы.ХарактеристикаНоменклатуры = ВТ_Остатки.ХарактеристикаНоменклатуры И ВТ_Заказы.ДатаЗаказа = ВТ_Остатки.ДатаВремяЗаказа |
|||
1
zak555
24.09.16
✎
13:42
|
с учётом движений документа ?
|
|||
2
MistaEr
24.09.16
✎
13:43
|
(1) Он выводит только начальный остаток, на все периоды заказов
|
|||
3
zak555
24.09.16
✎
13:43
|
какой-то запросы мутный, скажии словами что надо получить
|
|||
4
MistaEr
24.09.16
✎
13:54
|
ВТ_Заказы - получаю даты заказов и вообще заказанные за период товары, но эти заказы должны быть закрыты(реализованы) документов РеализацияТоваровУслуг
ВТ_Остатки - получаю остатки товаров на каждую дату заказа Далее - Нужна таблица, Номенклатура\ДатаЗаказа\КоличествоЗаказа\ОстатокНаМоментЗаказа\ |
|||
5
MistaEr
24.09.16
✎
13:59
|
(0) Тут МАКСИМУМ неверно стоит, а ставлю СУММА, тоже непонятно что получается
|
|||
6
MistaEr
24.09.16
✎
14:11
|
(3) Это вроде как бы Остатки на каждый день, но не совсем то. Это остатки на момент каждого заказа. Причем, каждая номенклатура ведь включена не в каждый заказ
|
|||
7
PR2
24.09.16
✎
14:12
|
(0) Заинтриговал. Продолжай.
|
|||
8
MistaEr
24.09.16
✎
14:19
|
(7) У меня больше нет вариантов. В СКД легко обратиться в общий модуль. А тут придется в цикле остатки доставать
|
|||
9
PR2
24.09.16
✎
14:32
|
(8) А что, разве в (0) не анонс был?
|
|||
10
MistaEr
24.09.16
✎
14:37
|
(9) Думал может ты такой умный быстро подправишь запрос
|
|||
11
zak555
24.09.16
✎
14:38
|
(6) мне первый пакет, например, не понятен
|
|||
12
MistaEr
24.09.16
✎
14:40
|
(11) ВТ_Заказы - получаю даты заказов и вообще заказанные за период товары, но эти заказы должны быть закрыты(реализованы) документов РеализацияТоваровУслуг
Делаю ПОлное соединение с реализованными, закрытыми заявками |
|||
13
zak555
24.09.16
✎
14:42
|
(12) тебе надо получить остатки по тем заказам, который не реализованы ?
|
|||
14
MistaEr
24.09.16
✎
14:53
|
(13) нет, по тем которые попали в ВТ_Заказы
|
|||
15
zak555
24.09.16
✎
14:55
|
РегистрНакопления.ЗаказыПокупателей.Обороты(&НачДата, &КонДата, Регистратор, Номенклатура В ИЕРАРХИИ (&КаталогНоменклатуры)) КАК ЗаказыПокупателейОбороты
РегистрНакопления.ЗаказыПокупателей.Обороты(&НачДата, &КонДата, Регистратор, Номенклатура В ИЕРАРХИИ (&КаталогНоменклатуры)) КАК ЗаказыПокупателейОборотыРеализации |
|||
16
MistaEr
24.09.16
✎
14:58
|
Условия смотри
|
|||
17
RomarioAgro
24.09.16
✎
15:59
|
таблица остатков, по моему не верно построена
что нужно сделать: Таблица остатков и оборотов, если она строится с периодами (не целиком за период) в конкретном периоде (только если он не крайний) в котором не было оборотов, не содержит начальных и конечных остатков. 1) получаем таблицу остатков и оборотов ВТ_ОстаткиИОбороты; 2) проводим левое соединение ВТ_Заказы и ВТ_ОстаткиИОбороты по ВТ_Заказы.ДатаЗаказа <= ВТ_ОстаткиИОбороты.Период группируем по измерениям и получаем Максимум(ВТ_ОстаткиИОбороты.Период) - получаем таблицу ближайших периодов, содержащих остатки ВТ_ДатыОстатков. 3) проводим внутреннее соединение ВТ_ОстаткиИОбороты и ВТ_ДатыОстатков по ВТ_ОстаткиИОбороты.Период = ВТ_ДатыОстатков.Период примерно так |
|||
18
RomarioAgro
24.09.16
✎
16:02
|
ошибся с знаком
2) проводим левое соединение ВТ_Заказы и ВТ_ОстаткиИОбороты по ВТ_Заказы.ДатаЗаказа >= |
|||
19
youalex
24.09.16
✎
18:47
|
1)
остатки на каждый день - считаются как РН.Остатки на начало периода + (объединение) таблица периодов ЛС с таблицей движений По РН.Период <=Период.Период. 2) Использовать .Обороты с периодоми Регистратор/Запись - имхо, моветон. |
|||
20
MistaEr
24.09.16
✎
22:18
|
Всем спасибо, но я сделал в цикле
|
|||
21
tixis
25.09.16
✎
00:57
|
(8) В СКД обратиться в общий модуль = тот же цикл если чо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |