Código
function AutoNum(Conexao:TADOConnection;Tabela,Campo:string;NCasas:integer):string;
Var
c,z:integer;
Tab,QAutoNum:TADOQuery;
str:string;
Begin
Tab:= TADOQuery.Create(QAutoNum);
Tab.Connection:= Conexao;
Tab.Close;
Tab.SQL.Clear;
Tab.SQL.Add('Select * from '+Tabela+' Order by '+Campo);
Tab.Open;
Tab.Last;
If Tab.IsEmpty then
Begin
c:=1;
end
else
Begin
c:= Tab.FieldValues[Campo]+1;
end;
Tab.Close;
z:=1;
While (NCasas > z) do
Begin
str:='0'+str;
z:= z+1;
end;
Result:= str+IntToStr(c);
end;
Para utilizar:
Var
n:string;
Begin
n:= AutoNum(ADOConnection1,'Clientes','Codigo',5); // Onde "ADOConnetction1" é o nome do TADOConnection que a query é ligada;
//"Clientes" é o nome da tabela no banco de dados;
//"Codigo" é o nome do campo da tabela que será incrementado;
//"5" é o número de casas que irá possuir o campo, no exemplo aprecia "00001", caso fosse 4 ficaria "0001" e assim por diante;
Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009