AutoIncremento Delphi Firebird Firedac Sem Trigger nem Generator

23/04/2019

5

Ola Gostaria de uma Ajuda com um Campo de autoIncremento no Delphi sem ultilizar Trigger nem Generator ultilizando SELECT MAX


function TDMAutoIncremento.AutoIncremento(pTabela, pCampo: string): string;
begin
QryExeculta.Close;
QryExeculta.SQL.Clear;
Result := QryExeculta.SQL.Add(''''''''SELECT MAX(''''''''+pCampo+'''''''') +1 FROM ''''''''+pTabela+'''''''' '''''''');
QryExeculta.Open;
end;

eu tenho uma funçao que não sei exatamente se esta funcionando por que ainda nao testei na maquina pois nao me lembro dos codigos no BeforeUpdateRecord
gostaria de saber como faço para criar um auto incremento ja que meu SQL ja esta me dando o valor maximo do campo +1 que é o valor que eu preciso inserir quando for salvar

AQUI o meu BEFOREUPDATERECORD


procedure TfrmCadClientes.DSPCadClientesBeforeUpdateRecord(Sender: TObject;
SourceDS: TDataSet; DeltaDS: TCustomClientDataSet; UpdateKind: TUpdateKind;
var Applied: Boolean);
begin
If UpdateKind = ukInsert Then
DeltaDS.

end;

end.


Me lembro até essa parte não me recordo do resto o que eu preciso fazer aqui é enviar os valores dos parametros :pCampo e :pTabela la para a query se alguem puder ajudar grato
Responder