浏览代码

备份文件命名Bug修复

MaiXinRong 8 年之前
父节点
当前提交
1c9c42f82c
共有 3 个文件被更改,包括 103 次插入80 次删除
  1. 80 65
      DataModules/ProjectManagerDm.dfm
  2. 22 14
      DataModules/ProjectManagerDm.pas
  3. 1 1
      Units/TenderBackupManager.pas

+ 80 - 65
DataModules/ProjectManagerDm.dfm

@@ -18,73 +18,88 @@ object ProjectManagerData: TProjectManagerData
     FieldListData = {
       0101044E616D6506024944094669656C644E616D650602494408446174615479
       70650203084461746153697A6502040549734B6579080F4E65656450726F6365
-      73734E616D65090001044E616D650608506172656E744944094669656C644E61
-      6D650608506172656E7449440844617461547970650203084461746153697A65
-      02040549734B6579080F4E65656450726F636573734E616D65090001044E616D
-      65060D4E6578745369626C696E674944094669656C644E616D65060D4E657874
-      5369626C696E6749440844617461547970650203084461746153697A65020405
-      49734B6579080F4E65656450726F636573734E616D65090001044E616D650604
-      4E616D65094669656C644E616D6506044E616D65084461746154797065021808
-      4461746153697A6503FF000549734B6579080F4E65656450726F636573734E61
-      6D65090001044E616D65060454797065094669656C644E616D65060454797065
-      0844617461547970650203084461746153697A6502040549734B6579080F4E65
-      656450726F636573734E616D65090001044E616D65060E4465616C546F74616C
-      5072696365094669656C644E616D65060E4465616C546F74616C507269636508
-      44617461547970650206084461746153697A6502080549734B6579080F4E6565
-      6450726F636573734E616D65090001044E616D65060F5068617365546F74616C
-      5072696365094669656C644E616D65060F5068617365546F74616C5072696365
-      0844617461547970650206084461746153697A6502080549734B6579080F4E65
-      656450726F636573734E616D65090001044E616D650611456E644465616C546F
-      74616C5072696365094669656C644E616D650611456E644465616C546F74616C
-      50726963650844617461547970650206084461746153697A6502080549734B65
-      79080F4E65656450726F636573734E616D65090001044E616D650613456E6443
-      68616E6765546F74616C5072696365094669656C644E616D650613456E644368
-      616E6765546F74616C5072696365084461746154797065020608446174615369
-      7A6502080549734B6579080F4E65656450726F636573734E616D65090001044E
-      616D65060D456E64546F74616C5072696365094669656C644E616D65060D456E
-      64546F74616C50726963650844617461547970650206084461746153697A6502
-      080549734B6579080F4E65656450726F636573734E616D65090001044E616D65
-      060D507265546F74616C5072696365094669656C644E616D65060D507265546F
-      74616C50726963650844617461547970650206084461746153697A6502080549
-      734B6579080F4E65656450726F636573734E616D65090001044E616D65060850
-      68617365506179094669656C644E616D65060850686173655061790844617461
-      547970650206084461746153697A6502080549734B6579080F4E65656450726F
-      636573734E616D65090001044E616D65060A5068617365436F756E7409466965
-      6C644E616D65060A5068617365436F756E740844617461547970650203084461
+      73734E616D650909507265636973696F6E02000453697A6502000001044E616D
+      650608506172656E744944094669656C644E616D650608506172656E74494408
+      44617461547970650203084461746153697A6502040549734B6579080F4E6565
+      6450726F636573734E616D650909507265636973696F6E02000453697A650200
+      0001044E616D65060D4E6578745369626C696E674944094669656C644E616D65
+      060D4E6578745369626C696E6749440844617461547970650203084461746153
+      697A6502040549734B6579080F4E65656450726F636573734E616D6509095072
+      65636973696F6E02000453697A6502000001044E616D6506044E616D65094669
+      656C644E616D6506044E616D650844617461547970650218084461746153697A
+      6503FF000549734B6579080F4E65656450726F636573734E616D650909507265
+      636973696F6E02000453697A6502000001044E616D6506045479706509466965
+      6C644E616D650604547970650844617461547970650203084461746153697A65
+      02040549734B6579080F4E65656450726F636573734E616D6509095072656369
+      73696F6E02000453697A6502000001044E616D65060E4465616C546F74616C50
+      72696365094669656C644E616D65060E4465616C546F74616C50726963650844
+      617461547970650206084461746153697A6502080549734B6579080F4E656564
+      50726F636573734E616D650909507265636973696F6E02000453697A65020000
+      01044E616D65060F5068617365546F74616C5072696365094669656C644E616D
+      65060F5068617365546F74616C50726963650844617461547970650206084461
+      746153697A6502080549734B6579080F4E65656450726F636573734E616D6509
+      09507265636973696F6E02000453697A6502000001044E616D650611456E6444
+      65616C546F74616C5072696365094669656C644E616D650611456E644465616C
+      546F74616C50726963650844617461547970650206084461746153697A650208
+      0549734B6579080F4E65656450726F636573734E616D65090950726563697369
+      6F6E02000453697A6502000001044E616D650613456E644368616E6765546F74
+      616C5072696365094669656C644E616D650613456E644368616E6765546F7461
+      6C50726963650844617461547970650206084461746153697A6502080549734B
+      6579080F4E65656450726F636573734E616D650909507265636973696F6E0200
+      0453697A6502000001044E616D65060D456E64546F74616C5072696365094669
+      656C644E616D65060D456E64546F74616C507269636508446174615479706502
+      06084461746153697A6502080549734B6579080F4E65656450726F636573734E
+      616D650909507265636973696F6E02000453697A6502000001044E616D65060D
+      507265546F74616C5072696365094669656C644E616D65060D507265546F7461
+      6C50726963650844617461547970650206084461746153697A6502080549734B
+      6579080F4E65656450726F636573734E616D650909507265636973696F6E0200
+      0453697A6502000001044E616D6506085068617365506179094669656C644E61
+      6D65060850686173655061790844617461547970650206084461746153697A65
+      02080549734B6579080F4E65656450726F636573734E616D6509095072656369
+      73696F6E02000453697A6502000001044E616D65060A5068617365436F756E74
+      094669656C644E616D65060A5068617365436F756E7408446174615479706502
+      03084461746153697A6502040549734B6579080F4E65656450726F636573734E
+      616D650909507265636973696F6E02000453697A6502000001044E616D65060B
+      4175646974537461747573094669656C644E616D65060B417564697453746174
+      75730844617461547970650203084461746153697A6502040549734B6579080F
+      4E65656450726F636573734E616D650909507265636973696F6E02000453697A
+      6502000001044E616D65060846696C654E616D65094669656C644E616D650608
+      46696C654E616D650844617461547970650201084461746153697A6503FF0005
+      49734B6579080F4E65656450726F636573734E616D650909507265636973696F
+      6E02000453697A6502000001044E616D65060A43726561746544617465094669
+      656C644E616D65060A4372656174654461746508446174615479706502010844
+      61746153697A6503FF000549734B6579080F4E65656450726F636573734E616D
+      650909507265636973696F6E02000453697A6502000001044E616D65060C4261
+      636B7570466F6C646572094669656C644E616D65060C4261636B7570466F6C64
+      65720844617461547970650218084461746153697A6502320549734B6579080F
+      4E65656450726F636573734E616D650909507265636973696F6E02000453697A
+      6502000001044E616D6506124465616C5F42474C546F74616C50726963650946
+      69656C644E616D6506124465616C5F42474C546F74616C507269636508446174
+      61547970650206084461746153697A6502080549734B6579080F4E6565645072
+      6F636573734E616D650909507265636973696F6E02000453697A650200000104
+      4E616D6506055765624944094669656C644E616D650605576562494408446174
+      61547970650203084461746153697A6502040549734B6579080F4E6565645072
+      6F636573734E616D650909507265636973696F6E02000453697A650200000104
+      4E616D65060A5765624F776E65724944094669656C644E616D65060A5765624F
+      776E657249440844617461547970650203084461746153697A6502040549734B
+      6579080F4E65656450726F636573734E616D650909507265636973696F6E0200
+      0453697A6502000001044E616D65060B576562417574686F724944094669656C
+      644E616D65060B576562417574686F7249440844617461547970650203084461
       746153697A6502040549734B6579080F4E65656450726F636573734E616D6509
-      0001044E616D65060B4175646974537461747573094669656C644E616D65060B
-      41756469745374617475730844617461547970650203084461746153697A6502
-      040549734B6579080F4E65656450726F636573734E616D65090001044E616D65
-      060846696C654E616D65094669656C644E616D65060846696C654E616D650844
-      617461547970650201084461746153697A6503FF000549734B6579080F4E6565
-      6450726F636573734E616D65090001044E616D65060A43726561746544617465
-      094669656C644E616D65060A4372656174654461746508446174615479706502
-      01084461746153697A6503FF000549734B6579080F4E65656450726F63657373
-      4E616D65090001044E616D65060C4261636B7570466F6C646572094669656C64
-      4E616D65060C4261636B7570466F6C6465720844617461547970650218084461
-      746153697A6502320549734B6579080F4E65656450726F636573734E616D6509
-      0001044E616D6506124465616C5F42474C546F74616C5072696365094669656C
-      644E616D6506124465616C5F42474C546F74616C507269636508446174615479
-      70650206084461746153697A6502080549734B6579080F4E65656450726F6365
-      73734E616D65090001044E616D6506055765624944094669656C644E616D6506
-      0557656249440844617461547970650203084461746153697A6502040549734B
-      6579080F4E65656450726F636573734E616D65090001044E616D65060A576562
-      4F776E65724944094669656C644E616D65060A5765624F776E65724944084461
+      09507265636973696F6E02000453697A6502000001044E616D6506065765624D
+      4435094669656C644E616D6506065765624D4435084461746154797065020108
+      4461746153697A6503FF000549734B6579080F4E65656450726F636573734E61
+      6D650909507265636973696F6E02000453697A6502000001044E616D65060957
+      6562557365724944094669656C644E616D650609576562557365724944084461
       7461547970650203084461746153697A6502040549734B6579080F4E65656450
-      726F636573734E616D65090001044E616D65060B576562417574686F72494409
-      4669656C644E616D65060B576562417574686F72494408446174615479706502
-      03084461746153697A6502040549734B6579080F4E65656450726F636573734E
-      616D65090001044E616D6506065765624D4435094669656C644E616D65060657
-      65624D44350844617461547970650201084461746153697A6503FF000549734B
-      6579080F4E65656450726F636573734E616D65090001044E616D650609576562
-      557365724944094669656C644E616D6506095765625573657249440844617461
-      547970650203084461746153697A6502040549734B6579080F4E65656450726F
-      636573734E616D65090001044E616D65060E576562466F6C6465724C6576656C
-      094669656C644E616D65060E576562466F6C6465724C6576656C084461746154
-      7970650203084461746153697A6502040549734B6579080F4E65656450726F63
-      6573734E616D65090001044E616D6506065765624B6579094669656C644E616D
-      6506065765624B65790844617461547970650201084461746153697A6503FF00
-      0549734B6579080F4E65656450726F636573734E616D65090000}
+      726F636573734E616D650909507265636973696F6E02000453697A6502000001
+      044E616D65060E576562466F6C6465724C6576656C094669656C644E616D6506
+      0E576562466F6C6465724C6576656C0844617461547970650203084461746153
+      697A6502040549734B6579080F4E65656450726F636573734E616D6509095072
+      65636973696F6E02000453697A6502000001044E616D6506065765624B657909
+      4669656C644E616D6506065765624B6579084461746154797065020108446174
+      6153697A6503FF000549734B6579080F4E65656450726F636573734E616D6509
+      09507265636973696F6E02000453697A6502000000}
   end
   object sdvProjectsInfo: TsdDataView
     Active = False

+ 22 - 14
DataModules/ProjectManagerDm.pas

@@ -27,7 +27,6 @@ type
   private
     FConnection: TCommonConnection;
     FProjectsTree: TsdIDTree;
-    FBackupManager: TBackupManager;
 
     procedure UpdateManagerDataBase;
 
@@ -88,8 +87,6 @@ begin
   FProjectsTree.AutoExpand := True;
   FProjectsTree.SeedID := 1;
   FProjectsTree.DataView := sdvProjectsInfo;
-
-  FBackupManager := TBackupManager.Create;
 end;
 
 procedure TProjectManagerData.CreateNewProjectFile(const AName: string);
@@ -118,7 +115,6 @@ end;
 
 destructor TProjectManagerData.Destroy;
 begin
-  FBackupManager.Free;
   FProjectsTree.Free;
   FConnection.Free;
   inherited;
@@ -500,31 +496,43 @@ end;
 
 procedure TProjectManagerData.AddOpenTenderBackup(AProjectID: Integer);
 var
+  vBackupManager: TBackupManager;
   BackupRec, Rec: TsdDataRecord;
   sBackupFile: string;
 begin
   Rec := sddProjectsInfo.FindKey('idxID', AProjectID);
   if not Assigned(Rec) then Exit;
 
-  FBackupManager.LoadBackupFile(BackupPath(AProjectID));
-  if FBackupManager.LastestOpenBackupIsToday then Exit;
-  sBackupFile := FBackupManager.OpenBackupFile;
-  if FileExists(sBackupFile) then DeleteFile(sBackupFile);
-  ExportTender(Rec, sBackupFile);
+  vBackupManager := TBackupManager.Create;
+  try
+    vBackupManager.LoadBackupFile(BackupPath(AProjectID));
+    if vBackupManager.LastestOpenBackupIsToday then Exit;
+    sBackupFile := vBackupManager.OpenBackupFile;
+    if FileExists(sBackupFile) then DeleteFile(sBackupFile);
+    ExportTender(Rec, sBackupFile);
+  finally
+    vBackupManager.Free;
+  end;
 end;
 
 procedure TProjectManagerData.AddSaveTenderBackup(AProjectID: Integer);
-var
+var          
+  vBackupManager: TBackupManager;
   BackupRec, Rec: TsdDataRecord;
   sBackupFile: string;
 begin
   Rec := sddProjectsInfo.FindKey('idxID', AProjectID);
   if not Assigned(Rec) then Exit;
 
-  FBackupManager.LoadBackupFile(BackupPath(AProjectID));
-  sBackupFile := FBackupManager.SaveBackupFile;
-  if FileExists(sBackupFile) then DeleteFile(sBackupFile);
-  ExportTender(Rec, sBackupFile);
+  vBackupManager := TBackupManager.Create;
+  try
+    vBackupManager.LoadBackupFile(BackupPath(AProjectID));
+    sBackupFile := vBackupManager.SaveBackupFile;
+    if FileExists(sBackupFile) then DeleteFile(sBackupFile);
+    ExportTender(Rec, sBackupFile);
+  finally
+    vBackupManager.Free;
+  end;
 end;
 
 procedure TProjectManagerData.ExportTender(ARec: TsdDataRecord;

+ 1 - 1
Units/TenderBackupManager.pas

@@ -80,7 +80,7 @@ end;
 
 procedure TBackupManager.LoadBackupFile(ABackupPath: string);
 begin
-  if FBackupPath = ABackupPath then Exit;
+  //if FBackupPath = ABackupPath then Exit;
   FBackupPath := ABackupPath;
   FOpenFiles.LoadBackupFiles(FBackupPath);
   FSaveFiles.LoadBackupFiles(ABackupPath);