Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18
  1. #11
    Utente di HTML.it L'avatar di Rickycast
    Registrato dal
    Apr 2007
    residenza
    CHIERI (TO)
    Messaggi
    263
    Mi sono ricordato cosa sono i Parametri nelle Query, ma mi è stato chiesto di fare in modo che la scelta delle date possibili avvenisse tramite un Click su un "DataGridView" che le recupera automaticamente. Questo perchè le date da impostare non sono sequenziali e quindi c'è la necessità di utilizare solo le date di cui si è certi. Quindi niente Query con Parametry.
    Provo quindi ad impostare il Formato delle date come indicato da Gibra. Dell'esito vi farò sapere.
    Sarò testone, ma ancora nessuno ha risposto alla domanda del "perché" si manifesta questo errore.
    Forse c'è la mano del trascendente?

  2. #12
    Utente di HTML.it L'avatar di Rickycast
    Registrato dal
    Apr 2007
    residenza
    CHIERI (TO)
    Messaggi
    263
    Con il Formato delle Date impostato così:
    codice:
    DSL = Format(DSL, "MM dd  yyyy")
    selezionando nel DataGridViewer la data del 20/11/2017, ottengo l'errore di Immagine Data_1.

    Mentre se seleziono nel DataGridViewer la data del 13/11/2017 ottengo come risposta (Ho impostato un MSGBOX che restituisce la Data -1 giorno) il valore di Immagine Data_2. Rispetto alla selezione precedente, quella del 20/11/2017, non ho più un errore, però la data restituita è 11/12/2017, 11 dicembre!
    Non è invece possibile formattare la data come suggerito da Gibra:
    codice:
    DSL = Format(DSL, "mm/dd/yyyy")
    selezionando la data del 15/11/2017 il sistema restituisce l'errore: Cast non valido della stringa "00/15/2017" al tipo 'Date'.

    Se imposto il Formato delle date come avevo fatto originariamente
    codice:
    DSL = Format(DSL, "dd MM yyyy")
    non ho errori e scegliendo nel DataGridViewer la data 13/11/2017 ho come risposta 12/11/2017, che è giusto, però la query non restituisce niente, è vuota. Vedi Immagine Data_3
    Immagini allegate Immagini allegate

  3. #13
    Utente di HTML.it L'avatar di Rickycast
    Registrato dal
    Apr 2007
    residenza
    CHIERI (TO)
    Messaggi
    263
    Ho risolto il mio problema inserendo la data (qualunque data scelta con un Click nel DataGridViewer, compreso il 13/11/2017) nella Cella di una Tabella già presente dentro alla Query che ho scritto in VB .NET. Utilizzo quindi il Campo della Data come criterio per la selezione.
    In questo modo funziona.

    codice:
            DSL = DSL.AddDays(-1)
            DSL = Format(DSL, "dd MM yyyy")
    
            sSQL = "SELECT DataSL FROM ControlloDiMagazzino"
            rcrdst.Open(sSQL, CnDBLocale, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
    
            rcrdst.MoveFirst()
            rcrdst("DataSL").Value = DSL
            rcrdst.Update()
    
            rcrdst.Close()
    
            sSQL = "SELECT DISTINCTROW Vendite.Categ, Vendite.Data, Colore.OrdCOL, Vendite.Corrisp, Giacenza.Giacenza AS Giac, Vendite.QMov AS Quant, 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)>[DataSL])) ORDER BY Vendite.Data, Colore.OrdCOL, Vendite.Corrisp"
            rcrdst.Open(sSQL, CnDBLocale, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)

    Per me il thread si può chiuderlo qui, a meno che qualcuno abbia voglia di spiegare perchè l'anomalia si verifica.

  4. #14
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da Rickycast Visualizza il messaggio
    Mi sono ricordato cosa sono i Parametri nelle Query, ma mi è stato chiesto di fare in modo che la scelta delle date possibili avvenisse tramite un Click su un "DataGridView" che le recupera automaticamente. Questo perchè le date da impostare non sono sequenziali e quindi c'è la necessità di utilizare solo le date di cui si è certi.
    Tutto normale.

    Quote Originariamente inviata da Rickycast Visualizza il messaggio
    Quindi niente Query con Parametry.
    Assolutamente falso. Non c'entra proprio nulla e quindi non è il modo corretto di procedere.

  5. #15
    Utente di HTML.it L'avatar di Rickycast
    Registrato dal
    Apr 2007
    residenza
    CHIERI (TO)
    Messaggi
    263
    Tu intendi dire che dovrei far comparire come Parametro un DataGridView dal quale scegliere la data che mi interessa?
    Se la tua soluzione è questa, ho davvero qualche problema a metteree insieme le cose.
    Altrimenti se non è questa non saprei proprio come fare.
    In ogni caso, come ho scritto, io la soluzione l'ho trovata: non mi costringe a cambiare quasi nulla di quello che ho scritto e funziona benissimo. E non mi pare che sia "fuori dal seminato".

  6. #16

  7. #17
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Stai facendo un po' di confusione.
    - I Parametri sono una cosa (e si usano nei Command delle query)
    - i valori sono quelli che si passano come parametri

    Il DataGridView, invece, non c'entra proprio nulla con questi concetti.
    Che tu prenda la data da una cella del DGV, da un TextBox, da un DataPicker o qualsiasi altro controllo, sarà sempre una Data, ovvero un valore che va passato come parametro alla query.

    Volevo solo chiarirti questo fatto, per dirti che la giustificazione che hai espresso non ha alcun fondamento né logico, né pratico, né teorico.
    Però se come hai fatto tu, ti funziona bene, allora fai pure come credi.

  8. #18
    Utente di HTML.it L'avatar di Rickycast
    Registrato dal
    Apr 2007
    residenza
    CHIERI (TO)
    Messaggi
    263
    Grazie, anche se a questo punto è evidente che dovrò chiarirmi le idee su questo argomento.
    Visto che io ho preso la data e l'ho aggiunta ad un campo di una tabella già presente nella Query e poi ho usato il valore di quel campo quale Criterio della Query stessa, dovrei avere fatto quello che dici tu, o no?
    Puntualizzo che (per mia facilità) per costruire le Query utilizzo l'interfaccia query di Access e poi copio la stringa SQL in VB .NET.
    Nell'interfaccia query di Access per selezionare uno specifico valore lo si imputa nela riga "Criterio".
    Questo è quello che ho fatto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.