Вход | Регистрация


Не суммируются в запросе ресурсы регистра накоплений и сведений

Не суммируются в запросе ресурсы регистра накоплений и сведений
Я
   shavkat
 
11.10.18 - 14:52
Добрый день

Есть доработанный УТ 10.3
Есть независимый регистр сведений "Удаленные товары", периодичность в пределах секунды.
делаю запрос
ВЫБРАТЬ
    ПродажиОбороты.Номенклатура,
    ЕСТЬNULL(ПродажиОбороты.КоличествоОборот, 0) КАК КоличествоПродаж
ПОМЕСТИТЬ ВТ_Продажи
ИЗ
    РегистрНакопления.Продажи.Обороты(&Дата1, &Дата2, , ) КАК ПродажиОбороты
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    УдаленныеТовары.Номенклатура,
    ЕСТЬNULL(УдаленныеТовары.Количество, 0) КАК КоличествоУдаленных
ПОМЕСТИТЬ ВТ_Удаленные
ИЗ
    РегистрСведений.УдаленныеТовары КАК УдаленныеТовары
ГДЕ
    УдаленныеТовары.Период МЕЖДУ &Дата1 И &Дата2
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    ВТ_Продажи.Номенклатура,
    ВТ_Продажи.КоличествоПродаж,
    ВТ_Удаленные.КоличествоУдаленных,
    ВТ_Продажи.КоличествоПродаж + ВТ_Удаленные.КоличествоУдаленных КАК Всего
ИЗ
    ВТ_Продажи КАК ВТ_Продажи
        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Удаленные КАК ВТ_Удаленные
        ПО ВТ_Продажи.Номенклатура = ВТ_Удаленные.Номенклатура

В колонке "КоличествоПродаж" все правильно выводится
В колонке "КоличествоУдаленных" все правильно выводится
В колонке "Всего" заполнена только у тех строк в котором есть записи по регистру сведений.

Может я что-то не предусмотрел?

Заранее благодарю
 
 
   azernot
 
1 - 11.10.18 - 14:54
ВТ_Продажи.КоличествоПродаж + ЕСТЬNULL(ВТ_Удаленные.КоличествоУдаленных,0)

в остальных местах ЕСТЬNULL не нужен.
   Cool_Profi
 
2 - 11.10.18 - 14:55
ЕСТЬNULL забыл
   shavkat
 
3 - 11.10.18 - 15:01
(1) заработало, спасибо!

но логику не понял
   Йохохо
 
4 - 11.10.18 - 15:02
(3) у тебя левое соединение дает нул, кажется весь запрос делает не то что ты хотел
   hhhh
 
5 - 11.10.18 - 16:14
(3) у тебя
ВТ_Продажи.КоличествоПродаж + ВТ_Удаленные.КоличествоУдаленных КАК Всего

ВТ_Удаленные.КоличествоУдаленных = null

поэтому

ВТ_Продажи.КоличествоПродаж + ВТ_Удаленные.КоличествоУдаленных  = null

поэтому

"В колонке "Всего" заполнена только у тех строк в котором есть записи по регистру сведений"
   Eiffil123
 
6 - 11.10.18 - 16:23
(3) при левом соединении все суммовые поля справа нужно оборачивать в естьнулл, чтобы их складывать, вычитать, проверять на равенство и т.д.

Список тем форума
Рекламное место пустует  Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует