[firebase-br] Erro em Trigger

Joelson - Souzamark joelsonss em yahoo.com.br
Sáb Jun 25 17:36:55 -03 2005


Caro amigo

tente colocar a condição Inserting entre parenteses ()


if (inserting) then
blabla


sem mais
Joelson


----- Original Message ----- 
From: "Informática" <infokernel em yahoo.com.br>
To: "Lista Firebird" <lista em firebase.com.br>
Sent: Saturday, June 25, 2005 4:00 PM
Subject: [firebase-br] Erro em Trigger


> Pessoal!
>
> O que esta errado nesta trigger abaixo:
> Esta dando um erro :
>
> /*******************************************************************************
> The next statement causes the following error:
>
> Invalid token.
> Dynamic SQL Error.
> SQL error code = -104.
> Token unknown - line 5, char 6.
> inserting.
> *******************************************************************************/
>
> CREATE TRIGGER ESTOQUE_ORDEM_SAIDA FOR
> ITEM_ORDEM_SAIDA
> ACTIVE BEFORE INSERT OR UPDATE OR DELETE POSITION 0
> AS
> begin
>  if inserting then
>  begin
>    update medicamentos set estoque = estoque -
> new.qtde_medic where cd_medicamento =
> new.cd_medicamento;
>  end
>  if updating then
>  begin
>    if new.qtde_medic > old.qtde_medic then
>    begin
>      update medicamentos set estoque = estoque -
> (new.qtde_medic - old.qtde_medic) where cd_medicamento
> = new.cd_medicamento;
>    end
>    else
>    begin
>      update medicamentos set estoque = estoque +
> (old.qtde_medic - new.qtde_medic) where cd_medicamento
> = new.cd_medicamento;
>    end
>  end
>  if deleting then
>  begin
>    update medicamentos set estoque = estoque +
> old.qtde_medic where cd_medicamento =
> new.cd_medicamento;
>  end
> end
>
> ;
>
>
> SET TERM ^ ;
>
> CREATE TRIGGER ESTOQUE_ORDEM_SAIDA FOR
> ITEM_ORDEM_SAIDA
> ACTIVE BEFORE INSERT OR UPDATE OR DELETE POSITION 0
> AS
> begin
>  if inserting then
>  begin
>    update medicamentos set estoque = estoque -
> new.qtde_medic where cd_medicamento =
> new.cd_medicamento;
>  end
>  if updating then
>  begin
>    if new.qtde_medic > old.qtde_medic then
>    begin
>      update medicamentos set estoque = estoque -
> (new.qtde_medic - old.qtde_medic) where cd_medicamento
> = new.cd_medicamento;
>    end
>    else
>    begin
>      update medicamentos set estoque = estoque +
> (old.qtde_medic - new.qtde_medic) where cd_medicamento
> = new.cd_medicamento;
>    end
>  end
>  if deleting then
>  begin
>    update medicamentos set estoque = estoque +
> old.qtde_medic where cd_medicamento =
> new.cd_medicamento;
>  end
> end
>
> ^
>
> SET TERM ; ^
>
>
>
>
>
>
>
> _______________________________________________________
> Yahoo! Acesso Grátis - Internet rápida e grátis.
> Instale o discador agora! http://br.acesso.yahoo.com/
>
> ______________________________________________
> 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://firebase.com.br/pesquisa
>
>
> -- 
> No virus found in this incoming message.
> Checked by AVG Anti-Virus.
> Version: 7.0.323 / Virus Database: 267.8.1/28 - Release Date: 24/06/2005
> 





Mais detalhes sobre a lista de discussão lista