Как получить сумму значений из РС ?

1. Terabaytus 31.07.20 08:32 Сейчас в теме
Добрый день в РС есть 3 значения. Нужно получить их сумму, номер поставки и дату плюс добавить из второго РС наименование документа. При таком запросе
"ВЫБРАТЬ
	    |  ВыбраныйНомерКонтракта.ВыбраныйНомерКонтрактаДляФорм,
		|  Оплата.ОплатаНомерКонтракта,
		|  Оплата.ОплатаНаименованиеДокумента,
		|  Поставка.ПоставкаНомерКонтракта,
		|  Поставка.ПоставкаНомерПоставки,                                                   
		|  Поставка.ПоставкаДата,                                                         
		|  СУММА(ПоставкаСумма)
	|ИЗ
		|  РегистрСведений.Поставка КАК Поставка,
		|  РегистрСведений.ВыбраныйНомерКонтракта КАК ВыбраныйНомерКонтракта,
		|  РегистрСведений.Оплата КАК Оплата
        |ЛЕВОЕ СОЕДИНЕНИЕ
	        |РегистрСведений.ВыбраныйНомерКонтракта КАК ВыбраныйНомерКонтракта 
	|ПО
	      (ВыбраныйНомерКонтракта.ВыбраныйНомерКонтрактаДляФорм = Оплата.ОплатаНомерКонтракта)
	|ГДЕ 
		|  Поставка.ПоставкаНомерКонтракта = ВыбраныйНомерКонтракта.ВыбраныйНомерКонтрактаДляФорм 
	|И  
		|  Оплата.ОплатаНомерКонтракта = ВыбраныйНомерКонтракта.ВыбраныйНомерКонтрактаДляФорм
	|СГРУППИРОВАТЬ ПО
		|  ВыбраныйНомерКонтракта.ВыбраныйНомерКонтрактаДляФорм,
		|  Оплата.ОплатаНомерКонтракта,
		|  Оплата.ОплатаНаименованиеДокумента,
		|  Поставка.ПоставкаНомерКонтракта,
		|  Поставка.ПоставкаНомерПоставки,                                                   
		|  Поставка.ПоставкаДата,
		|  ПоставкаСумма";
Показать

у меня выдаёт двойные значения и сумма умножается на два как можно поправить ?
Прикрепленные файлы:
Найденные решения
8. AlexeyPapanov 376 31.07.20 22:20 Сейчас в теме
У тебя три таблицы и одно левое соединение.
В таком случае будет такая оказия.
В самом простом случае выбирают данные из одной таблички, к ней клеим одну табличку, вторую и т.д.
А тут мы одну таблицу с другой поженили, а про третью позабыли.
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
3. succub1_5 76 31.07.20 08:50 Сейчас в теме
(1) из группировки ПоставкаСуммы надо убрать.
Terabaytus; +1 Ответить
5. Terabaytus 31.07.20 13:35 Сейчас в теме
(3) Всё верно, но сумма увеличивается при других строках равных нулю. То есть в РС сумма = 70061,76 а в запросе умножается на себя и ровна 140123,52 это не правильно. Как можно исправить ?
Прикрепленные файлы:
6. succub1_5 76 31.07.20 13:42 Сейчас в теме
(5)Запрос надо переписать, через объединение, ну или (похуже вариант) левыми соединениями.
7. Terabaytus 31.07.20 13:59 Сейчас в теме
(6)Добавил ЛЕВОЕ СОЕДИНЕНИЕ результат такой же одна строка с умноженной на себя суммой.
4. olololeg 31.07.20 08:55 Сейчас в теме
(1)В принципе согласен с комментарием (starjevschik), нет связей между РС, попробуйте изначально получить нужную сумму из 1 регистра, потом получить дату и номер. Если не получиться, то пожалуйста напишите конфигурацию, посмотрим вместе. Ну и третий регистр, по которому вы не накладываете условий очень странно.
Terabaytus; +1 Ответить
2. starjevschik 31.07.20 08:34 Сейчас в теме
запрос надо правильно написать. Судя по коду, автор пока не успел изучить язык запросов SQL. Следовательно, ему надо отправиться на учебу - или курсы, или книжки...
8. AlexeyPapanov 376 31.07.20 22:20 Сейчас в теме
У тебя три таблицы и одно левое соединение.
В таком случае будет такая оказия.
В самом простом случае выбирают данные из одной таблички, к ней клеим одну табличку, вторую и т.д.
А тут мы одну таблицу с другой поженили, а про третью позабыли.
9. stepan_s 05.08.20 08:22 Сейчас в теме
а если сделать избыточно, пакетом запросов? Сначала получить таблицу связанную с одним регистром, и потом долнить результат из второго регистра?
И читабельнее было бы и отладка проще....
Оставьте свое сообщение
Вопросы с вознаграждением