|
Запрос объемов продаж по всей номенклатуре, в т.ч. нулевых |
☑ |
0
nemoxp
15.02.14
✎
15:05
|
Конфигурация УТ 10.3
Дано: регистр накопления ПРОДАЖИ (обороты), и спровочник НОМЕНКЛАТУРА.
Нужно так написать запрос, чтобы получить продажи за период (количество и сумму) по всей номенклатуре (даже которая не продавалась) в разрезе контрагента. Загвоздка в том, что данные по номенклатуре, которая не продавалась контрагенту в данном периоде, отсутствует в регистре ПРОДАЖИ. Т.е. по каждому контрагенту должен быть список всей номенклатуры, если были продажи (есть информация в регистре), то должен быть соответствующий объем, если нет, то "0".
Вопрос, как написать запрос?
Заранее благодарю.
|
|
1
mehfk
15.02.14
✎
15:07
|
SELECT
...
FTOM
Справоник.Номенклатура
...
LEFT JOIN
Регистр.Продажи.Обороты(...)
ON
...
|
|
2
mehfk
15.02.14
✎
15:11
|
"должен быть список всей номенклатуры, если были продажи (есть информация в регистре)"
Извиняюсь
ТОгда
SELECT
Контрагент,
Номенклатура
INTO ВТ_ПродажиНоменклатура_Контрагент
FROM
Регистр.Продажи
;
SELECT
...
FROM
ВТ_ПродажиНоменклатура_Контрагент
LEFT JOIN
Регистр.Продажи.Обороты(...) AS РегПОбороты
ON
ВТ_ПродажиНоменклатура_Контрагент.Контрагент = РегПОбороты.Контрагент И ПродажиНоменклатура_Контрагент.Номенклатура = РегПОбороты.Номенклатура
|
|
3
mistеr
15.02.14
✎
15:12
|
ЛЕВОЕ СОЕДИНЕНИЕ
|
|
4
mistеr
15.02.14
✎
15:12
|
(2) ВТ зачем?
|
|
5
nemoxp
15.02.14
✎
16:29
|
не приведу сейчас свой запрос. смысл такой, одним запросом я выбирал всю номенклатуру из справочника, вторым запросом выбирал обороты по контрагенту и после делал левое соединение по этим запросом по номенклатуре. результат - полный список номенклатуры, где есть обороты, есть контрагент, вся остальная номенклатура не привязака к контрагенту (ведь по ней нет оборотов...
А нужно получить весь список номенклатуры столько раз, сколько контрагентов. И если в регистре по это номенклатуре нет оборотов, проставить "0".
|
|
6
nemoxp
15.02.14
✎
16:37
|
Вот как учесть в запросе такое условие:
"А нужно получить весь список номенклатуры столько раз, сколько контрагентов. И если в регистре по это номенклатуре нет оборотов, проставить "0"."
например 3 номенклатуры и 2 контрагента, результат запроса:
ном1 | контр1 | 0 (нет оборотов в регистре)
ном2 | контр1 | 2
ном3 | контр1 | 5
ном1 | контр2 | 0 (нет оборотов в регистре)
ном2 | контр2 | 0 (нет оборотов в регистре)
ном3 | контр2 | 3
|
|
7
mehfk
15.02.14
✎
18:45
|
(4) Условно из головы запрос набросал. Вт не нужна в данном случае.
(6) Матрица контрагенты-номенклатура на СКД будет стоить 5000 рублей.
|
|
8
mehfk
15.02.14
✎
18:47
|
Если успеете до окончания выходных - 2500 р.
|
|