Имя: Пароль:
1C
1С v8
Отчет ПоПродажам
,
0 Vyacheslav_UZ
 
05.01.16
17:18
Здравствуйте! Кто может посмотрите запрос. Выдает не те суммы. Сумма оплаты дублируется сумма реализации дублируется. сумма терминал не выдает вообще. Сумма комиссии тоже не выдает. Голова не варит уже. Если можно исправить то исправьте и дай вам бог здоровья.Я Только стажируюсь и не не обладаю знаниями.     ВЫБРАТЬ РАЗРЕШЕННЫЕ
    НАЧАЛОПЕРИОДА(РеализацияТоваровУслугТовары.Ссылка.Дата, МЕСЯЦ) КАК Период,
    РеализацияТоваровУслугТовары.Ссылка.Контрагент КАК Контрагент,
    РеализацияТоваровУслугТовары.Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
    РеализацияТоваровУслугТовары.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    РеализацияТоваровУслугТовары.Номенклатура,
    СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество,
    СУММА(РеализацияТоваровУслугТовары.Сумма) КАК Сумма
ПОМЕСТИТЬ ВТ_СписокТоваров
ИЗ
    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
    РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачало И &ДатаКонец
    И РеализацияТоваровУслугТовары.Ссылка.Организация = &Организация
    И (РеализацияТоваровУслугТовары.Номенклатура = &Номенклатура
            ИЛИ &Номенклатура = НЕОПРЕДЕЛЕНО)
    И (РеализацияТоваровУслугТовары.Номенклатура.НоменклатурнаяГруппа = &НоменклатурнаяГруппа
            ИЛИ &НоменклатурнаяГруппа = НЕОПРЕДЕЛЕНО)
    И РеализацияТоваровУслугТовары.Ссылка.Проведен
    И НЕ РеализацияТоваровУслугТовары.Номенклатура.Услуга

СГРУППИРОВАТЬ ПО
    РеализацияТоваровУслугТовары.Ссылка.ДоговорКонтрагента,
    НАЧАЛОПЕРИОДА(РеализацияТоваровУслугТовары.Ссылка.Дата, МЕСЯЦ),
    РеализацияТоваровУслугТовары.Номенклатура,
    РеализацияТоваровУслугТовары.Ссылка.Контрагент,
    РеализацияТоваровУслугТовары.Номенклатура.НоменклатурнаяГруппа
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    СУММА(ОтчетКомиссионераОПродажахТовары.Сумма) КАК СуммаКомисси,
    ОтчетКомиссионераОПродажахТовары.Ссылка.Контрагент,
    ОтчетКомиссионераОПродажахТовары.Ссылка.ДоговорКонтрагента,
    НАЧАЛОПЕРИОДА(ОтчетКомиссионераОПродажахТовары.Ссылка.Дата, МЕСЯЦ) КАК Период,
    ОтчетКомиссионераОПродажахТовары.Номенклатура,
    ОтчетКомиссионераОПродажахТовары.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    СУММА(ОтчетКомиссионераОПродажахТовары.Количество) КАК Количество
ПОМЕСТИТЬ Вт_Коммисия
ИЗ
    Документ.ОтчетКомиссионераОПродажах.Товары КАК ОтчетКомиссионераОПродажахТовары
ГДЕ
    ОтчетКомиссионераОПродажахТовары.Ссылка.Дата МЕЖДУ &ДатаНачало И &ДатаКонец
    И ОтчетКомиссионераОПродажахТовары.Ссылка.Организация = &Организация
    И (ОтчетКомиссионераОПродажахТовары.Номенклатура = &Номенклатура
            ИЛИ &Номенклатура = НЕОПРЕДЕЛЕНО)
    И (ОтчетКомиссионераОПродажахТовары.Номенклатура.НоменклатурнаяГруппа = &НоменклатурнаяГруппа
            ИЛИ &НоменклатурнаяГруппа = НЕОПРЕДЕЛЕНО)
    И ОтчетКомиссионераОПродажахТовары.Ссылка.Проведен

СГРУППИРОВАТЬ ПО
    ОтчетКомиссионераОПродажахТовары.Номенклатура,
    НАЧАЛОПЕРИОДА(ОтчетКомиссионераОПродажахТовары.Ссылка.Дата, МЕСЯЦ),
    ОтчетКомиссионераОПродажахТовары.Ссылка.Контрагент,
    ОтчетКомиссионераОПродажахТовары.Ссылка.ДоговорКонтрагента,
    ОтчетКомиссионераОПродажахТовары.Номенклатура.НоменклатурнаяГруппа
;

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ОтчетОРозничныхПродажахТовары.Номенклатура,
    ОтчетОРозничныхПродажахТовары.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    СУММА(ОтчетОРозничныхПродажахТовары.Сумма) КАК Сумма,
    НАЧАЛОПЕРИОДА(ОтчетОРозничныхПродажахТовары.Ссылка.Дата, МЕСЯЦ) КАК Период,
    ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) КАК Контрагент,
    ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка) КАК Договор,
    СУММА(ОтчетОРозничныхПродажахТовары.Количество) КАК Количество
ПОМЕСТИТЬ Вт_РозничныеТовары
ИЗ
    Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажахТовары
ГДЕ
    (ОтчетОРозничныхПродажахТовары.Номенклатура = &Номенклатура
            ИЛИ &Номенклатура = НЕОПРЕДЕЛЕНО)
    И (ОтчетОРозничныхПродажахТовары.Номенклатура.НоменклатурнаяГруппа = &НоменклатурнаяГруппа
            ИЛИ &НоменклатурнаяГруппа = НЕОПРЕДЕЛЕНО)

СГРУППИРОВАТЬ ПО
    НАЧАЛОПЕРИОДА(ОтчетОРозничныхПродажахТовары.Ссылка.Дата, МЕСЯЦ),
    ОтчетОРозничныхПродажахТовары.Номенклатура,
    ОтчетОРозничныхПродажахТовары.Номенклатура.НоменклатурнаяГруппа
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    НАЧАЛОПЕРИОДА(ОтчетОРозничныхПродажахОплата.Ссылка.Дата, МЕСЯЦ) КАК Период,
    ОтчетОРозничныхПродажахОплата.СуммаОплаты КАК СуммаОплаты,
    ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка) КАК Контрагент,
    ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка) КАК Договор
ПОМЕСТИТЬ Вт_Терминал
ИЗ
    Документ.ОтчетОРозничныхПродажах.Оплата КАК ОтчетОРозничныхПродажахОплата
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВложенныйЗапрос.Период,
    ВложенныйЗапрос.Контрагент,
    ВложенныйЗапрос.ДоговорКонтрагента,
    ВложенныйЗапрос.НоменклатурнаяГруппа,
    ВложенныйЗапрос.Номенклатура,
    СУММА(ВложенныйЗапрос.Количество) КАК Количество,
    СУММА(ВложенныйЗапрос.Сумма) КАК Сумма
ПОМЕСТИТЬ Вт_Товары
ИЗ
    (ВЫБРАТЬ
        ВТ_СписокТоваров.Период КАК Период,
        ВТ_СписокТоваров.Контрагент КАК Контрагент,
        ВТ_СписокТоваров.ДоговорКонтрагента КАК ДоговорКонтрагента,
        ВТ_СписокТоваров.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
        ВТ_СписокТоваров.Номенклатура КАК Номенклатура,
        ВТ_СписокТоваров.Количество * ВЫБОР
            КОГДА ВТ_СписокТоваров.Номенклатура.Вес = 0
                ТОГДА 1
            ИНАЧЕ ВТ_СписокТоваров.Номенклатура.Вес
        КОНЕЦ КАК Количество,
        ВТ_СписокТоваров.Сумма КАК Сумма
    ИЗ
        ВТ_СписокТоваров КАК ВТ_СписокТоваров
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        Вт_РозничныеТовары.Период,
        Вт_РозничныеТовары.Контрагент,
        Вт_РозничныеТовары.Договор,
        Вт_РозничныеТовары.НоменклатурнаяГруппа,
        Вт_РозничныеТовары.Номенклатура,
        Вт_РозничныеТовары.Количество * ВЫБОР
            КОГДА Вт_РозничныеТовары.Номенклатура.Вес = 0
                ТОГДА 1
            ИНАЧЕ Вт_РозничныеТовары.Номенклатура.Вес
        КОНЕЦ,
        Вт_РозничныеТовары.Сумма
    ИЗ
        Вт_РозничныеТовары КАК Вт_РозничныеТовары
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        Вт_Коммисия.Период,
        Вт_Коммисия.Контрагент,
        Вт_Коммисия.ДоговорКонтрагента,
        Вт_Коммисия.НоменклатурнаяГруппа,
        Вт_Коммисия.Номенклатура,
        Вт_Коммисия.Количество * ВЫБОР
            КОГДА Вт_Коммисия.Номенклатура.Вес = 0
                ТОГДА 1
            ИНАЧЕ Вт_Коммисия.Номенклатура.Вес
        КОНЕЦ,
        Вт_Коммисия.СуммаКомисси
    ИЗ
        Вт_Коммисия КАК Вт_Коммисия) КАК ВложенныйЗапрос

СГРУППИРОВАТЬ ПО
    ВложенныйЗапрос.НоменклатурнаяГруппа,
    ВложенныйЗапрос.ДоговорКонтрагента,
    ВложенныйЗапрос.Номенклатура,
    ВложенныйЗапрос.Период,
    ВложенныйЗапрос.Контрагент
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_Товары.НоменклатурнаяГруппа.Наименование,
    ВТ_Товары.Номенклатура.Наименование,
    ВТ_Товары.Номенклатура
ИЗ
    ВТ_СписокТоваров КАК ВТ_Товары
;

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

СГРУППИРОВАТЬ ПО
    ВложенныйЗапрос.ДоговорКонтрагента,
    ВложенныйЗапрос.Период,
    ВложенныйЗапрос.НоменклатурнаяГруппа,
    ВложенныйЗапрос.Номенклатура,
    ВложенныйЗапрос.Номенклатура.Родитель,
    ЕСТЬNULL(ВложенныйЗапрос.ДоговорКонтрагента.Владелец, "Розница")

УПОРЯДОЧИТЬ ПО
    Контрагент УБЫВ
1 Джинн
 
05.01.16
17:26
Конфигурация какая?
2 Vyacheslav_UZ
 
05.01.16
17:28
Бухгалтерия. Хозрасчет, редакция 1.3 (1.3.2.2)
1С:Предприятие 8.3 (8.3.6.2363)
Прошу прошения забыл.
3 Джинн
 
05.01.16
17:31
(2) Российская? Странный номер у нее.

Тем не менее забейте на документы, а курите 90 счет (или ваш его аналог). Не занимайтесь быдлокодированием.
4 Vyacheslav_UZ
 
05.01.16
17:33
Я пробовал вытаскивать данные через регистр, но меня остановил мол все не то и не так. Делай для начало через документы.А теперь нету возможности туда сюда бегать Завтра с утра должен быть готов отчет. Узбекистан.
5 Джинн
 
05.01.16
17:41
(4) К сожалению не знаю вашего плана счетов. Но гарантирую, что типовые бухгалтерские отчеты покажут Вам выручку и без программирования. ОСВ, анализ счета и иже..
6 shuhard_серый
 
05.01.16
18:19
(4)[Я Только стажируюсь и не не обладаю знаниями]+[Завтра с утра должен быть готов отчет.]
одним стажёром будет меньше
7 hhhh
 
05.01.16
23:53
(4) вот же

ЛЕВОЕ СОЕДИНЕНИЕ Вт_Коммисия КАК Вт_Коммисия
            ПО ВТ_Товары.Период = Вт_Коммисия.Период
                И ВТ_Товары.Контрагент = Вт_Коммисия.Контраген

вот это ВТ_Товары.Контрагент - это твой покупатель,
Вт_Коммисия.Контрагент - это твой поставщик, который привозит тебе комиссионный товар.

то есть твое равенство ВТ_Товары.Контрагент = Вт_Коммисия.Контрагент никогда не выполнится.