[firebase-br] Procedure

tmg-marcelo marcelo em tmg.ind.br
Sex Jan 19 13:38:04 -03 2007


O esquema q fiz foi esse, mas não consigo executar.

SET TERM ^ ;

CREATE PROCEDURE SP_ALTERA_ANIMAL (
    spdatanasc date,
    spnumpartos char(1),
    spsexo char(5),
    sppkgrupo integer)
as
declare variable vgrupo integer;
declare variable vdias integer;
begin
   vdias = current_date - :spdatanasc;

   if (:spsexo = 'Fêmea') then
   begin
      if (:spnumpartos = 1) then
        vgrupo = 8;
      else if (:spnumpartos = 2) then
        vgrupo = 9;
      else if (:spnumpartos >= 5) then
        vgrupo = 12;
      else if (:vdias <= 90) then
        vgrupo = 1;
      else if (:vdias > 90 and :vdias <= 180) then
        vgrupo = 2;
      else if (:vdias > 180 and :vdias <= 270) then
        vgrupo = 3;
   end else
   begin
      vgrupo = 13;
   end

  begin
    update tbanimal set
      fkgrupo =: vgrupo
    where fkgrupo = : sppkgrupo;
  end
end^

SET TERM ; ^

GRANT SELECT,UPDATE ON TBANIMAL TO PROCEDURE SP_ALTERA_ANIMAL;

GRANT EXECUTE ON PROCEDURE SP_ALTERA_ANIMAL TO SYSDBA;




> manda um select simples na sua procedure,
> exemplo:
> select * from sp_recebimentos(:data);
>





Mais detalhes sobre a lista de discussão lista