[firebase-br] SP Simples no IBExpert

Renato Alexandre renatoacf em gmail.com
Qua Jan 13 13:05:04 -03 2016


Olá tente assim:

create or alter procedure CALC2VALORES (
    OPER char(1),
    VALOR2 integer,
    VALOR1 integer)
returns (
    RESULTADO integer)
as
begin
  /* Procedure Text */
  IF (:OPER = '+') THEN begin
    RESULTADO = :VALOR1 + :VALOR2
  end ELSE IF (:OPER = '-') THEN begin
    RESULTADO = :valor1 - :valor2
  end ELSE IF (:OPER = '*') then begin
    resultado = :valor1 * :valor2
  end ELSE if (:OPER = '/') then begin
    RESULTADO = :VALOR1 / :VALOR2
  end ELSE begin
    RESULTADO = NULL;
  end
  suspend;
end^

Em qua, 13 de jan de 2016 às 11:40, Júlio Vasques <
julio.vasques em tecipar.com.br> escreveu:

> Não conheço o FIREBIRD  e preciso fazer uma SP.
> Peguei um exemplo no youtube de uma SP simples, porém o cara usou o SQL
> Manager Lite para Interbase e Firebird.
>
> Fiz no IBExpert porém da erro de compilação.  O que pode ser?
>
>
> ---------- STATEMENT ----------
>
> create or alter procedure CALC2VALORES (
>     OPER char(1),
>     VALOR2 integer,
>     VALOR1 integer)
> returns (
>     RESULTADO integer)
> as
> begin
>   /* Procedure Text */
>   IF (:OPER = '+') THEN
>     RESULTADO = :VALOR1 + :VALOR2
>   ELSE IF (:OPER = '-') THEN
>     RESULTADO = :valor1 - :valor2
>   ELSE IF (:OPER = '*') then
>     resultado = :valor1 * :valor2
>   ELSE if (:OPER = '/') then
>     RESULTADO = :VALOR1 / :VALOR2
>   ELSE
>     RESULTADO = NULL;
>   suspend;
> end^
>
>
>
>
> ---------- ERROR MESSAGE ----------
>
> can't format message 13:896 -- message file C:\WINDOWS\firebird.msg not
> found.
> Dynamic SQL Error.
> SQL error code = -104.
> Token unknown - line 12, column 3.
> ELSE.
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>



Mais detalhes sobre a lista de discussão lista