Filtar dados em uma grid por um período de datas
Boas... sou novo no mundo VB.Net e por sua em programação também.
Tenho um form no vb.net onde tem 2 datepickers + 1 botão (pesquisar) + uma grid (para visualizar os dados de um Db SQL)
O que eu pretendo que ao pressionar o botão "Pesquisar", na gris sejam exibidos os dados referentes ao período de data informado nos DatePickers
O código que escrevi foi o seguinte: onde ''DateEdit '' é o componente datepiceker do DevExpress e "Helpdataset1" é o dataset e "ligacoes" é a tabela onde quero efetuar o filtro e "GridControl1" é o componente grid do Devexpress
O problema que está ocorrendo é que quando insiro as datas datepicker (dateedit) e pressiono o botão "pesquisar" (SimpleButton1) , o sistema me mostra de imediato a mensagem de erro criada na Exception ( MessageBox.Show("Erro : " & "Alguma coisa errada, tenta de novo")) para o caso de algum erro ocorrer e por sua vez não efetua o filtro.
Alguém me pode ajudar? e ver onde estou errando?
Private Sub SimpleButton1_Click(sender As Object, e As EventArgs) Handles SimpleButton1.Click
Dim dtinicio As String
Dim dtfim As String
Dim tabela As New DataTable
Dim strsql As String
Dim con As SqlConnection
Dim cmd As SqlCommand
dtinicio = DateEdit1.EditValue.ToString
dtfim = DateEdit2.EditValue.ToString
strsql = "Select * from ligacoes where dthora_ligacoes between @dtinicio and @dtfim order by id_ligacoes"
Try
con.ConnectionString = HelpDataDataSet1.Ligacoes.ToString
con.Open()
cmd.Connection = con
cmd.Parameters.AddWithValue("@dtinicio ", dtinicio)
cmd.Parameters.AddWithValue("@dtFim", dtfim)
cmd.CommandText = strsql
Using reader As SqlDataReader = cmd.ExecuteReader()
tabela.Load(reader)
GridControl1.DataSource = tabela
End Using
Catch ex As Exception
MessageBox.Show("Erro : " & "Alguma coisa errada, tenta de novo")
End Try
End Sub
End Class
Tenho um form no vb.net onde tem 2 datepickers + 1 botão (pesquisar) + uma grid (para visualizar os dados de um Db SQL)
O que eu pretendo que ao pressionar o botão "Pesquisar", na gris sejam exibidos os dados referentes ao período de data informado nos DatePickers
O código que escrevi foi o seguinte: onde ''DateEdit '' é o componente datepiceker do DevExpress e "Helpdataset1" é o dataset e "ligacoes" é a tabela onde quero efetuar o filtro e "GridControl1" é o componente grid do Devexpress
O problema que está ocorrendo é que quando insiro as datas datepicker (dateedit) e pressiono o botão "pesquisar" (SimpleButton1) , o sistema me mostra de imediato a mensagem de erro criada na Exception ( MessageBox.Show("Erro : " & "Alguma coisa errada, tenta de novo")) para o caso de algum erro ocorrer e por sua vez não efetua o filtro.
Alguém me pode ajudar? e ver onde estou errando?
Private Sub SimpleButton1_Click(sender As Object, e As EventArgs) Handles SimpleButton1.Click
Dim dtinicio As String
Dim dtfim As String
Dim tabela As New DataTable
Dim strsql As String
Dim con As SqlConnection
Dim cmd As SqlCommand
dtinicio = DateEdit1.EditValue.ToString
dtfim = DateEdit2.EditValue.ToString
strsql = "Select * from ligacoes where dthora_ligacoes between @dtinicio and @dtfim order by id_ligacoes"
Try
con.ConnectionString = HelpDataDataSet1.Ligacoes.ToString
con.Open()
cmd.Connection = con
cmd.Parameters.AddWithValue("@dtinicio ", dtinicio)
cmd.Parameters.AddWithValue("@dtFim", dtfim)
cmd.CommandText = strsql
Using reader As SqlDataReader = cmd.ExecuteReader()
tabela.Load(reader)
GridControl1.DataSource = tabela
End Using
Catch ex As Exception
MessageBox.Show("Erro : " & "Alguma coisa errada, tenta de novo")
End Try
End Sub
End Class
Nelson
Curtidas 0
Melhor post
Fabiano Carvalho
13/12/2017
Qual a mensagem de erro?
no msgbox coloque:
no msgbox coloque:
MessageBox.Show("Erro : " & ex.message)
GOSTEI 1
Mais Respostas
Nelson
13/12/2017
O erro que dá é o seguinte :<br />
<br />
" Erro : Referência de objeto não definida para uma instância de um objeto"
<br />
" Erro : Referência de objeto não definida para uma instância de um objeto"
GOSTEI 0
Nelson
13/12/2017
Erro : Referência de objeto não definida para uma instância de um objeto"
GOSTEI 0
Nelson
13/12/2017
Qual a mensagem de erro?
no msgbox coloque:
no msgbox coloque:
MessageBox.Show("Erro : " & ex.message)
Erro : Referência de objeto não definida para uma instância de um objeto"
GOSTEI 0
Nelson
13/12/2017
Já resolvi
GOSTEI 0