Funcao Case em Stored Procedure, qual a sintaxe?

23/09/2006

0

Ola.

Alguem tem uma dica de como eu posso solucionar o seguinte caso.


Tenho 12 campos que referenciam aos 12 meses do ano (VLR1..Vlr12) numeric (16,6)

Preciso atribuir o valor da venda ao seu referido mes(no caso o campo).

obtenho o mes da venda: set @IMES = month(@NOTA_DATA)

como faço pra lancar no campo correspondente?


 case @IMES = 
  when 1 then set VLR1 = @VALOR
  when 2 then set VLR2 = @VALOR
 end



Seria algo assim?

Mas isso nao esta funcionando
O case nao esta sendo reconhecido na SP.


grato.

[]´s




:roll:


Macario

Macario

Responder

Posts

26/09/2006

Psergio.p

Caro amigo, não entendi bem o que você precisa, poderia explicar melhor e postar a estrutura da sua tabela?


Responder

27/09/2006

Raserafim

tente algo neste sentido:
 case
  when @IMES = 1 then (update nometabela set VLR1 = @VALOR)
  when @IMES = 2 then (update nometabela set VLR2 = @VALOR)
  ...
 end



Responder

27/09/2006

Macario

Caro amigo, não entendi bem o que você precisa, poderia explicar melhor e postar a estrutura da sua tabela?



Ola.

Eu estou gerando um relatorio de vendas anuais.

Vou citar um exemplo basico que nao reflete todo o codigo da SP em questao.


Dentro da SP faco o seguite.

declare CURSOR_TEMP cursor local fast_forward for
  select CLIENTE, NOTA, DATA, VALOR from TABNOTAS



Que me retorna o seguinte:
CLIENTE---->NOTA---->DATA---------VALOR
0000001---->01010--->10/07/2006--100
0000001---->02010--->10/08/2006--200
0000002---->03010--->11/09/2006--300



Tenho 12 variaveis para poder ´jogar´ o valor da nota no mes de referencia(campo DATA)

Por exemplo a nota 02010 o valor vai para a
[b:776dabc4e9]
if(@MES= 8)
set @VLR8 = VALOR
[/b:776dabc4e9]
Entao depois eu faco um update na tabela com o valor no mes de venda.

O que esta acontecendo e que dentro da SP estou testando o mes atravez de 12 [b:776dabc4e9]IF´s[/b:776dabc4e9]

Acredito que exista uma maneira mais pratica e logica para esta situacao.


espero ter esclarecido melhor minha necessidade.


Responder

28/09/2006

Psergio.p

Você já está usando if então?


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar