浏览代码

导入0号台账文件,导入错漏增减四列数据

MaiXinRong 9 年之前
父节点
当前提交
2aa6612234
共有 2 个文件被更改,包括 27 次插入2 次删除
  1. 20 2
      Units/ProjectData.pas
  2. 7 0
      Units/UpdateDataBase.pas

+ 20 - 2
Units/ProjectData.pas

@@ -1183,12 +1183,12 @@ procedure TProjectData.ImportCloudTenderFile(const AFileName: string);
   const
     sBillsSql = 'Insert Into Bills (ID, ParentID, NextSiblingID,' +
                 '    Code, B_Code, Name, Units, Alias, Price, NewPrice,' +
-                '    OrgQuantity, OrgTotalPrice,' +
+                '    OrgQuantity, OrgTotalPrice, MisQuantity, MisTotalPrice, OthQuantity, OthTotalPrice,' +
                 '    DgnQuantity1, DgnQuantity2,'+
                 '    Peg, DrawingCode, MemoStr, HasBookMark, MarkMemo)'+
                 '  Select ID, ParentID, NextSiblingID,'+
                 '    Code, B_Code, Name, Units, Alias, Price, NewPrice,' +
-                '    OrgQuantity, OrgTotalPrice,' +
+                '    OrgQuantity, OrgTotalPrice, MisQuantity, MisTotalPrice, OthQuantity, OthTotalPrice,' +
                 '    DgnQuantity1, DgnQuantity2,'+
                 '    Peg, DrawingCode, MemoStr, HasBookMark, MarkMemo'+
                 '  From Bills In ''%s''';
@@ -1272,10 +1272,28 @@ procedure TProjectData.ImportCloudTenderFile(const AFileName: string);
     end;
   end;
 
+  procedure UpdateSourceFile(const AFileName: string);
+  var
+    vCon: TADOConnection;
+    vUpdate: TUpdateProjectDB;
+  begin
+    vCon := TADOConnection.Create(nil);
+    vCon.LoginPrompt := False;
+    try
+      vCon.ConnectionString := Format(SAdoConnectStr, [AFileName]);
+      vUpdate := TUpdateProjectDB.Create;
+      vUpdate.ForceUpdate(vCon);
+    finally
+      vUpdate.Free;
+      vCon.Free;
+    end;
+  end;
+
 var
   sTemMainFile: string;
 begin
   sTemMainFile := CreateTempSourceFile;
+  UpdateSourceFile(sTemMainFile);
   BeforeCopyData;
   try
     ClearAllData;

+ 7 - 0
Units/UpdateDataBase.pas

@@ -23,6 +23,8 @@ type
   TUpdateProjectDB = class(TUpdateDB)
   private
     procedure UpdateAllTables(AConnection: TADOConnection); override;
+  public
+    procedure ForceUpdate(AConnection: TADOConnection);
   end;
 
   TUpdatePhaseDB = class(TUpdateDB)
@@ -69,6 +71,11 @@ end;
 
 { TUpdateProjectDB }
 
+procedure TUpdateProjectDB.ForceUpdate(AConnection: TADOConnection);
+begin
+  UpdateAllTables(AConnection);
+end;
+
 procedure TUpdateProjectDB.UpdateAllTables(AConnection: TADOConnection);
 var
   Updater: TScUpdater;