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

[مخالف - طلب حل : ]المقارنة بين وقت الجهاز ووقت يحدده المستخدم

مغلق
بدأه meshmesh5u في 30 أكتوبر 2007 · 10 رد · 1,067 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

برنامج موظفين

و فى الفورم الرئيسى زر لتنشيط فورم حضور و انصراف الموظفين

اريد ان لا ينشط الزر إلا فى وقت معين اى

ميعاد حضور الموظفين الساعة الثامنة و تعطى الشركة مهلة ربع ساعة للتأخير

فلا ينشط هذا الزر الا من الساعة 8:00 AM حتى 8:15 AM ثم لايعمل بعد ذلك

وكذلك ينشط الزر من الساعة 9:00 PM حتى الساعة الثامة و الربع صباحا

اذن لا ينشط الزر من الساعة 8:15 AM حتى 9:00 PM

بريد ان اسمح بالتسجيل للحضور من الساعة 8:00 am حتى الساعة 8:30 am

و اسمح بتسجيل الانصراف من الساعة 8:00pm حتى 9:00 pm

فى غير هذه الاوقات لايسمح بالتسجيل لا حضور ولا انصراف

يعنى هيكون موجود عندنا 4 دات تايم بيكر واحدة 8 صباحا و التانية 8:30 و التالثة 8:00 مساء و الرابعة 9:00 مساء

و بيكون فى واحد بنفس الوقت الحالى للجهاز

if (dateTimePicker5.Value.TimeOfDay > dateTimePicker1.Value.TimeOfDay && dateTimePicker5.Value.TimeOfDay < dateTimePicker2.Value.TimeOfDay)

MessageBox.Show("يمكن التسجيل الآن للحضور ");

else

MessageBox.Show("لا يمكن تسجيل حضورك الآن لأنك متأخر عن مواعيد اعمل");

وكذلك اريد ان افعل مثل ذلك للانصراف

او لو الوقت بين الساعة 8صباحا و بين الساعة 8:30 صباحا يمكن التسجيل

و ايضا لو الوقت بين الساعة 8 مساء و الساعة 9 مساء يمكن التسجيل

غير ذلك من الاوقات لا يمكن التسجيل

شكرا جزيلا لك

#2

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

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

الفكرة انك تعمل timer

و انت لا تحتاج ل dateTimePicker

كل ما فى الامر انك ثوابت DateTime بقيمة الاوقات اللى عندك 8:00 صباحا و التانية 8:30 و التالثة 8:00 مساء و الرابعة 9:00 مساء و واحد بالوقت الحالى

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

/index.php?showtopic=141734

#3

السلام عليكم

اخت Hebaاعتقد ان فكرتك سليمة 90%

اعتقد والله اعلم أن التايمر لازم يتك كل ثانية مش كل نصف ساعة لأنه بفرض أن المستخدم فتح البرنامج الساعة 8:15:10 لو ان التيمر هيتك نص ساعة من لحظة البرنامج هتكون الساعة تخطت الساعة المطلوبة، ولو ان التايمر هيتك كل ثانية سيكون البرنامج مشغول.

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

والله أعلم.

#4

شكرا للتوضيح بس تكة كل ثانيه ليه ممكن كل دقيقة للتغلب على المشكلة اللى انت قلتها لان الثوانى مش مهم

#5

دعيني أوضح أهمية الثواني

من دون الثواني أنت تخاطرين ب 1 أو 59 ثانية تأخير أو تبكير والثواني في برنامج للحضور والإنصراف تعني (فلوو :D :D ووس) مهمة سواء للمؤسسة أو للموظف .

مثلا عندي في العمل مسموح بعشر دقائق تأخير لو تأخرت عشر دقائق وثانية واحدة يخصم ساعتين (أوووووووو :wacko: )

عشان تقتنعي لازم تجي يوم عندنا وتكون الساعة مقدمة 1 دقيقة وتشوفي الموظفين هيعملو ايه.

#6

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

#7

كيف احسب فرق الايام بين تاريخين

 DateTime myDateTime1 = new DateTime(1992, 11, 4);
  DateTime myDateTime2 = new DateTime(1972, 11, 14);
  TimeSpan Difference = myDateTime1.Subtract(myDateTime2);
  MessageBox.Show(string.Format(" Difference in days : {0},\n Full TimeSpan Format: {1}.",
								Difference.Days, 
								Difference.ToString()));

Difference.Hours, Difference.minutes ....

#8

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

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

#9

السلام عليكم

DateTime myDateTime1 = new DateTime(1992, 11, 4, 10, 58, 48);
	 DateTime myDateTime2 = new DateTime(1972, 11, 14, 10, 52, 42);
	 TimeSpan Difference = myDateTime1.Subtract(myDateTime2);
	 label1.Text = string.Format("Difference in days : {0}, Difference in hours : {1}\n Full TimeSpan Format: {2}.",
								   Difference.Days,
								   Difference..hour,
								   Difference.ToString());

post-91400-1196003265_thumb.jpg

#10

بريد ان اسمح بالتسجيل للحضور من الساعة 8:00 am حتى الساعة 8:30 am

و اسمح بتسجيل الانصراف من الساعة 8:00pm حتى 9:00 pm

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

ملحوظة الاوقات الأربعة تكون داتاتيم بيكر .

#11

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

قواعد طرح المشاركات

/index.php?showtopic=29343

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…