Kaynağa Gözat

* Fix recno calculation

michael 7 yıl önce
ebeveyn
işleme
5dc2adc79f
1 değiştirilmiş dosya ile 7 ekleme ve 3 silme
  1. 7 3
      packages/fcl-db/jsondataset.pas

+ 7 - 3
packages/fcl-db/jsondataset.pas

@@ -441,8 +441,7 @@ end;
 
 
 procedure TBaseJSONDataSet.GetBookmarkData(Buffer: TDataRecord; var Data: TBookmark);
 procedure TBaseJSONDataSet.GetBookmarkData(Buffer: TDataRecord; var Data: TBookmark);
 begin
 begin
-//  writeln('Bookmark :',Buffer.bookmark);
-  Data.Data:=Buffer.bookmark;
+   Data.Data:=Buffer.bookmark;
 end;
 end;
 
 
 function TBaseJSONDataSet.GetBookmarkFlag(Buffer: TDataRecord): TBookmarkFlag;
 function TBaseJSONDataSet.GetBookmarkFlag(Buffer: TDataRecord): TBookmarkFlag;
@@ -451,8 +450,13 @@ begin
 end;
 end;
 
 
 function TBaseJSONDataSet.GetRecNo: Integer;
 function TBaseJSONDataSet.GetRecNo: Integer;
+
+Var
+  bkmIdx : Integer;
+
 begin
 begin
-  Result := FCurrent + 1;
+  bkmIdx:=Integer(ActiveBuffer.bookmark);
+  Result:=FCurrentIndex.FindRecord(bkmIdx);
 end;
 end;
 
 
 procedure TBaseJSONDataSet.InternalInitFieldDefs;
 procedure TBaseJSONDataSet.InternalInitFieldDefs;