تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] بحث باستخدام 5 combobox
#1
السلام عليكم

عندي فورم و 5 combobox

combo1 خاص بالأسماء؛ combo2 المهن : combo3 السنوات ؛ combo4 الأشهر ؛ combo5 الأيام ؛

البرنامج يقوم بالبحث داخل قاعدة البيانات حسب قيمة كل combobox وحيدة ( أي يبحث إما حسب الأسماء أو المهن أو السنوات أو الأشهر أو الأيام )

المشكل هو كيف أقوم بالبحث باستخدام أكتر من combo في نفس الوقت ( أي بستخدام من 2 إلى 5 combo في وقت واحد )

شكر مسبق للجميع
الرد }}}
تم الشكر بواسطة:
#2
هذا كود لعمل 3 استعلامات في وقت واحد

لو امكن ترفق مثالك ليتم التعديل علية
PHP كود :
sgl "SELECT * FROM SERVES where [IDCAR]='" Trim(ID_CAR.Text) & "'" "
 or [DATMANTH] =" 
Val(DATA_MANTH.Text) & "OR [CAR_ID]='" Trim(NO_CAR.Text) & "'" 
[صورة مرفقة: images?q=tbn:ANd9GcT72OLJW7D1E5QW-HUeWeJ...TGoNeg2jnQ]
الرد }}}
تم الشكر بواسطة:
#3
قيمة الكومبو الثاني خذه و ضعه في شرط

يعني تحت امر البحث

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

و تضع امر شرطي اذا مثلا المتغير كذا = قيمة الكومبو 2

ارجو ان تكون قد فهمتني

و مثال :

كود :
Data1.Recordset.FindFirst "[word]='" & Trim$(Text1.Text) & "'"
If Not Data1.Recordset.NoMatch Then
Text15.Text = Data1.Recordset.Fields!word
Text16.Text = Data1.Recordset.Fields!mean
Text17.Text = Data1.Recordset.Fields!no
If Text1.Text = Text15.Text Then print "55555555555555555555555555555555"
End If
الرد }}}
تم الشكر بواسطة:
#4
(General)
Dim CN As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sql As String

Private Sub Form_Load()
If CN.State = adStateOpen Then CN.Close
CN.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & App.Path & "\db.mdb" & ";"
rs.Open "Select DISTINCT Date_Prog_RT, PROG from CND ", CN, adOpenKeyset, adLockOptimistic
If Not (rs.EOF And rs.BOF) Then
Do Until rs.EOF
Combo1.AddItem rs.Fields("Date_Prog_RT") & Value & Value
Combo2.AddItem rs.Fields("PROG") & Value & Value
rs.MoveNext
Loop
End If
End Sub

Private Sub Command1_Click()
If rs.State = adStateOpen Then rs.Close
rs.Open "SELECT Joint_No, Joint_Size, Thk, Root, Cap, ISO, Line_Class from [CND] where [Date_Prog_RT] Like '" & Combo1 & "' AND [PROG] Like '" & Combo2 & "' ORDER BY ISO ASC, Joint_No ASC", CN, adOpenStatic, adLockReadOnly
Set DataReport8.DataSource = rs
DataReport8.Sections("Section2").Controls("label1").Caption = Combo1
DataReport8.Sections("Section2").Controls("label13").Caption = Date
DataReport8.Show
End Sub
الرد }}}
تم الشكر بواسطة:
#5
السلام عليكم...

اكتب دالة لإنشاء عبارة WHERE حسب حالات الـ ComboBoxes (اجعل البند الأول في كل ComboBox بنداً فارغاً حتى يتسنى للمستخدم استبعاد أي واحد من التصفية أو البحث):

الكود التالي يستبعد أي ComboBox نصه فارغ (Text = ""):

كود :
Private Function CreateWherePart() As String
    Dim Result As String
    Dim Temp As String
    
    Result = ""
    
    ' الاسم
    Temp = Trim$(Combo1.Text)
    If Temp <> "" Then
        Result = "WHERE (name_field = '" & Temp & "')"
    End If
    
    ' المهنة
    Temp = Trim$(Combo2.Text)
    If Temp <> "" Then
        If Result = "" Then
            Result = "WHERE (job_field = '" & Temp & "')"
        Else
            Result = Result & " AND (job_field = '" & Temp & "')"
    End If
    
    ' السنة
    Temp = Trim$(Combo3.Text)
    If IsNumeric(Temp) Then
        If Result = "" Then
            Result = "WHERE (year_field = " & Temp & ")"
        Else
            Result = Result & " AND (year_field = " & Temp & ")"
    End If
    
    ' الشهر
    Temp = Trim$(Combo4.Text)
    If IsNumeric(Temp) Then
        If Result = "" Then
            Result = "WHERE (month_field = " & Temp & ")"
        Else
            Result = Result & " AND (month_field = " & Temp & ")"
    End If
    
    ' اليوم
    Temp = Trim$(Combo5.Text)
    If IsNumeric(Temp) Then
        If Result = "" Then
            Result = "WHERE (day_field = " & Temp & ")"
        Else
            Result = Result & " AND (day_field = " & Temp & ")"
    End If
    
    CreateWherePart = Result
End Function

Private Sub Command1_Click()
    Dim SqlStr As String
    Dim WherePart As String
    
    SqlStr = "SELECT * FROM table_name"
    WherePart = CreateWherePart
    If WherePart <> "" Then
        SqlStr = SqlStr & " " & WherePart
    End If
    ' ...
    ' بقية كود البحث
    ' ...
End Sub

* في الدالة CreateWherePart:
= name_field هو اسم حقل الاسم (نصي - لاحظ علامات الاقتباس الفردية).
= job_field هو اسم حقل المهنة (نصي - لاحظ علامات الاقتباس الفردية).
= year_field هو اسم حقل الاسم (رقمي - لا توجد علامات اقتباس فردية).
= month_field هو اسم حقل الاسم (رقمي - لا توجد علامات اقتباس فردية).
= day_field هو اسم حقل الاسم (رقمي - لا توجد علامات اقتباس فردية).

نرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
الرد }}}
تم الشكر بواسطة:
#6
1000000000000000000 شكر
الرد }}}
تم الشكر بواسطة:
#7
شكر علي المجهودات
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] كيفيه البحث باستخدام الكود aboezzat84 1 1,208 28-12-20, 05:59 PM
آخر رد: sendbad100
  [vb6.0] كيف يتم الترصيد باستخدام sql وقاعدة البيانات اكسيس Mhqom 2 1,673 14-03-20, 06:07 AM
آخر رد: Mhqom
  البحث بين تاريخ باستخدام ادة calender date.ocx gonm64 4 1,709 05-01-20, 12:15 AM
آخر رد: Ahmed_Mansoor
  هل توجد طريقة لتعبئة combobox من المستخدم للبرنامج؟ gonm64 4 1,878 23-11-19, 03:16 PM
آخر رد: gonm64
  استفسار : كيف يمكن تغيير إسم جدول ما فى قاعدة بيانات باستخدام البيسيك؟ مبرمج مصرى 3 2,416 19-10-19, 10:01 AM
آخر رد: مبرمج مصرى
  كيف نحل مشكلة الوميض (Flicker) عندما نعرض الوقت في ليبل باستخدام تايمر ؟ Alhootti1 5 1,990 02-10-19, 03:19 PM
آخر رد: Alhootti1
  [vb6.0] كود تصفية البيانات بأكثر من اختيار من خلال أكثر من combobox abobodymoon 1 2,201 16-09-19, 01:23 PM
آخر رد: عماني939
Question [vb6.0] كيف اجعل عند النقر على ComboBox تظهر للمستخدم رسالة ؟؟ Microformt 6 2,890 10-03-19, 02:12 PM
آخر رد: Microformt
  سؤال حول البحث في combobox tighrmte 3 3,576 27-01-19, 11:08 PM
آخر رد: عبدالله الصافي
  [سؤال] كود اضافة سجلات لجدول موجود في قاعدة بيانات باستخدام الاداة adox أبوسعود 2 1,957 04-05-17, 03:28 AM
آخر رد: أبوسعود

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم