Ver Mensaje Individual
  #2  
Antiguo 02-04-2008
Paulao Paulao is offline
Miembro
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Reputación: 21
Paulao Va por buen camino
Resolvi quebrando en blocos asi:

Cita:
SELECT DISTINCT
TB_SAC_FORMA_PAGTO.TP_F_PAG,
COALESCE((VENDAS.VL_PAG - DEVOLUCOES.VL_PAG),0) VL_PAG
FROM
TB_SAC_FORMA_PAGTO
LEFT JOIN
(SELECT
TB_SAC_FORMA_PAGTO.TP_F_PAG,
COALESCE(SUM(TB_SAC_NF_PAGAMENTO.VL_PAG),0) VL_PAG
FROM
TB_SAC_NF_CAPEADOR
INNER JOIN TB_SAC_NF_PAGAMENTO ON (TB_SAC_NF_CAPEADOR.NU_NF = TB_SAC_NF_PAGAMENTO.NU_NF)
AND (TB_SAC_NF_CAPEADOR.NU_CX = TB_SAC_NF_PAGAMENTO.NU_CX)
AND (TB_SAC_NF_CAPEADOR.SR_NF = TB_SAC_NF_PAGAMENTO.SR_NF)
INNER JOIN TB_SAC_FORMA_PAGTO ON (TB_SAC_NF_PAGAMENTO.CD_F_PAG = TB_SAC_FORMA_PAGTO.CD_F_PAG)
WHERE
(TB_SAC_NF_CAPEADOR.ST_CANC = 0) AND
((TB_SAC_NF_CAPEADOR.SR_NF = 'D2') OR
((TB_SAC_NF_CAPEADOR.SR_NF = 'B2') AND (TB_SAC_NF_CAPEADOR.CD_CFOP = 6102)))
GROUP BY
TB_SAC_FORMA_PAGTO.TP_F_PAG) VENDAS
ON (TB_SAC_FORMA_PAGTO.TP_F_PAG = VENDAS.TP_F_PAG)
LEFT JOIN
(SELECT
TB_SAC_FORMA_PAGTO.TP_F_PAG,
COALESCE(SUM(TB_SAC_NF_PAGAMENTO.VL_PAG),0) VL_PAG
FROM
TB_SAC_NF_CAPEADOR
INNER JOIN TB_SAC_NF_PAGAMENTO ON (TB_SAC_NF_CAPEADOR.NU_NF = TB_SAC_NF_PAGAMENTO.NU_NF)
AND (TB_SAC_NF_CAPEADOR.NU_CX = TB_SAC_NF_PAGAMENTO.NU_CX)
AND (TB_SAC_NF_CAPEADOR.SR_NF = TB_SAC_NF_PAGAMENTO.SR_NF)
INNER JOIN TB_SAC_FORMA_PAGTO ON (TB_SAC_NF_PAGAMENTO.CD_F_PAG = TB_SAC_FORMA_PAGTO.CD_F_PAG)
WHERE
(TB_SAC_NF_CAPEADOR.ST_CANC = 0) AND
(TB_SAC_NF_CAPEADOR.SR_NF = 'E2')
GROUP BY
TB_SAC_FORMA_PAGTO.TP_F_PAG) DEVOLUCOES
ON (TB_SAC_FORMA_PAGTO.TP_F_PAG = DEVOLUCOES.TP_F_PAG)
Responder Con Cita