Ir para conteúdo
Fórum Script Brasil
  • 0

Fluxo de Caixa Montar Select


DanielR

Pergunta

Bom dia a todos!

pessoal estou criando um fluxo de caixa aqui na empresa, porém estou me enrolando no tal do select. Vejam preciso trazer as seguintes informações

||||||| Recebido ||| A Receber ||| Total |||||||||| Pago ||||||||||| A pagar ||||||||| Total |||||| Recebido/Pago ||| A Receber/A pagar ||| Final ||||||||

jan||| 100,00 |||||| 50,00 ||||||||| 150,00 ||||||| 75,00 |||||||||| 50,00 |||||||||||| 125,00 |||| 25,00 ||||||||||||| 0,00 |||||||||||||||||||| 25,00 ||||||||

fev

mar

abril e assim por diante.

tenho nomeu banco um relacionamento da seguinte forma:

DOCUMENTOS (tudo passa por aqui)

DOC_PAGAR

DOC_RECEBER (se o documento é a pagar vai ser gravado na tab DOCUMENTOS e DOC_PAGAR, o mesmo acontece com DOC_RECEBER)

todo documento tem PARCELAS mesmo que avista terá 1 parcela então ligado a tabela DOCUEMENTOS tenho a tab PARCELAS e ligado a ela a tabela PARCELAS_BAIXA.

pronto. Basicamente é isso. Para pegar o valor recebido, a receber, pago e a pagar, foi tranquilo. os totais que estão apertando.

vamos pegar:

Recebido||||||||| A Receber ||||||||||||||||||||||||||||||| Total

ok __________ é o valor nominal - valor recebido___ aqui tenho que calcular o Recebido + a Receber, porém deu esse erro: Column unknown VALOR_RECEBIDO.

Vejam o select

SELECT

DOCUMENTOS.VALORTOTAL AS VALOR_NOMINAL,

COALESCE((SELECT sum(PARCELA_BAIXA.VALOR_TOTAL) FROM PARCELA_BAIXA WHERE(1 = 1)

AND(PARCELA_BAIXA.EMPRESA = PARCELAS.EMPRESA) AND(PARCELA_BAIXA.CODIGO = PARCELAS.CODIGO)

AND(PARCELA_BAIXA.PARCELA = PARCELAS.PARCELA)),0) AS VALOR_RECEBIDO,

COALESCE( PARCELAS.VALOR - VALOR_PAGO, PARCELAS.VALOR ) AS VALOR_ABERTO,

(VALOR_RECEBIDO + VALOR_ABERTO) AS TOTAL /* aqui estou com o problema */

FROM

DOCUMENTOS

INNER JOIN PARCELAS ON (DOCUMENTOS.EMPRESA=PARCELAS.EMPRESA)

AND (DOCUMENTOS.CODIGO=PARCELAS.CODIGO)

LEFT OUTER JOIN PARCELA_BAIXA ON (PARCELAS.EMPRESA=PARCELA_BAIXA.EMPRESA)

AND (PARCELAS.CODIGO=PARCELA_BAIXA.CODIGO)

AND (PARCELAS.PARCELA=PARCELA_BAIXA.PARCELA)

INNER JOIN DOC_RECEBER ON (DOCUMENTOS.EMPRESA=DOC_RECEBER.EMPRESA)

AND (DOCUMENTOS.CODIGO=DOC_RECEBER.CODIGO)

WHERE

(1 = 1) AND

(DOCUMENTOS.LANCAMENTO_ORIGEM <> 'FAT')

Obrigado pela ajuda!

Daniel

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...