Hello,
I have a form containing a datagrid and 2 datetimepickers.
In the datagrid I want to show data from dates between the 2 datetimepickers (including the date in the datetimepicker)
I use the code below but I just can't seem to get it to work:
When I fill the datetimepickers both with the value "27-11-2013" I dont get any value although there are records in the table containing this date.
What am I doing wrong?
The field o.orderdatum is a datetime field in an ms Access 2007 database and looks like "27-11-2013 15:30:00"
I have a form containing a datagrid and 2 datetimepickers.
In the datagrid I want to show data from dates between the 2 datetimepickers (including the date in the datetimepicker)
I use the code below but I just can't seem to get it to work:
Code:
Public Sub VulDgv()
Dim sql As String = String.Format("SELECT DISTINCT O.Order_ID AS [Nummer],O.OrderDatum AS [Datum], ORE.Klant_ID AS Klant,K.Plaats " & _
"FROM tblORDER AS O " & _
"INNER JOIN tblORDERREGEL AS ORE ON O.Order_ID = ORE.Order_ID " & _
"WHERE 1=1 ")
Using connection As New OleDbConnection(_Connectionstring)
Dim daVulDgv As New OleDbDataAdapter(Sql, connection)
Dim cmdVulDgv = daVulDgv.SelectCommand
Dim dtVulDgv As New DataTable
If Me.dtpOrderDatumVan.Checked = True And Me.dtpOrderDatumTot.Checked = False Then
cmdVulDgv.CommandText &= " AND O.OrderDatum >= @DatumVan"
cmdVulDgv.Parameters.Add(New OleDbParameter("@DatumVan", Me.dtpOrderDatumVan.Value.Date))
ElseIf Me.dtpOrderDatumVan.Checked = True And Me.dtpOrderDatumTot.Checked = True Then
If IsDate(Me.dtpOrderDatumVan.Text) And IsDate(Me.dtpOrderDatumTot.Text) Then
cmdVulDgv.CommandText &= " AND (O.OrderDatum >= @DatumVan and O.OrderDatum <= @DatumTot) "
cmdVulDgv.Parameters.Add("@DatumVan", OleDbType.Date).Value = Me.dtpOrderDatumVan.Value.Date
cmdVulDgv.Parameters.Add("@DatumTot", OleDbType.Date).Value = Me.dtpOrderDatumTot.Value.Date
Else
MsgBox("Geen geldig datum formaat")
End If
ElseIf Me.dtpOrderDatumVan.Checked = False And Me.dtpOrderDatumTot.Checked = True Then
MsgBox("Het veld 'Orderdatum van' is leeg.")
Me.dtpOrderDatumVan.Focus()
Exit Sub
End If
cmdVulDgv.CommandText &= " ORDER BY O.Order_ID DESC "
daVulDgv.Fill(dtVulDgv)
Dgv_Orders.DataSource = dtVulDgv
daVulDgv = Nothing
End Using
End Sub
What am I doing wrong?
The field o.orderdatum is a datetime field in an ms Access 2007 database and looks like "27-11-2013 15:30:00"