fernandov Postado Abril 16, 2010 Denunciar Share Postado Abril 16, 2010 Olá pessoal. Estou elaborando um relatório de fluxo de caixa. Preciso que seja exibido o "total" de cheques + o total de banco ( ambos do mesmo dia - mesma linha ). Obs: abaixo, fiz a união de 2 selects.Preciso que, se as datas forem iguais, seja exibido o total da soma de cheque + banco do dia. Exemplo: Data | Cheques | Banco | Total01/04/2010 | 100,00 | 100,00 | 200,0002/04/2010 | 0,00 | 20,00 | 20,00Elaborei o código abaixo que me retorna em datas diferentes e não a soma por dia:select convert (varchar, dfp.DataPagamento,103) DataPagamento, convert(varchar,c.DataVencimento,103) DataVencimento, coalesce( tr1.ChequesReceber,0) + coalesce(tr2.BancoaReceber,0) ReceberChequeBanco fromcheque c, docfinparcela dfp, lotecheque lc,documentofinanceiro df,( select sum(Valor) 'ChequesReceber'from cheque where status = 'p' -- pendente ( cheque a receber ) and DataVencimento between '01/04/2010' and '01/05/2010'group by dataVencimento) as tr1,(select dfp.DAtapagamento, sum(dfp.Valor)'BancoaReceber'from DocumentoFinanceiro df, DocFinParcela dfpwhere df.Tipo = 'R'-- Contas a Receber ( Debito ) and df.CodDocFin = dfp.CodDocFin and dfp.Pago ='N' and dfp.DataPagamento between '01/04/2010' and '01/05/2010' -- a receber no intervalogroup by dfp.DataPagamento)as tr2where dfp.coddocfin = df.coddocfin and lc.coddocfin = df.coddocfin group by c.dataVencimento, dfp.DataPagamento, coalesce( tr1.ChequesReceber,0) + coalesce(tr2.BancoaReceber,0) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 quintelab Postado Abril 20, 2010 Denunciar Share Postado Abril 20, 2010 Movido Outras Linguagens de Programação > SQL Server Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Abril 20, 2010 Denunciar Share Postado Abril 20, 2010 Bom dia Fernando, O exemplo que postou é o resultado que deseja?Data | Cheques | Banco | Total01/04/2010 | 100,00 | 100,00 | 200,0002/04/2010 | 0,00 | 20,00 | 20,00 Como os dados estão sendo visualizados? Como é a estrutura da tabela de origem em que os dados serão manipulados para obter o resultado acima?Ex.:DataPagamento | DataVencimento | ChequesReceberXXXX | XXX | XX,XXXXXX | XXX | XX,XX Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
fernandov
Olá pessoal. Estou elaborando um relatório de fluxo de caixa.
Preciso que seja exibido o "total" de cheques + o total de banco ( ambos do mesmo dia - mesma linha ).
Obs: abaixo, fiz a união de 2 selects.
Preciso que, se as datas forem iguais, seja exibido o total da soma de cheque + banco do dia.
Exemplo:
Data | Cheques | Banco | Total
01/04/2010 | 100,00 | 100,00 | 200,00
02/04/2010 | 0,00 | 20,00 | 20,00
Elaborei o código abaixo que me retorna em datas diferentes e não a soma por dia:
select
convert (varchar, dfp.DataPagamento,103) DataPagamento, convert(varchar,c.DataVencimento,103) DataVencimento,
coalesce( tr1.ChequesReceber,0) + coalesce(tr2.BancoaReceber,0) ReceberChequeBanco
from
cheque c, docfinparcela dfp, lotecheque lc,documentofinanceiro df,
(
select
sum(Valor) 'ChequesReceber'
from
cheque
where
status = 'p' -- pendente ( cheque a receber )
and DataVencimento between '01/04/2010' and '01/05/2010'
group by
dataVencimento
) as tr1,
(
select
dfp.DAtapagamento, sum(dfp.Valor)'BancoaReceber'
from
DocumentoFinanceiro df, DocFinParcela dfp
where
df.Tipo = 'R'-- Contas a Receber ( Debito )
and df.CodDocFin = dfp.CodDocFin
and dfp.Pago ='N'
and dfp.DataPagamento between '01/04/2010' and '01/05/2010' -- a receber no intervalo
group by
dfp.DataPagamento
)as tr2
where
dfp.coddocfin = df.coddocfin and
lc.coddocfin = df.coddocfin
group by
c.dataVencimento, dfp.DataPagamento,
coalesce( tr1.ChequesReceber,0) + coalesce(tr2.BancoaReceber,0)
Link para o comentário
Compartilhar em outros sites
2 respostass 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.