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

برنامج رواتب نظام الخدمة المدنية

مغلق
بدأه فهد الدوسري في 5 مارس 2002 · 29 رد · 4,850 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

حاولت عدة مرات أن أقوم بعمل برنامج خاص بالرواتب على طريقة أنظمة الخدمة المدنية ..

واجهتني صعوبات وهي :

كيف أربط كل فئة من الفئات بالسلم الخاص بها ؟

والفئات هي :

1- فئة الموظفين والسلم الخاص بهم هو ( سلم رواتب الموظفين )

2- فئة المدرسين والسلم الخاص بهم هو ( سلم رواتب المدرسين)

3- فئة المستخدمين والسلم الخاص بهم هو ( سلم رواتب المستخدمين)

4- فئة العمال والسلم الخاص بهم هو ( سلم رواتب بند الأجور)

لمزيد من المعلومات عن السلالم :-

أنظر هذا الرابط ..

الذي أريده هو من خلال استعلام أو نموذج ( مصدره استعلام ) أقوم بالتالي :

أقوم بإدخال (الفئة) ثم( المرتبة) ثم( الدرجة) فيخرج( الراتب ) تلقائياً

كما في هذا المثال ..

مع اختلاف الترتيب في الإدخال كما ذكرت سابقاً

فهل أجد لديكم مساعدة لي لحل هذا الموضوع ؟؟

جزاكم الله خير الجزاء

وتقبلوا تحياتي

#2

اخي سعودي الامر سهل ان شاء الله

ضع جدول وفيه

المرتبة نص بطول 2

الدرجة رقم بايت

الراتب رقم عدد صحيح

هذا هو المطلوب في الجدول ثم ادخل المعلومات كاملة

مثال

المرتبة 15 الدرجة 1 الراتب 15000

المرتبة 15 الدرجة 2 الراتب 15650

ثم اكمل الباقي لجميع سلم الرواتب للمراتب

هذا بالنسبة للموظفين والعمال والمستخدمين

ضع مراتب افتراضية للمدرسين مثل

المرتبة م1 اي المستوى الاول الدرجة 1 والراتب 0000

بهذا يسهل عليك البحث وكذلك العلوات السنوية وغيره

ولك تحياتي

من سار على الدرب وصل

#3

أخوي : مفرح

شكرا جزيلا على سرعة ردك فجزاك الله خيراً

ــــــــــــــــــــــــــــــــــــــــــــــــــــ

ماهو المفتاح في الجدول الذي ذكرت ؟

وأين أضع الفئات (موظفين - مدرسين ..ألخ )في نفس الجدول أو جدول آخر ويتم الربط بينهما

وهل هذه الطريقة تفيد إذا أردت عمل علاوة للجميع

أيضاً ماهو الرابط بين جدول ( الفئات ) وجدول ( الرواتب ) وجدول( الموظفين )

طبعاً يوجد من الحقول في جدول الموظفين مثلا

رقم الموظف : رقم

اسم الموظف : نص

الوظيفة : نص

فكيف أربط بينهما ؟؟

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

حيث أقوم أولا بإدخال

رقم الموظف / 1

ثم اسمه / محمد سعد

ثم الوظيفة / ناسخ آله

ثم الفئة الوظيفية / الموظفين الإداريين

ثم المرتبة / 1

ثم الدرجة / 1

( يخرج بذلك الراتب تلقائياً ) مبنياً على المعلومات السابقة وهو (1500ريال)

آمل أن أكون وضحت الموضوع أكثر

وأرجو الأفادة مشكورين :cool: :cool:

#4

اخو سعودي شكرا لك

يجب ان يكون في جدول الموظفين

المعلومات المطلوبة منك بالاضافة إلى

المرتبة نص بطول 2

الدرجة رقم بايت

وهذه الحقول هي الرابطة بين ملف الموظفين وجدول سلم الرواتب

وهما المفتاح

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

حاول ونحن في هذا المنتدى سنجيبك بالذي نقدر علية

تحياتي

من سار على الدرب وصل

#5

أخوي مفرج جزاك الله خير

الطريقة التي قلتها غير عملية أنا أريد الراتب يخرج تلقائياً لأنه سبق إدخاله في جدول الرواتب

...

سوف أعيد تصوري للقاعدة مرة أخرى ليساعدني الجميع

القاعدة تتكون من ثلاث جداول

_____________________

الجدول الأول ( جدول الموظفين ) ويحتوى على الحقول التالية :-

رقم الموظف___________ اسم الموظف__________ الوظيفة

___1 _____________محمد سعد حسن_________ كاتب

____________________

الجدول الثاني ( الفئات ) ويحتوي الحقول التالية :-

رقم الفئة__________ الفئة

__ 1 ____________موظفين

__2 ____________ مدرسين

______________________

الجدول الثالث ( الرواتب ) ويحتوي الحقول التالية : -

رقم الفئة______المرتبة_______الدرجة_______ الراتب

___1 __________1 _________ 1 ________ 1500

___1 __________1 _________ 2 ________ 1600

________________________

المطلوب هو كيف الربط بين الجداول الثلاثة ؟

أيضا انشاء استعلام يعتمد على الجداول الثلاثة .. يخرج في الاستعلام ما يلي:-

رقم الموظف ... اسم الموظف ... الوظيفة ... رقم الفئة ...الفئة الوظيفية(تخرج تلقائي) لوجود رابط ... المرتبة ... الدرجة ... الراتب ( يخرج تلقائي بناء على الفئة - المرتبة - الدرجة ) لوجود رابط ..

_________________________

أرجو أن يكون الشرح وافياً وفي انتظار مشاركة بقية الأعضاء فلم نعهد منهم أن ينتظروا دعوة للمشاركة في أي موضوع في المنتدى فقد حيرني سكوتهم

وتقبلوا خالص تحياتي :confused: :confused:

#6

:( :(

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

:( :(

[gl]وللجميع خالص التحية[/gl]

#7

اخوي سعودي لاتستعجل على الشباب

الصبر زين

انت بحاجة لجدول للموظفين ورواتبهم فقط

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

بهذا ادخل مرتبة الموظف ودرجة السلم له فقط

ولا تدخل الراتب

اذا كان ذلك فيه صعوبة يمكن وضع برنامج صغير وارساله لك

اسف على التاخير

وفقك الله

من سار على الدرب وصل

#8

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

الاول جدولا الموضفين و يحتوي علي كود الموظف و اسمه و كود الدرجة الخاصة به و كود الفئة

اما الجدولان الآخران فيحتويان علي الكود ةو الاسم لكل من الفئات و الدرجات

و يتم البرط بين كود الوالفئة و الدرجة بين جدول الموظفين و الجداول الاخري

أما عن كيفية استنتاج المرتب و تخزينه فى جدول الموظفين فيكون ذلك فى حدث بعد التحديث لفورم سواء تحديث الدرجة أو الفئة و يتم حساب المرتب بالكود باستخدام قاعدة Secelect Case

مثال

if me.degree = 1 then
select case grade
case 1
Me.salary=3000
case 2
Me.salary=3600
case3
Me.salary=3900

end select
elseif me.degre =2

select case grade
case 1
Me.salary=3900
case 2
Me.salary=4000
case3
Me.salary=4900
end select

elseif me.degre =3

else

Me.salary = 5000
end if
1
#9

آسف على التأخر في الرد لظروف طارئة

حاجتي للفئات لأنه يوجد متعاقدين ونظام ساعات وبند 105 من ضمن الفئات لذلك فهي مطلوبة

آخوي مفرج أرجو منك عمل ذلك البرنامج ووضعه هنا في المنتدى

ولك ألف شكر

أخوي مصراوي أبارك لك إشرافك على هذا القسم وتستاهل

بالنسبة لهذه الطريقة اعتقد انها معقدة لكثرة الدرجات والرواتب المطلوبة

وشكرا لك

#10

هل هذه الطريقة صحيحة

حمل الملف هذا ..

ولكني أعيب عليها أنها طويلة جداً فقد أدخلت فقط المرتبة الأولى والثانية وتعبت من إدخال البقية لكثرتها فهل أجد تعديل على البرنامج هذا

شاكرا ومقدرا للجميع اهتمامهم

#11

السلا م عليكم ورحمة الله وبركاته

انا لم اطلع على برنامجك حتى الان

لااعرف الطريقة بوضع القاعدة في هذا المنتدى او غيره

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

من سار على الدرب وصل

#12

اخي الكريم اطلعت على برنامجك

اخي من الصعب كتابة هذا الكود لجميع درجات الموظقين

حيث يتطاب منك

15 * 15 للموظفين تقريبا

15* 3 للمستخدمين

15 * 4 للعمال

25 * عدد مراتب المدرسبن

هذا امر صعب والمشكلة انك ستحتاج هذا كثيرا

والصح ان تضعها في جدول وتبحث عنها حسب المرتبة والدرجة

وتبحث عنها بمثل هذا الكود :

البحث عن الراتب

Private Function valp()

Dim rec As Recordset

Set rec = CurrentDb.OpenRecordset("step")

rec.Index = "PrimaryKey"

rec.Seek "=", Me!rank, Me!step

If Not rec.NoMatch Then

Me!salary = rec!salary_st

End If

rec.Close

End Function

البحث عن بدل النقل

Private Sub rank_AfterUpdate()

If Val(rank) > 5 Then

Me!trans = 600

Else

Me!trans = 400

End If

End Sub

وفقك الله

وعذرني للتأخير

من سار على الدرب وصل

#13

السلام عليكم

الأخ سعودي لم أطلع بعد علي القاعدة

الاخ مفرج : لوضع الملفات فى المنتدي راجع هذا الرابط

http://www.arabteam2000.com/vb/showthread....=&threadid=8272

و خلاصته أن تسجل بريد مجاني فى موقع مثل

www.ayna.com

و بعد الدخول ستجد علي جانب الصفحة Mypage

و منها يمكن تحميل الملفات الي الموقع

ثم تأخذ منها shortcut

و تضعه فى المنتجي أو أي منتدي

#14

أخوي مفرج

______

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

وأتقدم لك بالشكر الجزيل على مساهمتك معي في برنامجي

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

[gl]أخـــــوي : مــفــــرج[/gl]

أرجو عدم إزعاجك في إلحاحي وكثرة أسألتي فلولا حاجتي الماسة لهذا البرنامج لما أطلت فيه السؤال .

___________________________

بالنسبة لطريقة تنزيل الملفات في المنتدى أنظر ثاني مشاركة في المنتدى ( مثبت : طريقة تحميل الملفات للمنتدى بالصور ومواقع لتخزين الملفات ( 1 2 )

فقد أخذت الطريقة منها وسوف أشرحها لك ملخصاً :-

1 - أنشأ لك بريد في موقع أين

هذا هو الموقع ..

2 - بعد أن تدخل على بريدك( أين) تجد في يمين صفحة البريد ( الصفحة الشخصية ) أضغط عليها .أتبع التعليمات التي سوف تخرج عليك لإنشاء صفحة شخصية لك .

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

أضغط على نفس البرنامج بيمين الفأرة > خصائص > ضلل العنوان الذي سيخرج عليك تحديد الكل > نسخ للعنوان > ألصق العنوان في المنتدى بهذه الطريقة يكون وضع الملفات والبرامج في المنتدى

____________

وتقبل خالص تحياتي

#15

فتحنا بريد على شانك وتستاهل اكثر

تجد البرنامج على هذ1 الرابط

http://mypage.ayna.com/auob1/mdb/sal.zip

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

ولاداعي لوضع ملف للفئات لانها لن تزيد عن الخمسة ويمكن معالجتها برماجيا اوحفظا مع الوقت ستعرف ان 1 يعني موظفين 3 مستخدمين الخ

لك تحياتي

من سار على الدرب وصل

#16

عزيزي وأخي مفرج : فعلاً هذا ما كنت أبحث عنه من زمان فجزاك الله عني خير الجزاء وبارك لك في علمك

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

ولكن حاجتي للفئات ما زالت قائمة وذلك حتى إذا أدخلت فئة المتعاقدين مثلاً يكون حقل الراتب فارغاً لأقوم بتعبئته يدوياً حسب الراتب المقرر في عقده والذي لا يستند على سلم معين .. وكذلك نظام الساعات

وإذا كان في الأمر صعوبة فأنا أكتفي بما حصلت عليه منك

جزاك الله ألف خير

__________

وتقبل خالص تحياتي

#17

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

ويضاف الكود :

If Me!step = 0 Then Exit Function

حتى لا ينفذ الداله اذا كان الموظف متعاقد

وتكون الدالة كالاتي :

Private Function valp()

'************************

If Me!step = 0 Then Exit Function

'************************

Dim rec As Recordset

Set rec = CurrentDb.OpenRecordset("step")

rec.Index = "PrimaryKey"

rec.Seek "=", Me!rank, Me!step

If Not rec.NoMatch Then

Me!salary = rec!salary_st

End If

rec.Close

End Function

بدل الكود الذي عنك

ولك تحياتي

[l][c]

من سار على الدرب وصل

#18

شكراً لكما أخوي : مفرج وأخوي : محمد طاهر

قمت بالعمليات الحسابية الخاصة بالبرنامج

ولكن أريد طريقة عمل العلاوة السنوية

_____________________________

ملاحظة لمن لا يعرف معنى العلاوة

( العلاوة هي : زيادة درجة واحدة فقط على الدرجة الموجودة )

إذا كانت الدرجة هي (1 ) فتكون بعد العلاوة ( 2 ) فقط .

_____________________________

ولكني أريد هذه الزيادة بشروط ... فمثلاً أن تكون الدرجة المدخلة موجودة في السلم المذكور في الجدول

فإذا كان آخر درجات المرتبة المسماة (م6) هي الدرجة (20) فعندها لا أريد للأمر أو الكود الذي يعطي العلاوة أن يضيف على (20) درجة فتصبح (21 ) بل أريدها أن تبقى كما هي (20 ) أرجو أن يكون سؤالي واضحاً

***********************************

هذا هو البرنامج .. ولكنه ليس نهائياً ، بل تجربة لما تعلمته في هذا المنتدى .

***********************************

وتقبلوا تحياتي

#19

ابشر اخوي سعودي

تجد المطلوب على هذا الرابط

http://mypage.ayna.com/auob1/mdb/db3.zip

يجب تجريب البرنامج على جميع الفئات

لانني عدلت فيه عن الذي يعمل عندي

الملف new_salary فقط لاظهار النتائج ومراجعتها

مع ملاحظة ان العلاوة تعتمد على درجات المرتبة المدخلة

اسف على التأخير لان الاشتراك كان منتهي

تحياتي

من سار على الدرب وصل

#20

الأخ : مفرج

شكرا على الرد عن موضوع العلاوة .. ولكن

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

أنا أريد العلاوة بطريقة مبسطة فقط إضافة درجة واحدة لكل موظف مع التقيد بعدد درجات المراتب بحيث لا تتعدى الحد الأعلى للمرتبة

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

مع الاكتفاء بوجود الجدولين فقط ( السلم ) و ( معلومات الموظف) وجميع الحقول الموجودة بها .

وآسف على كثرة الأسئلة

وتقبل خالص تحياتي

#21

جرب هذا البرنامج لعله يفيدك ونحن في خدمتك بقدر استطعنا

http://mypage.ayna.com/auob1/mdb/db4.zip

الى الأمام والله يرعاك

تحياتي

من سار على الدرب وصل

#22

أخوي مفرج أحرجتني معك بطيبة قلبك وكرمك

والله لا يحرمك الأجر والمثوبة ويجعل ذلك كله في ميزان حسناتك آمين

______________

بالنسبة للبرنامج لم أستطيع تحميله ولا أدري هل بسبب الزحمة على موقع ( أين ) أم أن البرنامج لم يتم تحميله في الموقع .

______________

وتقبل خالص تحياتي(gift) (gift) (f) (f) (f)

#23

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

تحياتي

من سار على الدرب وصل

#24

أخي مفرج

ممكن تخبرني كيف يتم نقل التركيز بعد ملىء الحقول بالبيانات في نموذج العلاوات السنوية0

لقد بحثت ولم أجد أي كود يقوم بنقل التركيز على تلك الحقول في النموذج والي أعرفه لابد من وجود كود 0

هل تخرنا عن ذلك ?

لك شكري وتقديري

#25

شكراً فقد عرفت الطريقة

هذا الموضوع مغلق.

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