Da un Progetto VB .net devo eseguire una Query di "CreazioneTabella" imponendo un Criterio al Campo "Data". Tutto fila liscio fino a quando la Data Criterio è il 13/11/2017: la Query genera solo una riga vuota di tabella.
È incredibile che qualsiasi altra data invece restituisca la serie di valori che mi aspetto, ma il 13/11/2017 no.
Il Codice è piuttosto lungo, per cui provo a presentare solo un estratto; se poi serve aggiungerò:
codice:
Dim DSL As Date
DSL = DSL.AddDays(-1)
DSL = Format(DSL, "dd MM yyyy")
sSQL = "SELECT DISTINCTROW Vendite.Categ, Colore.OrdCOL, Vendite.Corrisp, Giacenza.Giacenza AS Giac, Vendite.QMov AS Quant, Vendite.Data, Vendite.NBolla, ControlloDiMagazzino.DataUltimoControllo, VerifQuot_2.MaxDiData, ControlloDiMagazzino.UltimaBollaControllata, VerifQuot_2.MaxDiNBolla INTO VerifQuot_3 FROM ControlloDiMagazzino, VerifQuot_2, ((Vendite INNER JOIN Giacenza ON Vendite.Corrisp = Giacenza.Corrisp) INNER JOIN Prodotti ON Giacenza.Corrisp = Prodotti.Corrisp) INNER JOIN Colore ON Prodotti.Colore = Colore.Colore WHERE (((Vendite.Data)>#" & DSL & "#)) ORDER BY Colore.OrdCOL, Vendite.Corrisp"
rcrdst.Open(sSQL, CnDBLocale, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
Il DB è Access 2007. Non so se è necessario, ma ho anche impostato il Formato della data dopo aver verificato che, scrivendola manualmente e non come parametro, la Query desse un risultato logico.
Se scrivo la Queri impostando il criterio esplicitamente, viene regolarmente eseguita:
codice:
sSQL = "SELECT DISTINCTROW Vendite.Categ, Colore.OrdCOL, Vendite.Corrisp, Giacenza.Giacenza AS Giac, Vendite.QMov AS Quant, Vendite.Data, Vendite.NBolla, ControlloDiMagazzino.DataUltimoControllo, VerifQuot_2.MaxDiData, ControlloDiMagazzino.UltimaBollaControllata, VerifQuot_2.MaxDiNBolla INTO VerifQuot_3 FROM ControlloDiMagazzino, VerifQuot_2, ((Vendite INNER JOIN Giacenza ON Vendite.Corrisp = Giacenza.Corrisp) INNER JOIN Prodotti ON Giacenza.Corrisp = Prodotti.Corrisp) INNER JOIN Colore ON Prodotti.Colore = Colore.Colore WHERE (((Vendite.Data)>#13/11/2017#)) ORDER BY Colore.OrdCOL, Vendite.Corrisp"
rcrdst.Open(sSQL, CnDBLocale, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
Sicuramente sto sbagliando. ma dove?
Grazie per l'aiuto