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]