منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

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

اريد عمل نظام لتتبع ساعات عمل الموظفين بحيت يقوم الموظف بتسجيل وقت
دبدء العمل و وقت انتهاء العمل ، اريد استخراج عدد ساعات العمل و جميع التفاصيل.

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

قاعدة البيانات عباره عن جدولين :

كود :
Employees:
Emp_ID - emp_name – phone - hourPrice – Date

Shifts:
ID - empID - AttendanceDate - day - InTime - OutTime - WorkHour
Top
وعليكم السلام ورحمة الله وبركاته

كل عام وانت بخير
وعيد سعيد عليك وعلى الجميع بامر الله

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

فالعمودين عبارة عن حضور  و انصراف

العمود الاول عند الحضور سيكون الادخال كالتالي

PHP كود :
05/06/2019 8:00:00 

العمود الثاني عند الانصراف سيكون الادخال كالتالي

PHP كود :
05/06/2019 16:00:00 

طيب لماذا تحتاج الى وجود التاريخ مع الوقت
التاريخ الزامي حتى تتمكن من عمل عامل الفرق بين التاريخين مع الوقت
ويكون اهميتها مثل الاعمال صاحبة الورديات الثالثة
او من يقوم بالعمل الاضافي مثل
دوام 8 سعات فزاد عليه 4 ساعات اضافة ليصبح 12
فالوردية الاول عملت من الساعة 8 صباحاً حتى 8 مساءً
والوردية الثانية من 8 مساءً الى 8 صباحاً
فستجد ان يوم تدخل فى يوم فاختلف التاريخ
فهنا عند عمل فارق بين التاريخين مع الوقت 
ستجد ان القيمة تاتى معك بصورة صحيحة وبدون اخطاً
الان بات باقي بيانات اعمدة الجدول اختيارياً لما انت بحاجة له
فيكنك عمل جدول واحد كالتالى

PHP كود :
id iduser in out 

والجدول الاخر

PHP كود :
 id iduser fullname phone ......... 

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

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

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

عندي طلب لو امكن 
هل يمكنك التوضيح لي كيف حساب الوقت بالساعه بين بين وقت الدخول ووقت الخروج 
اذا كانت لديك الطريقة، في الحقيقه لم اجرب بعد حساب الوقت ولم اقم بالبحث ولكن اذا
لديك الطريقه ستختصر علي جهد البحث والمحاولة.
وشكرا.
مرحباً اخى Rabeea Qbaha

بخصوص الكود المطلوب استخدامه لطرح وقت من اخر طبقاً للتاريخ
فكل ما عليك فعله هو التالى كمثال

اولاً ادرج على الـ Function
كود :
   Function GetHours(ByVal D1 As Date, ByVal D2 As Date)
       Dim MyHours As New TimeSpan
       MyHours = D2 - D1
       Return MyHours.Hours
   End Function

ثانياً استخدم الكود كاتالى
كود :
MsgBox(GetHours(#05/06/2009 08:00:00#, #05/06/2009 16:00:00#))

أو
كود :
       TextBox1.Text = GetHours(#05/06/2009 08:00:00#, #05/06/2009 16:00:00#)

طبعاً بخصوص التاريخ عند الكود بالتنسيق بيكون كالتالى كمثال
كود :
       TextBox1.Text = GetHours(Date.Now.ToString("dd/MM/yyyy HH:mm:ss"), Date.Now.AddHours(8).ToString("dd/MM/yyyy HH:mm:ss"))

لاحظ هذا الجزء
كود :
Date.Now.ToString("dd/MM/yyyy HH:mm:ss")

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

واذا كنت لا تريد ظهور الثواني فقط قم بازالة هذا فوجودها كا عدمه
كود :
:ss

تحياتى لك
وتمنياتى لك التوفيق
شكرا اخي العزيز [b]elgokr في ميزان حسناتك انشالله [/b]
الشكر لله والحمد لله
والحمد لله على كل حال

تحياتى لك
وتمنياتى لك التوفيق