[firebase-br] Problema com SP.

Rafael Cabral rafael.cabral em icraft.com.br
Qua Maio 4 13:56:59 -03 2005


Marcel. Faça assim:

      Procedure PROCEDURE_EQUIP_IDEN (CMT integer, SSI integer)
      Returns (Identificacao integer)
      As
      Declare variable Ultimo_Val integer;
      Begin
        For Select Max(Equ_Iden) As Ultimo From Equipamento
             where Cmt_Codi = :CMT and
                      Ssi_Codi = :SSI
             Into :Ultimo_Val
            do
               begin
			Identificacao = COALESCE(Ultimo_Val, 0) + 1;
		   end
      end

Vê se assim funciona.

A função coalesce retorna o primeiro valor da lista de argumentos não-nulo.
Ou seja, se o Ultimo_val for nulo, ele retorna 0.

[]s,

Rafael Cabral




-----Original Message-----
From: lista-bounces em firebase.com.br
[mailto:lista-bounces em firebase.com.br]On Behalf Of Moked do Brasil -
Marcel (Brazil)
Sent: quarta-feira, 4 de maio de 2005 13:30
To: FireBase
Subject: [firebase-br] Problema com SP.



     Marcel Vieira do Nascimento - Suporte Técnico
      Moked do Brasil - Consultoria de Segurança Empresarial
      Divisão MokInf de Informática
      PABX: (55-11) 5071-2748
      suporte em moked.com.br
      www.moked.com.br

      Grau de Sigilo: Confidencial Reservado Interno Amplo
      Nível de Prioridade: Alto Médio Baixo
      Destinatário/s: Lista de divulgação
      ----------------------------------------------------------------------
---
      E ai galera bele!!! Bom estou com o seguinte probleminha não tenho
muita experiência em FireBird peguei o livro e fiz essa SP:

      Procedure PROCEDURE_EQUIP_IDEN (CMT integer, SSI integer)
      Returns (Identificacao integer)
      As
      Declare variable Ultimo_Val integer;
      Begin
        For Select Max(Equ_Iden) As Ultimo From Equipamento
             where Cmt_Codi = :CMT and
                      Ssi_Codi = :SSI
             Into :Ultimo_Val
            do
            if (Ultimo_Val = 'Null') then
              Identificacao = 1;
            else
              Identificacao = Ultimo_Val + 1;
      end


      Gostaria que Identificação me retorna o resultado do calculo feito mas
na hora que executo a SP ele me retorna esse erro dizendo que está havendo
erro na conversão.
      Alguém poderia e ajudar??? Grato desde já!!!


      Marcel

"O emitente da mensagem é o responsável por seu conteúdo e divulgação,
proibindo
sua reprodução sem a prévia autorização do mesmo".
Antes de imprimir pense em nosso compromisso com o Meio Ambiente e o
comprometimento com os Custo envolvidos!
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas:
http://search.gmane.org/search.php?group=rebase





Mais detalhes sobre a lista de discussão lista