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

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

بدأه sameh awad في 24 مارس 2013 · 20 رد · 1,613 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

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

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

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

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

dur_by_mdhn.rar

تم تعديل هذه المشاركة بواسطة sameh awad في 24 مارس 2013 في 20:32

#2

up

#3

السلام عليكم،

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

الدالة تستقبل تاريخين "بداية ونهاية"، ثم تقوم بحساب فوارق الشهور فالأيام فالساعات فالدقائق فالثواني، على التوالي. ثم تُخرج لك متغيراً نصيا يحتوي على الفوارق. تستطيع أن تُعدل المخرجات Returns ومن ثم تحويلها إلى أرقام مثلا لإجراء عمليات حسابية عليها.

كما هو موضح في الإستعلام qrySample ، قُم باستخدام الدالة داخل الإستعلام على الوجه التالي:

SELECT
   DateDiffCalc(STOP_FROM,STOP_TO) AS DateTime_Difference
FROM
   PLAN_DETAIL_STOPS;

 

يُمكنك أن تقوم بتحسين هذه الدالة حتى تخرج لك ما تُريد.

 

بالتوفيق،

عبدالله،،،

 

 

AT_dur_by_mdhn.rar

#4

السلام عليكم

جزاكم الله خيرا اخي الفاضل علي مجهودك الطيب

و نسأل الله ان يجعله في ميزان حسناتك

#5

السلام عليكم

اخي الفاضل عبد الله

حاولت في هذا المثال المصغر لكن ظهر لي نواتج فيها سالب

ربما شئ فعلته أدي الي ذلك

نرجو الافادة اكرمكم الله

 

DUR.rar

#6

السلام عليكم،

 

قمتُ بتعديل الدالة بحيث تُعطينا القيمة المُطلقة Abstract Value للفوارق بعد حسابها، والقيمة المُطلقة هي القيمة الموجبة دائما.

 

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

 

أطيب المُنى،

 

عبدالله،،،

DUR.rar

تم تعديل هذه المشاركة بواسطة Ab Techno في 28 مارس 2013 في 12:55

#7

السلام عليكم

اخي الفاضل

و جزاكم الله خيرا علي اهتمامك و نسأل الله ان يجمعنا و اياك في الجنة

و ان نشرب شربة هنيئة مريئة لا نظمأ بعدها ابدا

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

لكن هناك فروق

اظهرتها من خلال حقل اسميته total time يظهر من خلال الاستعلامlyo_diff

 مرفق

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

 

DUR28-3.rar

#8

السلام عليكم

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

مرفق المثال به الموديل  الجديد و القديم

مثال:

 

 23hrs 32min

 

1Day 0Hrs -28Min

اذا طرحنا 28 دقيقة من يوم يكون الناتج  23hrs 32min

DUR2.rar

#9

up

#11

السلام عليكم

جزاك الله خيرا اختنا الفاضلة و جعله الله في ميزان حسناتك

لقد وفرت علي  مستخدمي البرنامج عناااااااااااااااااااااءا طويلا

فبوركت

 

 

 

لي طلب آخر اذا سمحت:

1اذا امكن الاظهار بهذه الكيفية :01:20:30

دقيقة:ساعة:يوم

 

و نسأل الله ان يجعله في ميزان حسناتك

تم تعديل هذه المشاركة بواسطة sameh awad في 1 أبريل 2013 في 21:44

#12

اخي الفاضل

 

هل تريدها بهذه الكيفية فقط 

 

01:20:30

دقيقة:ساعة:يوم

 

ام تريدها ايضا بإظهار كافة الأزمنه مثل الثواني والدقائق والساعات والأيام والاشهر والسنوات

10:20:01:15:03

 

في انتظار ردك حتى نقوم بعمل اللازم لك

 

بالتوفيق

#13

السلام عليكم

جزاكم الله خيرا علي الاهتمام

اريدها بهذه الكيفية

بإظهار كافة الأزمنه مثل الثواني والدقائق والساعات والأيام والاشهر والسنوات

10:20:01:15:03

 

 

و هل يمكنني ان اخفي الثواني و الاشهر و الايام ان اردت ذلك فيما بعد

 

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

تم تعديل هذه المشاركة بواسطة sameh awad في 1 أبريل 2013 في 22:36

#14

تفضل اخي الكريم

 

تستطيع التحكم بالدالة بإحدى الطريقتين في الإستعلام 

 

الطريقة الأولى :

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

 

WORK: Diff2Dates("ymdhns";[STOP_FROM];[STOP_TO];False)
 

 

لاحظ هنا ان جميع الأزمنه ( السنوات والأشهر والأيام والساعات والدقائق والثواني )  ymdhns  موجوده في الدالة وفي نهاية التعبير استخدمنا عبارة  False  لعدم اظهار الأزمنه التي بها اصفار

 

 

الطريقة الثانية :

استخدام الأزمنه المطلوبة فقط  سواء دقائق او ساعات او ايام او اشهر او سنوات بهذه الطريقة

 

 

WORK: Diff2Dates("mdhn";[STOP_FROM];[STOP_TO])

 

لاحظ هنا اننا استخدمنا فقط الأشهر والأيام والساعات والدقائق mdhn

 

ملاحظة :

لو كان هناك عدد ايام اكبر من 31 يوم  واستخدمت فقط الأيام والساعات والدقائق  dhn فسوف تحصل على عدد الأيام كمثال في استعلامك  122 يوم  

ولكن اضفنا لك ايضا الأشهر m في التعبير حتى تحصل على 4 اشهر بدلا من 122 يوم

 

 

za-dur_by_mdhn-END.rar

 

 

 

 

بالتوفيق

#15

السلام عليكم

جزاكم الله خيرا اختنا الفاضلة

و جعله الله في ميزان حسناتك

#16

السلام عليكم

حاولت التطبيق علي البرنامج الخاص و ظهرت لي بعض الملاحظات اذا امكن من حضرتك تعديلها:

1-اخفاء اليوم اذا كانت قيمته بصفر مع عرض قيمة الساعات و الدقائق بصيغة  02:30  اي اظهار صفر علي يسار رقم 2

2-اذا كانت الدقائق بصفر :فنرجو من حضرتك اظهارها بهذه الصيغة 02:00

اعني :كصيغة الساعة الرقمية

مرفق البرنامج

يظهر في السب فورم حقل المدة dur

و جزاكم الله خيرا اختنا الفاضلة

 

dur.rar

#18

السلام عليكم

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

و نسال الله ان يعينك علي هذا الامر

شاهدت التعديلات

لكن لا تظهر قيمة الايام

مثلا:

arrange:1639

يظهر 00:20

و المفترض :01:12:20

أي يوم و 12 ساعة و 20 دقيقة

 

و اليك المرفق

و معذرة علي الاثقال علي حضرتك

 dur2.rar

تم تعديل هذه المشاركة بواسطة sameh awad في 2 أبريل 2013 في 20:28

#19

تفضل اخي الكريم

 

تم التعديل بناء على طلبك

 

 

post-15367-0-57562900-1364928682_thumb.g

 

 

za-dur2-LAST.rar

 

 

بالتوفيق

2
#20

السلام عليكم

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

#21

السلام عليكم ورحمة الله وبركاته ممكن تحويل الملف الى تنسيق 2003 للفائدة ....

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

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

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

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

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