TO desenvolvendo um plano de contas em oracle, o´problema é que não consigo pedir pra ele subtrair o valor quando é debito (tabela clanca) e somar quando é credito....
O script segue abaixo, se alguém puder me ajudar...
Seria esse campo L.Valor, tentei colocar um case junto, dizendo que se campo credito fosse diferente de nulo pra ele somar, se o campo debito for diferente de nulo pra ele subtrair... mais não funcionou.
Obs: Campo Credito e Debito estao em uma tabela chamada clanca, ela tem a seguinte estrutura.
data credito debito valor
como eu sei quando é debito ou credito? Quando o campo credito ou debito esta preenchido... exemplo:
data credito debito valor
10/09 null 123321 100,00 -- nesse caso é debito
11/08 23454 null 98.88 -- nesse caso é credito
Select
L.Credito As "Contas"
, Sum(Decode(To_Char(L.Data, 'mm'), '01' ,Nvl(L.Valor,0) ) )-S.Valor Janeiro
, Sum(Decode(To_Char(L.Data, 'mm'), '02' ,Nvl(L.Valor,0) ) )-S.Valor Fevereiro
, Sum(Decode(To_Char(L.Data, 'mm'), '03' ,Nvl(L.Valor,0) ) )-S.Valor Março
, Sum(Decode(To_Char(L.Data, 'mm'), '04' ,Nvl(L.Valor,0) ) )-S.Valor Abril
, Sum(Decode(To_Char(L.Data, 'mm'), '05' ,Nvl(L.Valor,0) ) )-S.Valor Maio
, Sum(Decode(To_Char(L.Data, 'mm'), '06' ,Nvl(L.Valor,0) ) )-S.Valor Junho
, Sum(Decode(To_Char(L.Data, 'mm'), '07' ,Nvl(L.Valor,0) ) )-S.Valor Julho
, Sum(Decode(To_Char(L.Data, 'mm'), '08' ,Nvl(L.Valor,0) ) )-S.Valor Agosto
, Sum(Decode(To_Char(L.Data, 'mm'), '09' ,Nvl(L.Valor,0) ) )-S.Valor Setembro
, Sum(Decode(To_Char(L.Data, 'mm'), '10' ,Nvl(L.Valor,0) ) )-S.Valor Outubro
, Sum(Decode(To_Char(L.Data, 'mm'), '11' ,Nvl(L.Valor,0) ) )-S.Valor Novembro
, Sum(Decode(To_Char(L.Data, 'mm'), '12' ,Nvl(L.Valor,0) ) )-S.Valor Dezembro
Pergunta
Marcio_loko
Boa Tarde Pessoal
TO desenvolvendo um plano de contas em oracle, o´problema é que não consigo pedir pra ele subtrair o valor quando é debito (tabela clanca) e somar quando é credito....
O script segue abaixo, se alguém puder me ajudar...
Seria esse campo L.Valor, tentei colocar um case junto, dizendo que se campo credito fosse diferente de nulo pra ele somar, se o campo debito for diferente de nulo pra ele subtrair... mais não funcionou.
Obs: Campo Credito e Debito estao em uma tabela chamada clanca, ela tem a seguinte estrutura.
data credito debito valor
como eu sei quando é debito ou credito? Quando o campo credito ou debito esta preenchido... exemplo:
data credito debito valor
10/09 null 123321 100,00 -- nesse caso é debito
11/08 23454 null 98.88 -- nesse caso é credito
Select
L.Credito As "Contas"
, Sum(Decode(To_Char(L.Data, 'mm'), '01' ,Nvl(L.Valor,0) ) )-S.Valor Janeiro
, Sum(Decode(To_Char(L.Data, 'mm'), '02' ,Nvl(L.Valor,0) ) )-S.Valor Fevereiro
, Sum(Decode(To_Char(L.Data, 'mm'), '03' ,Nvl(L.Valor,0) ) )-S.Valor Março
, Sum(Decode(To_Char(L.Data, 'mm'), '04' ,Nvl(L.Valor,0) ) )-S.Valor Abril
, Sum(Decode(To_Char(L.Data, 'mm'), '05' ,Nvl(L.Valor,0) ) )-S.Valor Maio
, Sum(Decode(To_Char(L.Data, 'mm'), '06' ,Nvl(L.Valor,0) ) )-S.Valor Junho
, Sum(Decode(To_Char(L.Data, 'mm'), '07' ,Nvl(L.Valor,0) ) )-S.Valor Julho
, Sum(Decode(To_Char(L.Data, 'mm'), '08' ,Nvl(L.Valor,0) ) )-S.Valor Agosto
, Sum(Decode(To_Char(L.Data, 'mm'), '09' ,Nvl(L.Valor,0) ) )-S.Valor Setembro
, Sum(Decode(To_Char(L.Data, 'mm'), '10' ,Nvl(L.Valor,0) ) )-S.Valor Outubro
, Sum(Decode(To_Char(L.Data, 'mm'), '11' ,Nvl(L.Valor,0) ) )-S.Valor Novembro
, Sum(Decode(To_Char(L.Data, 'mm'), '12' ,Nvl(L.Valor,0) ) )-S.Valor Dezembro
, S.Valor
From Clanca L Join Cconta C
On L.Codcoligada = C.Codcoligada
And L.credito = C.Codconta
Join Csdant S
On S.Codcoligada = C.Codcoligada
And S.Codconta = C.Codconta
And Substr(L.Credito,1,1) = '1'
And To_Char(L.Data,'yy') = '09'
GROUP BY L.Credito, S.Valor
order by L.credito
se alguém puder me ajudar, agradeco muito
Link para o comentário
Compartilhar em outros sites
0 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.