Имя: Пароль:
1C
1С v8
Прошу совета в изменении отчета "Анализ Заказов Покупателей"
0 Norbertano
 
30.05.12
11:59
Здравствуйте! Необходимо в отчет "Анализ Заказов Покупателей" конфигурации "Управление торговлей для Украины" добавить отбор по типу цен (на данный момент нужна только закупочная цена.)
В конструктор запросов добавил из РегистраСведений ЦеныНоменклатурыСрезПоследних, отредактировал связи, вручную добавил в | ВЫБРАТЬ
|   ТипЦен.*
выставил отбор
УниверсальныйОтчет.ДобавитьОтбор("ТипЦен");
но ничего не изменилось, отбор "ТипЦен" в настройке отчета не появился.

Процедура УстановитьНачальныеНастройки(ДополнительныеПараметры = Неопределено) Экспорт
   
   // Настройка общих параметров универсального отчета
   УправлениеОтчетами.ВосстановитьРеквизитыОтчета(ЭтотОбъект, ДополнительныеПараметры);
   
   УниверсальныйОтчет.мНазваниеОтчета = СокрЛП(ЭтотОбъект.Метаданные().Синоним);
   УниверсальныйОтчет.мВыбиратьИмяРегистра = Ложь;
   УниверсальныйОтчет.ВыводитьДетальныеЗаписи = Ложь;
   УниверсальныйОтчет.мВыбиратьИспользованиеСвойств = Истина;
   
   ТекстЗапроса =
   "ВЫБРАТЬ РАЗРЕШЕННЫЕ
   |    ЗаказыПокупателейОстаткиИОбороты.ДоговорКонтрагента.Владелец КАК ДоговорКонтрагентаВладелец,
   |    ПРЕДСТАВЛЕНИЕ(ЗаказыПокупателейОстаткиИОбороты.ДоговорКонтрагента.Владелец),
   |    ЗаказыПокупателейОстаткиИОбороты.ДоговорКонтрагента КАК ДоговорКонтрагента,
   |    ПРЕДСТАВЛЕНИЕ(ЗаказыПокупателейОстаткиИОбороты.ДоговорКонтрагента),
   |    ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя КАК ЗаказПокупателя,
   |    ПРЕДСТАВЛЕНИЕ(ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя) КАК ЗаказПокупателяПредставление,
   |    ЗаказыПокупателейОстаткиИОбороты.Номенклатура КАК Номенклатура,
   |    ПРЕДСТАВЛЕНИЕ(ЗаказыПокупателейОстаткиИОбороты.Номенклатура),
   |    ЗаказыПокупателейОстаткиИОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
   |    ПРЕДСТАВЛЕНИЕ(ЗаказыПокупателейОстаткиИОбороты.ХарактеристикаНоменклатуры),
   |    ЗаказыПокупателейОстаткиИОбороты.СтатусПартии КАК СтатусПартии,
   |    ПРЕДСТАВЛЕНИЕ(ЗаказыПокупателейОстаткиИОбороты.СтатусПартии),
   |    ЗаказыПокупателейОстаткиИОбороты.Цена КАК Цена,
   |    ПРЕДСТАВЛЕНИЕ(ЗаказыПокупателейОстаткиИОбороты.Цена),
   |    ЗаказыПокупателейОстаткиИОбороты.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
   |    ПРЕДСТАВЛЕНИЕ(ЗаказыПокупателейОстаткиИОбороты.ЕдиницаИзмерения),
   |    ВЫБОР
   |        КОГДА СводЗаказыПокупателейОстаткиИОбороты.КоличествоПриход = СводЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток
   |            ТОГДА ""Не отгружено""
   |        КОГДА ЕСТЬNULL(СводЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток, 0) <= 0
   |            ТОГДА ""Отгружено полностью""
   |        ИНАЧЕ ""Отгружено частично""
   |    КОНЕЦ КАК СостояниеОтгрузки,
   |    ВЫБОР
   |        КОГДА РасчетыСКонтрагентами.СуммаВзаиморасчетовРасход = 0
   |                ИЛИ РасчетыСКонтрагентами.СуммаВзаиморасчетовРасход ЕСТЬ NULL
   |            ТОГДА ""Не оплачено""
   |        КОГДА РасчетыСКонтрагентами.СуммаВзаиморасчетовРасход >= РасчетыСКонтрагентами.СуммаВзаиморасчетовПриход
   |            ТОГДА ""Оплачено полностью""
   |        ИНАЧЕ ""Оплачено частично""
   |    КОНЕЦ КАК СостояниеОплаты,
   |    РасчетыСКонтрагентами.СуммаУпрПриход КАК СуммаЗаказа,
   |    РасчетыСКонтрагентами.СуммаУпрКонечныйОстаток КАК ОсталосьОплатить,
   |    ВЫБОР
   |        КОГДА РасчетыСКонтрагентами.СуммаУпрПриход * (РасчетыСКонтрагентами.ДоговорКонтрагента.ПроцентПредоплаты / 100) - РасчетыСКонтрагентами.СуммаУпрРасход <= 0
   |            ТОГДА 0
   |        ИНАЧЕ РасчетыСКонтрагентами.СуммаУпрПриход * (РасчетыСКонтрагентами.ДоговорКонтрагента.ПроцентПредоплаты / 100) - РасчетыСКонтрагентами.СуммаУпрРасход
   |    КОНЕЦ КАК Предоплата,
   |    ЗаказыПокупателейОстаткиИОбороты.СуммаВзаиморасчетовКонечныйОстаток КАК ОсталосьОтгрузитьСуммаВзаиморасчетов,
   |    ЗаказыПокупателейОстаткиИОбороты.СуммаУпрКонечныйОстаток КАК ОсталосьОтгрузитьСуммаУпр,
   |    ЗаказыПокупателейОстаткиИОбороты.КоличествоПриход КАК Запланировано,
   |    ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток КАК ОсталосьОтгрузить,
   |    ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток, 0) + ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток, 0) - ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток, 0) КАК СоСклада,
   |    РазмещениеЗаказовПокупателей.КоличествоОстаток КАК Заказано,
   |    ЕСТЬNULL(ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток, 0) - ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток, 0) + ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток, 0) - ЕСТЬNULL(РазмещениеЗаказовПокупателей.КоличествоОстаток, 0) КАК ОсталосьОбеспечить,
   |    ЗаказыПокупателейОстаткиИОбороты.КоличествоПриход * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК ЗапланированоБазовыхЕд,
   |    ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК ОсталосьОтгрузитьБазовыхЕд,
   |    ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток * ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) + ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток * РезервыКПередаче.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) - ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток * РезервыКПолучению.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) КАК СоСкладаБазовыхЕд,
   |    РазмещениеЗаказовПокупателей.КоличествоОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК ЗаказаноБазовыхЕд,
   |    ЕСТЬNULL(ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток * ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) - ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток * РезервыКПередаче.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) + ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток * РезервыКПолучению.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) - ЕСТЬNULL(РазмещениеЗаказовПокупателей.КоличествоОстаток * РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) КАК ОсталосьОбеспечитьБазовыхЕд,
   |    ЗаказыПокупателейОстаткиИОбороты.КоличествоПриход * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК ЗапланированоЕдиницОтчетов,
   |    ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК ОсталосьОтгрузитьЕдиницОтчетов,
   |    ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток * ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) + ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток * РезервыКПередаче.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РезервыКПередаче.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) - ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток * РезервыКПолучению.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РезервыКПолучению.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) КАК СоСкладаЕдиницОтчетов,
   |    РазмещениеЗаказовПокупателей.КоличествоОстаток * РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК ЗаказаноЕдиницОтчетов,
   |    ЕСТЬNULL(ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток * ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) - ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток * РезервыКПередаче.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РезервыКПередаче.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) + ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток * РезервыКПолучению.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РезервыКПолучению.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) - ЕСТЬNULL(РазмещениеЗаказовПокупателей.КоличествоОстаток * РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) КАК ОсталосьОбеспечитьЕдиницОтчетов,
   |    ЦеныНоменклатурыСрезПоследних.ТипЦен
   |{ВЫБРАТЬ
   |    ДоговорКонтрагентаВладелец.*,
   |    ДоговорКонтрагента.*,
   |    ЗаказПокупателя.*,
   |    Номенклатура.*,
   |    ХарактеристикаНоменклатуры.*,
   |    СтатусПартии,
   |   ТипЦен.*
   |    Цена,
   |    ЕдиницаИзмерения.*,
   |    СостояниеОтгрузки,
   |    СостояниеОплаты,
   |    Предоплата,
   |    СуммаЗаказа,
   |    ОсталосьОплатить,
   |    ОсталосьОтгрузитьСуммаВзаиморасчетов,
   |    ОсталосьОтгрузитьСуммаУпр,
   |    Запланировано,
   |    ОсталосьОтгрузить,
   |    СоСклада,
   |    Заказано,
   |    ОсталосьОбеспечить,
   |    ЗапланированоБазовыхЕд,
   |    ОсталосьОтгрузитьБазовыхЕд,
   |    СоСкладаБазовыхЕд,
   |    ЗаказаноБазовыхЕд,
   |    ОсталосьОбеспечитьБазовыхЕд,
   |    ЗапланированоЕдиницОтчетов,
   |    ОсталосьОтгрузитьЕдиницОтчетов,
   |    СоСкладаЕдиницОтчетов,
   |    ЗаказаноЕдиницОтчетов,
   |    ОсталосьОбеспечитьЕдиницОтчетов}
   |ИЗ
   |    РегистрНакопления.ЗаказыПокупателей.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , ЗаказПокупателя ССЫЛКА Документ.ЗаказПокупателя {(ДоговорКонтрагента.Владелец).* КАК ДоговорКонтрагентаВладелец, (ДоговорКонтрагента).* КАК ДоговорКонтрагента, (ВЫРАЗИТЬ(ЗаказПокупателя КАК Документ.ЗаказПокупателя)).* КАК ЗаказПокупателя, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры}) КАК ЗаказыПокупателейОстаткиИОбороты
   |        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаКон, ДокументРезерва ССЫЛКА Документ.ЗаказПокупателя {(ВЫРАЗИТЬ(ДокументРезерва КАК Документ.ЗаказПокупателя)).* КАК ЗаказПокупателя, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры}) КАК ТоварыВРезервеНаСкладах
   |        ПО ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя = ТоварыВРезервеНаСкладах.ДокументРезерва
   |            И ЗаказыПокупателейОстаткиИОбороты.Номенклатура = ТоварыВРезервеНаСкладах.Номенклатура
   |            И ЗаказыПокупателейОстаткиИОбороты.ХарактеристикаНоменклатуры = ТоварыВРезервеНаСкладах.ХарактеристикаНоменклатуры}
   |        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(&ДатаКон, ДокументРезерва ССЫЛКА Документ.ЗаказПокупателя {(ВЫРАЗИТЬ(ДокументРезерва КАК Документ.ЗаказПокупателя)).* КАК ЗаказПокупателя, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры}) КАК РезервыКПередаче
   |        ПО ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя = РезервыКПередаче.ДокументРезерва
   |            И ЗаказыПокупателейОстаткиИОбороты.Номенклатура = РезервыКПередаче.Номенклатура
   |            И ЗаказыПокупателейОстаткиИОбороты.ХарактеристикаНоменклатуры = РезервыКПередаче.ХарактеристикаНоменклатуры}
   |        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыКПолучениюНаСклады.Остатки(&ДатаКон, ДокументРезерва ССЫЛКА Документ.ЗаказПокупателя {(ВЫРАЗИТЬ(ДокументРезерва КАК Документ.ЗаказПокупателя)).* КАК ЗаказПокупателя, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры}) КАК РезервыКПолучению
   |        ПО ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя = РезервыКПолучению.ДокументРезерва
   |            И ЗаказыПокупателейОстаткиИОбороты.Номенклатура = РезервыКПолучению.Номенклатура
   |            И ЗаказыПокупателейОстаткиИОбороты.ХарактеристикаНоменклатуры = РезервыКПолучению.ХарактеристикаНоменклатуры}
   |        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РазмещениеЗаказовПокупателей.Остатки(&ДатаКон, ЗаказПокупателя ССЫЛКА Документ.ЗаказПокупателя {(ВЫРАЗИТЬ(ЗаказПокупателя КАК Документ.ЗаказПокупателя)).* КАК ЗаказПокупателя, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры}) КАК РазмещениеЗаказовПокупателей
   |        ПО ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя = РазмещениеЗаказовПокупателей.ЗаказПокупателя
   |            И ЗаказыПокупателейОстаткиИОбороты.Номенклатура = РазмещениеЗаказовПокупателей.Номенклатура
   |            И ЗаказыПокупателейОстаткиИОбороты.ХарактеристикаНоменклатуры = РазмещениеЗаказовПокупателей.ХарактеристикаНоменклатуры}
   |        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСКонтрагентами.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , Сделка ССЫЛКА Документ.ЗаказПокупателя {(ДоговорКонтрагента.Владелец).* КАК ДоговорКонтрагентаВладелец, (ДоговорКонтрагента).* КАК ДоговорКонтрагента, (ВЫРАЗИТЬ(Сделка КАК Документ.ЗаказПокупателя)).* КАК ЗаказПокупателя}) КАК РасчетыСКонтрагентами
   |        ПО ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя = РасчетыСКонтрагентами.Сделка
   |            И ЗаказыПокупателейОстаткиИОбороты.ДоговорКонтрагента = РасчетыСКонтрагентами.ДоговорКонтрагента}
   |        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПокупателей.ОстаткиИОбороты(&ДатаНач, &ДатаКон, , , ЗаказПокупателя ССЫЛКА Документ.ЗаказПокупателя {(ДоговорКонтрагента.Владелец).* КАК ДоговорКонтрагентаВладелец, (ДоговорКонтрагента).* КАК ДоговорКонтрагента, (ВЫРАЗИТЬ(ЗаказПокупателя КАК Документ.ЗаказПокупателя)).* КАК ЗаказПокупателя}) КАК СводЗаказыПокупателейОстаткиИОбороты
   |        ПО ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя = СводЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя}
   |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
   |        ПО ЗаказыПокупателейОстаткиИОбороты.Цена = ЦеныНоменклатурыСрезПоследних.ТипЦен
   |{ГДЕ
   |    ЗаказыПокупателейОстаткиИОбороты.СтатусПартии.* КАК СтатусПартии,
   |    ЗаказыПокупателейОстаткиИОбороты.Цена КАК Цена,
   |    ЗаказыПокупателейОстаткиИОбороты.ЕдиницаИзмерения.* КАК ЕдиницаИзмерения,
   |    (ВЫБОР
   |            КОГДА СводЗаказыПокупателейОстаткиИОбороты.КоличествоПриход = СводЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток
   |                ТОГДА ""Не отгружено""
   |            КОГДА ЕСТЬNULL(СводЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток, 0) <= 0
   |                ТОГДА ""Отгружено полностью""
   |            ИНАЧЕ ""Отгружено частично""
   |        КОНЕЦ) КАК СостояниеОтгрузки,
   |    (ВЫБОР
   |            КОГДА РасчетыСКонтрагентами.СуммаВзаиморасчетовРасход = 0
   |                    ИЛИ РасчетыСКонтрагентами.СуммаВзаиморасчетовРасход ЕСТЬ NULL
   |                ТОГДА ""Не оплачено""
   |            КОГДА РасчетыСКонтрагентами.СуммаВзаиморасчетовРасход >= РасчетыСКонтрагентами.СуммаВзаиморасчетовПриход
   |                ТОГДА ""Оплачено полностью""
   |            ИНАЧЕ ""Оплачено частично""
   |        КОНЕЦ) КАК СостояниеОплаты,
   |    (ВЫБОР
   |            КОГДА РасчетыСКонтрагентами.СуммаУпрПриход * (РасчетыСКонтрагентами.ДоговорКонтрагента.ПроцентПредоплаты / 100) - РасчетыСКонтрагентами.СуммаУпрРасход <= 0
   |                ТОГДА 0
   |            ИНАЧЕ РасчетыСКонтрагентами.СуммаУпрПриход * (РасчетыСКонтрагентами.ДоговорКонтрагента.ПроцентПредоплаты / 100) - РасчетыСКонтрагентами.СуммаУпрРасход
   |        КОНЕЦ) КАК Предоплата,
   |    ЗаказыПокупателейОстаткиИОбороты.КоличествоПриход КАК Запланировано,
   |    ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток КАК ОсталосьОтгрузить,
   |    (ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток, 0) + ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток, 0) - ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток, 0)) КАК СоСклада,
   |    РазмещениеЗаказовПокупателей.КоличествоОстаток КАК Заказано,
   |    (ЕСТЬNULL(ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток, 0) - ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток, 0) + ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток, 0) - ЕСТЬNULL(РазмещениеЗаказовПокупателей.КоличествоОстаток, 0)) КАК ОсталосьОбеспечить,
   |    ЗаказыПокупателейОстаткиИОбороты.СуммаВзаиморасчетовКонечныйОстаток КАК ОсталосьОтгрузитьСуммаВзаиморасчетов,
   |    ЗаказыПокупателейОстаткиИОбороты.СуммаУпрКонечныйОстаток КАК ОсталосьОтгрузитьСуммаУпр,
   |    (ЗаказыПокупателейОстаткиИОбороты.КоличествоПриход * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК ЗапланированоБазовыхЕд,
   |    (ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК ОсталосьОтгрузитьБазовыхЕд,
   |    (ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток * ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) + ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток * РезервыКПередаче.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) - ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток * РезервыКПолучению.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0)) КАК СоСкладаБазовыхЕд,
   |    (РазмещениеЗаказовПокупателей.КоличествоОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК ЗаказаноБазовыхЕд,
   |    (ЕСТЬNULL(ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток * ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) - ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток * РезервыКПередаче.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) + ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток * РезервыКПолучению.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0) - ЕСТЬNULL(РазмещениеЗаказовПокупателей.КоличествоОстаток * РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 0)) КАК ОсталосьОбеспечитьБазовыхЕд,
   |    (ЗаказыПокупателейОстаткиИОбороты.КоличествоПриход * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК ЗапланированоЕдиницОтчетов,
   |    (ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК ОсталосьОтгрузитьЕдиницОтчетов,
   |    (ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток * ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) + ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток * РезервыКПередаче.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РезервыКПередаче.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) - ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток * РезервыКПолучению.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РезервыКПолучению.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0)) КАК СоСкладаЕдиницОтчетов,
   |    (РазмещениеЗаказовПокупателей.КоличествоОстаток * РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК ЗаказаноЕдиницОтчетов,
   |    (ЕСТЬNULL(ЗаказыПокупателейОстаткиИОбороты.КоличествоКонечныйОстаток * ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ЗаказыПокупателейОстаткиИОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) - ЕСТЬNULL(ТоварыВРезервеНаСкладах.КоличествоОстаток * ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ТоварыВРезервеНаСкладах.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) - ЕСТЬNULL(РезервыКПередаче.КоличествоОстаток * РезервыКПередаче.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РезервыКПередаче.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) + ЕСТЬNULL(РезервыКПолучению.КоличествоОстаток * РезервыКПолучению.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РезервыКПолучению.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0) - ЕСТЬNULL(РазмещениеЗаказовПокупателей.КоличествоОстаток * РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / РазмещениеЗаказовПокупателей.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 0)) КАК ОсталосьОбеспечитьЕдиницОтчетов,
   |    РасчетыСКонтрагентами.СуммаУпрПриход КАК СуммаЗаказа,
   |    РасчетыСКонтрагентами.СуммаУпрКонечныйОстаток КАК ОсталосьОплатить}
   |{УПОРЯДОЧИТЬ ПО
   |    ДоговорКонтрагентаВладелец.*,
   |    ДоговорКонтрагента.*,
   |    ЗаказПокупателя.*,
   |    Номенклатура.*,
   |    ХарактеристикаНоменклатуры.*,
   |    СтатусПартии,
   |    Цена,
   |    ЕдиницаИзмерения.*,
   |    СостояниеОтгрузки,
   |    СостояниеОплаты,
   |    Предоплата,
   |    Запланировано,
   |    СоСклада,
   |    Заказано,
   |    ОсталосьОтгрузить,
   |    ОсталосьОплатить,
   |    ОсталосьОбеспечить,
   |    СуммаЗаказа,
   |    ОсталосьОплатить КАК ОсталосьОтгрузитьСуммаВзаиморасчетов,
   |    ОсталосьОтгрузитьСуммаУпр,
   |    ЗапланированоБазовыхЕд,
   |    ОсталосьОтгрузитьБазовыхЕд,
   |    СоСкладаБазовыхЕд,
   |    ЗаказаноБазовыхЕд,
   |    ОсталосьОбеспечитьБазовыхЕд,
   |    ЗапланированоЕдиницОтчетов,
   |    ОсталосьОтгрузитьЕдиницОтчетов,
   |    СоСкладаЕдиницОтчетов,
   |    ЗаказаноЕдиницОтчетов,
   |    ОсталосьОбеспечитьЕдиницОтчетов}
   |ИТОГИ
   |    МАКСИМУМ(СостояниеОтгрузки),
   |    МАКСИМУМ(СостояниеОплаты),
   |    ВЫБОР
   |        КОГДА Номенклатура ЕСТЬ НЕ NULL
   |            ТОГДА 0
   |        КОГДА ЗаказПокупателя ЕСТЬ НЕ NULL
   |            ТОГДА СУММА(СуммаЗаказа) / КОЛИЧЕСТВО(Номенклатура)
   |        ИНАЧЕ 0
   |    КОНЕЦ КАК СуммаЗаказа,
   |    ВЫБОР
   |        КОГДА Номенклатура ЕСТЬ НЕ NULL
   |            ТОГДА 0
   |        КОГДА ЗаказПокупателя ЕСТЬ НЕ NULL
   |            ТОГДА СУММА(ОсталосьОплатить) / КОЛИЧЕСТВО(Номенклатура)
   |        ИНАЧЕ 0
   |    КОНЕЦ КАК ОсталосьОплатить,
   |    ВЫБОР
   |        КОГДА Номенклатура ЕСТЬ НЕ NULL
   |            ТОГДА 0
   |        КОГДА ЗаказПокупателя ЕСТЬ НЕ NULL
   |            ТОГДА СУММА(Предоплата) / КОЛИЧЕСТВО(Номенклатура)
   |        ИНАЧЕ 0
   |    КОНЕЦ КАК Предоплата,
   |    СУММА(ОсталосьОтгрузитьСуммаВзаиморасчетов),
   |    СУММА(ОсталосьОтгрузитьСуммаУпр),
   |    СУММА(Запланировано),
   |    СУММА(ОсталосьОтгрузить),
   |    СУММА(СоСклада),
   |    СУММА(Заказано),
   |    СУММА(ОсталосьОбеспечить),
   |    СУММА(ЗапланированоБазовыхЕд),
   |    СУММА(ОсталосьОтгрузитьБазовыхЕд),
   |    СУММА(СоСкладаБазовыхЕд),
   |    СУММА(ЗаказаноБазовыхЕд),
   |    СУММА(ОсталосьОбеспечитьБазовыхЕд),
   |    СУММА(ЗапланированоЕдиницОтчетов),
   |    СУММА(ОсталосьОтгрузитьЕдиницОтчетов),
   |    СУММА(СоСкладаЕдиницОтчетов),
   |    СУММА(ЗаказаноЕдиницОтчетов),
   |    СУММА(ОсталосьОбеспечитьЕдиницОтчетов)
   |ПО
   |    ОБЩИЕ,
   |    ДоговорКонтрагентаВладелец,
   |    ДоговорКонтрагента,
   |    ЗаказПокупателя,
   |    Номенклатура,
   |    ХарактеристикаНоменклатуры,
   |    Цена,
   |    ЕдиницаИзмерения,
   |    СтатусПартии
   |{ИТОГИ ПО
   |    СостояниеОтгрузки,
   |    СостояниеОплаты,
   |    ДоговорКонтрагентаВладелец.*,
   |    ДоговорКонтрагента.*,
   |    ЗаказПокупателя.*,
   |    Номенклатура.*,
   |    ХарактеристикаНоменклатуры.*,
   |    Цена,
   |    ЕдиницаИзмерения.*,
   |    СтатусПартии}";

   // В универсальном отчете включен флаг использования свойств и категорий.
   Если УниверсальныйОтчет.ИспользоватьСвойстваИКатегории Тогда
       
       // Добавление свойств и категорий поля запроса в таблицу полей.
       // Необходимо вызывать для каждого поля запроса, предоставляющего возможность использования свойств и категорий.
       
       // УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля(<ПсевдонимТаблицы>.<Поле> , <ПсевдонимПоля>, <Представление>, <Назначение>);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля( "ЗаказыПокупателейОстаткиИОбороты.ДоговорКонтрагента.Владелец", "ДоговорКонтрагентаВладелец", "Контрагент",                  ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Контрагенты);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля( "ЗаказыПокупателейОстаткиИОбороты.ДоговорКонтрагента",          "ДоговорКонтрагента",         "Договор контрагента",         ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ДоговорыКонтрагентов);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля( "ЗаказыПокупателейОстаткиИОбороты.Номенклатура",                "Номенклатура",               "Номенклатура",                ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля( "ЗаказыПокупателейОстаткиИОбороты.ХарактеристикаНоменклатуры",  "ХарактеристикаНоменклатуры", "Характеристика номенклатуры", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ХарактеристикиНоменклатуры);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля( "ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя",             "ЗаказПокупателя",            "Заказ покупателя",            ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Документы);
       УниверсальныйОтчет.ДобавитьСвойстваИКатегорииДляПоля( "ЗаказыПокупателейОстаткиИОбороты.ЗаказПокупателя",             "ЗаказПокупателя",            "Заказ покупателя",            ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Документ_ЗаказПокупателя);

       // Добавление свойств и категорий в исходный текст запроса.
       УниверсальныйОтчет.ДобавитьВТекстЗапросаСвойстваИКатегории(ТекстЗапроса);
       
   КонецЕсли;
       
   // Инициализация текста запроса построителя отчета
   УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса;
   
   Пока УниверсальныйОтчет.ПостроительОтчета.ИзмеренияСтроки.Количество() > 0 Цикл
       
       УниверсальныйОтчет.ПостроительОтчета.ИзмеренияСтроки.Удалить(УниверсальныйОтчет.ПостроительОтчета.ИзмеренияСтроки[0]);
       
   КонецЦикла;
   
   // Представления полей отчета.
   // Необходимо вызывать для каждого поля запроса.
   // УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить(<ИмяПоля>, <ПредставлениеПоля>);
   
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ДоговорКонтрагентаВладелец", "Контрагент");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ДоговорКонтрагента", "Договор");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ЗаказПокупателя", "Заказ");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Номенклатура", "Номенклатура");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ХарактеристикаНоменклатуры", "Характеристика номенклатуры");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СтатусПартии", "Статус партии");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Цена", "Цена");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ЕдиницаИзмерения", "Единица измерения");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СостояниеОтгрузки", "Состояние отгрузки");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СостояниеОплаты", "Состояние оплаты");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммаЗаказа", "Запланировано оплатить");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОплатить", "Осталось оплатить");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОтгрузитьСуммаВзаиморасчетов", "Осталось отгрузить (сумма в валюте взаиморасчетов)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОтгрузитьСуммаУпр", "Осталось отгрузить (сумма в валюте упр. учета)");
   
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Запланировано",      "Запланировано отгрузить (в ед. хранения)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОтгрузить",  "Осталось отгрузить (в ед. хранения)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СоСклада",           "Отгрузить со склада (в ед. хранения)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Заказано",           "Размещено в заказах (в ед. хранения)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОбеспечить", "Осталось обеспечить (в ед. хранения)");
   
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ЗапланированоБазовыхЕд",      "Запланировано отгрузить (в базовых ед.)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОтгрузитьБазовыхЕд",  "Осталось отгрузить (в базовых ед.)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СоСкладаБазовыхЕд",           "Отгрузить со склада (в базовых ед.)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ЗаказаноБазовыхЕд",           "Размещено в заказах (в базовых ед.)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОбеспечитьБазовыхЕд", "Осталось обеспечить (в базовых ед.)");
   
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ЗапланированоЕдиницОтчетов",      "Запланировано отгрузить (в ед. отчетов)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОтгрузитьЕдиницОтчетов",  "Осталось отгрузить (в ед. отчетов)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СоСкладаЕдиницОтчетов",           "Отгрузить со склада (в ед. отчетов)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ЗаказаноЕдиницОтчетов",           "Размещено в заказах (в ед. отчетов)");
   УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОсталосьОбеспечитьЕдиницОтчетов", "Осталось обеспечить (в ед. отчетов)");
   
   // Добавление показателей
   // Необходимо вызывать для каждого добавляемого показателя.
   // УниверсальныйОтчет.ДобавитьПоказатель(<ИмяПоказателя>, <ПредставлениеПоказателя>, <ВключенПоУмолчанию>, <Формат>, <ИмяГруппы>, <ПредставлениеГруппы>);
   
   УниверсальныйОтчет.ДобавитьПоказатель("СуммаЗаказа",        "Запланировано",     Истина, "ЧЦ=15; ЧДЦ=2", "Оплата", "Оплата");
   УниверсальныйОтчет.ДобавитьПоказатель("ОсталосьОплатить",   "Осталось оплатить", Истина, "ЧЦ=15; ЧДЦ=2", "Оплата", "Оплата");
   УниверсальныйОтчет.ДобавитьПоказатель("Предоплата",         "Предоплата",        Истина, "ЧЦ=15; ЧДЦ=2", "Оплата", "Оплата");
   УниверсальныйОтчет.ДобавитьПоказатель("ОсталосьОтгрузитьСуммаУпр",             "Осталось отгрузить "+Символы.ПС+ "(в валюте упр. учета)",       Ложь, "ЧЦ=15; ЧДЦ=2");
   УниверсальныйОтчет.ДобавитьПоказатель("ОсталосьОтгрузитьСуммаВзаиморасчетов","Осталось отгрузить "+Символы.ПС+ "(в валюте взаиморасчетов)",Ложь, "ЧЦ=15; ЧДЦ=2");
   
   УниверсальныйОтчет.ДобавитьПоказатель("Запланировано",      "Запланировано",       Истина, "ЧЦ=15; ЧДЦ=3", "Отгрузка", "Отгрузка (в ед. хранения)
1 butterbean
 
30.05.12
12:00
каким боком вообще тип цен к заказам??
2 ZaRodinyZa Stalina
 
30.05.12
12:01
забаньте его за вандализм
3 Norbertano
 
30.05.12
12:04
за вандализм меня уже наказали.
Обьясню зачем - этот отчет используют для построения неотгруженных товаров,нужно видеть цену и стоимость товара
4 Norbertano
 
30.05.12
12:09
Прошу прощения,нужен не отбор по типу цен, а возможность вывести закупочную цену с итоговой стоимостью