aknj56
سه شنبه 15 فروردین 1391, 12:16 عصر
با سلام و تبریک سال نو
دوستان من برای جستجو از کو مبو باکس استفاده کردم و توش دو تا موضوع نامه های صادره و نامه های وارده گذاشتم و میخام نتیجه رو توی یک دیتا گرید نشون بده یعنی اگر صادره را زدیم فقط گزینه های نامه های صادره از قبیل تاریخ صدور و غیره ر انشون بده و گزینه های نامه های وارده رو مثل تاریخ ورود دیگه نشون نده که دوست عزیزم آقای ابراهیمی برام کد گذاشتم و من با توجه به اون مواردی که میخاستم توش دست بردم حالا یک ایرادهایی میگیره حالا این کد رو من میزارم لطفا راهنمایی کنید یک ایراد که میگیره در اینجاست:
.SelectCommand.ExecuteNonQuery()
این هم کدهای مورد نظر
Imports System.Data.OleDb
Public Class serch
Function Search(ByVal FieldName As String, ByVal SearchFor As String, ByVal sORv As String) As DataSet1
Dim oledbDataAdapter1 As New OleDbDataAdapter
Dim cnn As New OleDbConnection
With oledbDataAdapter1
cnn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\dabirkhaneh.accdb"
cnn.Open()
.SelectCommand = New OleDbCommand
.SelectCommand.Connection = cnn
.SelectCommand.CommandType = CommandType.Text
If sORv = "نامه های وارده" Then
.SelectCommand.CommandText = "Select varedeh as [نامه های وارده],tarikhvorod as [تاریخ ورود],ferestandeh as [فرستنده], khetab as [خطاب نامه],emzae as[امضاء کننده],payvast as [پیوست],erja as [ارجاع به],mozo as [موضوع و شرح نامه] from varedeh Where " & FieldName & " like '%" & SearchFor & "%'"
Else
.SelectCommand.CommandText = "Select sadereh as [نامه صادره ],tarikhsodor as [تاریخ صدور],girandeh as[گیرنده],khetab as[خطاب نامه],emza as [امضاء کننده],payvast as [پیوست],mozo as [موضوع و شرح نامه] from sadereh where " & FieldName & " like '%" & SearchFor & "%'"
End If
If .SelectCommand.Connection.State <> ConnectionState.Open Then
.SelectCommand.Connection.Open()
End If
.SelectCommand.ExecuteNonQuery()
Dim ds As New DataSet1
oledbDataAdapter1.Fill(ds)
Return ds
End With
End Function
Private Sub serch_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim da As New OleDbDataAdapter
da.SelectCommand = New OleDbCommand()
Dim cnn As New OleDbConnection
cnn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\dabirkhaneh.accdb"
cnn.Open()
With da.SelectCommand
.Connection = cnn
.CommandType = CommandType.Text
.CommandText = "select sadereh as [نامه صادره ],tarikhsodor as [تاریخ صدور],girandeh as[گیرنده],khetab as[خطاب نامه],emza as [امضاء کننده],payvast as [پیوست],mozo as [موضوع و شرح نامه] from sadereh and varedeh as [نامه های وارده],tarikhvorod as [تاریخ ورود],ferestandeh as [ فرستنده], khetab as [خطاب نامه],emzae as[امضاء کننده],payvast as [پیوست],erja ad [ارجاع به],mozo as [موضوع و شرح نامه] from varedeh"
If .Connection.State <> ConnectionState.Open Then
.Connection.Open()
End If
End With
' Dim ds As New DataSet1
' da.Fill(ds)
' DataGridView1.DataSource = ds
' cnn.Close()
End Sub
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
If TextBox1.Text.Trim() = String.Empty Then
serch_Load(Nothing, Nothing)
Else
If ComboBox1.SelectedIndex = 0 Then
DataGridView1.DataSource = Search("sadereh", TextBox1.Text.Trim(), "نامه های صادره")
ElseIf ComboBox1.SelectedIndex = 1 Then
DataGridView1.DataSource = Search("varedeh", TextBox1.Text.Trim(), "نامه های وارده")
End If
End If
End Sub
End Class
دوستان من برای جستجو از کو مبو باکس استفاده کردم و توش دو تا موضوع نامه های صادره و نامه های وارده گذاشتم و میخام نتیجه رو توی یک دیتا گرید نشون بده یعنی اگر صادره را زدیم فقط گزینه های نامه های صادره از قبیل تاریخ صدور و غیره ر انشون بده و گزینه های نامه های وارده رو مثل تاریخ ورود دیگه نشون نده که دوست عزیزم آقای ابراهیمی برام کد گذاشتم و من با توجه به اون مواردی که میخاستم توش دست بردم حالا یک ایرادهایی میگیره حالا این کد رو من میزارم لطفا راهنمایی کنید یک ایراد که میگیره در اینجاست:
.SelectCommand.ExecuteNonQuery()
این هم کدهای مورد نظر
Imports System.Data.OleDb
Public Class serch
Function Search(ByVal FieldName As String, ByVal SearchFor As String, ByVal sORv As String) As DataSet1
Dim oledbDataAdapter1 As New OleDbDataAdapter
Dim cnn As New OleDbConnection
With oledbDataAdapter1
cnn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\dabirkhaneh.accdb"
cnn.Open()
.SelectCommand = New OleDbCommand
.SelectCommand.Connection = cnn
.SelectCommand.CommandType = CommandType.Text
If sORv = "نامه های وارده" Then
.SelectCommand.CommandText = "Select varedeh as [نامه های وارده],tarikhvorod as [تاریخ ورود],ferestandeh as [فرستنده], khetab as [خطاب نامه],emzae as[امضاء کننده],payvast as [پیوست],erja as [ارجاع به],mozo as [موضوع و شرح نامه] from varedeh Where " & FieldName & " like '%" & SearchFor & "%'"
Else
.SelectCommand.CommandText = "Select sadereh as [نامه صادره ],tarikhsodor as [تاریخ صدور],girandeh as[گیرنده],khetab as[خطاب نامه],emza as [امضاء کننده],payvast as [پیوست],mozo as [موضوع و شرح نامه] from sadereh where " & FieldName & " like '%" & SearchFor & "%'"
End If
If .SelectCommand.Connection.State <> ConnectionState.Open Then
.SelectCommand.Connection.Open()
End If
.SelectCommand.ExecuteNonQuery()
Dim ds As New DataSet1
oledbDataAdapter1.Fill(ds)
Return ds
End With
End Function
Private Sub serch_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim da As New OleDbDataAdapter
da.SelectCommand = New OleDbCommand()
Dim cnn As New OleDbConnection
cnn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\dabirkhaneh.accdb"
cnn.Open()
With da.SelectCommand
.Connection = cnn
.CommandType = CommandType.Text
.CommandText = "select sadereh as [نامه صادره ],tarikhsodor as [تاریخ صدور],girandeh as[گیرنده],khetab as[خطاب نامه],emza as [امضاء کننده],payvast as [پیوست],mozo as [موضوع و شرح نامه] from sadereh and varedeh as [نامه های وارده],tarikhvorod as [تاریخ ورود],ferestandeh as [ فرستنده], khetab as [خطاب نامه],emzae as[امضاء کننده],payvast as [پیوست],erja ad [ارجاع به],mozo as [موضوع و شرح نامه] from varedeh"
If .Connection.State <> ConnectionState.Open Then
.Connection.Open()
End If
End With
' Dim ds As New DataSet1
' da.Fill(ds)
' DataGridView1.DataSource = ds
' cnn.Close()
End Sub
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
If TextBox1.Text.Trim() = String.Empty Then
serch_Load(Nothing, Nothing)
Else
If ComboBox1.SelectedIndex = 0 Then
DataGridView1.DataSource = Search("sadereh", TextBox1.Text.Trim(), "نامه های صادره")
ElseIf ComboBox1.SelectedIndex = 1 Then
DataGridView1.DataSource = Search("varedeh", TextBox1.Text.Trim(), "نامه های وارده")
End If
End If
End Sub
End Class