* Do not scroll the dataset while saving it to file

git-svn-id: trunk@11513 -
This commit is contained in:
joost 2008-08-05 19:00:45 +00:00
parent 712d6b4451
commit 3291b023b5

View File

@ -2201,7 +2201,8 @@ var XMLDocument : TXMLDocument;
AFieldNode : TDOMElement; AFieldNode : TDOMElement;
ARecordNode : TDOMElement; ARecordNode : TDOMElement;
i : integer; i : integer;
BookMrk : TBookmark; ScrollResult : TGetResult;
StoreDSState : TDataSetState;
begin begin
// TODO: implement filename property} // TODO: implement filename property}
// CheckActive; // CheckActive;
@ -2245,21 +2246,21 @@ begin
DataPacketNode.AppendChild(MetaDataNode); DataPacketNode.AppendChild(MetaDataNode);
RowDataNode := XMLDocument.CreateElement('ROWDATA'); RowDataNode := XMLDocument.CreateElement('ROWDATA');
DisableControls; StoreDSState:=State;
BookMrk:=GetBookmark; SetTempState(dsFilter);
first; ScrollResult:=FCurrentIndex.ScrollFirst;
while not eof do while ScrollResult=grOK do
begin begin
FFilterBuffer:=FCurrentIndex.CurrentBuffer;
ARecordNode := XMLDocument.CreateElement('ROW'); ARecordNode := XMLDocument.CreateElement('ROW');
for i := 0 to Fields.Count-1 do for i := 0 to Fields.Count-1 do
begin begin
ARecordNode.SetAttribute(fields[i].FieldName,fields[i].AsString); ARecordNode.SetAttribute(fields[i].FieldName,fields[i].AsString);
end; end;
RowDataNode.AppendChild(ARecordNode); RowDataNode.AppendChild(ARecordNode);
Next; ScrollResult:=FCurrentIndex.ScrollForward;
end; end;
GotoBookmark(Bookmrk); SetTempState(StoreDSState);
EnableControls;
DataPacketNode.AppendChild(RowDataNode); DataPacketNode.AppendChild(RowDataNode);
@ -2286,7 +2287,6 @@ var XMLDocument : TXMLDocument;
DataPacketNode : TDOMNode; DataPacketNode : TDOMNode;
MetaDataNode : TDOMNode; MetaDataNode : TDOMNode;
FieldsNode : TDOMNode; FieldsNode : TDOMNode;
ParamsNode : TDOMElement;
AFieldNode : TDOMNode; AFieldNode : TDOMNode;
AFieldDef : TFieldDef; AFieldDef : TFieldDef;
iFieldType : TFieldType; iFieldType : TFieldType;