Просмотр исходного кода

清单工料数量为0时,删除该清单工料,应实时计算

MaiXinRong 10 лет назад
Родитель
Сommit
4dbd18fbba
2 измененных файлов с 4 добавлено и 2 удалено
  1. 2 1
      DataModules/LeafXmjGlDm.pas
  2. 2 1
      DataModules/PriceMarginBillsDm.pas

+ 2 - 1
DataModules/LeafXmjGlDm.pas

@@ -60,11 +60,12 @@ begin
   Result := TLeafXmjGlRecord(sddLeafXmjGL.FindKey('idxView', VarArrayOf([AXmjID, AGLID])));
   if not Assigned(Result) then
   begin
+    //Result := TLeafXmjGlRecord(sddLeafXmjGL.Add(True));
     Result := TLeafXmjGlRecord(sddLeafXmjGL.Add);
     Result.ID.AsInteger := GetNewLeafXmjGlID;
     Result.XmjID.AsInteger := AXmjID;
     Result.GLID.AsInteger := AGLID;
-
+    //Result.EndUpdate;
     with TProjectData(FProjectData).PhaseData.StageLeafXmjGlData do
       Result.StageRec := StageLeafXmjGlRecord(Result.ID.AsInteger);
   end;

+ 2 - 1
DataModules/PriceMarginBillsDm.pas

@@ -318,7 +318,8 @@ begin
     if not DetailGLData.HasXmjDetailGL(iLeafXmjID, Rec.GLID.AsInteger) then
       LeafXmjGlData.DeleteLeafXmjGl(iLeafXmjID, Rec.GLID.AsInteger);
   end;
-  if Rec.Quantity.AsFloat <> 0 then
+  // 数量为0时,本部分项下详细工料可能含有本期实耗数量,此时删除亦须实时计算
+  //if Rec.Quantity.AsFloat <> 0 then
     CalculateRela(Rec);
 end;