الانتقال إلى المحتوى

تحليل نظام الورديات للموظفين


Max Bayne

Recommended Posts

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

 

الاخوة الافاضل بعد السلام والتحية

 

انا لدي مجموعة موظفين كما يلي (كود الموظف-اسم الموظف-النوع الخ. ...)

ولدي مجموعة ورديات كما يلي توصيفها :

 

- اسم الوردية

- توقيت الحضور (من) 

- توقيت الحضور (الي)

-توقيت الانصراف (من)

-توقيت الانصراف (الي)

- ايام الاجازات (السبت - الاحد - الاثنين - الثلاثاء الخ....)

 

- واريد انشاء 3 ورديات كل وردية 8 ساعات وبياناتها كما يلي 

 

الان : عند انشاء ورديات  ما كما يلي طبقا للتوصيف السابق

---------------------------------------------------------

 

- اسم الوردية              :   وردية صباحية

- توقيت الحضور (من)   :  08:00 صباحا

- توقيت الحضور الي)    :  08:15 صباحا

- توقيت الانصراف (من) : 16:00 مسائا 

- توقيت الانصراف (الي) : 16:15 مسائا

- ايام الاجازات             : السبت والجمعة

 

 

 

- اسم الوردية              :   وردية مسائية

- توقيت الحضور (من)   :  16:00 مسائا

- توقيت الحضور الي)    :  16:15 مسائا

- توقيت الانصراف (من) : 24:00 عند منتصف الليل

- توقيت الانصراف (الي) : 00:15 عند منتصف الليل

- ايام الاجازات             : السبت والجمعة

 

 

 

- اسم الوردية              :   وردية منتصف الليل

- توقيت الحضور (من)   :  24:00 عند منتصف الليل

- توقيت الحضور الي)    :  00:15 عند منتصف الليل

- توقيت الانصراف (من) : 08:00 صباحا

- توقيت الانصراف (الي) : 08:15 صباحا

- ايام الاجازات             : السبت والجمعة

 

 

 

اسئلتي من فضلكم :

-----------------

 

1- ما هو نوع حقل التوقيت داخل قاعدة البيانات  هل هو time ام timestamp ام char ام int  ولماذا

2- هل يتم الاعتماد علي التوقيت 24 ساعة ام 12 ساعة يعني بعد الساعة 12 ظهر نقول علي الساعة (2 بعد الظهر) نقول عليها 2 ظهرا للنظام (12 ساعة) ام نقول عليها (14) للنظام (24 ساعة) ولماذا .

3- كيف اقوم بحساب عدد الساعات داخل الوردية الواحدة برمجيااااا  يعني الوردية الاولي مثلا 8 ساعات فرق (توقيت الانصراف - توقيت الحضور) وهذا ممتاز في حالة ان التوقيت داخل اليوم الواحد اما في حالة كانت الوردية تبدا من الساعة 18:00 اي 6 مسائا الي الساعة 2 صباحا اي بعد منتصف الليل وفي الحالة دي فهي دخلت في يوم جديد فكيف احسب عدد الساعات حيث لو تم حسابها بنظام الطرف هيطلع النتيجة غير صحيحة اي (18:00 - 02:00) = 16:00 ساعة وهذا خطا لان النتيجة المفروض تكون 8 ساعات فقط كيف اعالج تلك المشكلة

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

 

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

 

 

 

 

 

 

 

رابط هذا التعليق
شارك

 

اسئلتي من فضلكم :

-----------------

 

1- ما هو نوع حقل التوقيت داخل قاعدة البيانات  هل هو time ام timestamp ام char ام int  ولماذا

- يفضل لاستخدام حسابات الوقت استخدام النوع int  و ذلك لسهولة الطرح و الجمع و الاستغناء عن التحويلات .

 

2- هل يتم الاعتماد علي التوقيت 24 ساعة ام 12 ساعة يعني بعد الساعة 12 ظهر نقول علي الساعة (2 بعد الظهر) نقول عليها 2 ظهرا للنظام (12 ساعة) ام نقول عليها (14) للنظام (24 ساعة) ولماذا .

- أكيد استخدام 24 ، و يمكنك استخدام 12 لكن سيصعب عليك الامر .

 

3- كيف اقوم بحساب عدد الساعات داخل الوردية الواحدة برمجيااااا  يعني الوردية الاولي مثلا 8 ساعات فرق (توقيت الانصراف - توقيت الحضور) وهذا ممتاز في حالة ان التوقيت داخل اليوم الواحد اما في حالة كانت الوردية تبدا من الساعة 18:00 اي 6 مسائا الي الساعة 2 صباحا اي بعد منتصف الليل وفي الحالة دي فهي دخلت في يوم جديد فكيف احسب عدد الساعات حيث لو تم حسابها بنظام الطرف هيطلع النتيجة غير صحيحة اي (18:00 - 02:00) = 16:00 ساعة وهذا خطا لان النتيجة المفروض تكون 8 ساعات فقط كيف اعالج تلك المشكلة

- بسيطة : يمكن تحويل الوقتين الى نوع Date  و من ثم زيادة التوقيت الثاني يوم واحد ، و تقوم بعدها بعميلة طرح باستخدام  Datediff  ، بين  التاريخين  ، بطلع معك الفارق بالدقائق .

 

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

- صديقي : المطلوب قصة ، لكن سأعطيك بعض التلميحات المفيدة ، لتحديد الورديات يوجد لديك 3 خيارات: 

الاول : ان تقوم بتخصيص الوردية خلال فترة معين للموظف قبل ان يكون له دخول و خروج ، (و لنسميها حركات )، و عند قدوم الحركات ينظر النظام الى اي وردية يتبع هذا الموظف ،و يقوم باحتساب التأخير و العمل الاضافي .

الثاني : ان تحدد كل وردية بنوع حركة معينة متفق عليها بين النظام و جهاز الحضور و الانصراف (كود ) و تكون وضعت في النظام كل وردية نوع الكود المخصص ، و بذلك قد اتحت للموظف تحديد نوع الوردية ، و هو ا مر غير مستحب .

الثالث : ان تقوم باضافة جميع الورديات داخل النظام ، و بناءا على حركات الموظف باستخدام خاصية التقريب ، يمكن للنظام استنتاج الوردية المثلى .

--------------

انتهى 

 

رابط هذا التعليق
شارك

جزاك الله كل خيراا يا اخي  وبارك في علمك وزادك منه ونفعك ونفع المسلمين به

 

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

 

والله الموفق والمستعان

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية