Ajuda Simples.. Atualização Grid - ClientDataSet após o POST
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?
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
Curtidas 0