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

مساعدة احنساب الوقت المقضي

بدأه Miss_Egypt في 15 نوفمبر 2009 · 5 رد · 1,051 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مرحبا كيفكم؟

الرجاء من الاخوة الاعضاء مساعدتي في مشروع صغير جدا

عندي فورم وتكست عدد 4 وكوماند واحد ، التكست الاول يكتب المستخدم فيه ساعة الدخول مثلا (01:30) ، وفي التكست الثاني يكتب وقت الخروج مثلا (03:30)، وعندما يضغط المستخدم على الكوماند يظهر في التكست الثالث الوقت المقضي (فارق الوقت ما بين ساعة الدخول وساعة الخروج) ، وفي التكست الرابع تظهر أجرة الساعاات المقضية ، مثلا كانت المدة المقضية ساعتين ، تضرب الساعتين في مبلغ محدد مثلا (جنيه ) (ساعتين * جنيه= 2 جنيه) .

رفعت لكم ملف المشروع وفيه محاولتي التي بائت بالفشل الرجاء المساعدة ضروري جدا .

وشاكرة لكم مقدما

ok.rar

#2

هناك اداة وقت وتاريخ مع الفيجوال بيسك تدعى DTPicker , هذه الاداة تساعد في اختيار الوقت او التاريخ لعدم الوقوع في خطأ كتابة صيغة الوقت والتاريخ وللتسهيل ايضا

تم إضافة الاداة للمثال واستخدام دوال الوقت / التاريخ لتحديد الوقت المنقضي

Time.rar

It does not matter what they know about you, but what you can do, so let your work speak of you

mmghv VB6 Programmer

#3

حلك صح بس بجد في حاجة غلط ، انتبه على الحل اول شي بعطي المجموع بالسالب ، مثلا بتعطيه وقت الدخول (11:00:00م ) ووقت الخروج (12:00:00ص) بيعطي فرق الوقت (23 ساعة) والمفروض يعطي فارق الوقت ساعة فقط ,وبعطي المجموع بالسالب

بليز يا ريت تتأكد من الحل حاولت فيه بجد لكنني عجزت :(:(:(:(

ويا ريت لو مجموع الساعات كان يساوي ساعة او اقل من ساعة , المجموع يبقى نفس القيمة المضروب فيها واللي انت واضعها (1.5)

تم تعديل هذه المشاركة بواسطة Miss_Egypt في 16 نوفمبر 2009 في 02:08

#4

القاعدة صحيحة مئة بالمئة والاكواد ليس بها اي خطأ , انما الخطأ هو ان الكمبيوتر حسب الفرق بين الساعة ( 11:00:00م ) و ( 12:00:00ص ) على انهم في نفس اليوم , لذا كان الناتج ( -23 ساعة ) ولكن لكود الـ Format تلاشى البرنامج إشارة السالب , وعند حساب السعر ضرب سعر الساعة ( 1.5 ) في ( -23 ) فأصبح الناتج ( - 34.5 ) , وهذا من الجهة العلمية صحيح , لان الكمبيوتر تعامل مع وقت الدخول ووقت الخروج على انهم في نفس اليوم

لكننا عندما نقول : وقت الدخول ( 11:00:00م ) ووقت الخروج ( 12:00:00ص ) , فإننا نقصد ان وقت الدخول في يوم ووقت الخروج في اليوم الذي يليه , بالرغم ان الفرق بينهم ساعة واحدة لكن عندما اصبحت الساعة 12 صباحاً , فان التاريخ يتقدم يوماً

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

التعديل في المرفقات

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

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

Time2.rar

تم تعديل هذه المشاركة بواسطة محمد مصطفي غريب في 16 نوفمبر 2009 في 02:44

It does not matter what they know about you, but what you can do, so let your work speak of you

mmghv VB6 Programmer

#5

يمكن التحايل على هذه المشكله بجعل البرنامج يقوم بحساب الوقت بنفسه و ذلك عن طريق ان يتم حفظ وقت تسجيل الدخول من Now داخل البرنامج و عند تسجيل الخروج يتم استخدام الداله DateDiff لتقوم بطرح الوقت الحالى من المسجل و قت تسجيل الدخول و الناتج يتم عمل Format له بإستخدام الداله التى تحمل نفس الإسم ليظهر الناتج على الشكل "hh:mm:ss".

و الله ولى التوفيق

مدونتي: C++ Tips and Tricks

#6

ميرسي كتير

نجحت معي 100%

دمتم للمنتدى :wub:

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