none
Filtrar Dados por Data. Formato -> dd/MM/yyyy + horário RRS feed

  • Pergunta

  • Bom dia. Estou tendo dificuldades em filtrar alguns movimentos dentro de um datagridview.

    Utilizo o VS2012 e banco de dados sqlserver2012.

    O que preciso é:

    Seleciono um intervalo de datas entre 2 datetimepicker, sendo que o DateTimePicker1 terá sempre o horário, além da data, em 00:00:00 e o DateTimePicker2 irá ter a data selecionada e o horário em 23:59:59.

    Atualmente estou tentando algo do tipo:

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim Intervalo1 As Date = GetFromDate(DateTimePicker1.Value) 'testes
            Dim Intervalo2 As Date = GetToDate(DateTimePicker2.Value) 'testes

            dgvMovimentoCarga.DataSource = SistemaControleClasses.MovimentoVeiculoProduto.ListarBasico("DataEntrada >='" + DateTimePicker1.Value + "' and DataEntrada <='" + (DateTimePicker2.Text + "23:59:59") + "' AND IdMovimentoTipo = 1")
        End Sub

    Onde, DataEntrada é a coluna das informações.

    Alguma sugestão?

    PS: Não existe erros e sim problemas do tipo: Aparecem registros aleatórios dependendo o intervalo de datas em que pesquiso. Se a pesquisa inicial for maior que 30 dias, não obtenho resultados e se for menor, obtenho alguns resultados não necessariamente corretos.

    Valeu!


    • Editado Lucas Twok sexta-feira, 19 de setembro de 2014 06:51
    sexta-feira, 19 de setembro de 2014 06:50

Todas as Respostas

  • Bom dia. Estou tendo dificuldades em filtrar alguns movimentos dentro de um datagridview.

    Utilizo o VS2012 e banco de dados sqlserver2012.

    O que preciso é:

    Seleciono um intervalo de datas entre 2 datetimepicker, sendo que o DateTimePicker1 terá sempre o horário, além da data, em 00:00:00 e o DateTimePicker2 irá ter a data selecionada e o horário em 23:59:59.

    Atualmente estou tentando algo do tipo:

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim Intervalo1 As Date = GetFromDate(DateTimePicker1.Value) 'testes
            Dim Intervalo2 As Date = GetToDate(DateTimePicker2.Value) 'testes

            dgvMovimentoCarga.DataSource = SistemaControleClasses.MovimentoVeiculoProduto.ListarBasico("DataEntrada >='" + DateTimePicker1.Value + "' and DataEntrada <='" + (DateTimePicker2.Text + "23:59:59") + "' AND IdMovimentoTipo = 1")
        End Sub

    Onde, DataEntrada é a coluna das informações.

    Alguma sugestão?

    PS: Não existe erros e sim problemas do tipo: Aparecem registros aleatórios dependendo o intervalo de datas em que pesquiso. Se a pesquisa inicial for maior que 30 dias, não obtenho resultados e se for menor, obtenho alguns resultados não necessariamente corretos.

    Valeu!


    DateTimePicker2 em Text, mas foi somente para testes. Trabalho no Valor do mesmo. Obrigado.

    19/09/2014 - Ok! O código abaixo funciona, mas o Picker1 e o Picker2 devem estar em intervalos de datas dentro do mesmo mês. Se o Picker1, por exemplo, for mês 01 e o Picker2 mês 02, ele não mostra resultados. Alguma sugestão?

    dgvMovimentoCarga.DataSource = _

    SistemaControleClasses.MovimentoVeiculoProduto.ListarBasico("DataEntrada >='" _

    + DateTimePicker1.Value.Date.ToString("dd/MM/yyyy 00:00:00") + "' and DataEntrada <='" _

    + DateTimePicker2.Value.Date.ToString("dd/MM/yyyy 23:59:59") + "' AND IdMovimentoTipo = 1")

    • Editado Lucas Twok sexta-feira, 19 de setembro de 2014 14:42
    sexta-feira, 19 de setembro de 2014 06:52