Buscar um número sequencial na tabela

23/05/2003

1

[color=blue:d8ac3a4647][/color:d8ac3a4647]Olá amigos do Delphi.
Preciso de uma dica.Tenho que, ao apertar o botão insert do DBNavigator, carregar automaticamente em um campo um número com o seguinte formato 9999/9999, sendo os últimos números, o ano da data atual do sistema, e os primeiros, uma sequência levando-se em conta o último número gravado na tabela. O campo é do tipo Integer e o banco de dados é MSSQL server 7.
Obrigado!!!
Neilor


Responder

Posts

23/05/2003

Rodrigo Costa

Faça o seguinte:
var
  Form1: TForm1;
  str_cod:string;

implementation

{$R *.DFM}

procedure TForm1.ADOTable1BeforeInsert(DataSet: TDataSet);
begin
        adotable1.Last;
        str_cod:=adotable1.fieldbyname(´cod´).asstring;
        str_cod:=copy(str_cod,1,4);
        str_cod:=inttostr(strtoint(str_cod)+1);
end;

procedure TForm1.ADOTable1AfterInsert(DataSet: TDataSet);
begin
        dbedit1.Text:=str_cod+formatdatetime(´yyyy´,now);
end;

end.



Responder

23/05/2003

Rodrigo Costa

Esqueci, acrescente o código abaixo no evento OnBeforeInsert da Table:

dbedit1.Field.EditMask:=´!9999/9999;0;_´;


Espero ter ajudado !

Rodrigo Costa


Responder