Buscar

Autoincremento

Código

Esta dica é bem util para pessoas que estão desenvolvendo aplicativos comerciais, nesta dica eu crio os componentes em tempo de execurção, pois assim posso chama-la em qualquer lugar sem ter que me preocupar em usar units que estejam conectadas ao banco

veja:

primeiro declaramos a função

function autoincremento(conexao: TSQLConnection; campo, tabela:string) :integer;

lembrando que devemos por obrigação colocar no 1º uses o SqlExpr

depois cria-se a função

function autoincremento(conexao: TSQLConnection; campo, tabela:string) :integer;
var
qrconexao : TSQLDataSet;

begin
//********** criando os componentes em tempo de execucao
qrconexao := TSQLDataSet.Create(nil);
//******************** recebendo a conexao como parametro
qrconexao.SQLConnection := conexao;
qrconexao.MaxBlobSize := -1;
//*********************

with qrconexao  do
  begin
       CommandText := ('SELECT MAX('+ Campo + ') FROM ' + Tabela);
       open;
       Result := Fields[0].AsInteger +1;
       //showmessage(inttostr(Result));
       close;
  end;

end;


após a sua criação é so chamar no evento beforepost de qualquer clientedataset
 

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Arquivos
Adicionada dia: 21/08/07
Por: Klerysson
Visualizada: 6795 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009