Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Итоги иСугруппировать в запросе показывают разные результаты (http://forums.kuban.ru/f1040/itogi_isugruppirovat-_v_zaprose_pokazyvayut_raznye_rezul-taty-8522273.html)

Sany81 01.11.2017 15:53

Итоги иСугруппировать в запросе показывают разные результаты
 
Добрый день.
Есть простой запрос по остаткам товара в килограммах по дням.
Получаю результат, в результате вижу
Номенклатура, период, нач остаток, кон остаток.
Номенклатура в результатирующем отчете не нужна.
Делю Сгруппировать по период
В итоге нач остаток на первый день отчета верный и кон остаток на последний день отчета тоже верный, все остальное не понятно откуда взято.
Если же сделать Итоги по Период
То тут все красиво, но появляется избыточная информация в виде остатка по каждой номенклатуре.
Помогите советом, почему СГРУППИРОВАТЬ так странно суммирует остатки по дням?

roma n 01.11.2017 18:50

Запрос к какой реальной или виртуальной таблице?
На ИТС статья была про расчет итогов по полям остатка.

PS Зачем, однако, в выборке участвует не нужное в результате поле?

Sany81 01.11.2017 19:45

Выборка из виртуальной таблицы РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты период по дням.
Ненужное поле - номенклатура. В результатирующем отчете не нужна, нужен только итоговый вес. Но вес можно получить только из единицы хранения остатков. В самом РН единицы нет, ее можно вытащить только присоединив к РН справочник с единицами по номенклатуре. Поэтому без номенклатуры не обойтись.

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

УПОРЯДОЧИТЬ ПО
Период
ИТОГИ
СУММА(ВесНачальныйОстаток),
СУММА(ВесКонечныйОстаток)
ПО
Период
[/CODE]
то я получаю правильные данные по периодам но + избыточные данные в разрезе номенклатуры.
Но ведь почему бы не сгруппировать по периоду?!?
[CODE]ВЫБРАТЬ
Данные.Период КАК Период,
СУММА(Данные.ВесНачальныйОстаток) КАК ВесНачальныйОстаток,
СУММА(Данные.ВесКонечныйОстаток) КАК ВесКонечныйОстаток
ИЗ
Данные КАК Данные

СГРУППИРОВАТЬ ПО
Данные.Период

УПОРЯДОЧИТЬ ПО
Период[/CODE]
В этом случае мне нравится внешний вид :), но при этом получаются какие то левые данные, которые вообще не понятно откуда выдраны, но приближены к реальным.

roma n 01.11.2017 21:33

В первом же запросе засада... Он не выдаст данные по дням с отсутствующими оборотами. Отсюда копай.


Текущее время: 12:27. Часовой пояс GMT +3.