請教大家:
小弟用 Delphi 的 BatchMove 來 copy Table (DBase format),
但新產生的 Table 與原 Table 不一致 (原 N,1,0 的欄位變成 N,6,0).
Why??
如蒙賜教, 不勝感激! Thanks in advance!!
程式片段如下:
------------------------------
{----- Query1 = Source, Table1 = Destination ------ }
FDM.Query1.Active := false;
FDM.Query1.SQL.Clear;
FDM.Query1.SQL.Add('Select * from "ODF.DBF"');
FDM.Query1.SQL.Add('Where JOBNO= "' + s1 + '"');
FDM.Query1.Active := true;
FDM.Table1.Active := false;
FDM.Table1.TableName := TName;
if not fileExists(FName) then
begin
FDM.BMove.Source := FDM.Query1;
FDM.BMove.Destination := FDM.Table1;
FDM.BMove.Mode := batCopy;
FDM.BMove.Execute;
for i := 0 to FDM.TabOrder.IndexDefs.Count-1 do
begin
FDM.Table1.AddIndex(FDM.TabOrder.IndexDefs.Items[i].Name,
FDM.TabOrder.IndexDefs.Items[i].Fields,
FDM.TabOrder.IndexDefs.Items[i].Options );
end;
end
else begin
FDM.BMove.Source := FDM.Query1;
FDM.BMove.Destination := FDM.Table1;
FDM.BMove.Mode := batAppend;
FDM.BMove.Execute;
end;
----------------------------------------------------------------