delphi4arab منتديات دلفي للعرب
توزيع مبلغ مادي علي صفوف stringgrid برنامج اقساط - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : توزيع مبلغ مادي علي صفوف stringgrid برنامج اقساط (/showthread.php?tid=10683)



توزيع مبلغ مادي علي صفوف stringgrid برنامج اقساط - Omega-tron - 27-02-2020

شغال علي برنامج أقساط محتاج معلومات عن توزيع مبلغ علي عده أقساط لو كان اكبر من القسط ولو كان أقل ولو كان موازي القسط هناك مبالغ مدفوعة من قبل 
يرجي الإفادة


RE: توزيع مبلغ مادي علي صفوف stringgrid برنامج اقساط - ALG2009 - 27-02-2020

السلام عليكم

السؤال غير واضح
أعطي مثال ليتضح السؤال


RE: توزيع مبلغ مادي علي صفوف stringgrid برنامج اقساط - Omega-tron - 28-02-2020

في حالة ان العميل دفع مبلغ اكبر من قيمة القسط يتم توزيعه علي الاقساط التالية وان كان فيه مبلع مدفوع من قسط يتم تكملنه وتسديد باقي الاقساط زي الصورة


RE: توزيع مبلغ مادي علي صفوف stringgrid برنامج اقساط - ghostdz - 01-03-2020

(28-02-2020, 10:45 PM)Omega-tron كتب : في حالة ان العميل دفع مبلغ اكبر من قيمة القسط يتم توزيعه علي الاقساط التالية وان كان فيه مبلع مدفوع من قسط يتم تكملنه وتسديد باقي الاقساط زي الصورة


[size=small]جرب هذه procedure حيث :
PriorPayment : المبلغ المدفوع من القسط سابقا 
 Payment : المبلغ المدفوع
 Installment : قيمة القسط
 Col : عمود الإضافة
Row : سطر الإضافة[/size]



كود :
procedure TForm2.DistributionInstallment(PriorPayment, Payment, Installment: Currency;   StringGrid: TStringGrid; Col, Row: Integer); begin   if Payment <= 0 then     exit;   Payment:= Payment + PriorPayment;   repeat     if Payment > Installment then       StringGrid.Cells[Col, Row]:= CurrToStr(Installment)     else StringGrid.Cells[Col, Row]:= CurrToStr(Payment);     Payment:= Payment - Installment;     Row:= Row + 1;   until (Payment <= 0); end; procedure TForm2.InstallmentBtnClick(Sender: TObject); begin   DistributionInstallment(80, 60, 150, StringGrid1, 3, 1); end;