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

متغير التاريخ/الفرق بين وقتين/الملقم والمستضاف

مغلق
بدأه أحمد الحربي في 7 مارس 2002 · 6 رد · 1,337 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

تحية طيبة

لدي ثلاثة أسئلة كما هي في العنوان

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

2- كيف أعرف الفرق بين وقتين مثلاُ بين بداية الدوام ونهاية الدوام .. استخدمت دالة DateDiff() بالصيغة التالية :

dateResult=DateDiff("n",Date1,date2)/60

ولكن عندما يكون بداية دوام الموظف 8:00 ونهاية دوامه 2:30 يعطي النتيجة 5.5 بينما النتيجة الصحيحة 6.5 فيما عدا ذلك يعطي النتيجة صحيحة

3- أنا الآن أقرأ في كتاب عن ADO ويتكلم كثيراً عن الملقم والمستضاف فهل الملقم هو الكمبيوتر الذي فيه أصل البرنامج أقصد DATA والمستضاف كمبيوتر المستخدم في مجموعة العمل ؟

ولكم فائق التحية

محبكم

أحمد الحربي

#2

1- عند ضع التاريخ بين # # تكتب الشهر فاليوم فالعام

2- لماذا تكتب m تقسم علي 60 ، استخدم s مباشرة

مثال علي الدالة من ملف التعليمات

Dim TheDate As Date    ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date")
Msg = "Days from today: " & DateDiff("d", Now, TheDate)
MsgBox Msg

3- المسضيف أو الخادم server هو الذي عليه الData

اما المستضاف او العميل client فهو الذي عليه واجهة الاستخدام (البرنامج)

#3

بالنسبة لـ ( s ) هل ستسخرج النصف ساعة التبقية وهل ستكون النتيجة صحيحة أنا سوف أجربها إن شاء الله وأخبرك

بالنسبة للتاريخ حصل معي اليوم شيء غريب وهو

عندما أضع شرطاً في الاستعلام مثلاُ المعاملات بتاريخ 23/12 ينجح الاستعلام ولكن عندما أشاهده بعرض SQL أراه قد قلبه إلى التاريخ الميلادي 8/3 ... ولأجل هذا عندما أضع هذا الاستعلام مصدراً لمربع تحرير وسرد في نموذج وأحاول فتح تقرير بناء على قيمة عمود التاريخ يعطيني الرسالة التالية

( لقد أدخلت تعبيراً لا يحتوي على قيمة )

=== لدي استشكال آخر وهو في الوقت :

عندما أحسب الفرق بين الساعات من 11م و 7ص بواسطة DateDiff يعطيني النتيجة 16 ساعة مع أن الفرق 8 ساعات

أشكرك يا عزيزي مصراوي على سعة صدرك ومبادرتك وجزاك الله خيراً

محبك

أحمد الحربي

#4

السلام عليكم ..

1- استخدمه كما تستخدم أي متغير لكن لا تنسى أن تعلن عن المتغير أنه Date .

مثلا هذا الكود يغير مربع النص الى التاريخ المذكور :

dim mydate as Date

mydate="1/1/2000"

text0=mydate

لتغيير النص الى تاريخ استخدم الداله CVDate

2- من 2:30 الى 8:00 هي بالفعل خمس ساعات ونصف .. فالوضع الافتراضي لدى أكسيس أن يكون الوقت صباحا مالم يذكر خلافه.

اكتب التاريخ كالتالي 2:30PM أو 14:30

وكذلك الوضع بالنسبة لـ 11 و 7 فأنت تحسب الفرق بين الساعة الحادية عشر صباحا والسابعة صباحا من اليوم التالي .

لا تنس أن تعلن عن المتغير dateResult على أنه Double

3- بالنسبة للملقم والمستضاف فهناك نوعين من قواعد البيانات أو البرامج :

* قاعدة بيانات ملقم- مستضاف Server-Client DataBase

* قاعدة بيانات مبنية على ملف File-Based DataBase

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

النوع الثاني مشهور جدا وهو الذي يستخدمه أكسيس افتراضيا وهو مبني على محرك Jet 4.0 في أكسيس 2000 .. ولا يوجد هنا ملقم ومستضاف بالنسبة لقاعدة البيانات رغم أنه بالإمكان وضع الملف على السيرفر في الشبكة .

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

النوع الأول و يوجد به سيرفر لقاعدة البيانات تستقبل الطلبات من العملاء أو المستضافين ...

والطلبات ماهي الا جمل SQL يطلب المستضاف فيها من الملقم أو السيرفر معلومات محدد .

أقصد بالسيرفر هنا سيرفر القاعدة وليس سيرفر الشبكة . في الغالب هو SQL-Server أو Oracle 8i المحركات هنا تسمى عموما DBMS اختصار DataBase Manegement System .

وأقصد بالمستضاف برنامج معمول بإحدى لغات البرمجة أو بيئات التطوير مثل أكسيس .

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

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

بينما يحافظ DBMS على نسخة وحيده من البيانات وعند التعديل يمنع البقية من فتح هذا السجل .

#5

أخي العزيز بالنسبى لحساب جميع الأوقات فقد نجحت معي بعد ان اكتشفت خطئي في PM و AM ولكنها لم تفلح مع الفرق بين 11:.. مساءً و 7:.. صباحاً حيث يبدأ يحسبها بالعكس من 7صباحاًإلى 11 مساءً في نفس اليوم ويعطي النتيجة 16 ساعة وهذا مضبوط ولكن لا أريده أريد كما تفضلت من 11 مساء يوم السبت إلى 7 صباح يوم الأحد .. جعلت متغير الناتج من نوع Doubl ولكن لم يتغير شيء .. لعلي لم أفهم فيا ليت لو توضح أكثر بارك الله فيك ..

بالنسبة لـ SQL-server

هل تنصحوني بتعلمها .. وهل فيها صعوبة مع أنه لا يهمني صعوبتها .. أم أتعلم MSDE كنسخة مصغرة من السيكول سيرفر

وهل هناك كتاب متخصص نافع في هذا الباب

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

#6

الأخ أحمد الحربي

جرب هذا المثال وإذا مشى الحال قمنا بتحسينه :

http://mypage.ayna.com/abbashmd/Difftime.zip

تحياتي

#7

لكن الرابط لا يعمل

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

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

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

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

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

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