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

В итоговом запросе затроенные данные

В итоговом запросе затроенные данные
Я
   NIGHTHUNTER
 
21.08.20 - 05:08
Подскажите пожалуйста, почему итоговый запрос затраивает данные ?

Делаю по документу, в котором 2 позиции в табличной части товары. Количество 20 и 2.
А итоговый запрос по этим позициям выдает 60 и 6. Делаю вывод что они затраиваются. Что то я не предусмотрел.


ВЫБРАТЬ
    РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
    СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество
ПОМЕСТИТЬ ВТ_ТчТовары
ИЗ
    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
    РеализацияТоваровУслугТовары.Ссылка = &Ссылка

СГРУППИРОВАТЬ ПО
    РеализацияТоваровУслугТовары.Номенклатура

ИНДЕКСИРОВАТЬ ПО
    Номенклатура
;

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

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ВТ_ТчТовары.Номенклатура,
    ВТ_ТчТовары.Количество,
    0,
    ЕСТЬNULL(ТоварыОрганизацийОстатки.КоличествоОстаток, 0),
    0
ИЗ
    ВТ_ТчТовары КАК ВТ_ТчТовары
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыОрганизаций.Остатки(&ДатаОстатков, Организация = &ОрганизацияС) КАК ТоварыОрганизацийОстатки
        ПО ВТ_ТчТовары.Номенклатура = ТоварыОрганизацийОстатки.АналитикаУчетаНоменклатуры.Номенклатура

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ВТ_ТчТовары.Номенклатура,
    ВТ_ТчТовары.Количество,
    0,
    0,
    ЕСТЬNULL(ТоварыОрганизацийОстатки.КоличествоОстаток, 0)
ИЗ
    ВТ_ТчТовары КАК ВТ_ТчТовары
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыОрганизаций.Остатки(&ДатаОстатков, Организация = &ОрганизацияП) КАК ТоварыОрганизацийОстатки
        ПО ВТ_ТчТовары.Номенклатура = ТоварыОрганизацийОстатки.АналитикаУчетаНоменклатуры.Номенклатура
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_ВыборкаПоСкладам.Номенклатура КАК Номенклатура,
    ВТ_ВыборкаПоСкладам.Номенклатура.Наименование КАК НоменклатураНаименование,
    СУММА(ВТ_ВыборкаПоСкладам.Количество) КАК Количество,
    СУММА(ВТ_ВыборкаПоСкладам.КоличествоОстатокНаИП) КАК КоличествоОстатокНаИП,
    СУММА(ВТ_ВыборкаПоСкладам.КоличествоОстатокНаСЛСистем) КАК КоличествоОстатокНаСЛСистем,
    СУММА(ВТ_ВыборкаПоСкладам.КоличествоОстатокНаПремьер) КАК КоличествоОстатокНаПремьер
ИЗ
    ВТ_ВыборкаПоСкладам КАК ВТ_ВыборкаПоСкладам

СГРУППИРОВАТЬ ПО
    ВТ_ВыборкаПоСкладам.Номенклатура,
    ВТ_ВыборкаПоСкладам.Номенклатура.Наименование
   DmVl76
 
1 - 21.08.20 - 05:31
В последнем запросе СУММА(ВТ_ВыборкаПоСкладам.Количество) КАК Количество - суммирует из трех таблиц, вот и затроено. Суммирование по количеству убрать и добавить в группировку
   NIGHTHUNTER
 
2 - 21.08.20 - 05:42
Nen bcghfdbnm gjkexbkjcm? dthyj kb&

ВЫБРАТЬ
    РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
    СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество
ПОМЕСТИТЬ ВТ_ТчТовары
ИЗ
    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
    РеализацияТоваровУслугТовары.Ссылка = &Ссылка

СГРУППИРОВАТЬ ПО
    РеализацияТоваровУслугТовары.Номенклатура

ИНДЕКСИРОВАТЬ ПО
    Номенклатура
;

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

ВЫБРАТЬ
    ВТ_ТчТовары.Номенклатура КАК Номенклатура,
    ВТ_ТчТовары.Количество КАК Количество,
    СУММА(ЕСТЬNULL(ТоварыОрганизацийОстатки.КоличествоОстаток, 0)) КАК КоличествоОстатокНаИП,
    СУММА(0) КАК КоличествоОстатокНаСЛСистем,
    СУММА(0) КАК КоличествоОстатокНаПремьер
ПОМЕСТИТЬ ВТ_ПоОрганизациям
ИЗ
    ВТ_ТчТовары КАК ВТ_ТчТовары
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыОрганизаций.Остатки(&ДатаОстатков, Организация = &ОрганизацияИП) КАК ТоварыОрганизацийОстатки
        ПО ВТ_ТчТовары.Номенклатура = ТоварыОрганизацийОстатки.АналитикаУчетаНоменклатуры.Номенклатура

СГРУППИРОВАТЬ ПО
    ВТ_ТчТовары.Номенклатура,
    ВТ_ТчТовары.Количество

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ВТ_ТчТовары.Номенклатура,
    ВТ_ТчТовары.Количество,
    СУММА(0),
    СУММА(ЕСТЬNULL(ТоварыОрганизацийОстатки.КоличествоОстаток, 0)),
    СУММА(0)
ИЗ
    ВТ_ТчТовары КАК ВТ_ТчТовары
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыОрганизаций.Остатки(&ДатаОстатков, Организация = &ОрганизацияС) КАК ТоварыОрганизацийОстатки
        ПО ВТ_ТчТовары.Номенклатура = ТоварыОрганизацийОстатки.АналитикаУчетаНоменклатуры.Номенклатура

СГРУППИРОВАТЬ ПО
    ВТ_ТчТовары.Номенклатура,
    ВТ_ТчТовары.Количество

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ВТ_ТчТовары.Номенклатура,
    ВТ_ТчТовары.Количество,
    СУММА(0),
    СУММА(0),
    СУММА(ЕСТЬNULL(ТоварыОрганизацийОстатки.КоличествоОстаток, 0))
ИЗ
    ВТ_ТчТовары КАК ВТ_ТчТовары
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыОрганизаций.Остатки(&ДатаОстатков, Организация = &ОрганизацияП) КАК ТоварыОрганизацийОстатки
        ПО ВТ_ТчТовары.Номенклатура = ТоварыОрганизацийОстатки.АналитикаУчетаНоменклатуры.Номенклатура

СГРУППИРОВАТЬ ПО
    ВТ_ТчТовары.Номенклатура,
    ВТ_ТчТовары.Количество
;

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

ВЫБРАТЬ
    ВТ_ПоОрганизациям.Номенклатура,
    ВТ_ПоОрганизациям.Количество,
    СУММА(ВТ_ПоОрганизациям.КоличествоОстатокНаИП) КАК КоличествоОстатокНаИП,
    СУММА(ВТ_ПоОрганизациям.КоличествоОстатокНаСЛСистем) КАК КоличествоОстатокНаСЛСистем,
    СУММА(ВТ_ПоОрганизациям.КоличествоОстатокНаПремьер) КАК КоличествоОстатокНаПремьер
ИЗ
    ВТ_ПоОрганизациям КАК ВТ_ПоОрганизациям

СГРУППИРОВАТЬ ПО
    ВТ_ПоОрганизациям.Номенклатура,
    ВТ_ПоОрганизациям.Количество
   NIGHTHUNTER
 
3 - 21.08.20 - 05:43
(1) в (2) посатрался исправить, вроде как результат верный. А по синтаксису и правильности написания запроса, все ли верно?
   Ненавижу 1С
 
4 - 21.08.20 - 06:42
По архитектуре криво. Завтра 4-я организация появится и что делать будете?
   Галахад
 
5 - 21.08.20 - 06:45
(4) Трудолюбие положительное качество. :-)
   NIGHTHUNTER
 
6 - 21.08.20 - 07:13
(4) По архитектуре? Ну а как было бы правильно? Если появится 5 организаций, так же ..
То есть текст запроса, должен формироваться динамически?
   Ненавижу 1С
 
7 - 21.08.20 - 07:17
(6) количество полей не должно зависеть от количества организаций. Организация сама является полем
   NIGHTHUNTER
 
8 - 21.08.20 - 07:26
(7) у меня вот так вот в запросе (7) а как было бы у вас ?
   NIGHTHUNTER
 
9 - 21.08.20 - 07:26
(8+) вот так вот (2)

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