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

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

مغلقمُجاب
بدأه هاوي النظام في 1 مارس 2013 · 6 رد · 1,072 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

 

تحية عطرة للمنتداي الرائع الذي اشتقت له ^_^

 

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

حالياً أستخدم أكسس 2010 وأعلم أن الكثير لا يفضله ولا أعرف لماذا.. يقال بسبب ثقله على الحاسب !!

 

على كل حال مشكلتي اليوم هي:

 

قمت بعمل كمبو بكس (مربع تحرير وسرد) لغرض البحث في نموذج مصدره إستعلام واستخدمت طريقتين :

 

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

 

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

 

استخدمت في هذه الطريقة معايير وضعتها في الإستعلام كالتالي :

 

Like "*" & [Forms]![FormTabItems]![serchItemID] & "*"

 

وفي مربع التحرير والسرد الذي يقوم بالبحث وضعت في حدث بعد التحديث After Update

 الكود التالي :

 

Me.Requery

Me.SerchItemID.SetFocus

 

 

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

 

http://store2.up-00.com/Nov12/rDg27793.png

 

في الصورة بالأعلى تحتوي على صورة الجدول وصورة للنموذج

 

يتبع الطريقة الثانية

تم تعديل هذه المشاركة بواسطة هاوي النظام في 1 مارس 2013 في 11:52

#2

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

 

تعمل معي بشكل ممتاز وطبيعي

 

لكن المشكلة لا أعرف ربط نتائج البحث لتظهر لي في تقرير ..

 

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

 

في هذه الطريقة استخدمت الكود التالي :

 

 

Private Sub SerchItemID_AfterUpdate()



Dim strWhere As String
Dim lngLen As Long



If Not IsNull(Me.SerchItemID) Then
strWhere = strWhere & "([TabItemID] Like ""*" & Me.SerchItemID & "*"") AND "
End If



'*******************************

lngLen = Len(strWhere) - 5
If lngLen <= 0 Then


Else
strWhere = Left$(strWhere, lngLen)
Me.Filter = strWhere
Me.FilterOn = True
End If


End Sub

 

 

 

والنتيجة هكذا 

 

http://store2.up-00.com/Nov12/cP027793.png

 

 

وهنا رابط الملف

لم أستطع تحويل نوع القاعدة فهي من نوع أكسس 2010

ولم أستطع ارفاقها من خلال المنتدى لوجود مشكلة

 

G.png

 

 

 

ولكم جزيل الشكر والتقدير

تم تعديل هذه المشاركة بواسطة هاوي النظام في 1 مارس 2013 في 12:15

#3 أفضل إجابة

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

 

لا تحتاج الى الطريقة الثانية

 

post-15367-0-64093900-1362134699_thumb.g

 

post-15367-0-53098700-1362134719_thumb.g

 

post-15367-0-64279300-1362134741_thumb.g

 

 

 

اذا تمت الإجابه على السؤال فلا تنسى الضغط على ( أفضل إجابة )

za-Test For Searching 01-UP.rar

 

 

بالتوفيق

1
#4

السلام عليكم

ممكن تحويل الملف الى 2003 للفائدة

#5

للأسف أخي الكريم أشرف لا أعرف طريقة لتحويل الملف لنوع 2003 !!

أعتقد لا يمكن تحويل 2010 الى 2003 !!

#6

أختي الكريمة زهرة 

 

بصراحة جهدك جميل وقارب للحل لكن للأسف الطريقة لا تعطي نتائج كاملة !

 

فمثلاً عند بحث بحقل واحد لا يكون الناتج السجل بالتحديد ولكن يتم اظهار عدة سجلات !!

 

 

الصورة توضح قصدي

 

 

 

 

 

RAg64017.jpg

#7

الأخوة الأعزاء

 

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

 

والحل هو بنفس طريقة الأخت زهرة ولكن حصل التباس في طريقة التنفيذ

 

فنظراً لتعدد الحقول ومنعا لحصول التباس وتشابك علينا أن نضع التعبير كالتالي في كل حقل.. وبعدها سيقوم الاستعلام بتكملة تفعيل التعبير تلقائياً :

 

 

Like "*" & [Forms]![FormTabItems]![serchItemID] & "*" Or [Forms]![FormTabItems]![serchItemID] Is Null

 

 

شكرا للجمع

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

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

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

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

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

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