autoincremento

Delphi

13/02/2003

Fala Galera!
como eu pego o último registro de uma tabela?
Tipo, eu tenho um campo numérico q é a chave, aí eu quero acrescentar 1 ao número.
Como eu faço isso?
Eu estou usando TTable e Paradox no delphi6.


L!nk!n

L!nk!n

Curtidas 0

Respostas

Profjohnny

Profjohnny

13/02/2003

use um segundo componente table com ligação na mesma tabela e ae no evento OnNewRecord da tabela principal coloque o codigo que deseja...
Ex:
TblClientes --> tabela principal ligada a clientes
TblValidClientes --> tabela secundaria tambem ligada com clientes
no evento OnNewRecord da TblClientes coloque o codigo abaixo:

TblValidClientes.Last;
TblClientesCodCliente.Value:=TblValidClientesCodCliente.Value+1;

Boa Sorte!


GOSTEI 0
Rafael Silva

Rafael Silva

13/02/2003

Ex:
var
Codigo : Integer //Variavel para a soma

begin

Table1.Last; //Vai para o último registro da tabela
Codigo := Table1.Fields.Fields[0].AsInteger + 1; //Insere na variavel somando mai um

Edit1.Text := IntToStr(Codigo); //Joga o resultado para um edit (isso vc q vai determinar)


GOSTEI 0
Carlos Sereno

Carlos Sereno

13/02/2003

Boas, já pensou em por em numeração automática


GOSTEI 0
L!nk!n

L!nk!n

13/02/2003

[quote:712f0351ff=´Carlos Sereno´]Boas, já pensou em por em numeração automática[/quote:712f0351ff]
Eu consigo fazer isso no paradox???


GOSTEI 0
Anonymous

Anonymous

13/02/2003

Carlos Sereno escreveu:
Boas, já pensou em por em numeração automática

Eu consigo fazer isso no paradox??? S I M

SIM TIPO DO CAMPO = +


GOSTEI 0
L!nk!n

L!nk!n

13/02/2003

Carlos Sereno escreveu: Boas, já pensou em por em numeração automática Eu consigo fazer isso no paradox??? S I M SIM TIPO DO CAMPO = +

Valew Galera!!!
Eu disse q a dúvida era idiota...
Brigadão!!!


GOSTEI 0
Kalleby

Kalleby

13/02/2003

estou com a mesma duvida que vc estava ´acresentar mais 1 no ultimo registro de uma tabela´, se vc conseguiu favor me enviar pelo email ´Kallebygarcia@detran.es.gov.br´ as dicas de como conseguir tb.

desde ja eu te agradeço.....


GOSTEI 0
L!nk!n

L!nk!n

13/02/2003

Faz assim ó:
var v:integer; table.open; table.last; v:= table.fieldbyname(´cod´).asinteger; v:= v +1;


Espero ter ajudado!


GOSTEI 0
Sandra

Sandra

13/02/2003

[quote:c0b516fa5a=´l!nk!n´]Fala Galera!
como eu pego o último registro de uma tabela?
Tipo, eu tenho um campo numérico q é a chave, aí eu quero acrescentar 1 ao número.
Como eu faço isso?
Eu estou usando TTable e Paradox no delphi6.[/quote:c0b516fa5a]

l!nk!n,

Eu costumo fazer a autoincrementação através de SQL. No evento OnNewRecord da sua tabela, coloque:

With Query1 Do
  Begin
    Close ;
    SQL.Text := ´Select Max(Cod_Cliente) from Cliente´ ;
    Open ;
    If Fields[0].isNull Then
      TB_Cliente.FieldByName(´Cod_Cliente´).asInteger := 1 ;
    Else
      TB_ClienteCod_Cliente.AsInteger := Fields[0].AsInteger + 1 ;
  End ;


Nesse caso, você não vai precisar de criar uma variável auxiliar para incrementar o nº dos seus registros.

Boa sorte!

:wink:


GOSTEI 0
POSTAR