Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Problemi nel codice di vb6

    Il mio 1 post mi sono avvicinato da poco a VB6, ho creato un form con i vari Texbox, che mi dialogano con il DB access, vari pulsanti, Nuovo, salva, Elimina, Inserito codice modificato da altra aplicazione ecc Quando lancio aplicazione e riempo i vari Texbox con el informazioni e poi vado x salvare mi da errore:

    codice:
    Errore di compilazione.  Tipo definito  non definito dall'utente
    La parte del codice che mi da errore

    Private Sub Aggiungi()
    ' Procedura per la creazione del nuovo record.
    ' --------------------------------------------------------
    ' Dichiara le variabili che dovranno contenere gli oggetti
    ' --------------------------------------------------------
    ' Variabile per l'oggetto Connection
    Dim DB As ADODB.Connection
    ' Variabile per l'oggetto Recordset
    Dim T As ADODB.Recordset



    Vi inserisco il codice completo nel prossimo post se me lo controlate onde evitare che ho sbagliato anche altro

    Grazie in anticipo

  2. #2

    Il codice

    INIZIO CODICE
    ------------------------------------------------------------------------


    ' A secondo del pulsante premuto
    Private Sub Cmd_Click(Index As Integer)
    Select Case Index
    ' --------------------------------------------------
    ' Pulsante Nuovo
    Case 0
    Svuota
    ' Abilita il pulsante Aggiungi
    Cmd(1).Enabled = True
    ' Disabilita il pulsante Salva e Elimina
    Cmd(4).Enabled = True
    Cmd(5).Enabled = True
    ' Abilita la casella di testo relativa
    ' alla chiave primaria.
    Txt(0).Enabled = True
    ' --------------------------------------------------
    ' Pulsante Aggiungi
    Case 1
    SalvaNuovo
    ' Abilita il pulsante Elimina
    Cmd(5).Enabled = True
    ' --------------------------------------------------
    ' Pulsante Uscita
    Case 2
    ' Pulsante Uscita
    ' Rimuove il form dalla memoria
    Unload Me
    ' --------------------------------------------------
    ' Pulsante Trova
    Case 3
    ' Disabilita il pulsante Aggiungi
    Cmd(1).Enabled = True
    ' Abilita il pulsante Salva e Elimina
    Cmd(4).Enabled = True
    Cmd(5).Enabled = True
    Cerca
    ' --------------------------------------------------
    ' Pulsante Salva
    Case 4
    SalvaModifica
    ' --------------------------------------------------
    ' Pulsante Elimina
    Case 5
    ' Se premi il pulsante OK cancella, altrimenti no.
    If MsgBox("CONFERMI LA CANCELLAZIONE ?", vbOKCancel) = vbOK Then
    EliminaRecord
    Else
    ' Assegna il focus alla prima casella di testo
    Txt(1).SetFocus
    End If
    ' --------------------------------------------------
    End Select
    End Sub
    Private Sub Svuota()
    ' Procedura per la cancellazione delle caselle di testo
    Dim I As Byte
    ' Svuota le caselle di testo
    For I = 0 To 14
    Txt(I).Text = ""
    Next I
    ' Abilita la casella di testo relativa alla
    ' chiave primaria
    Txt(0).Enabled = True
    ' Imposta il focus sulla prima casella di testo
    Txt(0).SetFocus
    End Sub
    Private Sub SalvaNuovo()
    ' Procedura per il salvataggio delle caselle di testo.
    ' Se le prime due caselle di testo contengono stringhe
    ' crea un nuovo record memorizzando i campi.
    If Txt(0).Text <> "" And Txt(1).Text <> "" Then
    Aggiungi
    Else
    MsgBox "Hai lasciato un campo obbligatorio vuoto !"
    ' Imposta il focus sul campo vuoto
    If Txt(0).Text = "" Then
    Txt(0).SetFocus
    Else
    Txt(1).SetFocus
    End If
    End If
    End Sub
    Private Sub Form_Activate()
    Svuota
    End Sub
    Private Sub Aggiungi()
    ' Procedura per la creazione del nuovo record.
    ' --------------------------------------------------------
    ' Dichiara le variabili che dovranno contenere gli oggetti
    ' --------------------------------------------------------
    ' Variabile per l'oggetto Connection
    Dim DB As ADODB.Connection
    ' Variabile per l'oggetto Recordset
    Dim T As ADODB.Recordset
    ' Variabile che dovrà contenere la stringa di connessione
    Dim strCnn As String
    ' Apre una connessione con il metodo Connection
    Set DB = New ADODB.Connection
    ' Imposta la stringa di connessione.
    ' La stringa di connessione può essere copiata dal
    ' controllo dati.
    strCnn = "" _
    & "Provider=Microsoft.Jet.OLEDB.4.0;" _
    & "Data Source=C:\Magazzino\Gomme.mdb"
    ' & "Persist Security Info=False"
    ' Attiva la connessione con il metodo Open
    DB.Open strCnn
    ' Dichiara un oggetto Recordset
    Set T = New ADODB.Recordset
    ' Imposta il tipo di blocco ammesso dal provider.
    ' Per poter utilizzare AddNew bisogna impostare
    ' LockType con la costante adLockOptimistic.
    T.LockType = adLockOptimistic
    ' Apre la tabella Cerchio12 nell'oggetto recordset
    ' con il metodo Open
    T.Open "Cerchio", DB, , , adCmdTable
    ' Prepara un nuovo record con il metodo AddNew
    T.AddNew
    ' Assegna le caselle di testo ai campi del record
    T("IDCliente") = Txt(0).Text
    T("Nome") = Txt(1).Text
    T("Cognome") = Txt(2).Text
    T("Indirizzo") = Txt(3).Text
    T("Citta") = Txt(4).Text
    T("Tel") = Txt(5).Text
    T("Cell") = Txt(6).Text
    T("Auto") = Txt(7).Text
    T("Marpne") = Txt(8).Text
    T("Mispne") = Txt(9).Text
    T("Kmsmontaggio") = Txt(10).Text
    T("Conosensacerchio") = Txt(11).Text
    T("Numgomme") = Txt(12).Text
    T("data") = Txt(13).Text
    T("Note") = Txt(14).Text
    ' Salva il nuovo record con il metodo Update
    T.Update
    ' Chiude la tabella
    T.Close
    ' Chiude la connessione
    DB.Close
    ' Disabilita la casella di testo relativa alla
    ' chiave primaria.
    Txt(0).Enabled = False
    ' Assegna il focus alla prima casella di testo
    Txt(1).SetFocus
    End Sub
    Private Sub Cerca()
    ' Procedura per la ricerca di un record.
    ' --------------------------------------------------------
    ' Dichiara le variabili che dovranno contenere gli oggetti
    ' --------------------------------------------------------
    ' Variabile per l'oggetto Connection
    Dim DB As ADODB.Connection
    ' Variabile per l'oggetto Recordset
    Dim T As ADODB.Recordset
    ' Variabile che dovrà contenere la stringa di connessione
    Dim strCnn As String
    ' Apre una connessione con il metodo Connection
    ' Attiva il controllo degli errori, in quanto qualche
    ' campo della tabella di esempio potrebbe essere vuoto.
    ' On Error Resume Next, nel caso di errore, procede comunque.
    On Error Resume Next
    Set DB = New ADODB.Connection
    ' Imposta la stringa di connessione.
    ' La stringa di connessione può essere copiata dal
    ' controllo dati.
    strCnn = "" _
    & "Provider=Microsoft.Jet.OLEDB.4.0;" _
    & "Data Source=C:\magazzino\Gomme.mdb"
    ' & "Persist Security Info=False"
    ' Attiva la connessione con il metodo Open
    DB.Open strCnn
    ' Dichiara un oggetto Recordset
    Set T = New ADODB.Recordset
    ' Imposta il tipo di blocco ammesso dal provider.
    ' Per poter utilizzare AddNew bisogna impostare
    ' LockType con la costante adLockOptimistic.
    T.LockType = adLockOptimistic
    ' Apre la tabella Cliente nell'oggetto recordset
    ' con il metodo Open
    T.Open "Cerchio", DB, , , adCmdTable
    ' Cerca il record, con il metodo Find, che corrisponde
    ' alla chiave inserita nella casella di testo.
    T.Find "IDCliente = '" & Trova.Text & "'"
    ' Per verificare che il record sia stato trovato
    ' si può controllare lo stato della proprietà EOF
    ' del Recordset. Se essa è True significa che il record
    ' non è stato trovato, altrimenti sì
    If T.EOF = False Then
    ' Assegna le caselle di testo ai
    ' campi del record.
    Txt(0).Text = T("IDCliente")
    Txt(1).Text = T("Nome")
    Txt(2).Text = T("Cognome")
    Txt(3).Text = T("Indirizzo")
    Txt(4).Text = T("Citta")
    Txt(5).Text = T("Tel")
    Txt(6).Text = T("Cell")
    Txt(7).Text = T("Auto")
    Txt(8).Text = T("Marpne")
    Txt(9).Text = T("Misupne")
    Txt(10).Text = T("Kmsmontaggio")
    Txt(11).Text = T("Conosenzacerchio")
    Txt(12).Text = T("Mungomme")
    Txt(13).Text = T("Data")
    Txt(14).Text = T("Note")
    ' Disabilita la casella di testo relativa
    ' alla chiave primaria.
    Txt(0).Enabled = False
    ' Assegna il focus alla prima casella di testo
    Txt(1).SetFocus
    Else
    MsgBox "Elemento non trovato"
    End If
    ' Chiude la tabella
    T.Close
    ' Chiude la connessione
    DB.Close
    End Sub

    Private Sub Form_Load()
    ' Abilita il pulsante Aggiungi
    Cmd(1).Enabled = True
    ' Disabilita il pulsante Salva e Elimina
    Cmd(4).Enabled = False
    Cmd(5).Enabled = False
    End Sub
    Private Sub SalvaModifica()
    ' Procedura per il salvataggio di un record esistente.
    ' --------------------------------------------------------
    ' Dichiara le variabili che dovranno contenere gli oggetti
    ' --------------------------------------------------------
    ' Variabile per l'oggetto Connection
    Dim DB As ADODB.Connection
    ' Variabile per l'oggetto Recordset
    Dim T As ADODB.Recordset
    ' Variabile che dovrà contenere la stringa di connessione
    Dim strCnn As String
    ' Apre una connessione con il metodo Connection
    Set DB = New ADODB.Connection
    ' Imposta la stringa di connessione.
    ' La stringa di connessione può essere copiata dal
    ' controllo dati.
    strCnn = "" _
    & "Provider=Microsoft.Jet.OLEDB.4.0;" _
    & "Data Source=C:\Magazzino\Gomme.mdb"
    ' & "Persist Security Info=False"
    ' Attiva la connessione con il metodo Open
    DB.Open strCnn
    ' Dichiara un oggetto Recordset
    Set T = New ADODB.Recordset
    ' Imposta il tipo di blocco ammesso dal provider.
    ' Per poter utilizzare AddNew bisogna impostare
    ' LockType con la costante adLockOptimistic.
    T.LockType = adLockOptimistic
    ' Apre la tabella Clienti nell'oggetto recordset
    ' con il metodo Open
    T.Open "Cerchio", DB, , , adCmdTable
    ' Cerca il record, con il metodo Find, che corrisponde
    ' alla chiave inserita nella prima casella di testo
    ' (quella che contiene la chiave primaria).
    T.Find "IDCliente = '" & Txt(0).Text & "'"
    ' Per verificare che il record sia stato trovato
    ' si può controllare lo stato della proprietà EOF
    ' del Recordset. Se essa è True significa che il record
    ' non è stato trovato, altrimenti sì.
    If T.EOF = False Then
    ' Assegna le caselle di testo ai campi del record
    T("IDCliente") = Txt(0).Text
    T("Nome") = Txt(1).Text
    T("Cognome") = Txt(2).Text
    T("Indirizzo") = Txt(3).Text
    T("Citta") = Txt(4).Text
    T("Tel") = Txt(5).Text
    T("Cell") = Txt(6).Text
    T("Auto") = Txt(7).Text
    T("Marpne") = Txt(8).Text
    T("Misupne") = Txt(9).Text
    T("Kmsmontaggio") = Txt(10).Text
    T("Conosenzacerchio") = Txt(11).Text
    T("Numerogomme") = Txt(12).Text
    T("Data") = Txt(13).Text
    T("Note") = Txt(14).Text
    ' Salva il nuovo record con il metodo Update
    T.Update
    End If
    ' Chiude la tabella
    T.Close
    ' Chiude la connessione
    DB.Close
    ' Assegna il focus alla prima casella di testo
    Txt(1).SetFocus
    End Sub
    Private Sub EliminaRecord()
    ' Procedura per la cancellazione di un record.
    ' --------------------------------------------------------
    ' Dichiara le variabili che dovranno contenere gli oggetti
    ' --------------------------------------------------------
    ' Variabile per l'oggetto Connection
    Dim DB As ADODB.Connection
    ' Variabile per l'oggetto Recordset
    Dim T As ADODB.Recordset
    ' Variabile che dovrà contenere la stringa di connessione
    Dim strCnn As String
    ' Apre una connessione con il metodo Connection
    Set DB = New ADODB.Connection
    ' Imposta la stringa di connessione.
    ' La stringa di connessione può essere copiata dal
    ' controllo dati.
    strCnn = "" _
    & "Provider=Microsoft.Jet.OLEDB.4.0;" _
    & "Data Source=C:\Magazzino\Gomme.mdb"
    ' & "Persist Security Info=False"
    ' Attiva la connessione con il metodo Open
    DB.Open strCnn
    ' Dichiara un oggetto Recordset
    Set T = New ADODB.Recordset
    ' Imposta il tipo di blocco ammesso dal provider.
    ' Per poter utilizzare AddNew bisogna impostare
    ' LockType con la costante adLockOptimistic.
    T.LockType = adLockOptimistic
    ' Apre la tabella Clienti nell'oggetto recordset
    ' con il metodo Open
    T.Open "Cerchio", DB, , , adCmdTable
    ' Cerca il record, con il metodo Find, che corrisponde
    ' alla chiave inserita nella prima casella di testo
    ' (quella che contiene la chiave primaria).
    T.Find "IDCliente = '" & Txt(0).Text & "'"
    ' Per verificare che il record sia stato trovato
    ' si può controllare lo stato della proprietà EOF
    ' del Recordset. Se essa è True significa che il record
    ' non è stato trovato, altrimenti sì.
    If T.EOF = False Then
    ' Cancella il record con il metodo Delete
    T.Delete
    End If
    ' Chiude la tabella
    T.Close
    ' Chiude la connessione
    DB.Close
    ' Svuota il form
    Svuota
    End Sub

    ---------------------------------------------------------

  3. #3

    Ho risolto

    ho risolto grazie lo stesso

    se a qualcuno interessa posto il codice corretto

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 © 2025 vBulletin Solutions, Inc. All rights reserved.