Как узнать содержание активной записи в БД?
Следующая функция возвращает в виде указателя на строку содержание активной записи в БД.
function TBDEDirect.GetCurRecord(Lock: DBILockType): PChar;
var
Res: DBIResult; RecSize: Word; RecBuf: PChar; Bookmark: TBookmark;
begin
Result := StrNew(''); if CheckDatabase then
begin
RecSize := GetPhysicalRecSize; RecBuf := StrAlloc(RecSize+1); FillChar(RecBuf^, RecSize+1, #0); Bookmark := FDataLink.DataSource.DataSet.GetBookmark; DbiSetToBookmark(FDataLink.DataSource.DataSet.Handle, Bookmark); FDataLink.DataSource.DataSet.FreeBookmark(Bookmark); Res := DbiGetRecord(FDataLink.DataSource.DataSet.Handle, Lock, RecBuf, nil); if Res = 0 then
Result := RecBuf else
Check(Res); end; end;