Bonjour à tous.

je fait face à un problème qui me dépasse ... Avec le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  MyDate = dteMonth & "/" & dteDay & "/" & dteYear
 
        Dim sqlConn As SqlConnection = New SqlConnection(strConnection)
        Dim SQLStmt As String = "SELECT tblAccessoriesBook.IdAccessoriesBook " & _
                                "FROM tblAccessoriesBook INNER JOIN " & _
                                "tblAccessories ON tblAccessoriesBook.IdAccessories = tblAccessories.IdAccessories INNER JOIN " & _
                                "tblGroups ON tblAccessories.IdGroups = tblGroups.IdGroups " & _
                                "WHERE (tblGroups.AutoMailHour = '" & DateTime.Now.Hour & ":00" & "') AND IsReturn = '0' AND IsAttribution = '0' AND ReturnDate < '" & MyDate & "' AND tblGroups.IdCountry = '1' AND " & DateTime.Now.DayOfWeek.ToString & " = 'True' "
        Dim cmdGetRequestor As SqlCommand
        Dim dtrSubject As SqlDataReader
        Dim email As String = ""
        sqlConn.Open()
        cmdGetRequestor = New SqlCommand(SQLStmt, sqlConn)
        dtrSubject = cmdGetRequestor.ExecuteReader
        While dtrSubject.Read()            SendNotReturnMailAccessories(dtrSubject("IdAccessoriesBook").ToString)
        End While
        dtrSubject.Close()
 
        sqlConn.Close()
Ma fonction SendNotReturnMailAccessories est bien appelée (la requete SQL me retourne 6 ligne)

Mais avec le code suivant, et des requetes paramétrées

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
        MyDate = dteMonth & "/" & dteDay & "/" & dteYear
 
        Dim sqlConn As SqlConnection = New SqlConnection(strConnection)
        Dim SQLStmt As String = "SELECT tblAccessoriesBook.IdAccessoriesBook " & _
                                "FROM tblAccessoriesBook INNER JOIN " & _
                                "tblAccessories ON tblAccessoriesBook.IdAccessories = tblAccessories.IdAccessories INNER JOIN " & _
                                "tblGroups ON tblAccessories.IdGroups = tblGroups.IdGroups " & _
                                "WHERE (tblGroups.AutoMailHour = @Hour) AND IsReturn = '0' AND IsAttribution = '0' AND ReturnDate < @ReturnDate AND tblGroups.IdCountry = '1' AND @CurrentDay = 'True' "
        Dim cmdGetRequestor As SqlCommand
        Dim dtrSubject As SqlDataReader
        Dim email As String = ""
        sqlConn.Open()
        cmdGetRequestor = New SqlCommand(SQLStmt, sqlConn)
        cmdGetRequestor.Parameters.AddWithValue("@Hour", DateTime.Now.Hour & ":00")
        cmdGetRequestor.Parameters.AddWithValue("@ReturnDate", MyDate)
        cmdGetRequestor.Parameters.AddWithValue("@CurrentDay", DateTime.Now.DayOfWeek.ToString)
        dtrSubject = cmdGetRequestor.ExecuteReader
        While dtrSubject.Read()
            SendNotReturnMailAccessories(dtrSubject("IdAccessoriesBook").ToString)
        End While
        dtrSubject.Close()
 
        sqlConn.Close()
Ma requete SQL ne retourne rien. Je ne vois pas mon erreur ...

Quelqu'un a-t-il une idée ?

Cordialement.

DeWaRs