Имя: Пароль:
1C
 
И еще раз построитель отчета отбор.
0 Анцеранана
 
14.10.14
17:10
Не получается сделать отбор в отчете по полю менеджер.

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

    ЕСТЬNULL(ВЫРАЗИТЬ(ЗначениеМенеджер.Значение КАК Справочник.Пользователи), "не заполнен менеджер") КАК Менеджер

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

УниверсальныйОтчет.ПостроительОтчета.Текст = ТекстЗапроса;

УниверсальныйОтчет.ДобавитьОтбор("ДокументПродажи"); //отрабатывает
УниверсальныйОтчет.ДобавитьОтбор("Менеджер"); //не отрабатывает
1 Анцеранана
 
14.10.14
17:11
Ошибка - первый параметр не так указал путь к данным видимо. Но в чем ошибка не понятно
2 Ёпрст
 
гуру
14.10.14
17:32
у тебя же менеджер есть уже как параметр запроса
3 Анцеранана
 
15.10.14
13:37
(2) Короче разобрался, пишу если кому понадобится. В консоли запросов на закладке "Построитель" есть такая закладка как "Условия". Вот там - то и надо "химичить". И параметр нужный добавить и ограничения по типу (через ВЫРАЗИТЬ).
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс