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