15-08-13, 12:10 PM
sajad كتب :السلام عليكم
في زر البحث استعلم بالشكل التالي:
1- بالنسبة للبحث المطابق
كود :
select * from city,country where city.country_id=country.tid and where mallname=srchtext.text
2- البحث العاام
استبدل = بـ Like
اخي الكريم سجاد
بصراحه لم افهم عليك ماذا تقصد
لاني الكود لدي مثل هذا الشكل
كود :
Imports System.Data
Imports System.Data.OleDb
Public Class Form2
Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source =" & Application.StartupPath & "\MR.mdb"
Dim Conn As New OleDbConnection(ConStr)
Dim DataSet1 As New DataSet
Dim SQLstr As String
Dim m As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Static m As Integer = 0
If TextBox1.Text = Trim("") Then Exit Sub
If RadioButton4.Checked = True Then
ExactSearch()
ElseIf RadioButton5.Checked = True Then
GeneralSearch()
End If
Conn.Open()
Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, Conn)
DataAdapter1.Fill(DataSet1, "TheTable")
Conn.Close()
TextBox7.DataBindings.Add("Text", DataSet1, "TheTable.Mall")
TextBox2.DataBindings.Add("Text", DataSet1, "TheTable.Code")
TextBox55.DataBindings.Add("Text", DataSet1, "TheTable.Repair_Cost")
TextBox5.DataBindings.Add("Text", DataSet1, "TheTable.MR_D")
TextBox3.DataBindings.Add("Text", DataSet1, "TheTable.Description_repairs")
TextBox6.DataBindings.Add("Text", DataSet1, "TheTable.Expiry_date_repairs")
DataGridView1.DataSource = DataSet1
DataGridView1.DataMember = "TheTable"
Button1.Enabled = False
If Me.BindingContext(DataSet1, "TheTable").Count = 0 Then
MsgBox("No Result, Please Try Again ")
Exit Sub
End If
Button2.Enabled = True
Button3.Enabled = True
End Sub
Public Sub ExactSearch()
If RadioButton1.Checked = True Then
SQLstr = "SELECT * FROM TheTable WHERE Code = '" & TextBox1.Text & "'"
ElseIf RadioButton2.Checked = True Then
SQLstr = "SELECT * FROM TheTable WHERE Mall = '" & TextBox1.Text & "'"
End If
End Sub
Public Sub GeneralSearch()
If RadioButton1.Checked = True Then
SQLstr = "SELECT * FROM TheTable WHERE Code LIKE '%" & TextBox1.Text & "%'"
ElseIf RadioButton2.Checked = True Then
SQLstr = "SELECT * FROM TheTable WHERE Mall LIKE '%" & TextBox1.Text & "%'"
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox7.DataBindings.Clear()
TextBox2.DataBindings.Clear()
TextBox3.DataBindings.Clear()
TextBox6.DataBindings.Clear()
TextBox55.DataBindings.Clear()
TextBox5.DataBindings.Clear()
TextBox1.Text = ""
TextBox7.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox6.Text = ""
TextBox5.Text = ""
TextBox55.Text = ""
Button1.Enabled = True
SQLstr = ""
DataSet1.Clear()
Me.DataGridView1.DataSource = Nothing
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
FORM1.Show()
Me.Close()
End Sub
End Classالمشكله في اسماء الجداول
الجدول الاول اسمه الرئيسي HeadInv_Tbl
الجدول الثاني اسمه InvDetail_Tbl
طبعا قاعده الييانات اسمها MR
الان بالنسبه للكود الذي وضعته
على ما اعتقد يتم وضعه هكذا
للبحث الخاص
كود :
Public Sub ExactSearch()
If RadioButton1.Checked = True Then
SQLstr = "SELECT * FROM InvDetail_Tbl,HeadInv_Tbl WHERE InvDetail_Tbl.HeadInvNo=HeadInv_Tbl.ID and where Mall_Name=textbox1.text"
ElseIf RadioButton2.Checked = True Then
SQLstr = "SELECT * FROM InvDetail_Tbl,HeadInv_Tbl WHERE InvDetail_Tbl.HeadInvNo=HeadInv_Tbl.ID and where MRNo=textbox1.text"
End If
End Subللبحث العام
كود :
Public Sub GeneralSearch()
If RadioButton1.Checked = True Then
SQLstr = "SELECT * FROM InvDetail_Tbl,HeadInv_Tbl WHERE InvDetail_Tbl.HeadInvNo Like HeadInv_Tbl.ID and where Mall_Name Like '%" & TextBox1.Text & "%'"
ElseIf RadioButton2.Checked = True Then
SQLstr = "SELECT * FROM InvDetail_Tbl,HeadInv_Tbl WHERE InvDetail_Tbl.HeadInvNo Like HeadInv_Tbl.ID and where MRNo Like '%" & TextBox1.Text & "%'"
End If
End Subيبقى الجزء هذا
قمت ببعض التعديلات ولكن لا ادري هل هي صحيحيه ام لا
ولكن بالنسبه ل "TheTable"
لم اعرف كيف اغيرها هل اضعها اسم الجدول الاول او الجدول الثاني وهل يلزم ان اضع الجدولين مع بعض
شاهد الكود
كود :
Static m As Integer = 0
If TextBox1.Text = Trim("") Then Exit Sub
If RadioButton4.Checked = True Then
ExactSearch()
ElseIf RadioButton5.Checked = True Then
GeneralSearch()
End If
Conn.Open()
Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, Conn)
DataAdapter1.Fill(DataSet1, "HeadInv_Tbl")
DataAdapter1.Fill(DataSet1, "InvDetail_Tbl")
Conn.Close()
TextBox7.DataBindings.Add("Text", DataSet1, "TheTable.Mall")
TextBox2.DataBindings.Add("Text", DataSet1, "TheTable.Code")
TextBox55.DataBindings.Add("Text", DataSet1, "TheTable.Repair_Cost")
TextBox5.DataBindings.Add("Text", DataSet1, "TheTable.MR_D")
TextBox3.DataBindings.Add("Text", DataSet1, "TheTable.Description_repairs")
TextBox6.DataBindings.Add("Text", DataSet1, "TheTable.Expiry_date_repairs")
DataGridView1.DataSource = DataSet1
DataGridView1.DataMember = "HeadInv_Tbl"
DataGridView1.DataMember = "InvDetail_Tbl"
Button1.Enabled = False
If Me.BindingContext(DataSet1, "HeadInv_Tbl").Count = 0 Then
MsgBox("No Result, Please Try Again ")
Exit Sub
End If
Button2.Enabled = True
Button3.Enabled = True
End Subلكم جزيل الشكر
