> Gostaria de saber se tem um jeito melhor, pois desse jeito eu não consegui > pegar o ultimo incremento
Uma idéia seria abaixo, claro que sempre dentro da mesma transação... (Ignore TBusinessObject, substitua por uma TIBQuery) function TCustomDatamodule.GetLastID(FieldName, TableName: String): Integer; var bo: TBusinessObject; SQL: String; begin Assert(SQLConnection <> Nil); bo := TBusinessObject.Create(SQLConnection); try SQL := ' select max(' + FieldName + ')' + ' from ' + TableName; bo.GetData(SQL); Result := bo.Data.Fields[0].AsInteger; finally bo.Free; end; end; Jackson Gomes Tools&Comps - Controle de Usuários para Desenvolvedores Borland/CodeGear Web Site: http://www.toolsandcomps.com Nosso Fórum: http://groups.yahoo.com/group/toolsandcomps e-mail: [EMAIL PROTECTED] Fone: 27 3389 1138 - 8811 0324 ---------------------------------------------------------------------------- Devhost - Webhost para desenvolvedores Borland http://www.devhost.com.br [EMAIL PROTECTED]