К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Итоги иСугруппировать в запросе показывают разные результаты

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



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

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

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

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

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

УПОРЯДОЧИТЬ ПО
	Период
В этом случае мне нравится внешний вид :), но при этом получаются какие то левые данные, которые вообще не понятно откуда выдраны, но приближены к реальным.
Гость
3 - 01.11.2017 - 21:33
В первом же запросе засада... Он не выдаст данные по дням с отсутствующими оборотами. Отсюда копай.


К списку вопросов






Copyright ©, Все права защищены