Имя: Пароль:
1C
1С v8
Где-то ошибка в запросе. Продажи по месяцам + срез цен на конец месяца
0 ErrorEd88
 
16.01.13
08:31
Когда выполняю запрос только по оборотам продаж (по месяцам) - данные формируются верно. Как только добавляю цены на конец каждого месяца - выполняю запрос - в результате запрос выводит больше строк. В чем-то ошибка.. Не могу понять в чем дело, переделывал четырьмя разными способами - результат везде идентично неверный.

ВЫБРАТЬ РАЗЛИЧНЫЕ
   КОНЕЦПЕРИОДА(РегламентированныйПроизводственныйКалендарь.ДатаКалендаря, МЕСЯЦ) КАК КонецМесяца
ПОМЕСТИТЬ Календарь
ИЗ
   РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
   РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &НачалоПериода И &КонецПериода
;

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ЦеныНоменклатуры.Номенклатура,
   ЦеныНоменклатуры.Цена КАК ЦенаПоПредприятию,
   Продажи.КонецМесяца,
   МАКСИМУМ(ЦеныНоменклатуры.Период) КАК Период,
   ЦеныНоменклатуры.ТипЦен,
   ЦеныНоменклатуры.Валюта
ПОМЕСТИТЬ ЦеныНом
ИЗ
   РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры,
   Продажи КАК Продажи
ГДЕ
   ЦеныНоменклатуры.Период <= Продажи.КонецМесяца
   И ЦеныНоменклатуры.ТипЦен = &ТипЦен

СГРУППИРОВАТЬ ПО
   ЦеныНоменклатуры.Номенклатура,
   ЦеныНоменклатуры.Цена,
   Продажи.КонецМесяца,
   ЦеныНоменклатуры.ТипЦен,
   ЦеныНоменклатуры.Валюта
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   Продажи.СчетУчетаДоходов КАК СчетУчетаДоходов,
   Продажи.КонецМесяца КАК КонецМесяца,
   Продажи.Организация,
   Продажи.Контрагент,
   Продажи.ДоговорКонтрагента,
   Продажи.ВалютаДоговора,
   Продажи.АртикулНоменклатура,
   Продажи.Номенклатура,
   Продажи.КоличествоОборот КАК КоличествоОборот,
   ЦеныНом.ЦенаПоПредприятию КАК ЦенаПоПредприятию
ИЗ
   Продажи КАК Продажи
       ЛЕВОЕ СОЕДИНЕНИЕ ЦеныНом КАК ЦеныНом
       ПО Продажи.Номенклатура = ЦеныНом.Номенклатура
           И Продажи.КонецМесяца = ЦеныНом.КонецМесяца
ИТОГИ
   СУММА(КоличествоОборот),
   СУММА(ЦенаПоПредприятию)
ПО
   ОБЩИЕ,
   СчетУчетаДоходов,
   КонецМесяца
1 cw014
 
16.01.13
08:35
Цены дублируют номенклатуру
Независимо от того, куда вы едете — это в гору и против ветра!