|
@@ -883,12 +883,13 @@ begin
|
|
|
if CalcType.AsInteger = 0 then
|
|
|
MisTotalPrice.AsFloat := TotalPriceRoundTo(MisQuantity.AsFloat * Price.AsFloat);
|
|
|
|
|
|
+ SetFloatValue(Quantity, QuantityRoundTo(
|
|
|
+ OrgQuantity.AsFloat + MisQuantity.AsFloat + OthQuantity.AsFloat));
|
|
|
+
|
|
|
// 金额与修改前不一样,则向父项增量
|
|
|
if MisTotalPrice.AsFloat <> CacheMisTP then
|
|
|
begin
|
|
|
UpdateParent(vNode.ParentID, MisTotalPrice.AsFloat - CacheMisTP, 'MisTotalPrice');
|
|
|
- Quantity.AsFloat := QuantityRoundTo(
|
|
|
- OrgQuantity.AsFloat + MisQuantity.AsFloat + OthQuantity.AsFloat);
|
|
|
TotalPrice.AsFloat := TotalPriceRoundTo(
|
|
|
OrgTotalPrice.AsFloat + MisTotalPrice.AsFloat + OthTotalPrice.AsFloat);
|
|
|
end;
|
|
@@ -919,12 +920,13 @@ begin
|
|
|
if CalcType.AsInteger = 0 then
|
|
|
OrgTotalPrice.AsFloat := TotalPriceRoundTo(OrgQuantity.AsFloat * Price.AsFloat);
|
|
|
|
|
|
+ SetFloatValue(Quantity, QuantityRoundTo(
|
|
|
+ OrgQuantity.AsFloat + MisQuantity.AsFloat + OthQuantity.AsFloat));
|
|
|
+
|
|
|
// 金额与修改前不一样,则向父项增量
|
|
|
if CacheOrgTP <> OrgTotalPrice.AsFloat then
|
|
|
begin
|
|
|
UpdateParent(vNode.ParentID, OrgTotalPrice.AsFloat - CacheOrgTP, 'OrgTotalPrice');
|
|
|
- Quantity.AsFloat := QuantityRoundTo(
|
|
|
- OrgQuantity.AsFloat + MisQuantity.AsFloat + OthQuantity.AsFloat);
|
|
|
TotalPrice.AsFloat := TotalPriceRoundTo(
|
|
|
OrgTotalPrice.AsFloat + MisTotalPrice.AsFloat + OthTotalPrice.AsFloat);
|
|
|
end;
|
|
@@ -955,12 +957,13 @@ begin
|
|
|
if CalcType.AsInteger = 0 then
|
|
|
OthTotalPrice.AsFloat := TotalPriceRoundTo(OthQuantity.AsFloat * Price.AsFloat);
|
|
|
|
|
|
+ SetFloatValue(Quantity, QuantityRoundTo(
|
|
|
+ OrgQuantity.AsFloat + MisQuantity.AsFloat + OthQuantity.AsFloat));
|
|
|
+
|
|
|
// 金额与修改前不一样,则向父项增量
|
|
|
if OthTotalPrice.AsFloat <> CacheOthTP then
|
|
|
begin
|
|
|
UpdateParent(vNode.ParentID, OthTotalPrice.AsFloat - CacheOthTP, 'OthTotalPrice');
|
|
|
- Quantity.AsFloat := QuantityRoundTo(
|
|
|
- OrgQuantity.AsFloat + MisQuantity.AsFloat + OthQuantity.AsFloat);
|
|
|
TotalPrice.AsFloat := TotalPriceRoundTo(
|
|
|
OrgTotalPrice.AsFloat + MisTotalPrice.AsFloat+ OthTotalPrice.AsFloat);
|
|
|
end;
|