* Reinstated SetFound

git-svn-id: trunk@20884 -
This commit is contained in:
michael 2012-04-15 14:00:06 +00:00
parent 9e105677db
commit b2ce6b2cab
4 changed files with 29 additions and 8 deletions

View File

@ -36,18 +36,20 @@ type
FieldNo : integer;
OrgBufID: integer;
Buffer : pointer;
Size : ptrint;
Size : PtrInt;
end;
TBufBlobStream = class(TStream)
private
FBlobBuffer : PBlobBuffer;
FPosition : ptrint;
FPosition : PtrInt;
FDataset : TCustomBufDataset;
protected
function Read(var Buffer; Count: Longint): Longint; override;
function Write(const Buffer; Count: Longint): Longint; override;
function Seek(Offset: Longint; Origin: Word): Longint; override;
function Seek(const Offset: int64; Origin: TSeekOrigin): int64; override;
function GetPosition: Int64; override;
function GetSize : Int64; override;
public
constructor Create(Field: TBlobField; Mode: TBlobStreamMode);
end;
@ -2390,17 +2392,27 @@ begin
ABlobBuffer := Nil;
end;
function TBufBlobStream.Seek(Offset: Longint; Origin: Word): Longint;
function TBufBlobStream.Seek(const Offset: int64; Origin: TSeekOrigin): int64;
begin
Case Origin of
soFromBeginning : FPosition:=Offset;
soFromEnd : FPosition:=FBlobBuffer^.Size+Offset;
soFromCurrent : FpoSition:=FPosition+Offset;
soBeginning : FPosition:=Offset;
soEnd : FPosition:=FBlobBuffer^.Size+Offset;
soCurrent : FpoSition:=FPosition+Offset;
end;
Result:=FPosition;
end;
function TBufBlobStream.GetPosition: Int64;
begin
Result:=FPosition;
end;
function TBufBlobStream.GetSize: Int64;
begin
Result:=FBlobBuffer^.Size;
end;
function TBufBlobStream.Read(var Buffer; Count: Longint): Longint;

View File

@ -1311,6 +1311,10 @@ begin
FFiltered := value;
end;
procedure TDataSet.SetFound(const Value: Boolean);
begin
FFound := Value;
end;
Procedure TDataset.SetModified(Value: Boolean);

View File

@ -494,8 +494,12 @@ Procedure TMasterParamsDataLink.DoMasterDisable;
begin
Inherited;
If Assigned(DetailDataset) and DetailDataset.Active then
if Assigned(Params) and Assigned(DetailDataset) and DetailDataset.Active then
begin
DetailDataSet.CheckBrowseMode;
DetailDataset.Close;
DetailDataset.Open;
end;
end;
Procedure TMasterParamsDataLink.DoMasterChange;

View File

@ -1487,6 +1487,7 @@ type
procedure SetFilterOptions(Value: TFilterOptions); virtual;
procedure SetFilterText(const Value: string); virtual;
procedure SetFieldValues(const fieldname: string; Value: Variant); virtual;
procedure SetFound(const Value: Boolean); virtual;
procedure SetModified(Value: Boolean);
procedure SetName(const Value: TComponentName); override;
procedure SetOnFilterRecord(const Value: TFilterRecordEvent); virtual;