Ajuda Simples.. Atualização Grid - ClientDataSet após o POST

Delphi

16/03/2004

Prezados Companheiros... Primeiramente uma boa tarde a todos...
Vejam se podem me ajudar.....

Estou trabalhando com SQLClientDataSet...
Na lista de tfields do componente inclui os campos, CODIGO e DESCRICAO da tabela.

Mas me orientaram a usar TRIGGER para montar o autoincremento no campo CODIGO... Consegui montar a trigger/generator e fazer o autoincremento... Mas vejam.....

Antes de eu executar o post na aplicação, eu passo o conteudo do edit(Descricao) para o Tfield DESCRIÇAO da tabela:

DtmDados.CdsTiposEnderDESCRICAO.AsString := edtDescricao.Text;

Eu não passo nada ao campo CODIGO e nem devo, pois a TRIGGER será disparada no banco e disponibilizará o novo codigo autoincrementado para mim...

Por isso não passo nada ao Tfield CODIGO antes de atualizar o banco(applyupdates(0)).

Aí vem o problema:
Depois que o post é efetuado e a atualização do banco é feita, eu preciso do codigo do ultimo cadastro que efetuei pois quero que ele seja localizado no grid para indicar ao usuario que o cadastro foi realmente efetuado... mas e o conteudo do Tfield codigo????? Ele naum tem nada, haja visto que a trigger cuidou de jogar um valor para ele no banco....

então o exemplo da linha de codigo na hora de fazer a localização no grid apos o post fica:

var Codigo: Integer
Begin
applyupdates(0);
Codigo := dtmDados.CdsTabelaCODIGO.AsInteger;
//Aqui faco um teste para ver o conteudo do campo CODIGO(Tfield)
Showmessage(Valor do campo CODIGO.........)

E está sempre em 0

Como eu faço para pegar o ultimo codigo que a trigger gerou no banco, para que eu faça a localização do registro que acabou de ser cadastrado no grid?


Pablo_lima

Pablo_lima

Curtidas 0
POSTAR