Browse Source

合同支付,计提期限设置调整

MaiXinRong 9 years ago
parent
commit
519a4749fe
1 changed files with 13 additions and 8 deletions
  1. 13 8
      Frames/DealPaymentFme.pas

+ 13 - 8
Frames/DealPaymentFme.pas

@@ -321,7 +321,10 @@ procedure TDealPaymentFrame.actnSetDealPayPlanExecute(Sender: TObject);
     end
     else if ARec.ValueByName('Locked').AsBoolean then
     begin
-      ErrorMessage('该支付(扣款)项被锁定,不可修改!');
+      if ARec.ValueByName('PlanType').AsInteger = 0 then
+        ErrorMessage('该支付(扣款)项被锁定,不可修改!')
+      else
+        TipMessage(Format('该支付(扣款)项已设置计提期限为:%s', [FDealPaymentData.PlanStr(ARec)]) + #13#10 + '且该项已被锁定,不可修改!');
       Result := False;
     end;
   end;
@@ -352,18 +355,20 @@ begin
   if (ACoord.X = 3) and (ACoord.Y > 0) and (ACoord.Y <= zgDealPayment.RowCount - 3) then
   begin  
     Rec := sdDealPayment.DataView.Records[ACoord.Y - 1];
-    if Assigned(Rec) and (Rec.ValueByName('PlanType').AsInteger <> 0) then
+    if Assigned(Rec) and (Rec.ValueByName('Formula').AsString <> '') then
     begin
-      CanShow := True;
-      HintStr := Format('计提期限为(%s)', [FDealPaymentData.PlanStr(Rec)]);
-    end;
-    {if (zgDealPayment.Cells[ACoord.X, ACoord.Y].Text <> '') and Assigned(Rec) then
-      if FDealPaymentData.CheckReachPlan(Rec) then
+      if (Rec.ValueByName('PlanType').AsInteger <> 0) then
+      begin
+        CanShow := True;
+        HintStr := Format('计提期限为(%s)', [FDealPaymentData.PlanStr(Rec)]);
+      end;
+      if (zgDealPayment.Cells[ACoord.X, ACoord.Y].Text <> '') and FDealPaymentData.CheckReachPlan(Rec) then
       begin
         CanShow := True;
         HintStr := '已达到计提期限,使用公式计算的当期金额须一次性计提至限额' + #13#10 +
             Format('计提期限为(%s)', [FDealPaymentData.PlanStr(Rec)]);
-      end;}
+      end;
+    end;
   end;
 end;