PDA

View Full Version : سوال: برنامه محاسبه جریمه دیرکرد واریزی



amirali111
یک شنبه 05 مرداد 1399, 17:21 عصر
با سلام و احترام
فایل نمونه ای در ادامه پیوست کردم و حاوی کدی برای محاسبه مجموع واریزی های هر فرد تا تاریخ مشخصی (تاریخ های مبنای واریزی) هستش. اما کد مربوطه واریزی ها را تا تاریخ مبنا محاسبه نمی کنه ، بلکه تا انتها برای هر فرد جمع می کنه.
حالا از اساتید محترم و دوستان برنامه نویس تقاضا دارم نگاهی به برنامه کرده و درصورت امکان کد رو تکمیل کنند.
ممنون​

amirali111
چهارشنبه 15 مرداد 1399, 13:02 عصر
با سلام مجدد.
خوب دوستان راه حل رو پیدا کردم و در فایل پیوست گذاشتم.
حالا ماژول مربوطه واریزی های هر فرد را تا تاریخ مبنا محاسبه میکنه و توی کوئری با مبلغ مبنا در تاریخ مبنا مقایسه می شه و اختلاف واریزی ها تا تاریخ مبنا را داریم.

اما اساتید محترم لطفا کمک کنند الگوریتم و ماژول مربوط به جریمه دیرکرد واریزی براساس مبلغ مبنا و همچنین خوش حسابی بابت پرداخت های زودتر از موعد مبنا نوشته بشه .
به نظر کار پیچیده ای هست. چون چند تا تاریخ مبنا و مبلغ مبنا داریم و واریزی ها هم در تاریخ های مختلف انجام میشه.
ایده اولیه الگوریتم خودم اینه که :
1- واریزی های با تاریخ کمتر از تاریخ مبنای اول اخذ شود و چنانچه واریزی زود تر از موعد یافت برای تک تک آنها خوش حسابی(مثلا با نرخ سالانه 20 درصد که به نرخ روز تبدیل می کنیم) را محاسبه کند.
2- چنانچه مجموع واریزی های تا تاریخ مبنای اول، کوچکتر مساوی مبلغ مبنای اول باشد ، مابالتفاوت تا تاریخ تکمیل واریزی مشمول جریمه می شود
3- واریزی های مابین تاریخ مبنای اول و دوم اخذ شود و با کنترل شرط ردیف 2 ، برای واریزی هایی که بیشتر از مبلغ مبنای اول هستند و زودتر از تاریخ مبنای دوم واریز شده اند ، خوش حسابی محاسبه گردد.
4- ادامه روند از ردیف 2 با رفتن به تاریخ های مبنای بعدی و الی آخر

لذا خواهشمندم اولا در تکمیل الگوریتم مسأله و بعد نوشتن ماژول کمک و راهنمایی بفرمایید.

amirali111
یک شنبه 19 مرداد 1399, 16:46 عصر
کسی نیست کمک کند:متفکر:

mohammadsaleh
پنج شنبه 23 مرداد 1399, 23:39 عصر
برای این محاسبه شما متغیرهای زیر رو در نظر بگیرید:
مبلغ قسط
تعداد قسط
تاریخ شروع پرداخت اقساط
تاریخ جاری

محاسباتی که باید انجام بدید:
تا تاریخ جاری چند قسط باید پرداخت میشده یا ملزم به پرداخت : اختلاف تاریخ جاری از تاریخ شروع اقساط به ماه
تا تاریخ جاری چند قسط پرداخت شده است: به روشهای مختلفی میتونید اونرو محاسبه کنید. ساده ترین او جمع اقساط واریزی تقسیم بر مبلغ قسط هست
محاسبه اختلاف ملزم به پرداخت و اقساط داده شده:
اگر منفی باشد یعنی اقساط را زودتر هم داده است
اگر مثبت باشد این عدد به معنی دیرکرد می باشد. یک نکته ای که باید در نظر بگیرید این است که اگر تعداد اقساط ملزم به پرداخت از تعداد قسط بیشتر شود لازم است در تابع شرطی قید شود که ملزم به پرداخت همان تعداد قسط است. اما دیرکرد عددش از تعداد اقساط ممکن است بیشتر شود چنان که در موضوعات بانکی مطالبات جاری و غیرجاری داریم. مطالبات غیر جاری مطالباتی هستند که سررسید پرداخت اقساط آن از دو ماه گذشته است. (با تقسیمات سررسید گذشته- معوق و مشکوک الوصول)

برای راحتی کار همه اینها را باید با کوئری محاسبه کنید

در خصوص جداولتون:
جدول مشخصات وام باید شامل فیلدهای اصلی زیر باشه:
تاریخ پرداخت- شماره وام - مبلغ وام- مبلغ قسط هم شما بگذارید- تاریخ شروع اقساط یا اولین سررسید- مشخصات وام گیرنده
جدول دریافت اقساط:
تاریخ دریافت- شماره وام - مبلغ قسط دریافتی( ضریبی از قسط باید باشد ولی بهتر است هر قسط در یک رکورد ثبت شود) - تاریخ سررسید- شرح

amirali111
سه شنبه 28 مرداد 1399, 00:06 صبح
ممنون از توجه و راهنمایی تون.