|
|
Помогите с запросом. Задваивает строки. Горю ;) |
☑ |
|
0
Румата
13.04.16
✎
11:04
|
Необходимо вывести такую таблицу :
Реализация | номенклатура | Количество | Стоимость | ДокументОприходования
Вот сам запрос:
ВЫБРАТЬ
ЕСТЬNULL(ПродажиОбороты.Регистратор, ПартииТоваровНаСкладахОбороты.Регистратор) КАК Регистратор,
ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.Номенклатура, ПродажиОбороты.Номенклатура) КАК Номенклатура,
СУММА(ПродажиОбороты.КоличествоОборот) КАК КоличествоОборот,
СУММА(ПродажиОбороты.СтоимостьОборот) КАК СтоимостьОборот,
ПартииТоваровНаСкладахОбороты.ДокументОприходования КАК ДокументОприходования
ИЗ
РегистрНакопления.ПартииТоваровНаСкладах.Обороты(&ДатаНач, &ДатаКон, Регистратор, ) КАК ПартииТоваровНаСкладахОбороты
ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Регистратор, ) КАК ПродажиОбороты
ПО ПартииТоваровНаСкладахОбороты.Номенклатура = ПродажиОбороты.Номенклатура
И ПартииТоваровНаСкладахОбороты.Регистратор = ПродажиОбороты.Регистратор
СГРУППИРОВАТЬ ПО
ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.Номенклатура, ПродажиОбороты.Номенклатура),
ПартииТоваровНаСкладахОбороты.ДокументОприходования,
ЕСТЬNULL(ПродажиОбороты.Регистратор, ПартииТоваровНаСкладахОбороты.Регистратор)
=============================================
Как только в регистре партии по одной реализации встречаются две строки с одной номенклатурой, но разными документами оприходования начинает двоить (если таких строк две) результат (количество, сумму). Каким образом можно получить нужный мне результат без двоения ?
|
|
|
1
Pro-tone
13.04.16
✎
11:05
|
(0) никак, у тебя же поле "ДокументОприходования", убери это поле - будет группировать номенклатуру
|
|
|
2
FIXXXL
13.04.16
✎
11:06
|
(0) а какой тогда тебе док.прихода надо показать?
|
|
|
3
Румата
13.04.16
✎
11:10
|
(Pro-tone) Смысл, если ДокументОприходования мне нужен в результирующей таблице
(FIXXXL) И тот и другой документ оприходования мне нужен.
|
|
|
4
Encode
13.04.16
✎
11:11
|
(0) Тебе это в виде отчета надо? Если в виде таблицы то в каком виде надо документы оприходования если их несколько по одной реализации?
|
|
|
5
Alexor
13.04.16
✎
11:11
|
Тебе надо количество брать из партии
а сумму считать как вычисльть цену из регистра продаж и умножить на количество партии.
|
|
|
6
Shurjk
13.04.16
✎
11:13
|
Если не понимаешь толком как работает соединение, используй объединение.
|
|
|
7
LordCMEPTb
13.04.16
✎
11:14
|
(0) Есть предложение вместо полного соединения сделать объединение и последующую группировку.
|
|
|
8
Тролль главный
13.04.16
✎
11:15
|
я за объединение во временную таблицу и её группировку, но можно и так:
СУММА(ПартииТоваровНаСкладахОбороты.КоличествоОборот) КАК КоличествоОборот,
СУММА(ПродажиОбороты.СтоимостьОборот)/СУММА(ПродажиОбороты.КоличествоОборот)*СУММА(ПартииТоваровНаСкладахОбороты.КоличествоОборот) КАК СтоимостьОборот,
|
|
|
9
Румата
13.04.16
✎
11:37
|
Всем спасибо, сейчас буду пробовать
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший