Usuário com melhor resposta
Filtrar dados em uma grid por um período de datas

Pergunta
-
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 SqlCommanddtinicio = DateEdit1.EditValue.ToString
dtfim = DateEdit2.EditValue.ToStringstrsql = "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 UsingCatch ex As Exception
MessageBox.Show("Erro : " & "Alguma coisa errada, tenta de novo")
End Try
End Sub
End Class
Respostas
-
A mensagem de erro é : Erro : Referência de objeto não definida para uma instância de um objeto
Você precisa criar uma instância do objeto
Dim con As SqlConnection Dim cmd As SqlCommand
Assim:
Dim con As New SqlConnection() Dim cmd As New SqlCommand()
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
Rafael Almeida
Senior Developer C#
Development Leader at JAMSOFT Informática
Microsoft Certified Professional
Criador e Mantenedor do EntityFramework Core for Firebird
Contribuidor do EntityFramework Core
Email: ralms@ralms.net
Blog - GitHub - LinkedIn - Twitter- Editado Rafael Almeida - MVPMVP quinta-feira, 14 de dezembro de 2017 16:26 formatação
- Marcado como Resposta NelsonZyon quinta-feira, 14 de dezembro de 2017 16:35
-
Rafael Almeida
MUITO...MUITO...MUITO...obrigado...resolveu
Terminei meu curso á pouco tempo...e são daquelas coisas que a experiência faz toda a diferença...ainda tenho muito para aprender...e estes fóruns são muito bons para isso...valeu parceiro...muito obrigado
Show, Que bom!
Fique a vontade em usar o fórum!
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
Rafael Almeida
Senior Developer C#
Development Leader at JAMSOFT Informática
Microsoft Certified Professional
Criador e Mantenedor do EntityFramework Core for Firebird
Contribuidor do EntityFramework Core
Email: ralms@ralms.net
Blog - GitHub - LinkedIn - Twitter- Marcado como Resposta NelsonZyon quinta-feira, 14 de dezembro de 2017 16:42
Todas as Respostas
-
Olá Nelson bem vindo!
Dê uma olhadinha nesse link:
https://social.msdn.microsoft.com/Forums/pt-BR/0bbbcd10-4a97-4a29-92f6-645eb5a9abf5/pesquisar-entre-2-datas-duvida?forum=vsvbasicpt
Se não conseguir retorne aqui, para que possamos te ajuda!
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
Rafael Almeida
Senior Developer C#
Development Leader at JAMSOFT Informática
Microsoft Certified Professional
Criador e Mantenedor do EntityFramework Core for Firebird
Contribuidor do EntityFramework Core
Email: ralms@ralms.net
Blog - GitHub - LinkedIn - Twitter -
-
-
A mensagem de erro é : Erro : Referência de objeto não definida para uma instância de um objeto
Você precisa criar uma instância do objeto
Dim con As SqlConnection Dim cmd As SqlCommand
Assim:
Dim con As New SqlConnection() Dim cmd As New SqlCommand()
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
Rafael Almeida
Senior Developer C#
Development Leader at JAMSOFT Informática
Microsoft Certified Professional
Criador e Mantenedor do EntityFramework Core for Firebird
Contribuidor do EntityFramework Core
Email: ralms@ralms.net
Blog - GitHub - LinkedIn - Twitter- Editado Rafael Almeida - MVPMVP quinta-feira, 14 de dezembro de 2017 16:26 formatação
- Marcado como Resposta NelsonZyon quinta-feira, 14 de dezembro de 2017 16:35
-
Rafael Almeida
MUITO...MUITO...MUITO...obrigado...resolveu
Terminei meu curso á pouco tempo...e são daquelas coisas que a experiência faz toda a diferença...ainda tenho muito para aprender...e estes fóruns são muito bons para isso...valeu parceiro...muito obrigado
-
Rafael Almeida
MUITO...MUITO...MUITO...obrigado...resolveu
Terminei meu curso á pouco tempo...e são daquelas coisas que a experiência faz toda a diferença...ainda tenho muito para aprender...e estes fóruns são muito bons para isso...valeu parceiro...muito obrigado
Show, Que bom!
Fique a vontade em usar o fórum!
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!
Rafael Almeida
Senior Developer C#
Development Leader at JAMSOFT Informática
Microsoft Certified Professional
Criador e Mantenedor do EntityFramework Core for Firebird
Contribuidor do EntityFramework Core
Email: ralms@ralms.net
Blog - GitHub - LinkedIn - Twitter- Marcado como Resposta NelsonZyon quinta-feira, 14 de dezembro de 2017 16:42