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

مشكلة مع استعلام بال SQL

مغلق
بدأه COMFORT في 19 أغسطس 2006 · 24 رد · 1,461 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم رحم الله وبركاته

اخواني الكرام عندي مشكلة بسيطة مع استعلام

بالتاريخ ، المشكلة كلها أنه لا توجد مشكلة لأن الموضوع كان ماشي

كويس بس فجأة لم يعد الكود صالح ، الكود كالتالي :

Dim SQL As String
rs.Open "Emp_Apsent" , adOpenStatic ,adLockOptimistic
SQL = "Select * From Emp_Absent Where Emp_Code=" & Val(txtCode.Text) & " And Absent_Date=#" & txtDate.Text & "#"
Set rs = db.Execute(SQL)

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

المهم الكود كان يعمل بشكل جيد و فجأة و لا أعلم لماذا لم يعد هذا الاستعلام صالح حيث أنه أصبح دائماً لا يعود بنتيجة

مثلاً :

If Not rs.Eof Then 
Msgbox "يوجد غياب مسجل بنفس التاريخ لهذا الموظف" 
End IF

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

هذا كل ما في الامر و جزاكم الله خيراً .

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#2

أخى ان أمكن أرسل البرنامج لن نستطيع التعديل

#3

أخي majdah taher

شكراً لك على ردك و لكن سؤالي واضح و لا يحتاج

لأن أضع البرنامج و أيضاً المشروع ضخم جداً و لن أستطيع

إرفاقه .

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#4

up

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#5

مشاكل التاريخ سخيفة بالفعل..

بالأمس الكود يعمل ..اليوم نفس الكود ولكنه لا يعمل..

نفس الموضوع كان بيحصل معايا..

جرب الصيغة التالية :

Dim SQL As String
rs.Open "Emp_Apsent" , adOpenStatic ,adLockOptimistic
SQL = "Select * From Emp_Absent Where Emp_Code=" & Val(txtCode.Text) & " And Absent_Date=#" & Format(txtDate.Text, "m/d/yyyy") & "#"
Set rs = db.Execute(SQL)
#6

أشكرك Pharaonic_Guy

و لكن المشكلة ما تزال قائمة و جميع أنواع الاستعلامات بالتاريخ

في برنامجي لم تعد تعمل . :unsure: :(

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#7

جرب تغيير طريقة الربط بقاعدة البيانات ..

عملت مشروع بنفس الخصائص التي تريدها تجده في المرفقات ..

المشروع شغال عندي .. فإذا اشتغل معاك .. فاعتمد طريقة الربط المرفقة بـ Dao وريح دماغك ..

prj.rar

#8
اقتباس
فاعتمد طريقة الربط المرفقة بـ Dao وريح دماغك ..

جزاك الله كل خير أخي Pharaonic_Guy

و صعب أعمل شيء كهذا لأني سأضطر لتغير أشياء كثيرة جداً

أو بعنى أصح سأبدأ المشروع من البداية كما أني أفضل الـ ADO

على الـ DAO و أفضل استخدامها ، بالنسبة للمثال الذي أرفقته شغال كويس

على العموم لقد قدمت ما عندك جزاك الله خيراً .

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#9

السلام عليكم ورحمة الله وبركاته

أعتقد يا اخي ان سبب المشكلة هو أنك نسيت ان تضع الـ Single Qoutations في جملة الاستعلام

وربما سبب عدم ظهور رسالة خطأ هو انك استخدمت On Error Resume Next

عموما جرب وضع الكود بهذا الشكل وتأكد من الاستعلام عن بيان موجود فعلا وانظر النتيجة

Dim SQL As String
rs.Open "Emp_Apsent" , adOpenStatic ,adLockOptimistic
SQL = "Select * From Emp_Absent Where Emp_Code = '" & Val(txtCode.Text) & "' And Absent_Date=#" & txtDate.Text & "#"
Set rs = db.Execute(SQL)

واذا لم يعمل سنحاول بشكل آخر ان شاء الله

بالتوفيق

==============

الى اللقاء

JusT LeT YouR MinD WorK

#10

أعتقد أن حقل ال Emp_Code رقمي بالتالي لا يجوز وضع Single Quotations لقيم عددية .. فستخرج رسالة عدم توافق قيم ..إلا إذا تم استخدام الدالة Str مع الحقل الرقمي..

والله أخي Comfort أنا كنت باستخدام مكتبة ال ADO .. لكنني وجدت أنها (بتهرتل) ساعات ..بينما ال DAO مستقرة تماما حتي الآن معي..

وما دام جميع العمليات علي قاعدة بيانات اكسس .. فمفيش فرق حينئذ..

تم تعديل هذه المشاركة بواسطة Pharaonic_Guy في 22 أغسطس 2006 في 09:33

#11
اقتباس
أعتقد أن حقل ال Emp_Code رقمي بالتالي لا يجوز وضع Single Quotations لقيم عددية .. فستخرج رسالة عدم توافق قيم ..إلا إذا تم استخدام الدالة Str مع الحقل الرقمي..

تمام مظبوط هذا الكلام فالحقل Emp_Code نوعه رقمي

أما رسالة الخطأ فهي من و ضعي أنا و ليست خطأ برمجي لذلك لا دخل لـ On Error Resume Next

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

و أشكرك أخي Mr^King و أخي Pharaonic_Guy على متابعتكم .

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#12

جرب كده تغير التاريخ للنظام الأمريكي ليكون m/d/yyyy

DateFormat.png

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

Select * From Emp_Absent Where Absent_Date = #5/25/2006#

إن شاء الله ستجد نتائج بتعود..

وأنا حاسس والله إن الADO هي اللي (بتهرتل)..بس عايزين نتأكد منها برده..

تم تعديل هذه المشاركة بواسطة Pharaonic_Guy في 22 أغسطس 2006 في 11:27

#13

لا جديد :unsure: :(

تم تعديل هذه المشاركة بواسطة COMFORT في 22 أغسطس 2006 في 12:55

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#14

هل جربت الاستعلام من اكسس ؟؟

لأنني لا أريد أن أظلم ال ADO.

#15

هناك مشاكل قد ترفع لك الضغط احيانا :

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

على العموم :

جرب اكثر من حل :

قد يكون التاريخ المعتمد في الحاسوب لديك . الصيغة اقصد مختلف لذلك المقارنه لا تعيد ناتج صحيح .

الثاني :

والأهم هوا :

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

Select * From Emp_Absent Where Absent_Date = #5/25/2006#

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

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

Dim SQL As String
Dim Rs AS  Recordset
SQL = "Select * From Emp_Absent Where Emp_Code=" & Val(txtCode.Text) & " And Absent_Date=#" & Format(txtDate.Text, "m/d/yyyy") & "#"
rs.Open SQL , adOpenStatic ,adLockOptimistic
...
...
..

بالتوفيق

#16

شكراً لك أخي فواز الشمري و أنا أعلم اني أعبت الاخ Pharaonic_Guy معي

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

Select * From Emp_Absent Where Absent_Date = #5/25/2006#

لم اعرف اكتب الاستعلام في الاكسيس بالـ SQL :D red_smile.gif

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

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

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

Dim SQL As String
Dim Rs AS  Recordset
SQL = "Select * From Emp_Absent Where Emp_Code=" & Val(txtCode.Text) & " And Absent_Date=#" & Format(txtDate.Text, "m/d/yyyy") & "#"
rs.Open SQL , adOpenStatic ,adLockOptimistic
...
...
..

مسألة تعود لا غير و إن شاء الله سأستخدم الطريقة التي ذكرتها جزاك الله خيراً

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#17

السلام عليكم ورحمة الله وبركاته

أولا أعتذر عن الخطأ في المشاركة الاولى ربما كان ذلك بسبب التسرع ولأني كنت أقوم عادة بالتحويل الى قيمة نصية قبل البحث

وقد قمت بالتعديل السابق دون تجربة وشكرا للاخ Pharaonic_Guy على التنبيه

ولكن اخي كومفورت مع احترامي لرأي Pharaonic_Guy أنصحك بالاستمرار مع الـADO فهي أفضل وبها امكانيات اكثر

أذكر في مرة من حوالي سنة تقريبا كان لدي سؤال في الداو وسألت مبرمج أمريكي تقريبا وفوجئت بشدة استغرابه انه ما زال هناك أحد يستخدم الـ DAO حتى الان

وبالفعل كان ذلك سبب انتقالي كليا لتقنية الـADO وبالفعل دائما أجد بها ما اريد (ومن فترة واحد امريكي برضه قالي بالنص كده "I think this is the time for vb6 to go to sleep" ) مش عارف احنا هنحصل الناس دول ازاي :D

عموما اخي حمل المثال المرفق وان شاء الله يكون فيه ماتريده

واذا لم يكن كذلك فاكتب لنا ما يمكن تعديله وسنحاول جميعا ان شاء الله

تمنياتي لك بالتوفيق

==========

الى اللقاء

Search_ID_Date.rar

JusT LeT YouR MinD WorK

#18

أخي MR^King :

اسمح لي :

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

بالنسبة للتقنية DAO لم اجربها . من قبل .

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

فهناك الكثير من الأخطاء التي قد تحدث لك .

على العموم هناك بعض الأدواد حاليا تقوم الشركات مثل oracle بعمل ocx ليقوم بعمل ado لقاعدة البيانات الخاصة بها .

هناك تطوير بالنسبة للـ ado.net بشكل كبير جدا . أيضا باستطاعتك أن تبني محرك اتصال بقاعدة البينات كما يحلول لك عن طريق vb.net أو #C لكن تتطلب بالطبع مهارات عالية جدا في بناء هذه التقنيات .

على العموم كيف تكتب الإستعلام في الـ Access :

في الصورة الأولى قسم الإستعلامات Query

اضغط عليها . ثم اختر كما هوا محدد انشاء الإستعلام بطريقة عرض التصميم

post-31282-1156276393_thumb.jpg

سوف تضهر لك نافذة صغيرة اختر منها إلغاء الأمر ثم بعد ذلك اضغط بالزر الأيمن على عنوان النافذة وختار sql

post-31282-1156276581_thumb.jpg

بعد ذلك سوف تضهر لك نافذة بيضا اكتب بها الإستعلام :

post-31282-1156276721_thumb.jpg

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

كما في الصورة التالية :

post-31282-1156276907_thumb.jpg

قم بالنقر على اسم الإستلام هذا مرتين لترى الناتج .

اقتباس
مسألة تعود لا غير و إن شاء الله سأستخدم الطريقة التي ذكرتها جزاك الله خيراً

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

بالتوفيق

#19

السلام عليكم ورحمة الله وبركاته

شكرا اخي فواز الشمري على ردك وانا لا اقول بأنه مرجع او لا

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

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

اما قول البعض ان الـ ADO ليست مستقرة فما هو الشئ الذي ليس على استقرار فيها ؟؟؟ وازاي يعني بيتغير علشان نقول انه مش مستقر على حال واحد ؟

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

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

اخر شئ حضرتك بتقول انك لم تستخدم تقنية DAO , فلو انك استخدمتها وقارنت بينها وبين الداو فستعرف الفرق الكبير بينهم خاصة حينما تعلم ان DAO لا تتعامل الا مع DB ACCESS 97 وهي مالا يمكن الاعتماد عليها في البرامج الكبيرة

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

تمنياتي لك اخ فواز وللجميع بالتوفيق ان شاء الله

وان شاء الله تكون اتحلت مشكلة صديقنا كومفورت

==========

الى اللقاء

تم تعديل هذه المشاركة بواسطة MR^King في 22 أغسطس 2006 في 23:34

JusT LeT YouR MinD WorK

#20

أخي العزيز MR^King ..

أنا أحترمك وأحترم وجهه نظرك بالطبع .. ولاحظ أننا لا نفتح النار علي ADO لأننا برغم ذلك هنستخدمها هنستخدمها.. مش بمزاجنا يعني..

لكن يا أخي والله المكتبة مهي مستقرة ..أبسط مثال علي ذلك ..

أنا كنت اعتمدعلي ال ADO فقط في الاول .. في يوم جيت أعمل كونكشن مع قاعدة بيانات بكود سليم تماما وما اشتغلش ..مع انه كان شغال قبل كده..

قولت الكود بقي كخه النهاردة .. رميت AdoDC علي الفورم وقلت أجرب أعمل كونكشن بيها وبرده مفيش فايده ..

ولم أستطع الوصول لقاعدة البيانات سوي عبر Dao .. فاقتنعت بال DAO . لأنني لا أريد مشاكل سخيفة معطلة تظهر بعد الانتهاء من المشروع ..

ربما لم تظهر عندك مشاكل ال ADO اللي تجيب شلل حتي الآن ..

بالنسبة لدعم الDao ل Access97 فقط .. فهذا شيء طبيبعي لأن أخر نسخة من الفيجوال بيسيك طلعت سنة 98.. ولكن تلك المسألة تم حلها منذ زمن في SP6 ..فمدعوم به Access 2000..

#21

شكراً لكم إخواني جميعاً ، و فعلاً أخي Mr^King أنا أوافقك في فكرة عدم تغير الـ Ado إلى Dao

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

مني أنا و لكن ليس لدي تفسير معين و لكن سأحكي لكم ما حدث بالضبط

أنا كان عندي نسخة Enterprice من الـ Visual Basic و كان برنامجي

شغال تمام جداً بدون مشاكل المهم شلت النسخة هذه و نزلت نسخة professional

و كانت هذه النسخة ناقصة و مش شغالة كويس رجعت شلتها مرة ثانية و نزلت نسختي

الـ Enterprice القديمة و بعدها حصلت كل المشاكل .

---------------------------

استعلام الـ Access لم يعود بنتيجة مع أني أدخلت له قيمة موجودة و صيغة التاريخ القصير Short Date

عندي على الجهاز dd/MM/yyyy و الاستعلام كان كالتالي :

SELECT * FROM Emp_Absent WHERE Absent_Date=#10/08/2006#;

ولكن عندما أريد تعديل استعلام أجد أن كود الاستعلام أصبح :

SELECT * FROM Emp_Absent WHERE Absent_Date=#10/8/2006#;

تجد أن الشهر تغير من 08 إلى 8

تم تعديل هذه المشاركة بواسطة COMFORT في 23 أغسطس 2006 في 13:41

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#22

السلام عليكم ورحمة الله وبركاته

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

وجرب أيضان البحث عنها باستخدام Do While أو Do Until لأنها تمر على جميع السجلات وعلى كل سجل على حدة

ثم جرب البحث بالتاريخ فقط حتى تتأكد ان كان يتم قرائته بشكل صحيح ام لا فاذا نجح في ايجاد التاريخ فقم باضافة البحث بالكود اليه وانظر النتيجة

وان شاء الله تكتشف الخطأ

بالتوفيق

==========

الى اللقاء

JusT LeT YouR MinD WorK

#23

أخي Mr^king إذا بحثت بحث عادي يتم إيجاد التاريخ يعني مثلاً :

RS.Find "Absent_Date=#" & txtDate.Text & "#", 0, adSearchForward, 1

يتم العثور على الناتج بشكل صحيح و أيضاً عندما استعلم عن موظف استعلام SQL

بدلالة الاسم يتم قرائة تاريخ التعين بشكل صحيح و عرضه .

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif
#24

السلام عليكم ورحمة الله وبركاته

أخي كومفورت أولا قم بفتح الجدول باستخدام الصيغة العادية

RS.Open "SELECT * from Emp_Absent", CN, 1, 2
RS.MoveFirst

ثم جرب البحث باستخدام الكود التالي :

Dim X As String
Dim Z As String
X = Text1
Z = DT1

Do While Not RS.EOF
If X = RS("Emp_Code") And Z = RS("Absent_Date") Then

Text2 = RS("FirstName"): Text3 = RS("LastName")
End If
RS.MoveNext
Loop
RS.MoveFirst

وجربه على نفس المثال الذي أرفقته في الرد السابق وان شاء الله يشتغل معك

بانتظار النتيجة

JusT LeT YouR MinD WorK

#25

تمام شغال و جزاكم الله خيراً

طيب هل هناك طريقة للبحث بين تاريخين غير الـ SQL

انا زعلان جداً على الاكواد الي كتبتها :D

و على فكرة عملت طريقة للمطلوب الاساسي في الموضوع و هو التحقق من الغياب و هي أفض من المرور عل جميع السجلات

بس المشكلة انا كنت أفضل الـ SQL في الاستعلام لأنها قوية الامكانيات و سهلة و سريعة .

كما أن البحث بين تاريخين لن يعمل معي .

الطريقة :

Private Function Checkd(ByVal cdEpl As Long, cdDate As Date) As Boolean
If RS.State = adStateOpen Then RS.Close
RS.Open "Emp_Absent", db, adOpenStatic, adLockOptimistic
RS.Filter = "Emp_Code=" & cdEpl
RS.Find "Absent_Date=#" & cdDate & "#", 0, adSearchForward, 1
If Not RS.EOF Then
Checkd = True
Else
Checkd = False
End If
RS.Filter = ""
End Function

قمت بفلترة السجلات إلى سجلات الموظف المطلوب فقط عن طريق رقمه

ثم البحث عن التاريخ المراد التحقق عنه .

تم تعديل هذه المشاركة بواسطة COMFORT في 23 أغسطس 2006 في 15:47

مواضيع و دروس
الكتابة بعدة ألوان داخل الــ TetxBoxمكتبة الأكوادتحميل الــ Visual Basic Express 2005
تحميل فيجوال بسيك 6أكواد × أكواددروس في الخوارزميات
لتحميل عدة إصدارات من كريستال ريبورتتحميل برنامج Activ Skin 4.3جمل الــ Sql من الألف إلى الياء
معظم المواقع المختصة بالفيجوال بيسيكموقع كويس للأيقوناتمرجع شامل لأدوات ActivX
كيفية نطق الحرف المكتوب شرح عن كيفية إقامة علاقة مع Data Reprot باستخدام الــ DataEnvironment علاقة مع الـ Datareport بدون استخدام DataEnvironment (( شرح ))
كتاب Migrating From DAO to ADOإضافة لـ VB6 بريمج IndenterVB, إضافة لبيئة تطوير فيجوال بيسك 6حوار بينى و بين عضو حول ال winsock , اتمنى ان يعجبكم
Smart Indenter 3.5 لتنسيق الأكواد, هديه لكل الأعضاء السلسلة الدهبية في المواضيع العلمية ، إستغلال الـ Balloons في الـ Windows XP مصفوفات الأدوات Control Arrays افكار وتلميحات ! , لمن افتقدها من أيام الـ VB6.0
جعل خلفية الـ Mid Form تظهر بالكامل خواص الاداة Winsock لربط الاجهزة عن طريق الانترنتكيف يتم عمل تقارير بإستخدام HTML

7.gif

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

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