الدالة Date

قياسي

الدالة Date تعيد تاريخ اليوم الحالي في المنطقة الزمنية الحالية. اي انها تتبع التقسيم الزمني للبلدان .
ولان هذه الدالة تعيد قيمة من نوع TDateTime فإن جزء الوقت في هذا النوع يكون اصفار .

مثال:

النتيجة :

 

Date and Time

قياسي

نوع TDateTime

تعتمد معالجة التواريخ والوقت على متحولات نوع TDataTime. وتستخدم للاحتفاظ بتركيبة التاريخ والوقت . كما انا تستخدم للاحتفاظ فقط بقيمة التاريخ او فقط بقيمة الوقت حيث يتم تجاهل احداها.
الـ TDateTime معرف في الوحدة SystemUtils .
تعريف الثوابت المتعلقة بالتاريخ والوقت والاجراءات موجودة في الوحدتين SysUtils و DateUtils .

لنلقي نظرة على بعض الامثلة عن استخدام TDateTime .

النتيجة :

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

بعض القيم الجاهزة:

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

الاسماء الطويلة والقصير للاشهر :

لاحظ ان هذه الاسماء هي عبارة عن مصفوفة تبدأ بـ ١ وليس الصفر .

النتيجة :

 

الاسماء القصيرة والطويلة للأيام :

من الضروري ملاحظة ان هذه الايام تبدأ بـ index 1 وهو يوم السبت . وهذا ليس جيد قياسيا ( هو غير متناسب مع ISO 8601 ) . لذلك انتبه عند التعامل بهذه الاسماء مع  ISO 8601 كالاجراء DayOfTheWeek.

النتيجة :

ستظهر الـ showmessage رسائل فيها هذه الاسماء على التوالي :

 

العمليات الحسابة على التاريخ والوقت :

اكبر فائدة من TDateTıme هي العمليات الحسابية الكثيرة التي يمكن للدلفي عملها بالنيابة عنك . فانت لا تحتاج لاجراء هذه الحسابات . الدلفي سيقوم بهذا عنك.

وهذه بعض الامثلة عن الاجراءات والدوال للعمليات الحسابية :

عرض قيم التاريخ والوقت

هناك العديد من الاجراءات التي تحول قيم التاريخ والوقت إلى نصوص للعرض مثل dateTimeToStr و TimeToString . لكن الاهم هو FormatDateTime فهو يؤمن تحكم كامل في شكل التاريخ والوقت. كما هو موضح في الامثلة .

استخدام الشكل الافتراضي للتاريخ والوقت :

 

الـ ShowMessage سوف تعرض رسائل فيها :

النتائج السابقة تستخدم القيم الافتراضية للأرقام لقيم التحكم في الشكل .

 

التحكم في شكل قيم التاريخ والوقت

المتغيرات وقيمها الافتراضية في التوضحي التالي :