|
@@ -540,6 +540,12 @@ end;
|
|
|
|
|
|
function TField.GetData(Buffer: Pointer): Boolean;
|
|
function TField.GetData(Buffer: Pointer): Boolean;
|
|
|
|
|
|
|
|
+begin
|
|
|
|
+ Result:=GetData(Buffer,True);
|
|
|
|
+end;
|
|
|
|
+
|
|
|
|
+function TField.GetData(Buffer: Pointer; NativeFormat : Boolean): Boolean;
|
|
|
|
+
|
|
begin
|
|
begin
|
|
IF FDataset=Nil then
|
|
IF FDataset=Nil then
|
|
DatabaseErrorFmt(SNoDataset,[FieldName]);
|
|
DatabaseErrorFmt(SNoDataset,[FieldName]);
|
|
@@ -550,7 +556,7 @@ begin
|
|
Move (FValueBuffer^,Buffer^ ,DataSize);
|
|
Move (FValueBuffer^,Buffer^ ,DataSize);
|
|
end
|
|
end
|
|
else
|
|
else
|
|
- Result:=FDataset.GetFieldData(Self,Buffer);
|
|
|
|
|
|
+ Result:=FDataset.GetFieldData(Self,Buffer,NativeFormat);
|
|
end;
|
|
end;
|
|
|
|
|
|
function TField.GetDataSize: Word;
|
|
function TField.GetDataSize: Word;
|
|
@@ -767,10 +773,16 @@ end;
|
|
|
|
|
|
procedure TField.SetData(Buffer: Pointer);
|
|
procedure TField.SetData(Buffer: Pointer);
|
|
|
|
|
|
|
|
+begin
|
|
|
|
+ SetData(Buffer,True);
|
|
|
|
+end;
|
|
|
|
+
|
|
|
|
+procedure TField.SetData(Buffer: Pointer; NativeFormat : Boolean);
|
|
|
|
+
|
|
begin
|
|
begin
|
|
If Not Assigned(FDataset) then
|
|
If Not Assigned(FDataset) then
|
|
EDatabaseError.CreateFmt(SNoDataset,[FieldName]);
|
|
EDatabaseError.CreateFmt(SNoDataset,[FieldName]);
|
|
- FDataSet.SetFieldData(Self,Buffer, False);
|
|
|
|
|
|
+ FDataSet.SetFieldData(Self,Buffer, NativeFormat);
|
|
end;
|
|
end;
|
|
|
|
|
|
Procedure TField.SetDataset (Value : TDataset);
|
|
Procedure TField.SetDataset (Value : TDataset);
|
|
@@ -1749,7 +1761,7 @@ end;
|
|
function TDateTimeField.GetAsDateTime: TDateTime;
|
|
function TDateTimeField.GetAsDateTime: TDateTime;
|
|
|
|
|
|
begin
|
|
begin
|
|
- If Not GetData(@Result) then
|
|
|
|
|
|
+ If Not GetData(@Result,False) then
|
|
Result:=0;
|
|
Result:=0;
|
|
end;
|
|
end;
|
|
|
|
|
|
@@ -1763,7 +1775,7 @@ function TDateTimeField.GetAsVariant: Variant;
|
|
Var d : tDateTime;
|
|
Var d : tDateTime;
|
|
|
|
|
|
begin
|
|
begin
|
|
- If Getdata(@d) then
|
|
|
|
|
|
+ If Getdata(@d,False) then
|
|
Result := d
|
|
Result := d
|
|
else
|
|
else
|
|
Result:=Null;
|
|
Result:=Null;
|
|
@@ -1796,7 +1808,7 @@ Var R : TDateTime;
|
|
F : String;
|
|
F : String;
|
|
|
|
|
|
begin
|
|
begin
|
|
- If Not Getdata(@R) then
|
|
|
|
|
|
+ If Not Getdata(@R,False) then
|
|
TheText:=''
|
|
TheText:=''
|
|
else
|
|
else
|
|
begin
|
|
begin
|
|
@@ -1817,7 +1829,7 @@ end;
|
|
procedure TDateTimeField.SetAsDateTime(AValue: TDateTime);
|
|
procedure TDateTimeField.SetAsDateTime(AValue: TDateTime);
|
|
|
|
|
|
begin
|
|
begin
|
|
- SetData(@Avalue);
|
|
|
|
|
|
+ SetData(@Avalue,False);
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
|
|
@@ -1834,7 +1846,7 @@ Var R : TDateTime;
|
|
|
|
|
|
begin
|
|
begin
|
|
R:=StrToDateTime(AVAlue);
|
|
R:=StrToDateTime(AVAlue);
|
|
- SetData(@R);
|
|
|
|
|
|
+ SetData(@R,False);
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
|