[firebase-br] RES: Erro migração FB 1.5 para 2.1 trigger

Eduardo Jedliczka edujed em gmail.com
Ter Abr 12 08:06:47 -03 2011


NEW.ID = NULL ???

você não deveria ter escrito:

IF (NEW.ID IS NULL) THEN
BEGIN
   NEW.ID = GEN(...)
END


==========================
Eduardo Jedliczka
Apucarana - Pr
==========================



Em 8 de abril de 2011 12:12, andre conrado <acf.andre em gmail.com> escreveu:
>
> Amigo, já passei por este mesmo problema quanto migrei de FB 1.5 para 2.1.
>
> No meu caso está mensagem ocorria porque eu estava alterando o mesmo
> campo via INSERT/UPDATE e tratando dentro da TRIGGER o que gerava esta
> mensagem.
>
> Ex.: Numa tabela a chave primária era gerada dentro do aplicativo (ID
> = GEN(...)), mas em outro lugar do sistema eu não informava a ID, a
> qual era atualizada dentro da TRIGGER da seguinte forma:
>
> IF (NEW.ID = NULL) THEN
> BEGIN
>    NEW.ID = GEN(...)
> END
>
> No FB 1.5 isto funcionava perfeitamente, mas no FB 2.1 resultava esta mensagem.
>
> Espero que esta caso lhe ajude!!!
>
> Um abraço,
> Conrado.
>
>
> 2011/4/7, Cyber Guido <cyberguido em gmail.com>:
> >   Danilo,
> >
> > Tente
> >
> > CREATE OR ALTER trigger t01_clientes_au0 for t01_clientes
> > active before update position 1
> > AS
> >    declare variable teste01 VARCHAR(1);
> >    declare variable teste02 INTEGER;
> >    declare variable teste03 INTEGER;
> >
> > begin
> >
> >    if (NEW.ativo = 'I') then
> >    BEGIN
> >
> >      SELECT first 1
> >        T21.teste01,
> >        T21.teste02,
> >        T21.teste03
> >      FROM
> >        t21_venda t21
> >      WHERE
> >        T21.cd_cliente = NEW.cd_cliente
> >      INTO
> >        :teste01,
> >        :teste02,
> >        :teste03 ;
> >
> >      UPDATE t21_venda t21
> >      SET
> >        T21.teste01_hist = :teste01,
> >        T21.teste02_HIST = :teste02,
> >        t21.teste03_hist = :teste03
> >      WHERE
> >        T21.cd_cliente = old.cd_cliente;
> >
> >    END
> >
> > end
> >
> > Se não funcionar, nos passe um script de criação da tabela t21_venda com
> > a definição dos campos.
> >
> > --
> > Até,
> > Carlos
> >
> >
> >
> > On 07/04/2011 14:09, Danilo wrote:
> >> Olá ..
> >>
> >> Já testei com e sem os dois pontos também amigo
> >>
> >> Danilo
> >> ______________________________________________
> >> 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://firebase.com.br/pesquisa
> >>
> >
> >
> > ______________________________________________
> > 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://firebase.com.br/pesquisa
> >
>
>
> --
> Um Abraço,
> André Conrado.
>
> 055 21 9176-7013 - Claro
> 055 21 9896-5449 - Vivo (apenas mensagens SMS)
>
> ______________________________________________
> 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://firebase.com.br/pesquisa




Mais detalhes sobre a lista de discussão lista