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

مشكل الفلترة

بدأه Ph-RevIng في 2 مايو 2010 · 3 رد · 383 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

واجهتني مشكلة في عمل فلترة في قاعدة بيانات اكسس باستعمال تعليمة الـSql

Sql = "select * from Facture where ClientName='" & Combo1.Text & "'"

وبعدها عرض الناتج على ListeView

الكود كاملا

Private Sub Combo2_Click()

Call connect
Sql = "select * from Facture where ClientName='" & Combo1.Text & "'"
Rs.Open Sql, Db, adOpenKeyset, adLockOptimistic,adCmdText

If (Rs.RecordCount = 0) Then
    MsgBox "Facture introuvable veuillez bien saisir le Client", vbOKOnly, "Erreur"
    Combo1.SetFocus
Else

  ListView1.ListItems.Clear
  While Not Rs.EOF
   Set item = ListView1.ListItems.Add(, , Rs.Fields("CODEFAC"))
            item.SubItems(1) = Rs.Fields("AnnédeFabrication")
            item.SubItems(2) = Rs.Fields("Constructeur")
            item.SubItems(3) = Rs.Fields("NumerodeFabrication")
            Rs.MoveNext


    Wend

    Call deconnect
    End If

    Call deconnect

End Sub

عند الضغط على المكون Combo2 ووضع الاختيار الدي هو Facture ( نفس اسم الجدول )

المفروض ان يضهر الناتج على ListeView لكن يعطيني الخطأ

Aucune valeur  donnée pour un ou plusieur des parametres requis

هل من حل و شكرا

تم تعديل هذه المشاركة بواسطة Ph-RevIng في 2 مايو 2010 في 05:13

#2

اخي الفاضل

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

قم بتغيير جملة الإستعلام هذه

Sql = "select * from Facture where ClientName='" & Combo1.Text & "'"

الى

Sql = "select * from Facture where ClientName='" & Combo1& "'"

بالتوفيق

#3

عدلتها ونفس المشكل

#4

اخي الفاضل

هل مربع التحرير والسرد Combo1 يحتوي على عدة حقول ام انه حقل واحد مثل حقل الإسم مثلا

اذا كان يحتوي فقط على عمود واحد فلا يوجد مشكله

واذا كان يحتوي على عدة اعمده وقمت انت بإختصار هذه الاعمده الى عمود واحد والباقي قمت بإخفاءه

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

هل هي الأولى ام الثانية ام الثالثه

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

لهذا غير جملة الإستعلام السابقة بهذه الجديده

Sql = "select * from Facture where ClientName='" & Combo1.Column(1) & "'"

حيث الرقم 0 يمثل اول عمود في مربع التحرير والسرد

الرقم 1 يمثل العمود الثاني

الرقم 2 يمثل العمود الثالث

وهكذا بقية الأعمده

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

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

بالتوفيق

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