Alsalim1 قام بنشر مارس 22, 2015 قام بنشر مارس 22, 2015 مرحبا شباب كيف يكون طريقة إحتساب المعاش والمكافأة إجمالي الراتب = الراتب الأساسي + العلاوات إذا كان سبب التقاعد سن التقاعد ومدة العمل 14 سنة و6 أشهر فأكثر وأقل من 15 سنة المعاش = إجمالي الراتب * 4% * 15 المكافأة = إجمالي الراتب / 2 * 15 إذا كان سبب التقاعد سن التقاعد ومدة العمل 15 سنة فأكثر وأقل من 20 سنة المعاش = إجمالي الراتب * 4% * (عدد السنوات + عدد الأشهر/12 + عدد الأيام /365) المكافأة = إجمالي الراتب / 2 * (عدد السنوات + عدد الأشهر/12 + عدد الأيام /365) ذا كان سبب التقاعد سن التقاعد ومدة العمل 20 سنة فأكثر المعاش = إجمالي الراتب * 80% المكافأة = إجمالي الراتب / 2 * (عدد السنوات + عدد الأشهر/12 + عدد الأيام /365) بحيث المعاش لا يتجاوز 80% من إجمالي الراتب ولا يقل عن 200 ريال طريقة الإحتساب.rar
rudwan قام بنشر مارس 23, 2015 قام بنشر مارس 23, 2015 ضع الكود التالي في حدث عند النقر على الزر If DE = "Óä ÇáÊÞÇÚÏ" Then Select Case Y Case Is < 14 SAL = 0 BOUN = 0 Case 14 If M >= 6 Then SAL = T * 0.04 * 15 BOUN = T * 7.5 Else SAL = 0 BOUN = 0 End If Case 15 To 19 SAL = T * 0.04 * (Y + (M / 12) + (D / 365)) BOUN = T / 2 * (Y + (M / 12) + (D / 365)) Case Is >= 20 SAL = T * 0.8 BOUN = T / 2 * (Y + (M / 12) + (D / 365)) End Select If SAL > 0 And SAL < 200 Then SAL = 200 Else SAL = 0 BOUN = 0 End If وذلك بعد تغيير المسميات التالية حقل المعاش sal حقل المكافأة boun حقل سبب الترك de
Alsalim1 قام بنشر مارس 24, 2015 الكاتب قام بنشر مارس 24, 2015 أشكرك أخي الكريم مرفق النموذج بعد إضافة الكود كيف يكون الكود إذا كان ترك الخدمة الوفاة وأريد المعاش والمكافأة تكون 3 أرقام عشرية طريقة الإحتساب.rar
rudwan قام بنشر مارس 24, 2015 قام بنشر مارس 24, 2015 كيف يكون الكود إذا كان ترك الخدمة الوفاة هذا الأمر أنت تحدد طريقة حسابه أنت ذكرت فقط شرط ترك الخدمة ترك العمل
Alsalim1 قام بنشر مارس 24, 2015 الكاتب قام بنشر مارس 24, 2015 سبب الترك الوفاة ومدة العمل أقل من 12 سنة و6 أشهر المعاش الراتب * 0.5 سبب الترك الوفاة ومدة العمل 12 سنة و6 أشهر فأكثر وأقل من 20 سنة المعاش = الراتب * 0.04 * (السنوات + (الأشهر/12) + (الأيام/365)) سبب الترك الوفاة ومدة العمل أقل من 20سنة فأكثر المعاش = الراتب * 0.8 وكيف يكون ناتج إحتساب المعاش والمكافأة 3 أرقام عشرية فقط
rudwan قام بنشر مارس 24, 2015 قام بنشر مارس 24, 2015 جميل , لأن الغرض من المنتدى عو الاستفادة و التعلم و أسهل طريقة للتعلم هي العمل باليد اذا كانت المعادلات الأولى أعطت نتائج صحيحة الآن دورك في تنفيذ تلك المعادلات بنفس الطريقة في حالة الوفاة نفس الطريقة تماما لكن تغير المعادلات أريدك قبل كل شيء أن تعرف اين ستضع كود معادلات الوفاة ضمن الكود السابق الذي وضعته لك ؟ اذا عرفت اين , فسيكون من السهل جدا عليك أن تعرف كيف تضيف تلك المعادلات
Alsalim1 قام بنشر مارس 24, 2015 الكاتب قام بنشر مارس 24, 2015 ظهرت عندي مشكلة بعد كتابة الكود أرجو الإطلاع عليها طريقة الإحتساب.rar
rudwan قام بنشر مارس 26, 2015 قام بنشر مارس 26, 2015 T = Val(B.Value) + (A.Value) If De = "Óä ÇáÊÞÇÚÏ" Then Select Case Y Case Is < 14 Sal = 0 Boun = 0 Case 14 If M >= 6 Then Sal = T * 0.04 * 15 Boun = T * 7.5 Else Sal = 0 Boun = 0 End If Case 15 To 19 Sal = T * 0.04 * (Y + (M / 12) + (D / 365)) Boun = T / 2 * (Y + (M / 12) + (D / 365)) Case Is >= 20 Sal = T * 8 Boun = T / 2 * (Y + (M / 12) + (D / 365)) End Select ElseIf De = "ÇáæÝÇÉ" Then Select Case Y Case 12 If M >= 6 Then Sal = T * 0.04 * (Y + (M / 12) + (D / 365)) Boun = T * (Y + (M / 12) + (D / 365)) Else Sal = T * 0.5 Boun = T * (Y + (M / 12) + (D / 365)) End If Case 13 To 19 Sal = T * 0.04 * (Y + (M / 12) + (D / 365)) Boun = T / 2 * (Y + (M / 12) + (D / 365)) Case Is >= 20 Sal = T * 8 Boun = T / 2 * (Y + (M / 12) + (D / 365)) End Select If Sal > 0 And Sal < 203 Then Sal = 203 Else Sal = 0 Boun = 0 End If
rudwan قام بنشر مارس 26, 2015 قام بنشر مارس 26, 2015 تعديل برمجي فقط و لم أتطرق الى معادلاتك أبدا فقط قمت بتعديل لغوي للكود اختبر الكود لتعرف مدى صحة الحساب كما تريد
Alsalim1 قام بنشر مارس 30, 2015 الكاتب قام بنشر مارس 30, 2015 الحمد لله تعالى الآن ضبطت عندي بس أريد أضع كود في كل حالات إستحقاق المعاش يجب أن لا يقل المعاش عن 200 طريقة الإحتساب.rar
علي المصري قام بنشر أبريل 5, 2015 قام بنشر أبريل 5, 2015 ممكن تجرب الطريقة التالية مع كل الحالات Dim Sal1 As Integer Sal1 = T * 0.8 Boun = T / 2 * (Y + (M / 12) + (D / 365)) If Sal1 <= 200 Then Sal = 200 Else Sal = Sal1
rudwan قام بنشر أبريل 5, 2015 قام بنشر أبريل 5, 2015 أريد أضع كود في كل حالات إستحقاق المعاش يجب أن لا يقل المعاش عن 200 يجب أن تحدد القاعدة بشكل صحيح حتى يكون الكود صحيحا قلت سابقا أن شرط الاستحقاق أن يكون أكثر من 14 سنة نفهم من هذا الكلام أن من هو اقل من هذه السن لايستحق شيئا ؟ ثم في الكود الذي أنت أكملته مثلا في حالة الوفاة لم تضع هذا الشرط حيث جعلت معادلة للحساب في حال كانت مجة الخدمة اقل من 12 سنة و هذا يحدث تناقض في القاعدة حدد القاعدة بشكل سليم أولا من جهة أخرى لايستحب أن يكون مربع التحرير و السرد نصا , بل حاول أن تستعيض عنه بأرقام مثل 1 للوفاة - 2 للتقاعد - 3 للصحية و هكذا ملاحظة ثالثة أنا استخدمت عبارة if باعتبار كان لديك حالتين فقط و هما التقاعد و الوفاة أما اذا كان لديك أكثر من حالة , الآن اصبح لديك ست حالات يفضل هنا استخدام case بدلا من elseif
Alsalim1 قام بنشر أبريل 6, 2015 الكاتب قام بنشر أبريل 6, 2015 أشكرك أخي الكريم الآن أريد أحسب مدة عمل الموظف من تاريخ التعيين وحتى تاريخ التقاعد
rudwan قام بنشر أبريل 11, 2015 قام بنشر أبريل 11, 2015 أرجو المعذرة فأنا حاليا في مهمة عمل خارجية و سأعود بعد أيام ان شاء الله
Alsalim1 قام بنشر أبريل 14, 2015 الكاتب قام بنشر أبريل 14, 2015 شباب كيف أضع الكود لحساب المدة المتبقية لإكمال 20 سنة مثال إذا كانت مدة العمل 15 سنة و10 أشهر و4 أيامالمدة المتبقية لإكمال 20 سنة هي 4 سنوات و 1 شهر و26 يوممرفق طريقة الإحتساب
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.