Имя: Пароль:
1C
 
УТ 10.3 Отчет "Валовая прибыль"
0 Antony8x
 
26.07.16
11:13
Доброго времени суток. Стоит задача в отчёт "валовая прибыль" добавить фактический адрес контрагента. Запрос в отчёте сложный, я попытался вытянуть адрес, сделав соединение во вложенном запросе самого нижнего уровня. Не получается и всё тут. Кто сталкивался с этим подскажите как доработать запрос?
1 rbcvg
 
26.07.16
11:14
"Не получается и всё тут" - показывай как сделал.
2 Antony8x
 
26.07.16
11:16
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    ВложенныйЗапрос.Организация КАК Организация,
    |    ВложенныйЗапрос.Проект КАК Проект,
    |    ВложенныйЗапрос.Подразделение КАК Подразделение,
    |    ВложенныйЗапрос.Покупатель КАК Покупатель,
    |    ВложенныйЗапрос.ДоговорПокупателя КАК ДоговорПокупателя,
    |    ВложенныйЗапрос.Номенклатура КАК Номенклатура,
    |    ВложенныйЗапрос.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |    ВложенныйЗапрос.ЗаказПокупателя КАК ЗаказПокупателя,
    |    ВложенныйЗапрос.Регистратор КАК Регистратор,
    |    ВложенныйЗапрос.Период КАК Период,
    |    ВложенныйЗапрос.Количество КАК Количество,
    |    ВложенныйЗапрос.КоличествоЕдиницОтчетов КАК КоличествоЕдиницОтчетов,
    |    ВложенныйЗапрос.КоличествоБазовыхЕдиниц КАК КоличествоБазовыхЕдиниц,
    |    ВложенныйЗапрос.СтоимостьБезНДС КАК СтоимостьБезНДС,
    |    ВложенныйЗапрос.НДС КАК НДС,
    |    ВложенныйЗапрос.Стоимость КАК Стоимость,
    |    ВложенныйЗапрос.Себестоимость КАК Себестоимость
    |{ВЫБРАТЬ
    |    Организация.*,
    |    Проект.*,
    |    Подразделение.*,
    |    Покупатель.*,
    |    ДоговорПокупателя.*,
    |    Номенклатура.*,
    |    ХарактеристикаНоменклатуры.*,
    |    ЗаказПокупателя.*,
    |    Регистратор.*,
    |    Период,
    |    Количество,
    |    КоличествоЕдиницОтчетов,
    |    КоличествоБазовыхЕдиниц,
    |    СтоимостьБезНДС,
    |    НДС,
    |    Стоимость,
    |    Себестоимость}
    |ИЗ
    |    (ВЫБРАТЬ
    |        ВложенныйЗапрос.Организация КАК Организация,
    |        ВложенныйЗапрос.Проект КАК Проект,
    |        ВложенныйЗапрос.Подразделение КАК Подразделение,
    |        ВложенныйЗапрос.Покупатель КАК Покупатель,
    |        ВложенныйЗапрос.ДоговорПокупателя КАК ДоговорПокупателя,
    |        ВложенныйЗапрос.Номенклатура КАК Номенклатура,
    |        ВложенныйЗапрос.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |        ВложенныйЗапрос.ЗаказПокупателя КАК ЗаказПокупателя,
    |        ВложенныйЗапрос.Регистратор КАК Регистратор,
    |        ВложенныйЗапрос.Период КАК Период,
    |        СУММА(ВложенныйЗапрос.Количество) КАК Количество,
    |        СУММА(ВложенныйЗапрос.КоличествоЕдиницОтчетов) КАК КоличествоЕдиницОтчетов,
    |        СУММА(ВложенныйЗапрос.КоличествоБазовыхЕдиниц) КАК КоличествоБазовыхЕдиниц,
    |        СУММА(ВложенныйЗапрос.СтоимостьБезНДС) КАК СтоимостьБезНДС,
    |        СУММА(ВложенныйЗапрос.НДС) КАК НДС,
    |        СУММА(ВложенныйЗапрос.Стоимость) КАК Стоимость,
    |        СУММА(ВложенныйЗапрос.Себестоимость) КАК Себестоимость,
    |        ВложенныйЗапрос.ФактическийАдрес КАК ФактическийАдрес
    |    {ВЫБРАТЬ
    |        Организация,
    |        Проект,
    |        Подразделение,
    |        Покупатель,
    |        ДоговорПокупателя,
    |        Номенклатура,
    |        ХарактеристикаНоменклатуры,
    |        ЗаказПокупателя,
    |        Регистратор,
    |        Период}
    |    ИЗ
    |        (ВЫБРАТЬ
    |            ПродажиОбороты.Проект КАК Проект,
    |            ПродажиОбороты.Подразделение КАК Подразделение,
    |            ПродажиОбороты.Контрагент КАК Покупатель,
    |            ПродажиОбороты.ДоговорКонтрагента КАК ДоговорПокупателя,
    |            ПродажиОбороты.Номенклатура КАК Номенклатура,
    |            ПродажиОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |            ПродажиОбороты.ЗаказПокупателя КАК ЗаказПокупателя,
    |            ПродажиОбороты.Организация КАК Организация,
    |            ПродажиОбороты.Регистратор КАК Регистратор,
    |            ПродажиОбороты.Период КАК Период,
    |            ПродажиОбороты.КоличествоОборот КАК Количество,
    |            ПродажиОбороты.КоличествоОборот * ЕСТЬNULL(ПродажиОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 1) / ЕСТЬNULL(ПродажиОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, 1) КАК КоличествоЕдиницОтчетов,
    |            ПродажиОбороты.КоличествоОборот * ЕСТЬNULL(ПродажиОбороты.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент, 1) КАК КоличествоБазовыхЕдиниц,
    |            ПродажиОбороты.СтоимостьОборот - ПродажиОбороты.НДСОборот КАК СтоимостьБезНДС,
    |            ПродажиОбороты.НДСОборот КАК НДС,
    |            ПродажиОбороты.СтоимостьОборот КАК Стоимость,
    |            ЕСТЬNULL(ТаблицаРегистраПродажиСебестоимость.СтоимостьОборот, 0) КАК Себестоимость,
    |            КонтактнаяИнформация.Представление КАК ФактическийАдрес
    |        ИЗ
    |            РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Регистратор, {(Организация).* КАК Организация, (Проект).* КАК Проект, (Подразделение).* КАК Подразделение, (Контрагент).* КАК Покупатель, (ДоговорКонтрагента).* КАК ДоговорПокупателя, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры, (ЗаказПокупателя).* КАК ЗаказПокупателя}) КАК ПродажиОбороты
    |                ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                    ПродажиСебестоимость.Номенклатура КАК Номенклатура,
    |                    ПродажиСебестоимость.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |                    ПродажиСебестоимость.ЗаказПокупателя КАК ЗаказПокупателя,
    |                    ВЫБОР
    |                        КОГДА ПродажиСебестоимость.ДокументДвижения <> НЕОПРЕДЕЛЕНО
    |                            ТОГДА ПродажиСебестоимость.ДокументДвижения
    |                        ИНАЧЕ ПродажиСебестоимость.Регистратор
    |                    КОНЕЦ КАК Регистратор,
    |                    СУММА(ПродажиСебестоимость.Стоимость) КАК СтоимостьОборот
    |                ИЗ
    |                    РегистрНакопления.ПродажиСебестоимость КАК ПродажиСебестоимость
    |                ГДЕ
    |                    ПродажиСебестоимость.Период МЕЖДУ &ДатаНачала И &ДатаКонца
    |                {ГДЕ
    |                    ПродажиСебестоимость.Проект.* КАК Проект,
    |                    ПродажиСебестоимость.Подразделение.* КАК Подразделение,
    |                    ПродажиСебестоимость.Номенклатура.* КАК Номенклатура,
    |                    ПродажиСебестоимость.ХарактеристикаНоменклатуры.* КАК ХарактеристикаНоменклатуры,
    |                    ПродажиСебестоимость.ЗаказПокупателя.* КАК ЗаказПокупателя}
    |                
    |                СГРУППИРОВАТЬ ПО
    |                    ПродажиСебестоимость.Номенклатура,
    |                    ПродажиСебестоимость.ХарактеристикаНоменклатуры,
    |                    ПродажиСебестоимость.ЗаказПокупателя,
    |                    ВЫБОР
    |                        КОГДА ПродажиСебестоимость.ДокументДвижения <> НЕОПРЕДЕЛЕНО
    |                            ТОГДА ПродажиСебестоимость.ДокументДвижения
    |                        ИНАЧЕ ПродажиСебестоимость.Регистратор
    |                    КОНЕЦ) КАК ТаблицаРегистраПродажиСебестоимость
    |                ПО (ТаблицаРегистраПродажиСебестоимость.Номенклатура = ПродажиОбороты.Номенклатура)
    |                    И (ТаблицаРегистраПродажиСебестоимость.ХарактеристикаНоменклатуры = ПродажиОбороты.ХарактеристикаНоменклатуры)
    |                    И (ТаблицаРегистраПродажиСебестоимость.ЗаказПокупателя = ПродажиОбороты.ЗаказПокупателя)
    |                    И (ТаблицаРегистраПродажиСебестоимость.Регистратор = ПродажиОбороты.Регистратор)
    |                ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                    КонтактнаяИнформация.Представление КАК Представление,
    |                    КонтактнаяИнформация.Объект КАК Объект
    |                ИЗ
    |                    РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация) КАК КонтактнаяИнформация
    |                ПО ПродажиОбороты.Контрагент = КонтактнаяИнформация.Объект) КАК ВложенныйЗапрос
    |    
    |    СГРУППИРОВАТЬ ПО
    |        ВложенныйЗапрос.Организация,
    |        ВложенныйЗапрос.Проект,
    |        ВложенныйЗапрос.Подразделение,
    |        ВложенныйЗапрос.Покупатель,
    |        ВложенныйЗапрос.ДоговорПокупателя,
    |        ВложенныйЗапрос.Номенклатура,
    |        ВложенныйЗапрос.ХарактеристикаНоменклатуры,
    |        ВложенныйЗапрос.ЗаказПокупателя,
    |        ВложенныйЗапрос.Регистратор,
    |        ВложенныйЗапрос.Период,
    |        ВложенныйЗапрос.ФактическийАдрес) КАК ВложенныйЗапрос
    |{ГДЕ
    |    ВложенныйЗапрос.Регистратор.*,
    |    ВложенныйЗапрос.Период,
    |    ВложенныйЗапрос.Количество,
    |    ВложенныйЗапрос.КоличествоЕдиницОтчетов,
    |    ВложенныйЗапрос.КоличествоБазовыхЕдиниц,
    |    ВложенныйЗапрос.СтоимостьБезНДС,
    |    ВложенныйЗапрос.НДС,
    |    ВложенныйЗапрос.Стоимость,
    |    ВложенныйЗапрос.Себестоимость}
    |{УПОРЯДОЧИТЬ ПО
    |    Организация.*,
    |    Проект.*,
    |    Подразделение.*,
    |    Покупатель.*,
    |    ДоговорПокупателя.*,
    |    Номенклатура.*,
    |    ХарактеристикаНоменклатуры.*,
    |    ЗаказПокупателя.*,
    |    Регистратор.*,
    |    Период,
    |    Количество,
    |    КоличествоЕдиницОтчетов,
    |    КоличествоБазовыхЕдиниц,
    |    СтоимостьБезНДС,
    |    НДС,
    |    Стоимость,
    |    Себестоимость}
    |ИТОГИ
    |    СУММА(Количество),
    |    СУММА(КоличествоЕдиницОтчетов),
    |    СУММА(КоличествоБазовыхЕдиниц),
    |    СУММА(СтоимостьБезНДС),
    |    СУММА(НДС),
    |    СУММА(Стоимость),
    |    СУММА(Себестоимость)
    |ПО
    |    ОБЩИЕ
    |{ИТОГИ ПО
    |    Организация.*,
    |    Проект.*,
    |    Подразделение.*,
    |    Покупатель.*,
    |    ДоговорПокупателя.*,
    |    Номенклатура.*,
    |    ХарактеристикаНоменклатуры.*,
    |    ЗаказПокупателя.*,
    |    Регистратор.*,
    |    Период}";
3 Antony8x
 
26.07.16
11:17
собственно соединение, которое добавил:
    |                ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |                    КонтактнаяИнформация.Представление КАК Представление,
    |                    КонтактнаяИнформация.Объект КАК Объект
    |                ИЗ
    |                    РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация) КАК КонтактнаяИнформация
    |                ПО ПродажиОбороты.Контрагент = КонтактнаяИнформация.Объект) КАК ВложенныйЗапрос

в итоге ошибка:
Недопустимое поле для группировки "ФактическийАдрес"
<<?>>ВложенныйЗапрос.ФактическийАдрес) КАК ВложенныйЗапрос
4 mehfk
 
26.07.16
11:19
Сделай ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК Строка(1000))
5 Antony8x
 
26.07.16
11:27
(4) да, с этим я уже разобрался, нашёл на форуме. спасибо
6 Antony8x
 
26.07.16
11:28
Теперь ругается:

МассивВыбранныеПоляПоказатели.Добавить(ПостроительОтчета.ВыбранныеПоля.Добавить(ТекущийПоказатель.Имя));
по причине:
Поле не найдено. "ФактическийАдресКонтрагента"

Это значит что в результате запроса нет этого поля?
7 lamme
 
26.07.16
11:29
это я думаю в построителе не хватает полей ..
те в запросе добавил поле
а в построителе - нет

имхо конечно
8 Antony8x
 
26.07.16
11:33
(7)да, верно, вот так надо было добавить:

УниверсальныйОтчет.мСтруктураПредставлениеПолей("ФактическийАдресКонтрагента", "Фактический адрес контрагента");
9 Cyberhawk
 
26.07.16
11:33
Интересно, кому и зачем в валовой прибыли фактические адреса контрагентов... структуру партнеров что ли так кому-то удобнее смотреть или прибыльность по регионам прикидывать
10 Antony8x
 
26.07.16
11:58
(9) честно говоря, не вникал), заявка такая. Практика показывает, лучше делай как просят. "Истина где-то рядом"
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан