Загрузка данных


////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
	ДвижениеСерий.Регистратор КАК Регистратор,
	ДвижениеСерий.Номенклатура КАК НоменклатураОтчет,
	ДвижениеСерий.Характеристика КАК ХарактеристикаОтчет,
	ДвижениеСерий.Серия КАК Серия,
	ВЫБОР
		КОГДА ВТ_КоличествоСтрокСырья.КоличествоСтрокСырья <> 0
			ТОГДА ДвижениеСерий.Количество / ВТ_КоличествоСтрокСырья.КоличествоСтрокСырья
		ИНАЧЕ 0
	КОНЕЦ КАК Количество,
	ДвижениеСерий.НоменклатураСырья КАК НоменклатураСырья,
	ДвижениеСерий.ХарактеристикаСырья КАК ХарактеристикаСырья,
	ДвижениеСерий.СерияСырья КАК СерияСырья,
	ДвижениеСерий.КоличествоСырья КАК КоличествоСырья,
	ДвижениеСерий.ВариантПроизводства КАК ВариантПроизводства,
	ДвижениеСерий.Организация КАК Организация,
	ДвижениеСерий.Склад КАК Склад,
	ВЫБОР
		КОГДА &ВключатьДопРасходы
			ТОГДА (ЕСТЬNULL(ВТ_СЕБЕСТ.СебестФакт, 0) + ЕСТЬNULL(ВТ_СЕБЕСТ.ДопРасходыРегл, 0)) / ДвижениеСерий.КоличествоСерийГП
		ИНАЧЕ ЕСТЬNULL(ВТ_СЕБЕСТ.СебестФакт, 0) / ДвижениеСерий.КоличествоСерийГП
	КОНЕЦ КАК Себестоимость,
	ВЫБОР
		КОГДА &ВключатьДопРасходы
			ТОГДА (ЕСТЬNULL(ВТ_СЕБЕСТ.СебестФактБезНДС, 0) + ЕСТЬNULL(ВТ_СЕБЕСТ.ДопРасходыБезНДС, 0)) / ДвижениеСерий.КоличествоСерийГП
		ИНАЧЕ ЕСТЬNULL(ВТ_СЕБЕСТ.СебестФактБезНДС, 0) / ДвижениеСерий.КоличествоСерийГП
	КОНЕЦ КАК СебестоимостьБезНДС,
	
    // === ДОБАВЛЕНО: Расчет для сырья ===
	ВЫБОР
		КОГДА ЕСТЬNULL(ДвижениеСерий.КоличествоСырья, 0) = 0 И ЕСТЬNULL(ДвижениеСерий.Количество, 0) <> 0
			ТОГДА 
				(ВЫБОР
					КОГДА &ВключатьДопРасходы
						ТОГДА (ЕСТЬNULL(ВТ_СЕБЕСТ.СебестФакт, 0) + ЕСТЬNULL(ВТ_СЕБЕСТ.ДопРасходыРегл, 0)) / ДвижениеСерий.КоличествоСерийГП
					ИНАЧЕ ЕСТЬNULL(ВТ_СЕБЕСТ.СебестФакт, 0) / ДвижениеСерий.КоличествоСерийГП
				КОНЕЦ) / ДвижениеСерий.Количество
		ИНАЧЕ NULL
	КОНЕЦ КАК ЦенаСНДСЗаШтуку

ИЗ
	ДвижениеСерий КАК ДвижениеСерий
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_КоличествоСтрокСырья КАК ВТ_КоличествоСтрокСырья
		ПО ДвижениеСерий.Регистратор = ВТ_КоличествоСтрокСырья.Регистратор
			И ДвижениеСерий.Номенклатура = ВТ_КоличествоСтрокСырья.Номенклатура
			И ДвижениеСерий.Характеристика = ВТ_КоличествоСтрокСырья.Характеристика
			И ДвижениеСерий.КодСтроки = ВТ_КоличествоСтрокСырья.КодСтроки
		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ФАКТ КАК ВТ_СЕБЕСТ
		ПО (ВТ_СЕБЕСТ.ОтчетПроизводства = ДвижениеСерий.Регистратор)
			И (ВЫБОР
				КОГДА ВТ_СЕБЕСТ.Продукт
					ТОГДА ЛОЖЬ
				ИНАЧЕ ДвижениеСерий.Номенклатура = ВТ_СЕБЕСТ.КорНоменклатура
						И ДвижениеСерий.Характеристика = ВТ_СЕБЕСТ.КорХарактеристика
						И ДвижениеСерий.НоменклатураСырья = ВТ_СЕБЕСТ.Номенклатура
						И ДвижениеСерий.ХарактеристикаСырья = ВТ_СЕБЕСТ.Характеристика
			КОНЕЦ)

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	Вт_ОтчетПроизводства.Регистратор,
	Вт_ОтчетПроизводства.Номенклатура,
	Вт_ОтчетПроизводства.Характеристика,
	Вт_ОтчетПроизводства.Серия,
	0,
	ВТ_ДОПРАСХОДЫ.СтатьяРасходовСписания,
	НЕОПРЕДЕЛЕНО,
	НЕОПРЕДЕЛЕНО,
	0,
	Вт_ОтчетПроизводства.ВариантПроизводства,
	Вт_ОтчетПроизводства.Организация,
	Вт_ОтчетПроизводства.Склад,
	ЕСТЬNULL(ВТ_ДОПРАСХОДЫ.ДопРасходыРегл, 0),
	ЕСТЬNULL(ВТ_ДОПРАСХОДЫ.ДопРасходыБезНДС, 0),
	
    // === ДОБАВЛЕНО: Расчет для прочих расходов (зарплата и т.д.) ===
	ВЫБОР
		КОГДА ЕСТЬNULL(ОбщееКоличествоГП.Количество, 0) <> 0
			ТОГДА ЕСТЬNULL(ВТ_ДОПРАСХОДЫ.ДопРасходыРегл, 0) / ОбщееКоличествоГП.Количество
		ИНАЧЕ NULL
	КОНЕЦ КАК ЦенаСНДСЗаШтуку

ИЗ
	ВТ_ОТЧ_ПРВА_КОЛОНКИ КАК Вт_ОтчетПроизводства
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_ДОПРАСХОДЫ КАК ВТ_ДОПРАСХОДЫ
		ПО Вт_ОтчетПроизводства.Регистратор = ВТ_ДОПРАСХОДЫ.ОтчетПроизводства
			И (Вт_ОтчетПроизводства.Номенклатура = ВТ_ДОПРАСХОДЫ.Номенклатура
					И Вт_ОтчетПроизводства.Характеристика = ВТ_ДОПРАСХОДЫ.Характеристика
				ИЛИ ЕСТЬNULL(ВТ_ДОПРАСХОДЫ.Номенклатура, -1) = -1)
		// Подтягиваем общее количество ГП
		ЛЕВОЕ СОЕДИНЕНИЕ (
			ВЫБРАТЬ
				ТоварыПоСсылкам.ОтчетПроизводства КАК ОтчетПроизводства,
				ТоварыПоСсылкам.Номенклатура КАК Номенклатура,
				ТоварыПоСсылкам.Характеристика КАК Характеристика,
				СУММА(ТоварыПоСсылкам.Количество) КАК Количество
			ИЗ
				ТоварыПоСсылкам КАК ТоварыПоСсылкам
			СГРУППИРОВАТЬ ПО
				ТоварыПоСсылкам.ОтчетПроизводства,
				ТоварыПоСсылкам.Номенклатура,
				ТоварыПоСсылкам.Характеристика
		) КАК ОбщееКоличествоГП
		ПО Вт_ОтчетПроизводства.Регистратор = ОбщееКоличествоГП.ОтчетПроизводства
			И Вт_ОтчетПроизводства.Номенклатура = ОбщееКоличествоГП.Номенклатура
			И Вт_ОтчетПроизводства.Характеристика = ОбщееКоличествоГП.Характеристика