CREATE VIEW VIEW_FIN_FLUXO_CAIXA(
    ID_CONTA_CAIXA,
    NOME_CONTA_CAIXA,
    NOME_PESSOA,
	DATA_LANCAMENTO,
    DATA_VENCIMENTO,
    VALOR,
    CODIGO_SITUACAO,
	DESCRICAO_SITUACAO,
    OPERACAO)
AS
select
  CC.ID AS ID_CONTA_CAIXA, CC.NOME AS NOME_CONTA_CAIXA, P.NOME,
  LP.DATA_LANCAMENTO, PP.DATA_VENCIMENTO, 
  PP.VALOR, SP.SITUACAO, SP.DESCRICAO, 'S' AS OPERACAO
 
from 
  FIN_PARCELA_PAGAR PP 
	inner join CONTA_CAIXA CC on (PP.ID_CONTA_CAIXA = CC.ID)
	inner join FIN_LANCAMENTO_PAGAR LP on (PP.ID_FIN_LANCAMENTO_PAGAR = LP.ID)
	inner join FORNECEDOR F on (LP.ID_FORNECEDOR = F.ID) 
	inner join PESSOA P on (F.ID_PESSOA = P.ID)
	inner join FIN_STATUS_PARCELA SP on (PP.ID_FIN_STATUS_PARCELA = SP.ID)

where
  SP.SITUACAO <> '02'
 
union
 
select
  CC.ID AS ID_CONTA_CAIXA, CC.NOME AS NOME_CONTA_CAIXA, P.NOME,
  LR.DATA_LANCAMENTO, PR.DATA_VENCIMENTO, 
  PR.VALOR, SP.SITUACAO, SP.DESCRICAO, 'E' AS OPERACAO
 
from 
  FIN_PARCELA_RECEBER PR 
	inner join CONTA_CAIXA CC on (PR.ID_CONTA_CAIXA = CC.ID)
	inner join FIN_LANCAMENTO_RECEBER LR on (PR.ID_FIN_LANCAMENTO_RECEBER = LR.ID)
	inner join CLIENTE C on (LR.ID_CLIENTE = C.ID) 
	inner join PESSOA P on (C.ID_PESSOA = P.ID)
	inner join FIN_STATUS_PARCELA SP on (PR.ID_FIN_STATUS_PARCELA = SP.ID)

where
  SP.SITUACAO <> '02'
 
ORDER BY 9
;