Sfoglia il codice sorgente

1. 批量插入子后项,竖向粘贴,优先从签约清单查询名称、单位、单价
2. 导入分包汇总数据,暂不清理数量变更数据

MaiXinRong 7 anni fa
parent
commit
b2ca2d9158

+ 1 - 0
DataModules/StageDm.pas

@@ -105,6 +105,7 @@ type
     property Active: Boolean read GetActive;
     property TableName: string Write SetTableName;
     property MainBillsTree: TBillsIDTree read GetMainBillsTree;
+    property PhaseData: TObject read FPhaseData;
 
     {可选计算数}
     // AType表示不同类型,取值如下:

+ 11 - 0
Forms/BatchInsertBillsFrm.dfm

@@ -412,4 +412,15 @@ object BatchInsertBillsForm: TBatchInsertBillsForm
       OnUpdate = actnInsertColUpdate
     end
   end
+  object dxpmBills: TdxBarPopupMenu
+    BarManager = MainForm.dxBarManager
+    ItemLinks = <
+      item
+        Item = MainForm.dxbtnRemapedPaste
+        Visible = True
+      end>
+    UseOwnFont = False
+    Left = 135
+    Top = 255
+  end
 end

+ 9 - 3
Forms/BatchInsertBillsFrm.pas

@@ -38,6 +38,7 @@ type
     udBeginCode: TUpDown;
     alBatchInsertBills: TActionList;
     actnInsertCol: TAction;
+    dxpmBills: TdxBarPopupMenu;
     procedure zgPositionCustomPaste(Sender: TObject; ABounds: TRect;
       ASourSheet: TZjSheet);
     procedure zgBillsCustomPaste(Sender: TObject; ABounds: TRect;
@@ -84,7 +85,7 @@ procedure AddLeafBills(ABillsCompileData: TBillsCompileData; AInsertType: TInser
 implementation
 
 uses
-  sdDB, UtilMethods, ProjectData, MainFrm, Globals;
+  sdDB, UtilMethods, ProjectData, MainFrm, Globals, DealBillsDm;
 
 {$R *.dfm}
 
@@ -365,8 +366,13 @@ begin
     zgBills.Cells[Col, Row].Align := gaCenterLeft;
     sB_Code := zgBills.Cells[Col, Row].Text;
     if sB_Code = '' then Exit;
-    with FBillsCompileData.BillsData do
-      Rec := sddBills.Locate('B_Code', sB_Code);
+    with TProjectData(FBillsCompileData.ProjectData).DealBillsData do
+      Rec := sddDealBills.Locate('B_Code', sB_Code);
+    if not Assigned(Rec) then
+    begin
+      with FBillsCompileData.BillsData do
+        Rec := sddBills.Locate('B_Code', sB_Code);
+    end;
     if Assigned(Rec) then
     begin
       zgBills.Cells[iGclNameCol, Row].Text := Rec.ValueByName('Name').AsString;

+ 11 - 10
SubTenderGather/stgSubGatherFile.pas

@@ -169,18 +169,19 @@ begin
     vRec.DealTotalPrice.AsFloat := 0;
     vRec.DealFlag.AsInteger := 0;
     vRec.DealFormula.AsString := '';
-    vRec.QcQuantity.AsFloat := 0;
-    vRec.QcTotalPrice.AsFloat := 0;
-    vRec.QcFlag.AsInteger := 0;
-    vRec.QcFormula.AsString := '';
-    vRec.QcBGLCode.AsString := '';
-    vRec.QcBGLNum.AsString := '';
+    // to do clear QuantityChange Data, reCalculate ExecutionRate & UsedQuantity
+    //vRec.QcQuantity.AsFloat := 0;
+    //vRec.QcTotalPrice.AsFloat := 0;
+    //vRec.QcFlag.AsInteger := 0;
+    //vRec.QcFormula.AsString := '';
+    //vRec.QcBGLCode.AsString := '';
+    //vRec.QcBGLNum.AsString := '';
     vRec.EndDealQuantity.AsFloat := vRec.PreDealQuantity.AsFloat;
     vRec.EndDealTotalPrice.AsFloat := vRec.PreDealTotalPrice.AsFloat;
-    vRec.EndQcQuantity.AsFloat := vRec.PreQcQuantity.AsFloat;
-    vRec.EndQcTotalPrice.AsFloat := vRec.PreQcTotalPrice.AsFloat;
-    vRec.EndQcBGLCode.AsString := vRec.PreQcBGLCode.AsString;
-    vRec.EndQcBGLNum.AsString := vRec.PreQcBGLNum.AsString;
+    //vRec.EndQcQuantity.AsFloat := vRec.PreQcQuantity.AsFloat;
+    //vRec.EndQcTotalPrice.AsFloat := vRec.PreQcTotalPrice.AsFloat;
+    //vRec.EndQcBGLCode.AsString := vRec.PreQcBGLCode.AsString;
+    //vRec.EndQcBGLNum.AsString := vRec.PreQcBGLNum.AsString;
   end;
 end;