Универсальный отчет

1. user1008893 11.10.18 10:44 Сейчас в теме
Нужно считать сумму,но когда пишу вот так,то номенклатура у которой вариант исполнения который не запонен не считается сумма
УниверсальныйОтчет.ПостроительОтчета.Параметры.Вставить("ТипЦен",Справочники.ТипыЦен.НайтиПоНаименованию("Продажа"));
	
	мТекстЗапроса = "ВЫБРАТЬ
	                |	СтоимостьТМЦОстаткиИОбороты.Фирма КАК Фирма,
	                |	СтоимостьТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
	                |	СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
	                |	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
	                |	ЦеныНоменклатурыСрезПоследних.ТипЦен КАК ТипЦен,
	                |	ЦеныНоменклатурыСрезПоследних.ВариантИсполнения КАК ВариантИсполнения1
	                |ПОМЕСТИТЬ ВТ_СтоимостьТМЦ
	                |ИЗ
	                |	РегистрНакопления.СтоимостьТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(Фирма).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК СтоимостьТМЦОстаткиИОбороты
	                |		Левое СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен И ВариантИсполнения=&ВариантИсполнения) КАК ЦеныНоменклатурыСрезПоследних
	                |		ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
					|			И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения
Показать
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. YannikAlx 43 11.10.18 10:50 Сейчас в теме
Вы же открывали тему про ЭТО... Зачем второй раз?

Покажите ГДЕ у вас сумма-то?
+
3. user1008893 11.10.18 10:52 Сейчас в теме
(2)Помогите пожалуйста,уже не знаю в чем дело
мТекстЗапроса = "ВЫБРАТЬ
	                |	СтоимостьТМЦОстаткиИОбороты.Фирма КАК Фирма,
	                |	СтоимостьТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
	                |	СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
	                |	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
	                |	ЦеныНоменклатурыСрезПоследних.ТипЦен КАК ТипЦен,
	                |	ЦеныНоменклатурыСрезПоследних.ВариантИсполнения КАК ВариантИсполнения1
	                |ПОМЕСТИТЬ ВТ_СтоимостьТМЦ
	                |ИЗ
	                |	РегистрНакопления.СтоимостьТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(Фирма).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК СтоимостьТМЦОстаткиИОбороты
	                |		Левое СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен И ВариантИсполнения=&ВариантИсполнения) КАК ЦеныНоменклатурыСрезПоследних
	                |		ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
					|			И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения
	                |
	                |ИНДЕКСИРОВАТЬ ПО
	                |	Фирма,
	                |	Номенклатура,
	                |	ВариантИсполнения
	                |;
	                |
	                |////////////////////////////////////////////////////////////­////////////////////
	                |ВЫБРАТЬ
	                |	ТаблОстаткиИОбороты.Филиал,
	                |	ТаблОстаткиИОбороты.Фирма,
	                |	ТаблОстаткиИОбороты.Склад,
	                |	ТаблОстаткиИОбороты.Номенклатура,
	                |	ТаблОстаткиИОбороты.ВариантИсполнения,
	                |	ТаблОстаткиИОбороты.КПриемкеОТК,
	                |	СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоНачальныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоКонечныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.КолПриход / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоПриход,
	                |	СУММА(ТаблОстаткиИОбороты.КолРасход / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоРасход,
	                |	СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ВесНачальныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ВесКонечныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолПриход) КАК ВесПриход,
	                |	СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолРасход) КАК ВесРасход,
	                |	СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ОбъемНачальныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ОбъемКонечныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолПриход) КАК ОбъемПриход,
	                |	СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолРасход) КАК ОбъемРасход,
	                |	ТаблОстаткиИОбороты.Вес,
	                |	ТаблОстаткиИОбороты.Объем,
	                |	ТаблОстаткиИОбороты.Коэффициент,
	                |	ТаблОстаткиИОбороты.Период,
	                |	ТаблОстаткиИОбороты.Регистратор,
	                |	СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток * ВТ_СтоимостьТМЦ.Цена) КАК СуммаНачальныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток * ВТ_СтоимостьТМЦ.Цена) КАК СуммаКонечныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.КолПриход * ВТ_СтоимостьТМЦ.Цена) КАК СуммаПриход,
	                |	СУММА(ТаблОстаткиИОбороты.КолРасход * ВТ_СтоимостьТМЦ.Цена) КАК СуммаРасход,
	                |	ВТ_СтоимостьТМЦ.Цена,
	                |	ВТ_СтоимостьТМЦ.ТипЦен
	                |{ВЫБРАТЬ
	                |	Филиал.*,
	                |	Фирма.*,
	                |	Склад.*,
	                |	Номенклатура.*,
	                |	ВариантИсполнения.*,
	                |	КПриемкеОТК,
	                |	ВесНачальныйОстаток,
	                |	ВесКонечныйОстаток,
	                |	ВесПриход,
	                |	ВесРасход,
	                |	ОбъемНачальныйОстаток,
	                |	ОбъемКонечныйОстаток,
	                |	ОбъемПриход,
	                |	ОбъемРасход,
	                |	Вес,
	                |	Объем,
	                |	Коэффициент,
	                |	Период,
	                |	Регистратор.*,
	                |	КоличествоНачальныйОстаток,
	                |	КоличествоКонечныйОстаток,
	                |	КоличествоПриход,
	                |	КоличествоРасход,
	                |	СуммаНачальныйОстаток,
	                |	СуммаКонечныйОстаток,
	                |	СуммаПриход,
	                |	СуммаРасход,
	                |	ТаблОстаткиИОбороты.Номенклатура.БазоваяЕдИзм.* КАК ЕдИзм,
	                |	ТаблОстаткиИОбороты.ПериодДень,
	                |	ТаблОстаткиИОбороты.ПериодНеделя,
	                |	ТаблОстаткиИОбороты.ПериодДекада,
	                |	ТаблОстаткиИОбороты.ПериодМесяц,
	                |	ТаблОстаткиИОбороты.ПериодКвартал,
	                |	ТаблОстаткиИОбороты.ПериодПолугодие,
	                |	ТаблОстаткиИОбороты.ПериодГод,
	                |	ВТ_СтоимостьТМЦ.Цена,
	                |	ВТ_СтоимостьТМЦ.ТипЦен}
	                |ИЗ
	                |	(ВЫБРАТЬ
	                |		ОстаткиТМЦОстаткиИОбороты.Филиал КАК Филиал,
	                |		ОстаткиТМЦОстаткиИОбороты.Фирма КАК Фирма,
	                |		ОстаткиТМЦОстаткиИОбороты.Склад КАК Склад,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
	                |		ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
	                |		ОстаткиТМЦОстаткиИОбороты.КПриемкеОТК КАК КПриемкеОТК,
	                |		ОстаткиТМЦОстаткиИОбороты.КолНачальныйОстаток КАК КолНачальныйОстаток,
	                |		ОстаткиТМЦОстаткиИОбороты.КолКонечныйОстаток КАК КолКонечныйОстаток,
	                |		ОстаткиТМЦОстаткиИОбороты.КолПриход КАК КолПриход,
	                |		ОстаткиТМЦОстаткиИОбороты.КолРасход КАК КолРасход,
	                |		ВЫБОР
	                |			КОГДА ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Вес = 0
	                |				ТОГДА ОстаткиТМЦОстаткиИОбороты.Номенклатура.Вес
	                |			ИНАЧЕ ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Вес
	                |		КОНЕЦ КАК Вес,
	                |		ВЫБОР
	                |			КОГДА ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Объем = 0
	                |				ТОГДА ОстаткиТМЦОстаткиИОбороты.Номенклатура.Объем
	                |			ИНАЧЕ ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Объем
	                |		КОНЕЦ КАК Объем,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура.БазоваяЕдИзм.Коэффициент КАК Коэффициент,
	                |		ОстаткиТМЦОстаткиИОбороты.Период КАК Период,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, ДЕНЬ) КАК ПериодДень,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, НЕДЕЛЯ) КАК ПериодНеделя,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, ДЕКАДА) КАК ПериодДекада,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, МЕСЯЦ) КАК ПериодМесяц,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, КВАРТАЛ) КАК ПериодКвартал,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, ПОЛУГОДИЕ) КАК ПериодПолугодие,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, ГОД) КАК ПериодГод,
	                |		ОстаткиТМЦОстаткиИОбороты.Регистратор КАК Регистратор
	                |	ИЗ
	                |		РегистрНакопления.ОстаткиТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Регистратор {(&Периодичность)}, , {(Филиал).*, (Фирма).*, (Склад).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК ОстаткиТМЦОстаткиИОбороты
	                |	{ГДЕ
	                |		ОстаткиТМЦОстаткиИОбороты.Филиал.*,
	                |		ОстаткиТМЦОстаткиИОбороты.Фирма.*,
	                |		ОстаткиТМЦОстаткиИОбороты.Склад.*,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура.*,
	                |		ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.*,
	                |		ОстаткиТМЦОстаткиИОбороты.КПриемкеОТК,
	                |		(ВЫБОР
	                |				КОГДА ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Вес = 0
	                |					ТОГДА ОстаткиТМЦОстаткиИОбороты.Номенклатура.Вес
	                |				ИНАЧЕ ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Вес
	                |			КОНЕЦ) КАК Вес,
	                |		(ВЫБОР
	                |				КОГДА ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Объем = 0
	                |					ТОГДА ОстаткиТМЦОстаткиИОбороты.Номенклатура.Объем
	                |				ИНАЧЕ ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Объем
	                |			КОНЕЦ) КАК Объем,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура.БазоваяЕдИзм.Коэффициент КАК Коэффициент,
	                |		ОстаткиТМЦОстаткиИОбороты.Регистратор.*,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура.БазоваяЕдИзм.* КАК ЕдИзм}) КАК ТаблОстаткиИОбороты
	                |		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_СтоимостьТМЦ КАК ВТ_СтоимостьТМЦ
	                |		ПО ТаблОстаткиИОбороты.ВариантИсполнения = ВТ_СтоимостьТМЦ.ВариантИсполнения
	                |			И ТаблОстаткиИОбороты.Номенклатура = ВТ_СтоимостьТМЦ.Номенклатура
	                |			И ТаблОстаткиИОбороты.Фирма = ВТ_СтоимостьТМЦ.Фирма
	                |{ГДЕ
	                |	(СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток / ТаблОстаткиИОбороты.Коэффициент)) КАК КоличествоНачальныйОстаток,
	                |	(СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток / ТаблОстаткиИОбороты.Коэффициент)) КАК КоличествоКонечныйОстаток,
	                |	(СУММА(ТаблОстаткиИОбороты.КолПриход / ТаблОстаткиИОбороты.Коэффициент)) КАК КоличествоПриход,
	                |	(СУММА(ТаблОстаткиИОбороты.КолРасход / ТаблОстаткиИОбороты.Коэффициент)) КАК КоличествоРасход,
	                |	(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ВесНачальныйОстаток,
	                |	(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ВесКонечныйОстаток,
	                |	(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолПриход) КАК ВесПриход,
	                |	(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолРасход) КАК ВесРасход,
	                |	(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ОбъемНачальныйОстаток,
	                |	(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ОбъемКонечныйОстаток,
	                |	(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолПриход) КАК ОбъемПриход,
	                |	(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолРасход) КАК ОбъемРасход,
	                |	(ТаблОстаткиИОбороты.КолРасход * ВТ_СтоимостьТМЦ.Цена) КАК СуммаРасход,
	                |	(ТаблОстаткиИОбороты.КолПриход * ВТ_СтоимостьТМЦ.Цена) КАК СуммаПриход,
	                |	(ТаблОстаткиИОбороты.КолКонечныйОстаток * ВТ_СтоимостьТМЦ.Цена) КАК СуммаКонечныйОстаток,
	                |	(ТаблОстаткиИОбороты.КолНачальныйОстаток * ВТ_СтоимостьТМЦ.Цена) КАК СуммаНачальныйОстаток}
	                |
	                |СГРУППИРОВАТЬ ПО
	                |	ТаблОстаткиИОбороты.Филиал,
	                |	ТаблОстаткиИОбороты.Фирма,
	                |	ТаблОстаткиИОбороты.Склад,
	                |	ТаблОстаткиИОбороты.Период,
	                |	ТаблОстаткиИОбороты.Регистратор,
	                |	ТаблОстаткиИОбороты.Номенклатура,
	                |	ТаблОстаткиИОбороты.ВариантИсполнения,
	                |	ТаблОстаткиИОбороты.КПриемкеОТК,
	                |	ТаблОстаткиИОбороты.Вес,
	                |	ТаблОстаткиИОбороты.Объем,
	                |	ТаблОстаткиИОбороты.Коэффициент,
	                |	ВТ_СтоимостьТМЦ.Цена,
	                |	ВТ_СтоимостьТМЦ.ТипЦен
	                |{УПОРЯДОЧИТЬ ПО
	                |	Филиал.*,
	                |	Фирма.*,
	                |	Склад.*,
	                |	Номенклатура.*,
	                |	ВариантИсполнения.*,
	                |	КПриемкеОТК,
	                |	Вес,
	                |	Объем,
	                |	Период,
	                |	Регистратор.*,
	                |	ТаблОстаткиИОбороты.ПериодДень,
	                |	ТаблОстаткиИОбороты.ПериодНеделя,
	                |	ТаблОстаткиИОбороты.ПериодДекада,
	                |	ТаблОстаткиИОбороты.ПериодМесяц,
	                |	ТаблОстаткиИОбороты.ПериодКвартал,
	                |	ТаблОстаткиИОбороты.ПериодПолугодие,
	                |	ТаблОстаткиИОбороты.ПериодГод,
	                |	ВТ_СтоимостьТМЦ.Цена,
	                |	ВТ_СтоимостьТМЦ.ТипЦен}
	                |ИТОГИ
	                |	СУММА(КоличествоНачальныйОстаток),
	                |	СУММА(КоличествоКонечныйОстаток),
	                |	СУММА(КоличествоПриход),
	                |	СУММА(КоличествоРасход),
	                |	СУММА(ВесНачальныйОстаток),
	                |	СУММА(ВесКонечныйОстаток),
	                |	СУММА(ВесПриход),
	                |	СУММА(ВесРасход),
	                |	СУММА(ОбъемНачальныйОстаток),
	                |	СУММА(ОбъемКонечныйОстаток),
	                |	СУММА(ОбъемПриход),
	                |	СУММА(ОбъемРасход),
	                |	СУММА(СуммаНачальныйОстаток),
	                |	СУММА(СуммаКонечныйОстаток),
	                |	СУММА(СуммаПриход),
	                |	СУММА(СуммаРасход)
	                |ПО
	                |	ОБЩИЕ
	                |{ИТОГИ ПО
	                |	Филиал.*,
	                |	Фирма.*,
	                |	Склад.*,
	                |	Номенклатура.*,
	                |	ВариантИсполнения.*,
	                |	КПриемкеОТК,
	                |	Период,
	                |	Регистратор.*,
	                |	ТаблОстаткиИОбороты.ПериодДень,
	                |	ТаблОстаткиИОбороты.ПериодНеделя,
	                |	ТаблОстаткиИОбороты.ПериодДекада,
	                |	ТаблОстаткиИОбороты.ПериодМесяц,
	                |	ТаблОстаткиИОбороты.ПериодКвартал,
	                |	ТаблОстаткиИОбороты.ПериодПолугодие,
	                |	ТаблОстаткиИОбороты.ПериодГод,
	                |	ВТ_СтоимостьТМЦ.Цена,
	                |	ВТ_СтоимостьТМЦ.ТипЦен}"
	;
Показать
+
4. YannikAlx 43 11.10.18 10:56 Сейчас в теме
Проблема тут -"ЦеныНоменклатурыСрезПоследних.ТипЦен" оно может быть NULL и тогда бардак.
Вы его зачем выводите, если изначально задаете?

ВЫБРАТЬ
                    |    СтоимостьТМЦОстаткиИОбороты.Фирма КАК Фирма,
                    |    СтоимостьТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
                    |    СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
                    |    ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,

| ЦеныНоменклатурыСрезПоследних.ТипЦен КАК ТипЦен,
 |    ЦеныНоменклатурыСрезПоследних.ВариантИсполнения КАК ВариантИсполнения1
                    |ПОМЕСТИТЬ ВТ_СтоимостьТМЦ
                    |ИЗ
                    |    РегистрНакопления.СтоимостьТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(Фирма).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК СтоимостьТМЦОстаткиИОбороты
                    |        Левое СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен И ВариантИсполнения=&ВариантИсполнения) КАК ЦеныНоменклатурыСрезПоследних
                    |        ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
                    |            И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения
+
6. user1008893 11.10.18 10:58 Сейчас в теме
(4)По типу цен все правильно у меня,у меня проблема с вариантом исполнения
+
5. YannikAlx 43 11.10.18 10:58 Сейчас в теме
Либо примените ЕстьNULL как у предыдущейстрочки , либо удалите вообще...
Вариант исполнения кстати тоже самое
+
7. YannikAlx 43 11.10.18 11:00 Сейчас в теме
Поскольку ЦеныНоменклатурыСрезПоследних у вас находится справа в ЛЕВОМ соединении то всегда возможно отсутствие данных и дальнейшие неопределенности
+
8. user1008893 11.10.18 11:05 Сейчас в теме
(7)
 мТекстЗапроса = "ВЫБРАТЬ
	                |	СтоимостьТМЦОстаткиИОбороты.Фирма КАК Фирма,
	                |	СтоимостьТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
	                |	СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
	                |	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
	                |	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.ТипЦен,0) КАК ТипЦен,
	                |	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.ВариантИсполнения,0) КАК ВариантИсполнения1
	                |ПОМЕСТИТЬ ВТ_СтоимостьТМЦ
	                |ИЗ
	                |	РегистрНакопления.СтоимостьТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(Фирма).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК СтоимостьТМЦОстаткиИОбороты
	                |		Левое СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
	                |		ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
					|			И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения
Показать

|
Вот так считает сумму,но не у всех. Только у тех у кого заполнен вариант исполнения.
Прикрепленные файлы:
+
9. YannikAlx 43 11.10.18 11:08 Сейчас в теме
(8) Ну так у вас запрос - работать ТОЛЬКО с заполненным вариантом исполнения...
Чего ж вы хотите?
Нет варианта - нет данных
+
11. user1008893 11.10.18 11:10 Сейчас в теме
(9)а как сделать, чтобы он брал просто цену даже если вариант исполнения не заполнен
+
10. YannikAlx 43 11.10.18 11:09 Сейчас в теме
Кстати а почему вы берете вариантисполнения 2 раза оно вам 2 разща зачем?
+
12. user1008893 11.10.18 11:12 Сейчас в теме
(10)Вот так
мТекстЗапроса = "ВЫБРАТЬ
	                |	СтоимостьТМЦОстаткиИОбороты.Фирма КАК Фирма,
	                |	СтоимостьТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
	                |	СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
	                |	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
					|	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.ТипЦен,0) КАК ТипЦен
					|ПОМЕСТИТЬ ВТ_СтоимостьТМЦ
	                |ИЗ
	                |	РегистрНакопления.СтоимостьТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(Фирма).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК СтоимостьТМЦОстаткиИОбороты
	                |		Левое СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
	                |		ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
					|			И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения
Показать
+
13. YannikAlx 43 11.10.18 11:16 Сейчас в теме
Еще одну некорректность вижу...

Левое СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен И ВариантИсполнения=&ВариантИсполнения) КАК ЦеныНоменклатурыСрезПоследних
| ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
| И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения


Удалите одно условие - оно задвоилось - масло масляное
+
14. user1008893 11.10.18 11:17 Сейчас в теме
(13)Сейчас уже все убрала,сумма все равно не считается
+
15. YannikAlx 43 11.10.18 11:23 Сейчас в теме
Очень рекомендую использовать Консоль запросов - вы сможете видеть промежуточные данные временных таблиц. Легче будет анализировать ошибки.
Для неуправляемых форм - Инструменты разработчика https://infostart.ru/public/15126/
Это обязательный инструмент для программиста...
+
17. user1008893 11.10.18 11:29 Сейчас в теме
(15)У меня неправильный отбор по варианту исполнения. А если не выбирать по варианту исполнения,тогда количество задваивается
+
18. YannikAlx 43 11.10.18 11:33 Сейчас в теме
Вы сумму не посчитаете этим запросом у тех , где не заполнен ВариантИсполнения, потому что у вас везде стоят связки типа
ГДЕ ааааааа.Номенклатура=бббббб.Номеклатура
И ааааааа.ВариантИсполнения = бббббб.ВариантИсполнения

Ну сами подумайте - есть куча номеклатуры , где нету ВариантИсполнения- тогда записи БЕЗ Варианта отбрасываются, потому что NULL не сравнивается через знак равенства
+
19. user1008893 11.10.18 11:35 Сейчас в теме
(18)А как тогда исправить?
+
20. YannikAlx 43 11.10.18 11:35 Сейчас в теме
Отработайте по шагам - сначала в консоли создайте правильный запрос для ВТ_СтоимостьТМЦ
Когда в нем будут правильные данные - двигайтесь дальше.
+
21. YannikAlx 43 11.10.18 11:45 Сейчас в теме
Я так понимаю что основная проблема в том что у вас не на весь товар установлены Цены -точнее не на все варианты.
При этом может считать суммы остатков стоимости без цен?
Зачем цены в анализе стоимостной , если они все равно не установлены полностью
+
22. user1008893 11.10.18 11:52 Сейчас в теме
(21)ну он же по номенклатуре цену выдает.Надо чтобы он при расчете цены,где нет варианта исполнения брал просто цену
+
26. YannikAlx 43 11.10.18 12:10 Сейчас в теме
(22) Тогда создайте вариант "БЕЗ ВАРИАНТА" и заполните все записи без варианта - этим значением.
Поверьте - у вас все сосчитается

Сейчас у вас в этих данных NULL - Это вакуум - он ни с чем не сравнивается , а вы его пытаетесь сравнивать
+
24. user1008893 11.10.18 11:58 Сейчас в теме
(21)Вот для таких не считается
Прикрепленные файлы:
+
23. user1008893 11.10.18 11:57 Сейчас в теме
Вот для этого сумма считается. А если вариант исполнения пустой,то не считается
Прикрепленные файлы:
+
25. YannikAlx 43 11.10.18 12:08 Сейчас в теме
Пока вы не начнете нормально работать - дело не сдвинется...
Вы запустили консоль с первой частью запроса?
+
27. user1008893 11.10.18 12:22 Сейчас в теме
(25)да
Прикрепленные файлы:
+
28. YannikAlx 43 11.10.18 12:27 Сейчас в теме
(27) у вас нет пустых цен в этом результате?
+
29. YannikAlx 43 11.10.18 12:31 Сейчас в теме
Внутренним соединением вы отбросили часть данных !
Те остатки и обороты ТМЦ , на которые не установлены цены...

Вы уверены , что вам именно это нужно?
+
30. YannikAlx 43 11.10.18 12:31 Сейчас в теме
Ведь изначально вы делали ПРАВИЛЬНО - Левое соединение....
+
31. YannikAlx 43 11.10.18 12:33 Сейчас в теме
Хорошо бы еще понять что вам необходимо получить - анализ цен ТМЦ или анализ стоимости...?
+
32. user1008893 11.10.18 12:35 Сейчас в теме
(31)если делать левое соединение,то есть пустые цены.
Анализ остатков тмц с ценами из регистра сведений
+
33. YannikAlx 43 11.10.18 12:42 Сейчас в теме
Вот об этих пустых ценах я вам и говорил...

Но ведь вам же нужны ВСЕ остаткиИобороты?
Это значит Левое соединение
+
34. user1008893 11.10.18 12:48 Сейчас в теме
(33)а можно как то сделать так,чтобы он брал цену по номенклатуре без учета варианта исполнения?Но при этом количество не задваивал?
+
35. YannikAlx 43 11.10.18 12:56 Сейчас в теме
Используйте Левое Соединение,
добавьте во второй части запроса

ВЫБРАТЬ
                    |    ТаблОстаткиИОбороты.Филиал,
                    |    ТаблОстаткиИОбороты.Фирма,
                    |    ТаблОстаткиИОбороты.Склад,
                    |    ТаблОстаткиИОбороты.Номенклатура,
                    |    ТаблОстаткиИОбороты.ВариантИсполнения,
                    |    ТаблОстаткиИОбороты.КПриемкеОТК,
                    |    СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоНачальныйОстаток,
                    |    СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоКонечныйОстаток,
                    |    СУММА(ТаблОстаткиИОбороты.КолПриход / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоПриход,
                    |    СУММА(ТаблОстаткиИОбороты.КолРасход / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоРасход,
                    |    СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ВесНачальныйОстаток,
                    |    СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ВесКонечныйОстаток,
                    |    СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолПриход) КАК ВесПриход,
                    |    СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолРасход) КАК ВесРасход,
                    |    СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ОбъемНачальныйОстаток,
                    |    СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ОбъемКонечныйОстаток,
                    |    СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолПриход) КАК ОбъемПриход,
                    |    СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолРасход) КАК ОбъемРасход,
                    |    ТаблОстаткиИОбороты.Вес,
                    |    ТаблОстаткиИОбороты.Объем,
                    |    ТаблОстаткиИОбороты.Коэффициент,
                    |    ТаблОстаткиИОбороты.Период,
                    |    ТаблОстаткиИОбороты.Регистратор,
                    |    СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток * ВТ_СтоимостьТМЦ.Цена) КАК СуммаНачальныйОстаток,
                    |    СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток * ВТ_СтоимостьТМЦ.Цена) КАК СуммаКонечныйОстаток,
                    |    СУММА(ТаблОстаткиИОбороты.КолПриход * ВТ_СтоимостьТМЦ.Цена) КАК СуммаПриход,
                    |    СУММА(ТаблОстаткиИОбороты.КолРасход * ВТ_СтоимостьТМЦ.Цена) КАК СуммаРасход,
Показать

| ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0) Как Цена,
| ЕСТЬNULL(ВТ_СтоимостьТМЦ.ТипЦен,"Нет цены") Как ТипЦен


И в группировку тоже

  |СГРУППИРОВАТЬ ПО
                    |    ТаблОстаткиИОбороты.Филиал,
                    |    ТаблОстаткиИОбороты.Фирма,
                    |    ТаблОстаткиИОбороты.Склад,
                    |    ТаблОстаткиИОбороты.Период,
                    |    ТаблОстаткиИОбороты.Регистратор,
                    |    ТаблОстаткиИОбороты.Номенклатура,
                    |    ТаблОстаткиИОбороты.ВариантИсполнения,
                    |    ТаблОстаткиИОбороты.КПриемкеОТК,
                    |    ТаблОстаткиИОбороты.Вес,
                    |    ТаблОстаткиИОбороты.Объем,
                    |    ТаблОстаткиИОбороты.Коэффициент,
Показать

| ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0),
| ЕСТЬNULL(ВТ_СтоимостьТМЦ.ТипЦен,"Нет цены")
+
36. YannikAlx 43 11.10.18 12:59 Сейчас в теме
Проглядел...

СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаНачальныйОстаток,
| СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток *ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаКонечныйОстаток,
СУММА(ТаблОстаткиИОбороты.КолПриход * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаПриход,
| СУММА(ТаблОстаткиИОбороты.КолРасход * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаРасход,
| ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0) Как Цена,
| ЕСТЬNULL(ВТ_СтоимостьТМЦ.ТипЦен,"Нет цены")
Как ТипЦен

Короче везде где используете цену - проверяйте ее на NULL
+
37. user1008893 11.10.18 13:08 Сейчас в теме
(36)Может так надо сделать на вариант исполнения?
+
39. YannikAlx 43 11.10.18 14:11 Сейчас в теме
(37) Вы же сами только что сказали что "если делать левое соединение,то есть пустые цены"
А умножать на пустоту нельзя
+
38. user1008893 11.10.18 13:16 Сейчас в теме
(36)с типами цен у меня все хорошо
+
40. YannikAlx 43 11.10.18 14:12 Сейчас в теме
А вы выведите ТипЦен в своей консольке с первой частью запроса и увидите что не хорошо у вас типами...
При левом то соединении
Смысл в том что при отсутствии установленной цены на какой-то вариант Номенклатуры - нет записи в регистре вообще и все что вы берете из этого регистрв в этой ситуации равно NULL
+
41. user1008893 11.10.18 14:24 Сейчас в теме
(40)тип цен везде заполнен
+
42. YannikAlx 43 11.10.18 14:24 Сейчас в теме
(41) А кто мне сказал , что с типами - все в порядке?
Чудеса да и только...
Ну да это и не страшно - ибо типы в расчетах не участвуют.
если их нету вообще то их можно и вообще убрать
+
43. user1008893 11.10.18 14:25 Сейчас в теме
44. YannikAlx 43 11.10.18 14:28 Сейчас в теме
(43) извините - прочитал наоборот! "Не заполнен" ((
отвлекся и дофантазировал...
+
45. user1008893 11.10.18 14:31 Сейчас в теме
(44)
ВЫБРАТЬ
	                |	СтоимостьТМЦОстаткиИОбороты.Фирма КАК Фирма,
	                |	СтоимостьТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
	                |	СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
	                |	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
	                |	ЦеныНоменклатурыСрезПоследних.ТипЦен КАК ТипЦен
					|ПОМЕСТИТЬ ВТ_СтоимостьТМЦ
	                |ИЗ
	                |	РегистрНакопления.СтоимостьТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(Фирма).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК СтоимостьТМЦОстаткиИОбороты
	                |		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
	                |		ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
					|			И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения
Показать

Вот так количество пишет правильно,но сумму не для всех считает
+
46. user1008893 11.10.18 14:32 Сейчас в теме
(44)понятно,что цену не берет,потому что варианты не совпадают. Может можно какое то условие написать?
+
47. YannikAlx 43 11.10.18 14:49 Сейчас в теме
Вы добавили ЕСТЬNULL везде где я написал?
И присылайте пожалуйста весь код а не кусочек - ведь понять из
 |    СтоимостьТМЦОстаткиИОбороты.Фирма КАК Фирма,
                    |    СтоимостьТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
                    |    СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
                    |    ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
                    |    ЦеныНоменклатурыСрезПоследних.ТипЦен КАК ТипЦен
                    |ПОМЕСТИТЬ ВТ_СтоимостьТМЦ
                    |ИЗ
                    |    РегистрНакопления.СтоимостьТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(Фирма).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК СтоимостьТМЦОстаткиИОбороты
                    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
                    |        ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
                    |            И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения
Показать


про какую сумму идет речь невозможно
+
48. user1008893 11.10.18 14:57 Сейчас в теме
(47)
ВЫБРАТЬ
	                |	СтоимостьТМЦОстаткиИОбороты.Фирма КАК Фирма,
	                |	СтоимостьТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
	                |	СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
	                |	ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
	                |	ЦеныНоменклатурыСрезПоследних.ТипЦен КАК ТипЦен
					|ПОМЕСТИТЬ ВТ_СтоимостьТМЦ
	                |ИЗ
	                |	РегистрНакопления.СтоимостьТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , {(Фирма).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК СтоимостьТМЦОстаткиИОбороты
	                |		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
	                |		ПО СтоимостьТМЦОстаткиИОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
					|			И СтоимостьТМЦОстаткиИОбороты.ВариантИсполнения = ЦеныНоменклатурыСрезПоследних.ВариантИсполнения
					|ИНДЕКСИРОВАТЬ ПО
	                |	Фирма,
	                |	Номенклатура,
	                |	ВариантИсполнения
	                |;
	                |
	                |////////////////////////////////////////////////////////////­////////////////////
	                |ВЫБРАТЬ
	                |	ТаблОстаткиИОбороты.Филиал,
	                |	ТаблОстаткиИОбороты.Фирма,
	                |	ТаблОстаткиИОбороты.Склад,
	                |	ТаблОстаткиИОбороты.Номенклатура,
	                |	ТаблОстаткиИОбороты.ВариантИсполнения,
	                |	ТаблОстаткиИОбороты.КПриемкеОТК,
	                |	СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоНачальныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоКонечныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.КолПриход / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоПриход,
	                |	СУММА(ТаблОстаткиИОбороты.КолРасход / ТаблОстаткиИОбороты.Коэффициент) КАК КоличествоРасход,
	                |	СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ВесНачальныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ВесКонечныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолПриход) КАК ВесПриход,
	                |	СУММА(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолРасход) КАК ВесРасход,
	                |	СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ОбъемНачальныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ОбъемКонечныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолПриход) КАК ОбъемПриход,
	                |	СУММА(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолРасход) КАК ОбъемРасход,
	                |	ТаблОстаткиИОбороты.Вес,
	                |	ТаблОстаткиИОбороты.Объем,
	                |	ТаблОстаткиИОбороты.Коэффициент,
	                |	ТаблОстаткиИОбороты.Период,
	                |	ТаблОстаткиИОбороты.Регистратор,
	                |	СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаНачальныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток *ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаКонечныйОстаток,
	                |	СУММА(ТаблОстаткиИОбороты.КолПриход * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаПриход,
	                |	СУММА(ТаблОстаткиИОбороты.КолРасход * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаРасход,
	                |	ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0),
	                |	ВТ_СтоимостьТМЦ.ТипЦен
	                |{ВЫБРАТЬ
	                |	Филиал.*,
	                |	Фирма.*,
	                |	Склад.*,
	                |	Номенклатура.*,
	                |	ВариантИсполнения.*,
	                |	КПриемкеОТК,
	                |	ВесНачальныйОстаток,
	                |	ВесКонечныйОстаток,
	                |	ВесПриход,
	                |	ВесРасход,
	                |	ОбъемНачальныйОстаток,
	                |	ОбъемКонечныйОстаток,
	                |	ОбъемПриход,
	                |	ОбъемРасход,
	                |	Вес,
	                |	Объем,
	                |	Коэффициент,
	                |	Период,
	                |	Регистратор.*,
	                |	КоличествоНачальныйОстаток,
	                |	КоличествоКонечныйОстаток,
	                |	КоличествоПриход,
	                |	КоличествоРасход,
	                |	СуммаНачальныйОстаток,
	                |	СуммаКонечныйОстаток,
	                |	СуммаПриход,
	                |	СуммаРасход,
	                |	ТаблОстаткиИОбороты.Номенклатура.БазоваяЕдИзм.* КАК ЕдИзм,
	                |	ТаблОстаткиИОбороты.ПериодДень,
	                |	ТаблОстаткиИОбороты.ПериодНеделя,
	                |	ТаблОстаткиИОбороты.ПериодДекада,
	                |	ТаблОстаткиИОбороты.ПериодМесяц,
	                |	ТаблОстаткиИОбороты.ПериодКвартал,
	                |	ТаблОстаткиИОбороты.ПериодПолугодие,
	                |	ТаблОстаткиИОбороты.ПериодГод,
	                |	ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0),
	                |	ВТ_СтоимостьТМЦ.ТипЦен}
	                |ИЗ
	                |	(ВЫБРАТЬ
	                |		ОстаткиТМЦОстаткиИОбороты.Филиал КАК Филиал,
	                |		ОстаткиТМЦОстаткиИОбороты.Фирма КАК Фирма,
	                |		ОстаткиТМЦОстаткиИОбороты.Склад КАК Склад,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура КАК Номенклатура,
	                |		ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения КАК ВариантИсполнения,
	                |		ОстаткиТМЦОстаткиИОбороты.КПриемкеОТК КАК КПриемкеОТК,
	                |		ОстаткиТМЦОстаткиИОбороты.КолНачальныйОстаток КАК КолНачальныйОстаток,
	                |		ОстаткиТМЦОстаткиИОбороты.КолКонечныйОстаток КАК КолКонечныйОстаток,
	                |		ОстаткиТМЦОстаткиИОбороты.КолПриход КАК КолПриход,
	                |		ОстаткиТМЦОстаткиИОбороты.КолРасход КАК КолРасход,
	                |		ВЫБОР
	                |			КОГДА ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Вес = 0
	                |				ТОГДА ОстаткиТМЦОстаткиИОбороты.Номенклатура.Вес
	                |			ИНАЧЕ ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Вес
	                |		КОНЕЦ КАК Вес,
	                |		ВЫБОР
	                |			КОГДА ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Объем = 0
	                |				ТОГДА ОстаткиТМЦОстаткиИОбороты.Номенклатура.Объем
	                |			ИНАЧЕ ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Объем
	                |		КОНЕЦ КАК Объем,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура.БазоваяЕдИзм.Коэффициент КАК Коэффициент,
	                |		ОстаткиТМЦОстаткиИОбороты.Период КАК Период,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, ДЕНЬ) КАК ПериодДень,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, НЕДЕЛЯ) КАК ПериодНеделя,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, ДЕКАДА) КАК ПериодДекада,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, МЕСЯЦ) КАК ПериодМесяц,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, КВАРТАЛ) КАК ПериодКвартал,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, ПОЛУГОДИЕ) КАК ПериодПолугодие,
	                |		НАЧАЛОПЕРИОДА(ОстаткиТМЦОстаткиИОбороты.Период, ГОД) КАК ПериодГод,
	                |		ОстаткиТМЦОстаткиИОбороты.Регистратор КАК Регистратор
	                |	ИЗ
	                |		РегистрНакопления.ОстаткиТМЦ.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Регистратор {(&Периодичность)}, , {(Филиал).*, (Фирма).*, (Склад).*, (Номенклатура).*, (ВариантИсполнения).*}) КАК ОстаткиТМЦОстаткиИОбороты
	                |	{ГДЕ
	                |		ОстаткиТМЦОстаткиИОбороты.Филиал.*,
	                |		ОстаткиТМЦОстаткиИОбороты.Фирма.*,
	                |		ОстаткиТМЦОстаткиИОбороты.Склад.*,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура.*,
	                |		ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.*,
	                |		ОстаткиТМЦОстаткиИОбороты.КПриемкеОТК,
	                |		(ВЫБОР
	                |				КОГДА ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Вес = 0
	                |					ТОГДА ОстаткиТМЦОстаткиИОбороты.Номенклатура.Вес
	                |				ИНАЧЕ ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Вес
	                |			КОНЕЦ) КАК Вес,
	                |		(ВЫБОР
	                |				КОГДА ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Объем = 0
	                |					ТОГДА ОстаткиТМЦОстаткиИОбороты.Номенклатура.Объем
	                |				ИНАЧЕ ОстаткиТМЦОстаткиИОбороты.ВариантИсполнения.Объем
	                |			КОНЕЦ) КАК Объем,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура.БазоваяЕдИзм.Коэффициент КАК Коэффициент,
	                |		ОстаткиТМЦОстаткиИОбороты.Регистратор.*,
	                |		ОстаткиТМЦОстаткиИОбороты.Номенклатура.БазоваяЕдИзм.* КАК ЕдИзм}) КАК ТаблОстаткиИОбороты
	                |		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_СтоимостьТМЦ КАК ВТ_СтоимостьТМЦ
	                |		ПО ТаблОстаткиИОбороты.ВариантИсполнения = ВТ_СтоимостьТМЦ.ВариантИсполнения
	                |			И ТаблОстаткиИОбороты.Номенклатура = ВТ_СтоимостьТМЦ.Номенклатура
	                |			И ТаблОстаткиИОбороты.Фирма = ВТ_СтоимостьТМЦ.Фирма
	                |{ГДЕ
	                |	(СУММА(ТаблОстаткиИОбороты.КолНачальныйОстаток / ТаблОстаткиИОбороты.Коэффициент)) КАК КоличествоНачальныйОстаток,
	                |	(СУММА(ТаблОстаткиИОбороты.КолКонечныйОстаток / ТаблОстаткиИОбороты.Коэффициент)) КАК КоличествоКонечныйОстаток,
	                |	(СУММА(ТаблОстаткиИОбороты.КолПриход / ТаблОстаткиИОбороты.Коэффициент)) КАК КоличествоПриход,
	                |	(СУММА(ТаблОстаткиИОбороты.КолРасход / ТаблОстаткиИОбороты.Коэффициент)) КАК КоличествоРасход,
	                |	(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ВесНачальныйОстаток,
	                |	(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ВесКонечныйОстаток,
	                |	(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолПриход) КАК ВесПриход,
	                |	(ТаблОстаткиИОбороты.Вес * ТаблОстаткиИОбороты.КолРасход) КАК ВесРасход,
	                |	(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолНачальныйОстаток) КАК ОбъемНачальныйОстаток,
	                |	(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолКонечныйОстаток) КАК ОбъемКонечныйОстаток,
	                |	(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолПриход) КАК ОбъемПриход,
	                |	(ТаблОстаткиИОбороты.Объем * ТаблОстаткиИОбороты.КолРасход) КАК ОбъемРасход,
	                |	(ТаблОстаткиИОбороты.КолРасход *ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаРасход,
	                |	(ТаблОстаткиИОбороты.КолПриход * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаПриход,
	                |	(ТаблОстаткиИОбороты.КолКонечныйОстаток * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаКонечныйОстаток,
	                |	(ТаблОстаткиИОбороты.КолНачальныйОстаток * ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0)) КАК СуммаНачальныйОстаток}
	                |
	                |СГРУППИРОВАТЬ ПО
	                |	ТаблОстаткиИОбороты.Филиал,
	                |	ТаблОстаткиИОбороты.Фирма,
	                |	ТаблОстаткиИОбороты.Склад,
	                |	ТаблОстаткиИОбороты.Период,
	                |	ТаблОстаткиИОбороты.Регистратор,
	                |	ТаблОстаткиИОбороты.Номенклатура,
	                |	ТаблОстаткиИОбороты.ВариантИсполнения,
	                |	ТаблОстаткиИОбороты.КПриемкеОТК,
	                |	ТаблОстаткиИОбороты.Вес,
	                |	ТаблОстаткиИОбороты.Объем,
	                |	ТаблОстаткиИОбороты.Коэффициент,
	                |	ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0),
	                |	ВТ_СтоимостьТМЦ.ТипЦен
	                |{УПОРЯДОЧИТЬ ПО
	                |	Филиал.*,
	                |	Фирма.*,
	                |	Склад.*,
	                |	Номенклатура.*,
	                |	ВариантИсполнения.*,
	                |	КПриемкеОТК,
	                |	Вес,
	                |	Объем,
	                |	Период,
	                |	Регистратор.*,
	                |	ТаблОстаткиИОбороты.ПериодДень,
	                |	ТаблОстаткиИОбороты.ПериодНеделя,
	                |	ТаблОстаткиИОбороты.ПериодДекада,
	                |	ТаблОстаткиИОбороты.ПериодМесяц,
	                |	ТаблОстаткиИОбороты.ПериодКвартал,
	                |	ТаблОстаткиИОбороты.ПериодПолугодие,
	                |	ТаблОстаткиИОбороты.ПериодГод,
	                |	ВТ_СтоимостьТМЦ.Цена,
	                |	ВТ_СтоимостьТМЦ.ТипЦен}
	                |ИТОГИ
	                |	СУММА(КоличествоНачальныйОстаток),
	                |	СУММА(КоличествоКонечныйОстаток),
	                |	СУММА(КоличествоПриход),
	                |	СУММА(КоличествоРасход),
	                |	СУММА(ВесНачальныйОстаток),
	                |	СУММА(ВесКонечныйОстаток),
	                |	СУММА(ВесПриход),
	                |	СУММА(ВесРасход),
	                |	СУММА(ОбъемНачальныйОстаток),
	                |	СУММА(ОбъемКонечныйОстаток),
	                |	СУММА(ОбъемПриход),
	                |	СУММА(ОбъемРасход),
	                |	СУММА(СуммаНачальныйОстаток),
	                |	СУММА(СуммаКонечныйОстаток),
	                |	СУММА(СуммаПриход),
	                |	СУММА(СуммаРасход)
	                |ПО
	                |	ОБЩИЕ
	                |{ИТОГИ ПО
	                |	Филиал.*,
	                |	Фирма.*,
	                |	Склад.*,
	                |	Номенклатура.*,
	                |	ВариантИсполнения.*,
	                |	КПриемкеОТК,
	                |	Период,
	                |	Регистратор.*,
	                |	ТаблОстаткиИОбороты.ПериодДень,
	                |	ТаблОстаткиИОбороты.ПериодНеделя,
	                |	ТаблОстаткиИОбороты.ПериодДекада,
	                |	ТаблОстаткиИОбороты.ПериодМесяц,
	                |	ТаблОстаткиИОбороты.ПериодКвартал,
	                |	ТаблОстаткиИОбороты.ПериодПолугодие,
	                |	ТаблОстаткиИОбороты.ПериодГод,
	                |	ВТ_СтоимостьТМЦ.Цена,
	                |	ВТ_СтоимостьТМЦ.ТипЦен}"
Показать

Сумма началный остаток и тд
+
49. YannikAlx 43 11.10.18 15:03 Сейчас в теме
везде, где используете ВТ_СтоимостьТМЦ должно стоять ЕстьNULL

ЕСТЬNULL(ВТ_СтоимостьТМЦ.Цена,0),
ВТ_СтоимостьТМЦ.ТипЦен

Уж проставьте сами
А лучше удалите вы эти Типы цен
потом можно будет добавить если Очень захотите
+
50. user1008893 11.10.18 15:06 Сейчас в теме
(49)ВТ_СтоимостьТМЦ.ТипЦен.у меня по нему параметр есть продажа
И тип цены всегда продажа
УниверсальныйОтчет.ПостроительОтчета.Параметры.Вставить("ТипЦен",Справочники.ТипыЦен.НайтиПоНаименованию("Продажа"));
+
52. YannikAlx 43 11.10.18 15:13 Сейчас в теме
(50) Вот я и спрашиваю - зачем вы его выводите?
+
53. user1008893 11.10.18 15:13 Сейчас в теме
(52)ОК,уберу я его,но все равно это не поможет
+
51. user1008893 11.10.18 15:07 Сейчас в теме
(49)говорю же проблема в варианте исполнения
+
54. YannikAlx 43 11.10.18 15:15 Сейчас в теме
Вы когда смотрели консолькой результат по ВТ_СтоимостьТМЦ - там же были поля Цены со значением NULL ?
+
55. YannikAlx 43 11.10.18 15:18 Сейчас в теме
сократите свой запрос до минимум миниморум в консоли, чтобы легче было разбираться...
оставьте только то что не можете получить - суммы стоимости.
Когда получите все в нужном виде - расширите свои получаемые данные - это основной принцип программирования (сначала сделать минимальный рабочий скелет)
Иначе разбираться очень трудно где прошляпил
+
56. user1008893 11.10.18 15:37 Сейчас в теме
Короче,Я так понимаю,что цену не берет потому что,Вариант исполнения и ТипЦены =NULL
Прикрепленные файлы:
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот