Fórum como usar código do último registro inserido #232208
13/05/2004
0
A questão é a seguinte: quando eu dou um qryEmpresas.Insert, preencho os dados da empresa, dou qryEmpresas.Post, para dar ´refresh´ no grid que está atrás da janela, eu dou um qryEmpresas.Close e qryEmpresas.Open. Só que na SQL das empresas eu tenho um ORDER BY pra poder ficar em ordem alfabética - portanto, não tenho como saber qual foi o último cliente a ser inserido fazendo um qryEmpresas.Last.
Tentei capturar o valor do campo ID logo após que eu dou o comando Post, mas ele retorna 0.
Para incluir os clientes, eu passo um parâmetro para o qryClientes dizendo a qual empresa eles pertencem, mas se eu não souber qual foi a empresa inserida, não tenho como passar esse parâmetro...
Como posso fazer no meu caso?
Obrigado...
Ultranol
Curtir tópico
+ 0Posts
14/05/2004
Aroldo Zanela
Qual o banco de dados e mecanismos de acesso está utilizando? (BDE, ADO, IBX, IBO, DBX, Zeos, Etc)
Gostei + 0
14/05/2004
Wtjunior
No Oracle nós usamos...
insert into tabela(codigo, ...........)
values(codigo, ............................)
returning codigo into <variável>;
Vai retornar o valor que foi inserido, ou seja, o último
tente assim
abraço
Wilson
Gostei + 0
15/05/2004
Ultranol
e o mecanismo de acesso eu não sei... eu sei q eu criei um registro lá no Fontes de dados ODBC, e no Delphi eu tenho um TDatabase que aponta pra essa ´fonte de dados´ no AliasName...
Gostei + 0
15/05/2004
Carlos Bernardo
ao inserir pegue esse valor e some 1 para o novo código...
espero ter ajudado...
Gostei + 0
17/05/2004
Rômulo Barros
...
Var NomeEmpresa : String; Begin NomeEmpresa := QueryEmpresa.FieldByName(´Empresa´).AsString; End;
...
Evento AfterPost da QueryEmpresa; Begin QueryEmpresa.Locate(´Empresa´,NomeEmpresa,[]); QueryClientes.Insert; QueryClientes.FieldByName(´CodigoEmpresa´).AsString := QueryEmpresa.FieldbyName(´CodigoEmpresa´).AsString; end;
Gostei + 0
23/05/2004
Ultranol
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)