Загрузка данных


with agg_p as (
    select
        si.id,
        sum(
            coalesce(rd.sum_dt_pu, 0)
            - coalesce(rd.sum_ct_pu, 0)
        ) as s_pu,
        sum(
            coalesce(rd.sum_dt_bu, 0)
            - coalesce(rd.sum_ct_bu, 0)
        ) as s_bu
    from ourpension.spr_indicator_bu si
    join ourpension.spr_indicator_bu si1
        on si.id = si1.is_aggregate
    join ourpension.spr_accounts_indicator_bu sa
        on sa.spr_indicator_bu_id = si1.id
    join back_office.report_conformity_pu_bu_detail rd
        on rd.report_conformity_pu_bu_id = $P{id}
       and rd.account = sa.account
    join back_office.report_conformity_pu_bu r
        on r.id = rd.report_conformity_pu_bu_id
       and r.service_type = any(si.service_type)
       and r.service_type = any(si1.service_type)
    group by si.id
),