suponiendo que el query anterior estaba correcto....
Cuando al menos uno de los signos es igual a 1 se suma el importe
de lo contrario (cuando todos son diferentes de 1) se resta el importe correspondiente....
Código:
Select H.cod_ext_cue
,H.fec_presentacion
,H.fec_pago
,sum(Case When signo_consumo=1 Or signo_adelanto=1 Or signo_cts_std=1 Or signo_cts_ace=1)
Then A.impor_nofact
Else (A.impor_nofact * (-1)) End) As importe
,H.cod_grp_evento
,H.cod_evento
,H.cod_conciliacion
From cf_movifact_vi_hist H
Inner join
cf_mis_ps_conciliacion_activa A
On A.cod_conciliacion= H.cod_conciliacion And
A.cod_grp_evento= H.cod_grp_evento And
A.cod_evento= H.cod_evento And
Group by
H.cod_ext_cue
,H.fec_presentacion
,H.fec_pago
,H.cod_evento
,H.cod_conciliacion
,H.cod_grp_evento