Vc pode fazer o seguinte:

SET TERM ^ ;

CREATE OR ALTER PROCEDURE PEGA_GEN_CLIENTE 
returns (wid integer)
as
BEGIN
SELECT DISTINCT GEN_ID(GEN_CDCLIENTE, 0) FROM BDCLIENTES INTO :Wid;
END^

SET TERM ; ^

Se vc utilizar com o parametro 1, ele ira somar o seu generator, mesmo que
vc esteja só consultando.

Logo após o ApplyUpdates, execute:

DataModule.Pega_Gen_Cliente.ExecProc.

SuaChave := DataModule.Pega_Gen_Cliente.Params[0].AsInteger;

Espero que ajude.

Vinicius
>
>
> Olá Srs
>
> Como eu faço para ter o valor no dbedit da minha primary key que é gerada
> de um generator do firebird
>
> Logo após um um ApplyUpdates(0) sem ter que abrir e fechar o formulário.
>
> O Problema é que eu só abro um registro por vez em um formulário e uso o
> valor da chave como parâmetro para localizar o registro, no momento da a
> adição dos dados e o uso do ApplyUpdates(0) não está vindo o valor primary
> key e com isso eu não vou conseguir saber o valor gerado e re abrir o
> registro para visualização.
>
> Sds
>
> Gilvan Costa
>
>  
>



-- 
_________________________________
T.·.F.·.A.·.
Fellipe Henrique
----------------------------------------------------------------------------
---
CAMPANHA POR UMA INTERNET SEGURA
Proteja o endereço de seus amigos como estou protegendo o seu. Ao enviar
mensagens use SEMPRE o "Cco" (cópia oculta).
Assim TODOS os endereços estarão preservados. E, claro, antes de encaminhar
um e-mail, delete todas as informações que apareçam no corpo do e-mail e que
possam ser usadas por hackers.
#######################################


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



------------------------------------

-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>





Responder a