|
Помогите с простым запросом | ☑ | ||
---|---|---|---|---|
0
v_clim
19.04.12
✎
10:33
|
Есть регистр остатков (Товар Количество)
Товар1 - 5 Товар2 - 4 Товар3 - 8 Товар4 - 7 Товар5 - 9 Есть табличная часть документа (Товар Количество) Товар1 - 2 Товар2 - 3 Товар6 - 10 На выходе нужно вот такое рег ТЧ Товар1 - 5 2 Товар2 - 4 3 Товар3 - 8 0 Товар4 - 7 0 Товар5 - 9 0 Товар6 - 0 10 Делал полное объединение не работает почему-то |
|||
1
aleks-id
19.04.12
✎
10:34
|
ну показывай код как делал
|
|||
2
butterbean
19.04.12
✎
10:34
|
показывай запрос
|
|||
3
Cube
19.04.12
✎
10:34
|
Запрос в студию!
|
|||
4
Рэйв
19.04.12
✎
10:35
|
Криво делал значит
|
|||
5
Wobland
19.04.12
✎
10:35
|
(0) ЕСТЬNULL в остатках тебя спасёт
|
|||
6
v_clim
19.04.12
✎
10:38
|
ВЫБРАТЬ
ПеремещениеТоваровМеждуТочкамиТовары.Товар КАК Товар, ПРЕДСТАВЛЕНИЕ(ПеремещениеТоваровМеждуТочкамиТовары.Товар), ПеремещениеТоваровМеждуТочкамиТовары.Количество КАК Количество, СУММА(Остатки.КоличествоОстаток) КАК ОСтаток, Остатки.Товар КАК Товар1 ИЗ Документ.ПеремещениеТоваровМеждуТочками.Товары КАК ПеремещениеТоваровМеждуТочкамиТовары ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиТоваров.Остатки(&МоментВремени, Точка = &Точка) КАК Остатки ПО ПеремещениеТоваровМеждуТочкамиТовары.Товар = Остатки.Товар ГДЕ ПеремещениеТоваровМеждуТочкамиТовары.Ссылка = &Ссылка ИТОГИ СУММА(Количество), СУММА(ОСтаток) ПО ОБЩИЕ |
|||
7
butterbean
19.04.12
✎
10:39
|
ЕСТЬNULL(ПеремещениеТоваровМеждуТочкамиТовары.Товар,Остатки.Товар) КАК Товар
|
|||
8
mzelensky
19.04.12
✎
10:41
|
(0) а как в таблице:
На выходе нужно вот такое рег ТЧ Товар1 - 5 2 Товар2 - 4 3 Товар3 - 8 0 Товар4 - 7 0 Товар5 - 9 0 Товар6 - 0 10 В тч для товара "Товар3" стоит "0"??? что же ты тогда перемещаешь? воздух? |
|||
9
Рэйв
19.04.12
✎
10:42
|
+(7)
СУММА(ЕСТЬNULL(ПеремещениеТоваровМеждуТочкамиТовары.Товар,Остатки.Товар)) КАК Товар |
|||
10
Рэйв
19.04.12
✎
10:42
|
(8)Это значит что остаток есть, но позиции нет в ТЧ.
|
|||
11
GoldenCalf
19.04.12
✎
10:46
|
(0) Для чего на выходе нужно такое?
|
|||
12
_RTFM_
19.04.12
✎
10:47
|
(9) а зачем сумма?
|
|||
13
mzelensky
19.04.12
✎
10:48
|
(10) а если у нас есть в наличии 100 000 позиций, то они все ему выведутся ?!
|
|||
14
_RTFM_
19.04.12
✎
10:49
|
+ (12) ну и может в итоге так:
ВЫБРАТЬ ЕСТЬNULL(ПеремещениеТоваровМеждуТочкамиТовары.Товар,Остатки.Товар)) КАК Товар, ЕСТЬNULL(ПеремещениеТоваровМеждуТочкамиТовары.Количество, 0) КАК Количество, ЕСТЬNULL(Остатки.КоличествоОстаток, 0) КАК Оcтаток ИЗ Документ.ПеремещениеТоваровМеждуТочками.Товары КАК ПеремещениеТоваровМеждуТочкамиТовары ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиТоваров.Остатки(&МоментВремени, Точка = &Точка) КАК Остатки ПО ПеремещениеТоваровМеждуТочкамиТовары.Товар = Остатки.Товар ГДЕ ПеремещениеТоваровМеждуТочкамиТовары.Ссылка = &Ссылка ИТОГИ СУММА(Количество), СУММА(ОСтаток) ПО ОБЩИЕ |
|||
15
Рэйв
19.04.12
✎
10:50
|
(12)Посмотрел, что у него стоит:-)). Без группировок и правда можно убрать
|
|||
16
Рэйв
19.04.12
✎
10:50
|
(13)На то и полное соединение. Выводится все из обеих таблиц.
|
|||
17
_RTFM_
19.04.12
✎
10:51
|
в (14) в первой поле лишнюю скобку указал..
|
|||
18
mzelensky
19.04.12
✎
10:53
|
(15) а тебе не кажется ,что это бред?!
|
|||
19
Рэйв
19.04.12
✎
10:56
|
(15)Что именно?
|
|||
20
Рэйв
19.04.12
✎
10:58
|
(19)->(18)
|
|||
21
v_clim
19.04.12
✎
10:59
|
Сделал так все равно только 3 позиции показывает
|
|||
22
v_clim
19.04.12
✎
10:59
|
ВЫБРАТЬ
ЕСТЬNULL(ПеремещениеТоваровМеждуТочкамиТовары.Товар,Остатки.Товар) КАК Товар, ЕСТЬNULL(ПеремещениеТоваровМеждуТочкамиТовары.Количество, 0) КАК Количество, ЕСТЬNULL(Остатки.КоличествоОстаток, 0) КАК Оcтаток ИЗ Документ.ПеремещениеТоваровМеждуТочками.Товары КАК ПеремещениеТоваровМеждуТочкамиТовары ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиТоваров.Остатки(&МоментВремени, Точка = &Точка) КАК Остатки ПО ПеремещениеТоваровМеждуТочкамиТовары.Товар = Остатки.Товар ГДЕ ПеремещениеТоваровМеждуТочкамиТовары.Ссылка = &Ссылка ИТОГИ СУММА(Количество), СУММА(Оcтаток) ПО ОБЩИЕ |
|||
23
butterbean
19.04.12
✎
11:00
|
(22) замени ГДЕ на И
|
|||
24
v_clim
19.04.12
✎
11:00
|
для чего это надо в печатную форму из перемещения выводить остаток на начало точки получателя и перемещение на эту точку
|
|||
25
mzelensky
19.04.12
✎
11:05
|
(19) то что он хочет вывести распечатку ВСЕГО товара, и там в одно колонке показать ,что этот товар есть в Документе, а в другой колонке показать сколько вообще этого товара...работать будет конечно, НО если (повторяюсь), на остатках 100 000 позиций (да пусть даже 15 000), то ВСЕ это выведется ему в отчет - попробуй потом там что-то найти!
Итог - задача сама по себе решена, но КАКОЙ ТОЛК ОТ ТАКОГО РЕШЕНИЯ? |
|||
26
v_clim
19.04.12
✎
11:06
|
вроде получается!!! только колонка остаток правильно выводится а колонка количество дублирут позиции
|
|||
27
v_clim
19.04.12
✎
11:07
|
там товаров совсем немного 20 позиций
|
|||
28
Рэйв
19.04.12
✎
11:08
|
(25)Ну он там фильтрует вроде по точке.
Значит так надо:-) |
|||
29
Aprobator
19.04.12
✎
11:24
|
ОБЪЕДИНЕНИЕ спасет отца русской демократии )))
|
|||
30
v_clim
19.04.12
✎
15:59
|
Выбрать
ЕстьNULL(Товары.Товар,0) КАК Товар, СУММА(ЕСТЬNULL(Товары.Количество,0))КАК Количество, СУММА(0) КАК Остаток ИЗ Документ.ПеремещениеТоваровМеждуТочками.Товары КАК Товары ГДЕ Товары.Ссылка = &Ссылка СГРУППИРОВАТЬ ПО Товары.Товар ОБЪЕДИНИТЬ Выбрать ЕстьNULL(Остатки.Товар,0) КАК Товар, СУММА (0) КАК Количество, СУММА(ЕСТЬNULL(Остатки.КоличествоОстаток, 0)) КАК Оcтаток ИЗ РегистрНакопления.ОстаткиТоваров.Остатки(&МоментВремени, Точка = &Точка) КАК Остатки СГРУППИРОВАТЬ ПО Остатки.Товар Вопрос - как сгруппировать по товару результат объединения ? |
|||
31
v_clim
19.04.12
✎
17:06
|
Если правильно разобрался то делается это через ВложенныйЗапрос...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |