Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Aiuto con i database Access in VB 6
Forum - Visual Basic 6 - Aiuto con i database Access in VB 6

Avatar
Ghidyan87 (Normal User)
Newbie


Messaggi: 1
Iscritto: 05/08/2008

Segnala al moderatore
Postato alle 15:25
Martedė, 05/08/2008
Salve ragazzi avrei bisogno di un aiuto sto realizzando un software per la gestione del bilancio familiare(Versamenti stipendio,pagamenti,prelievi di denaro) etc..etc.. ora ho implementato alcune funzioni per la ricerca per data e per mese. Ora il punto č questo,per realizzare la funzione di ricerca per data o per mese ho usato questo codice qui:

stringa = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
    stringa = stringa & "C:\Documents and Settings\Hero\Desktop\Gestione Bilancio Familiare\Database1.mdb"
    
    Set cn = New ADODB.Connection
    Set rs = New ADODB.Recordset

    cn.Open stringa
    rs.Open "SELECT * FROM Tabella1", cn, 1

    If rs.EOF Then
        lblDati.Caption = "Nessun dato"
    Else

        While rs.EOF = False
            If rs("data") <> txtData.Text Then
                lblDati.Caption = "Non č stato trovato alcun versamento effettuato nella data da lei inserita.Ricontrollare e Riprovare."
                'lblDati2.Visible = False
                'Image2.Visible = True
            Else
            If txtData.Text = rs("data") Then
                
                List1.AddItem "Versamento effettuato in data" & "  " & rs("data") & "   " & "Importo Versato" & " -- " & rs("Importo") & " -- " & "Straordinario Mensile" & "   " & rs("Straordinario")
                lblDati2.Caption = "Trovato versamento nella data da lei indicata."
                lblDati.Visible = False
            End If
            End If
           If rs("Mese") <> txtMese.Text Then
                lblDati.Caption = "Non č stato trovato alcun versamento effettuato nel Mese da lei indicato.Ricontrollare e Riprovare."
                'lblDati2.Visible = False
                'Image2.Visible = True
            Else
            If txtMese.Text = rs("Mese") Then
                MsgBox "E' stata richiesta una ricerca che utilizza come criterio la ricerca per mese e non per data.Per tanto se alcuni risultati non figurano nell'elenco,provare con la ricerca per data.", vbInformation
                List1.AddItem "Versamento effettuato nel mese di " & "  " & rs("Mese") & "   " & "Importo Versato" & " -- " & rs("Importo") & " -- " & "Straordinario Mensile" & "   " & rs("Straordinario") & "  " & "Totale" & "  " & rs("Totale")
                lblDati2.Caption = "Trovato versamento nel Mese da lei indicato."
                lblDati.Visible = False
            End If
            End If

            

            'txtData.Text = rs("Data")
            'txtImporto.Text = rs("Importo")
            'txtTotale.Text = rs("Totale")
            'lblDati.Caption = lblDati.Caption _
                            '& rs("Data") & " " _
                            '& rs("Importo") & " " _
                            '& rs("Totale") & vbCrLf
            rs.MoveNext
        Wend

    End If


    Set cn = Nothing
    Set rs = Nothing
----------
ora vorrei un aiuto come posso realizzare una funzione che mi dia nella stessa list box i pagamenti da un giorno a un altro ad esempio dal 1 al 7 oppure dal 7 al 1. Ho provato ad usare un ciclo for ma non mi va sapete come posso fare?grazie in anticipo

PM Quote
Avatar
Overflow (Normal User)
Expert


Messaggi: 334
Iscritto: 11/01/2008

Segnala al moderatore
Postato alle 18:22
Martedė, 05/08/2008
non so come č strutturato il tuo database, puoi provare in questo modo:

Codice sorgente - presumibilmente VB.NET

  1. Dim sql As String
  2.    
  3.     sql = "select * from nTabella where campoData between CDate('01/01/2008')  and CDate('01/04/2008')"
  4.     rs.Open sql, cn, 3, 3
  5.         'se il recordset č stato aperto prima allora fai cn.execute sql
  6.     rs.MoveFirst
  7.     While Not rs.EOF
  8.         List1.AddItem rs("Nome")
  9.         rs.MoveNext
  10.     Wend



ho usato una query:
select * from tSample where Data between CDate('01/01/2008')  and CDate('01/04/2008') per ottenere i record compresi tra le due date, tu
metti al posto delle mie date le date che ti interessano.
Infine ho inserisco nella lista il campo Nome tu inserisci invece quello che ti serve.

Ultima modifica effettuata da Overflow il 05/08/2008 alle 18:24
PM Quote