obrigado andrei eu nao tinha visto


2009/4/30 Andrei Luís <compuvale.softw...@gmail.com>

>
>
> Olá Felipe,
>
> Não sou o JB mas vou responder a tua pergunta, na verdade vou apontar pra
> resposta pois a mesma já foi dada pelo Rubens na primeira msg dele nesta
> thread, basta você executar a instrução
>
>
> SELECT GEN_ID(<nome_generator>, 0) FROM RDB$DATABASE
>
> E pegar o valor retornado pela função gen_id
>
> []
> Andrei
>
> 2009/4/30 felipe govoni <govoni.fel...@gmail.com<govoni.felipe%40gmail.com>
> >
>
> > resolvi usando um refresh e um query.last dai consigo pegar o id.
> >
> >
> > jb como faço para recuperar o id od generetor antes do post?
> >
> > 2009/4/30 JB <josebened...@gmail.com <josebenedito%40gmail.com>>
> >
> > >
> > >
> > > existe returning no insert do firebird, mas para seu caso aconselho
> > > recuperar o id do generator antes de dar o post, ou até mesmo
> > > apresentar o id para o usuário na inclusão, retirando a chamada do
> > > generator da trigger, mas isto elimina sequencias de acordo com os
> > > cancelamentos d registros... se não tiver problema acho que pode ser
> > > uma solução.
> > >
> > > 2009/4/30 Rubem Nascimento da Rocha 
> > > <djpardalro...@hotmail.com<djpardalrocha%40hotmail.com>
> > <djpardalrocha%40hotmail.com>
> > > >:
> > >
> > > >
> > > >
> > > >
> > > >
> > > > O q vc queria é que o SGBD fosse inteligente a ponto de notificar a
> > > > aplicação cliente e o dataset do Delphi pudesse fazer isso automático
> > pra
> > > > vc. E até onde me consta, nenhum SGBD no mercado tem um esquema de
> > > callback
> > > > que pudesse ser implementado em camadas de acesso baseadas no dataset
> > do
> > > > Delphi e q permitisse aos datasets do Delphi terem essa inteligência.
> > Ou
> > > > seja, não existe receita mágica, pulo do gato ou (ARGH!) gambiarra!
> Ou
> > > usa o
> > > > método Refresh() do DataSet ou abre e fecha a consulta.
> > > >
> > > > Sds.
> > > >
> > > > To: delphi-br@yahoogrupos.com.br 
> > > > <delphi-br%40yahoogrupos.com.br><delphi-br%
> 40yahoogrupos.com.br>
> > > > From: govoni.fel...@gmail.com <govoni.felipe%40gmail.com><govoni.felipe%
> 40gmail.com>
> > > > Date: Thu, 30 Apr 2009 13:05:36 -0300
> > > > Subject: Re: [delphi-br] firebird - acessar campo auto incremento
> > > >
> > > > desculpe RUBEM
> > > >
> > > > na verdade nao é erro, e o data module noa tem nenhum codigo, como
> > > > o firebird nao tem o auto incremento, logo apos o post nao esta
> > acessivel
> > > o
> > > > valor do id somente depois do refresh. eu queria saber se tem uma
> > maneira
> > > > mais correta pra resover isso ou se vou ter q faze uma gambiarra.
> > > >
> > > > 2009/4/30 Rubem Nascimento da Rocha 
> > > > <djpardalro...@hotmail.com<djpardalrocha%40hotmail.com>
> > <djpardalrocha%40hotmail.com>
> > > >
> > > >
> > > >>
> > > >>
> > > >>
> > > >> Só isso é pouco e vago pra analisar o problema! Precisaria olhar o
> > > código
> > > >> desse suposto data module de nome DMGeral. E ainda não sei qual a
> > camada
> > > >> de
> > > >> acesso a dados vc está usando (BDE, ADO/dbGo, dbExpress, etc.). Mas
> > > teria
> > > >> que olhar o código do data module pra saber o q vc fez errado!
> > > >>
> > > >> Sds.
> > > >>
> > > >> P.S.: Meu nome é no singular!
> > > >>
> > > >>
> > > >>
> > > >> To: delphi-br@yahoogrupos.com.br 
> > > >> <delphi-br%40yahoogrupos.com.br><delphi-br%
> 40yahoogrupos.com.br
> > ><delphi-br%
> > > 40yahoogrupos.com.br>
> > > >> From: govoni.fel...@gmail.com 
> > > >> <govoni.felipe%40gmail.com><govoni.felipe%
> 40gmail.com
> > ><govoni.felipe%
> > > 40gmail.com>
> > > >> Date: Thu, 30 Apr 2009 12:53:40 -0300
> > > >> Subject: Re: [delphi-br] firebird - acessar campo auto incremento
> > > >>
> > > >> desculpe rubens acho q nao me expressei bem:
> > > >>
> > > >> eu criei o generetor e o trigger, mas minha duvida e no delphi.
> > > >>
> > > >> tenho um:
> > > >>
> > > >> DMGeral.qryCompras.Append;
> > > >> DMGeral.qryCompras.Post;
> > > >>
> > > >> e em outra procedure, faço isso
> > > >>
> > > >> dmgeral.qryProdutos.filedbyname('id_compra').value :=
> > > >> dmgeral.qryCompras.filedbyname('id_compra').value;
> > > >>
> > > >> porem ele retorna vazio, se eu der um refresh ele retorna para o
> > > primeiro
> > > >> registro
> > > >> da query. preciso atualizar a query para pegar o id_compra.
> > > >>
> > > >> 2009/4/30 Rubem Nascimento da Rocha
> > > >> <djpardalro...@hotmail.com <djpardalrocha%40hotmail.com><djpardalrocha%
> 40hotmail.com
> > ><djpardalrocha%
> > > 40hotmail.com>
> > > >> >
> > > >>
> > > >> >
> > > >> >
> > > >> >
> > > >> > Até onde me consta, não existe a figura de campo auto-incremento
> no
> > > >> > FireBird. Esse comportamento é simulado por meio de GENERATOR's e
> > > >> TRIGGER's.
> > > >> >
> > > >> > Verifique o código da trigger que é executada no evento BEFORE
> > INSERT
> > > da
> > > >> > tabela em questão. Nesse código, com toda a certeza, está sendo
> > usada
> > > a
> > > >> > função GEN_ID() para incrementar o valor de um generator, e o
> valor
> > > >> > resultante é atribuído ao campo chave da tabela. Para saber qual o
> > > >> > último
> > > >> > valor gerado pelo GENERATOR usado na trigger, use a seguinte
> sintaxe
> > > >> SELECT
> > > >> > SQL:
> > > >> >
> > > >> > SELECT GEN_ID(<nome_generator>, 0) FROM RDB$DATABASE
> > > >> >
> > > >> > Boa sorte.
> > > >> > Sds.
> > > >> >
> > > >> > To: delphi-br@yahoogrupos.com.br 
> > > >> > <delphi-br%40yahoogrupos.com.br><delphi-br%
> 40yahoogrupos.com.br>
> > > >> > <delphi-br%40yahoogrupos.com.br><delphi-br%
> > > >> 40yahoogrupos.com.br>
> > > >> > From: govoni.fel...@gmail.com 
> > > >> > <govoni.felipe%40gmail.com><govoni.felipe%
> 40gmail.com
> > ><govoni.felipe%
> > > 40gmail.com><govoni.felipe%
> > > >> 40gmail.com>
> > > >> > Date: Thu, 30 Apr 2009 12:41:47 -0300
> > > >> > Subject: [delphi-br] firebird - acessar campo auto incremento
> > > >> >
> > > >> >
> > > >> > boa tarde
> > > >> >
> > > >> > tenho uma procedure onde adiciono e salvo um registro mas preciso
> > > >> > acessar
> > > >> > o valor do campo auto incremento, como faço isso? pois se dou um
> > > refresh
> > > >> > ele volta para o primeiro registro.
> > > >> >
> > > >> > --
> > > >> > Felipe Govoni
> > > >> > ---------------------
> > > >> > GOVONI Sistemas
> > > >> > Fone 8472-8718
> > > >> > www.govoni.com.br
> > > >> >
> > > >> > [As partes desta mensagem que não continham texto foram removidas]
> > > >> >
> > > >> > __________________________________________________________
> > > >> > Messenger 2009: Instale já!
> > > >> > http://download.live.com
> > > >> >
> > > >> > [As partes desta mensagem que não continham texto foram removidas]
> > > >> >
> > > >> >
> > > >> >
> > > >>
> > > >> --
> > > >> Felipe Govoni
> > > >> ---------------------
> > > >> GOVONI Sistemas
> > > >> Fone 8472-8718
> > > >> www.govoni.com.br
> > > >>
> > > >> [As partes desta mensagem que não continham texto foram removidas]
> > > >>
> > > >> __________________________________________________________
> > > >> Faça já uma busa e ganhe um wink do Messenger. Está esperando o que?
> É
> > > >> grátis!
> > > >> http://www.ibud.com.br/
> > > >>
> > > >> [As partes desta mensagem que não continham texto foram removidas]
> > > >>
> > > >>
> > > >>
> > > >
> > > > --
> > > > Felipe Govoni
> > > > ---------------------
> > > > GOVONI Sistemas
> > > > Fone 8472-8718
> > > > www.govoni.com.br
> > > >
> > > > [As partes desta mensagem que não continham texto foram removidas]
> > > >
> > > > __________________________________________________________
> > > > Messenger 2009: Instale já!
> > > > http://download.live.com
> > > >
> > > > [As partes desta mensagem que não continham texto foram removidas]
> > > >
> > > >
> > >
> > > --
> > > ____________________________
> > > José Benedito
> > > Software Developer
> > > +55 19 8116-7826
> > > msn: jb_holam...@hotmail.com <jb_holambra%40hotmail.com> <jb_holambra%
> 40hotmail.com>
> > > skype:jb.sologix
> > >
> > >
> >
> >
> >
> > --
> > Felipe Govoni
> > ---------------------
> > GOVONI Sistemas
> > Fone 8472-8718
> > www.govoni.com.br
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Felipe Govoni
---------------------
GOVONI Sistemas
Fone 8472-8718
www.govoni.com.br


[As partes desta mensagem que não continham texto foram removidas]

Responder a