D6 prof.
We used to use DBISAM and DBISAMTable. This handles RecNo, and it works great with changes (Delete, edit, etc.).
Now we have replaced ElevateDB which do not process RecNo, and many times we use Queries, not Tables.
The request must be open to view the changes.
But if we open the request again, we need to rearrange it to the last record. Locate is not enough because the grid shows it on a different line. This is very troubling, because after the change record has moved to another line, itβs hard for you to follow it, and users hate it.
We found this code:
function TBaseDBGrid.GetActRow: integer;
begin
Result := -1 + Row;
end;
procedure TBasepDBGrid.SetActRow(aRow: integer);
var
bm : TBookMark;
begin
if IsDataSourceValid(DataSource) then with DataSource.DataSet do begin
bm := GetBookmark;
DisableControls;
try
MoveBy(-aRow);
MoveBy(aRow);
//GotoBookmark(bm);
finally
FreebookMark(bm);
EnableControls;
end;
end;
end;
moveby. , , , .
EDBTable Live/Sensitive Query, MoveBy , - , .
BookMark (. ). , Row...
, : DBGrid?
DBGrid / DataSet?
, , DBGrid , , ...: - (
, , :