الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

حساب مكافأة نهاية الخدمة

بدأه saswahaibi في 10 مايو 2010 · 22 رد · 17,476 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أعزائي الكرام أرفق لكم نموذج من إعدادي يقوم بحساب مكافأة نهاية الخدمة للموظف راجياً منكم هل ما قمت به من كودات صحيح أم لا وإضافة الكودات حسب المطلوب أدناه

المكافأة = الراتب * 1 * الثلاث سنوات الأولى + الراتب * 2 * السنوات الأخيرة

أي راتب عن الثلاث سنوات الأولى وراتبين عن السنوات الأخيرة

المطلوبأريد أن أقوم بإدخال الراتب الأساسي وإجمالي مدة الخدمة فقط

وأريد النموذج يفصل لي السنوات الأولى والسنوات الأخيرة أي يطرح لي من إجمالي مدة الخدمة الثلاث سنوات الأولى والباقي

يظهر في السنوات الأخيرة

فإذا كانت مدة الخدمة أقل من ثلاث سنوات يحطها في السنوات الأولى

إحتساب المكافأة الراتب * 1 (راتب واحد) * (3) السنوات الأولى = س

الراتب * 2(راتبين) * عدد السنوات الأخيرة = ص

الراتب * 2(راتبين) * عدد الأشهر / 12(تحويل الأشهر إلى سنوات) = ع

الراتب * 2(راتبين) * عدد الأيام / 365(تحويل الأيام إلى سنوات = م

المكافأة = إجمالي النواتج أعلاه دون تقريب وأخذ الثلاثة أرقام بعد الفاصلة دون تقريب في الكسر = س+ص+ع+م

فاذا كانت مدة الخدمة أقل من 3 سنوات وبها أشهر وأيام الإحتساب يكون كالتالي

الراتب * 1(راتب واحد) * عدد السنوات = أ

الراتب * 1 * عدد الأشهر/12(تحويل الأشهر إلى سنوات)= بالراتب * 1 * عدد الأيام/365(تحويل الأيام إلى سنوات) = ج

المكافأة = أ+ب+ج

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

مكافأة نهاية الخدمة.rar

إحتساب مكافأة نهاية الخدمة.doc

تم تعديل هذه المشاركة بواسطة همام ابوعرقوب في 22 يونيو 2010 في 12:00

#2

راجع هذا الرابط أخي الكريم ربما يفيدك بطريقة حساب مدة الخدمة ..

/index.php?showtopic=66176

تقبل تحياتي ..

27169617.gif
#3

بارك الله فيك بس عندي برنامج يحسب مدة الخدمة أريد أضيف عليه أكواد حساب المكافأة بعد ما يفصل إجمالي مدة الخدمة إلى سنوات أولى وسنوات أخيرة وماذا عن مشكلة تشابك الكلمات شاكر إهتمامكم

#4

أخواني الكرام ما زلت أنتظر ردكم!!!

#5

أعزائي وإخواني الكرام ما زلت أنتطر الرد ما أدري هل الموضوع ما واضح؟

#6

السلام عليكم اخواني

اخي الفاضل طلبك كما فهمت اتمني ان يكون المطلوب

مكافأة نهاية الخدمة.rar

الي زهرة المنتدي

أم عهود زهرة الأكسيس بدون منافس

لك مني كل الثناء والتقدير

مبتدئ جرئ

#7

مشكور أخي العزيز مبدئ جرئ جزيل الشكر بارك الله تعالى فيك هذا ما قصدته بس لأني أريد أخذ الثلاث ارقام بعد الفاصلة أستخدمت دالة Round للتقريب إلى ثلاثة أرقام وأطرح منها 0.001 هل ما عملته صحيح؟ أو توجد هناك  طريقة ثانية أفضل من هذه الطريقة لأخذ الثلاثة أرقام بعد الفاصلة ؟ وكيف أتغلب على السالب الذي يظهر إذا أدخلت مدة أقل من ثلاث سنوات الناتج في السنوات الأخيرة -0.001 وفي الأشهر -0.001 وفي الأيام 0.001

#8

السلام عليكم

اخي الفاضل / التعديل كما فهمت من طلبك اعتذر ان كان فهمي خاطئ

ولك مني الدعاء بالتوفيق.....

طبعا انا عملت اللي اقدر عليه علي قدر فهمي فانا مبتدئ وهنا في المنتدي عمالفة كبار سيفيدونك ان شاء الله

مكافأة نهاية الخدمة.rar

الي زهرة المنتدي

أم عهود زهرة الأكسيس بدون منافس

لك مني كل الثناء والتقدير

مبتدئ جرئ

#9

بارك الله تعالى فيك أخي العزيز مبتدئ جرئ ما قصرت وفي ميزان حسناتك بإذن الله تعالى أرجو منك أو أحد أعضاء المنتدى أن يشرح لي هذه الكودات

Private Sub Command60_Click()
On Error GoTo Err_Command60_Click
    DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70
Exit_Command60_Click:
    Exit SubErr_Command60_Click:
    MsgBox Err.Description   
 Resume Exit_Command60_Click
    End Sub
Private Sub Command61_Click()
On Error GoTo Err_Command61_Click
    DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70
Exit_Command61_Click:
    Exit Sub
Err_Command61_Click: 
   MsgBox Err.Description 
   Resume Exit_Command61_Click 
   End Sub

كما أرجو من الأعضاء أن يوجهوني ماذا أعمل إذا أردت أخذ الثلاثة أرقام بعد الفاصلة بدون تقريب وأما معادلة التقريب إلى ثلاثة أرقام وخصم 0.001 كما وجهني أحد الأعضاء الكرام في البداية أشوفها ما تنفيع لأن إذا كان الرقم الثلاث من الفاصلة صفر فأنه لا يقرب أي عدد ويخصم من الناتج 0.001 ويطلع الناتج ناقص 0.001

تم تعديل هذه المشاركة بواسطة همام ابوعرقوب في 22 يونيو 2010 في 12:03

#10

عزيزي saswahaibi ،

بالنسبة إذا أردت إظهار 3 أرقام بعد الفاصلة ، كهذا الشكل : ###.## >>> أنظر إلى الصورة التالية ، مع الإنتباه إلى إزالة ROUND من الكود في محرر الفيجوال بيزك .

لأنك إن تركت ROUND في الكود عندها ستظهر النتيجة هكذا : 000.## .

post-193655-12737984065108_thumb.png

أخي الكريم ، في المرفق تعديل لبرنامجك بعد إزالة ROUND من الكود ، والتعديل في الخصائص كما هو موضح في الصورة .

مكافأة نهاية الخدمة.rar

post-12787-12741339659298.jpg

ومامن يد إلا يد الله فوقها *** وما من ظالم إلا سيبلى بأظلم

تفضل أخي الكريم | موسوعة الحميدي الذهبية | بأجزائها الثلاثة مع هدية الموسوعة .

#11

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

أزلت لك هذه الأكواد في المثال الذي أرفقته لك في مشاركتي السابقة .

وهذه الأزرار مهمتها :

DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70

هذا الكود للتراجع عن التعديل !

DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

هذا الكود لعمل REFRESH للصفحة !

وهي لا علاقة لها في برنامجك الآن .

تم تعديل هذه المشاركة بواسطة hamidymom في 14 مايو 2010 في 04:14

post-12787-12741339659298.jpg

ومامن يد إلا يد الله فوقها *** وما من ظالم إلا سيبلى بأظلم

تفضل أخي الكريم | موسوعة الحميدي الذهبية | بأجزائها الثلاثة مع هدية الموسوعة .

#12

مشكور جداً أخي العزيز hamidymon بارك الله تعالى فيك في ميزان حسناتك بإذنه تعالى كتب أكثر بكثير من قيمة بس أستنخدام الألة الحاسبة في المثالثين التاليين المثال الأول الراتب 120 ، مدة الخدمة 8 سنوات و3 أشهر و9 أيام أول شئ يفصل 3 الثلاث سنوات الأولى والمكافأة عن الثلاث سنوات الأولى : 360 و 5 الخمس سنوات الأخيرة : 1200 و3 الثلاثة الأشهرة الأخيرة : 60 و9 الأيام الأخيرة : 5.917 بس ناتج البرنامج طلع 5.918 وهذا أنا اللي ما أريده ، المثال الثاني : الراتب 138 مدة الخدمة 1 سنة و3 أشهر و7 أيام طبعاً كل مدة الخدمة تكون في الثلاث سنوات الأولى إحتساب الألة الحاسبة مكافأة السنة : 138 ومكافأة 3 الثلاثة أشهر : 34.500 ومكافأة 3 الثلاثة أيام : 2.646 بس ناتج البرنامج : 2.646 من الملاحظ أن البرنامج يأخذ الثلاثة أرقام بعد الفاصلة مع تقريب الرقم الثالث بعد الفاصلة أنا أريد يأخذ الثلاثة أرقام بعد الفاصلة بدون أي تقريب أو إضافة شاكر جزيل الشكر والعرفان على مجهودك المبذول مجهود يستحق الشكر والتقدير

#14

مرفق لكم برنامج يقوم بحساب مكافأة نهاية الخدمة بعد إدخال الراتب الاساسي ومدة خدمة الموظف وهذا البرنامج يحسب المكافأة على أساس راتب عن الثلاث سنوات الأولى وراتبين عن السنوات الأخيرة مع شكري وتقديري لكل من ساهم بالرد عليّ عندما شاركت بهذا الموضوع وأخص بالشكر استاذي أكسير الحياة واستاذي hamidymom واستاذي moh samer ali وأخي مبتدئ جرئ وأخي إياد بيك كما أرجو من اساتذتي الكرام مشرفين منتدى الأكسس تقيمه مع ملاحظتي بالتالي :

1- لم أقم بحجز مساحة للمتغير لعدم إلمامي بها ، كيف أقوم بحجز مساحة للمتغير في كودات هذا البرنامج على سبيل المثال وإذا كانت أية دروس عن حجز مساحة للمتغير أرجو إفادتي بها .

2- ماذا تعني Private Sub dy_afterupdate()

If Me.YRS >= 3 Then ماذا تعني Me

ماذا تعني Private Sub dy_lostfocus()

3- baqy تعني الباقي من الإشتراك أي بعد ما نخصم الإشتراك من المكافأة ، tomo تعني إجمالي المكافأة ، ajz تعني العجز كيف تكون الجملة الشرطية إذا الإشتراك أكبر من المكافأة الباقي = الإشتراك - المكافأة والعجز = 0 ، إذا كان الإشتراك أصغر من المكافأة الباقي = 0 والعجز = المكافأة - الإشتراك

مكافأة نهاية الخدمة لموظفي القطاع الخاص.rar

#15

أخواني الكرام ما زلت أنتظر ردكم شاكر تعاونكم

#16

أخواني ما زلت أنتظر ردكم

#17

مرفق لكم برنامج يقوم بحساب مكافأة نهاية الخدمة بعد إدخال الراتب الاساسي ومدة خدمة الموظف وهذا البرنامج يحسب المكافأة على أساس راتب عن الثلاث سنوات الأولى وراتبين عن السنوات الأخيرة مع شكري وتقديري لكل من ساهم بالرد عليّ عندما شاركت بهذا الموضوع وأخص بالشكر استاذي أكسير الحياة واستاذي hamidymom واستاذي moh samer ali وأخي مبتدئ جرئ وأخي إياد بيك كما أرجو من اساتذتي الكرام مشرفين منتدى الأكسس تقيمه مع ملاحظتي بالتالي :

1- لم أقم بحجز مساحة للمتغير لعدم إلمامي بها ، كيف أقوم بحجز مساحة للمتغير في كودات هذا البرنامج على سبيل المثال وإذا كانت أية دروس عن حجز مساحة للمتغير أرجو إفادتي بها .

2- ماذا تعني Private Sub dy_afterupdate()

* ماذا تعني Me في if me.yrs > =3

* ماذا تعني Private Sub dy_lostfocus()

* تعني baqy الباقي من الاشتراك أي بعد ما تخصم الإشتراك من المكافأة ، tomo تعني إجمالي المكافأة ، ajz تعني العجز تعني العجز كيف تكون الجملة الشرطية إذا الإشتراك أكبر من المكافأة الباقي = الإشتراك - المكافأة والعجز = 0 ، إذا كان الإشتراك أصغر من المكافأة الباقي = 0 والعجز = المكافأة - الإشتراك

مكافأة نهاية الخدمة لموظفي القطاع الخاص.rar

#18

يالله أخواني صارلي 9 أيام أنتظر الرد على هذا الموضوع وما حصلت إفادة ما أدري ما هو السبب إذا المشكلة في شرح النقاط من 1 غلى 3 أرجو إفادتي عن النقطة الأخيرة

#19

يرجى عدم استخدام زر التقرير لهذا الغرض، زر التقرير لم يوضع ليعمل كجرس النادل تطرقه عندما تحتاجه وإنما للمشاركات المزعجة والمسيئة sleep.gif قريباً سيتم إزالته إن استمريتم على هذا النحو.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#20

إسمحلي أخي العزيز ما كانت عندي أي فكره عنه أنه يعمل مثل ما أخبرتني به

#21

يا أخوان أرجو التكرم بالرد عليّ

#22

أخواني الكرام ما زلت أنتطر الرد ما هي المشكلة لعدم الرد على هذا الموضوع

#23

في النموذج المرفق tomo تعني إجمالي المكافأة ، isms تعني الإشتراك ، baqy تعني الباقي ، Ajz تعني العجز الجملة الشرطية إذا كان الإشتراك أكبر من المكافأة إذن الباقي = الإشتراك - المكافأة والعجز = 0 ، إذا كان الإشتراك أقل من المكافأة إذن الباقي = 0 والعجز = المكافأة - الإشتراك

مكافأة نهاية الخدمة لموظفي القطاع الخاص.rar

مواضيع مشابهة