helpf.pro
Регистрация

v8.3: Отчет по остаткам и оборотам

Profaner
26.08.2016 10:15Прочитано: 3687

Доброго времени суток! Столкнулся со следующей проблемой. Появилась необходимость в отчете выводить за период движения. Прочитал интересную СТАТЬЮ про вывод с регистраторами, это в принципе как раз то, что нужно, только в моем случае в разрезе сегментов партнеров (речь об УТ 11.2). Отчет делал без СКД. Итоговые остатки считаются правильно, движения тоже, но начальный и конечный период по регистраторам остаются пустыми. В чем может быть проблема? Может хотя бы здесь смогут помочь...Прилагаю запрос и скрин.

Код SQL
 ВЫБРАТЬ
        ПартнерыСегмента.Сегмент,
        ПартнерыСегмента.Партнер
    ПОМЕСТИТЬ ВТСегменты
    ИЗ
        РегистрСведений.ПартнерыСегмента КАК ПартнерыСегмента
    ГДЕ
        ПартнерыСегмента.Сегмент В(&СписокСегментов)
    ;

    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
        ДогОст.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
        NULL КАК Регистратор,
        СУММА(ДогОст.СуммаОстаток) КАК НачальныйОстаток,
        NULL КАК Приход,
        NULL КАК Расход,
        NULL КАК КонечныйОстаток
    ПОМЕСТИТЬ ОстаткиИОбороты
    ИЗ
        РегистрНакопления.РасчетыСКлиентами.Остатки(&НачДата, ЗаказКлиента.Соглашение.СегментНоменклатуры =СегментНоменклатуры) КАК ДогОст

    СГРУППИРОВАТЬ ПО
        ДогОст.АналитикаУчетаПоПартнерам

    ОБЪЕДИНИТЬ ВСЕ

    ВЫБРАТЬ
        ДогОб.АналитикаУчетаПоПартнерам,
        ДогОб.Регистратор,
        NULL,
        ДогОб.СуммаПриход,
        ДогОб.СуммаРасход,
        NULL
    ИЗ
        РегистрНакопления.РасчетыСКлиентами.Обороты(&НачДата,КонДата, Регистратор, ЗаказКлиента.Соглашение.СегментНоменклатуры =СегментНоменклатуры) КАК ДогОб

    ОБЪЕДИНИТЬ ВСЕ

    ВЫБРАТЬ
        ДогОст.АналитикаУчетаПоПартнерам,
        NULL,
        NULL,
        NULL,
        NULL,
        СУММА(ДогОст.СуммаОстаток)
    ИЗ
        РегистрНакопления.РасчетыСКлиентами.Остатки(ДОБАВИТЬКДАТЕ(&КонДата, СЕКУНДА, 1), ЗаказКлиента.Соглашение.СегментНоменклатуры =СегментНоменклатуры) КАК ДогОст

    СГРУППИРОВАТЬ ПО
        ДогОст.АналитикаУчетаПоПартнерам
    ;

    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
        ОстаткиИОбороты.Регистратор КАК Документ,
        СУММА(ОстаткиИОбороты.НачальныйОстаток) КАК НачальныйОстаток,
        СУММА(ОстаткиИОбороты.Приход) КАК Приход,
        СУММА(ОстаткиИОбороты.Расход) КАК Расход,
        СУММА(ОстаткиИОбороты.КонечныйОстаток) КАК Сумма,
        ВТСегменты.Сегмент КАК Покупатель,
        ОстаткиИОбороты.АналитикаУчетаПоПартнерам.Партнер КАК Партнер
    ИЗ
        ВТСегменты КАК ВТСегменты
            ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиИОбороты КАК ОстаткиИОбороты
            ПО ВТСегменты.Партнер = ОстаткиИОбороты.АналитикаУчетаПоПартнерам.Партнер

    СГРУППИРОВАТЬ ПО
        ОстаткиИОбороты.Регистратор,
        ВТСегменты.Сегмент,
        ОстаткиИОбороты.АналитикаУчетаПоПартнерам.Партнер

    УПОРЯДОЧИТЬ ПО
        Партнер,
        ОстаткиИОбороты.Регистратор.Дата
    ИТОГИ
        СУММА(НачальныйОстаток),
        СУММА(Приход),
        СУММА(Расход),
        СУММА(Сумма)
    ПО
        ОБЩИЕ,
        Покупатель

Yandex
Возможно, вас также заинтересует
Реклама на портале
all4cf
26.08.2016 14:57Ответ № 1

нужно получать остатки в запросе на каждый документ регистратор, тогда они появятся

Подсказка: Для выделения Кода используйте (в редакторе).
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.