Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

kamidaki

Problema na soma 3 colunas

Recommended Posts

Estou utilizando uma aplicação que utiliza views feitas em oracle, só que estou com um problema, tenho 3 campos , valor, valor_acumulado e valor_anterior só que apenas na primeira coluna preciso somar o valor anterior estava tentando resolver com case ou if. Esta aplicação é de Reports então não consigo rodar procedure nela

 

as condições que necessito são as de se o valor anterior existir somar ele com o valor caso seja da segunda linha pra frente somo o valor no valor acumulado

 

if(valor_anterior>0 e que ele seja o primeiro registro)

valor_acumulado = valor_anterior+valor;

else

valor_acumulado=valor_acumulado+valor;

 

exemplo:

o vl_anterior=100 e valor=10 então vl_acumulado=110

na linha 2 valor=50 então vl_acumulado=160(pois soma com o 110 anterior)

necessito saber se o registro que esta rodando é o primeiro, porqueq a partir do 2° não preciso saber o vl_anterior pois o vl_acumulado vira o o vl_anterior....preciso preferencialmente de uma solução que não fosse if ou case

 

Obs: o jeito de fazer if no report é diferente e case também...

Compartilhar este post


Link para o post
Compartilhar em outros sites

kamidaki , tente explicar melhor o problema eu não entendi muito bem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu tenho um reltório onde preciso demonstrar Valor, Valor Acumulado.... o Valor é a soma de valores de um item, o Valor Acumulado é a soma desses valores.... por exemplo

 

ValorAnterior 100

 

Valor ValorAcumulado

100 200

500 700

600 1300

 

onde o primeiro valor verifica se existe um valor anterior...caso haja ele soma com o valor atual e mostra no ValorAcumulado

precisava retorna esses valores em uma view, porque na aplicação que eu tenho o jeito de usar o if/else ou case é diferente do banco



outro exemplo

 

ValorAnterior 0

 

Item Valor ValorAcumulado

id1 100 100

id2 200 300

id3 650 950

 

neste caso o valor anterior é zero....mas eu preciso testar apenas na primeira linha.... na verdade isto é por item... todos os itens tem valor anterior mas não quero testar a condicao de ValorAnterior a partir da segunda linha

Compartilhar este post


Link para o post
Compartilhar em outros sites

Publique a solução, pode vir a ajudar alguém.

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.