--- ibx/trunk/runtime/IBCustomDataSet.pas 2016/05/17 08:14:52 40 +++ ibx/trunk/runtime/IBCustomDataSet.pas 2016/07/16 12:25:48 41 @@ -740,6 +740,7 @@ type protected FField: TField; FBlobStream: TIBBlobStream; + function GetSize: Int64; override; public constructor Create(AField: TField; ABlobStream: TIBBlobStream; Mode: TBlobStreamMode); @@ -4677,6 +4678,11 @@ begin DataSet.SetInternalSQLParams(Query, buff); end; +function TIBDSBlobStream.GetSize: Int64; +begin + Result := FBlobStream.BlobSize; +end; + { TIBDSBlobStream } constructor TIBDSBlobStream.Create(AField: TField; ABlobStream: TIBBlobStream; Mode: TBlobStreamMode); @@ -4685,7 +4691,12 @@ begin FBlobStream := ABlobStream; FBlobStream.Seek(0, soFromBeginning); if (Mode = bmWrite) then + begin FBlobStream.Truncate; + TIBCustomDataSet(FField.DataSet).RecordModified(True); + TBlobField(FField).Modified := true; + FHasWritten := true; + end; end; destructor TIBDSBlobStream.Destroy;