Salve a tutti.
Dopo aver risolto il precedente problema della select ora tanto per cambiare ne ho un altro XD
quando seleziono una data dal calendario eseguo una select per controllare se ci sono già dei promemoria per quella data, e se si elencarli in una listbox.
Ho notato che mi succede una cosa strana: il primo risultato viene scritto due volte, mentre l'ultimo viene perso.. se ad esempio per la data del 2 agosto ho i promemoria
test
test2
test3
nella listbox mi stampa le righe in questo modo
test
test
test2
prima di ogni riempimento azzero la textbox.
Eccovi un pò di codice
DataOnly è una semplice funzioncina per formattare la data per usarla comodamente con postgres, se vi serve.. (non penso XD)codice:Public Sub Controlla_Data(ByVal selectedDate As Date) Dim controlla As Odbc.OdbcCommand Dim List As Odbc.OdbcDataReader Dim SQL As String = "select message from promemoria where data = '" + DataOnly(selectedDate).ToString + "'" controlla = New Odbc.OdbcCommand(SQL, Conn) Conn.Open() 'Conn è dichiarato globale List = controlla.ExecuteReader() If List.HasRows Then Label3.Text = "Numero promemoria per il giorno selezionato : " + List.RecordsAffected.ToString ListBox1.Items.Clear() For i = 1 To List.RecordsAffected ListBox1.Items.Add(List.GetValue(0).ToString()) List.Read() Next Else ListBox1.Items.Clear() Label3.Text = "Nessun promemoria presente per il giorno selezionato" End If List.Close() Conn.Close() End Sub
debuggando passo passo non mi sembra che ci siano dei problemi. sembra quasi che mi salti una read().codice:Public Function DataOnly(ByVal Data As String) As String Return Format(DateTime.Parse(Data), "dd/MM/yyyy") End Function
Spero che il problema sia di facile soluzione, almeno per voi![]()
Grazie in anticipo. Cordiali saluti

Rispondi quotando