Presentazione cancellazione registrazione modifica di un record in visual basic

17
1 Presentazione a cura di Claudia Neri 4c Mercurio (indirizzo programmatori) 2008/2009 I.s.i.s.t Russell-Newton Scandicci (Firenze)

Transcript of Presentazione cancellazione registrazione modifica di un record in visual basic

Page 1: Presentazione cancellazione registrazione modifica di un record in visual basic

1

Presentazione a cura diClaudia Neri

4c Mercurio(indirizzo programmatori)

2008/2009I.s.i.s.t Russell-Newton

Scandicci (Firenze)

Page 2: Presentazione cancellazione registrazione modifica di un record in visual basic

2

Visual Basic

• Inserimento, modifica, cancellazione di un record– Uso di AddNew/Update– Uso di Edit/Update– Uso di Delete– Ricerca diretta di un record con .seek “=“

Page 3: Presentazione cancellazione registrazione modifica di un record in visual basic

3

Prendiamo ad esempio l’esercizio piscina per spiegare l’eliminazione, la modifica e la registrazione di record nel database utilizzando visual basic senza intervenire sul database attraverso access.

Primo passo: progettare la form

Page 4: Presentazione cancellazione registrazione modifica di un record in visual basic

4

ComboBox: contenete gli iscritti Permette di visualizzare i dati dell’iscritto

E adesso prima di spiegare cosa fanno questi pulsanti vediamo cosa succede nella form_load e al clic di visualizza

Page 5: Presentazione cancellazione registrazione modifica di un record in visual basic

5

Iniziamo a vedere la form_load…

Private Sub Form_Load()

Call caricaCombo

cmdRegistra.Enabled = False

cmdModifica.Enabled = False

cmdElimina.Enabled = False

End Sub

Page 6: Presentazione cancellazione registrazione modifica di un record in visual basic

6

Private Sub caricaCombo

'scrivo nella combobox

tblIscritti.MoveFirst 'posizionarsi al primo record

Do While tblIscritti.EOF = False

cmbIscritti.AddItem tblIscritti("CodIsc") & "- " & tblIscritti("Cognome") & “ ” & tblIscritti("Nome")

tblIscritti.MoveNext 'andare al record successivo

Loop

cmbIscritti.ListIndex = -1

End Sub

In questa fase viene caricata la combobox con i nomi degli iscritti del database

Si imposta a –1 perché così parte con nessun nome visualizzato

Ecco cosa c’è nella sottoprocedura caricaCombo

Page 7: Presentazione cancellazione registrazione modifica di un record in visual basic

7

..e al clic di Visualizza Posizione = InStr(cmbIscritti.Text, "-") RicCodIsc = Mid$(cmbIscritti.Text, 1, Posizione - 1) 'ricerco nella tabella iscrizioni il codice iscritto tblIscritti.Index = "PrimaryKey" tblIscritti.Seek "=", RicCodIsc If tblIscritti.NoMatch = True Then MsgBox ("Errore non esiste iscritto con quel codice") Else Call visDatiIscritto End If

cmdRegistra.Enabled = True cmdModifica.Enabled = True cmdElimina.Enabled = True

Page 8: Presentazione cancellazione registrazione modifica di un record in visual basic

8

Ed ecco cosa succede nella sottoprocedura visDatiIscritto

Private Sub visDatiIscritto()

txtCodIsc.Text = tblIscritti("CodIsc")txtCognome.Text = tblIscritti("Cognome")txtNome.Text = tblIscritti("Nome")txtIndirizzo.Text = tblIscritti("Indirizzo")txtCitta.Text = tblIscritti("Città")txtCap.Text = tblIscritti("Cap")txtTelefono.Text = tblIscritti("Telefono")txtEmail.Text = tblIscritti("Email")

End Sub

Page 9: Presentazione cancellazione registrazione modifica di un record in visual basic

9

Cominciamo adesso con il pulsante Elimina

Il pulsante elimina deve contenere le istruzioni per poter cancellare il record che abbiamo selezionato attraverso la combo box.

Per far ciò viene utilizzato il metodo DELETE del controllo record-set

Vediamo in visual basic

Page 10: Presentazione cancellazione registrazione modifica di un record in visual basic

10

Private Sub cmdElimina_Click()

A = MsgBox("Sei sicuro di volerlo eliminare?", vbYesNo)

If A = 6 Then tblIscritti.Delete MsgBox "Eliminazione effettuata"End If

cmbIscritti.ClearCall caricaComboCall pulisciText

cmdRegistra.Enabled = FalsecmdModifica.Enabled = FalsecmdElimina.Enabled = False

Per prima cosa ci si domanda se si vuole davvero eliminare.

Qui si guarda se è stato confermato o meno e si utilizza un numero perché la risposta alla domanda viene memorizzata attraverso un numero.

Page 11: Presentazione cancellazione registrazione modifica di un record in visual basic

11

Passiamo adesso al pulsante modifica

All’attivazione di questo pulsante occorre attivare la frame che contiene le textbox per poter così effettuare le eventuali modifiche.

Private Sub cmdModifica_Click()

fraDati.Enabled = True

cmdElimina.Enabled = False

txtCodIsc.Enabled = False

txtCognome.SetFocus

End Sub

Page 12: Presentazione cancellazione registrazione modifica di un record in visual basic

12

Ecco il pulsante registra

Dopo aver modificato i dati occorre salvare queste modifiche anche sul database e ciò avviene cliccando sul pulsante registra.

In questo pulsante vengono utilizzate due metodi il primo è EDIT e il secondo è UPDATE.

Page 13: Presentazione cancellazione registrazione modifica di un record in visual basic

13

tblIscritti.EdittblIscritti("CodIsc") = txtCodIsc.TexttblIscritti("Cognome") = txtCognome.TexttblIscritti("Nome") = txtNome.TexttblIscritti("Indirizzo") = txtIndirizzo.TexttblIscritti("Città") = txtCitta.TexttblIscritti("Cap") = txtCap.TexttblIscritti("Telefono") = txtTelefono.TexttblIscritti("Email") = txtEmail.TexttblIscritti.Update

MsgBox "Registrazione effettuata"cmbIscritti.ClearCall caricaComboCall pulisciTextfraDati.Enabled = FalsecmdElimina.Enabled = FalsecmdModifica.Enabled = FalsecmdRegistra.Enabled = False

Page 14: Presentazione cancellazione registrazione modifica di un record in visual basic

14

Adesso vediamo come facciamo ad aggiungere un nuovo iscritto

Per aggiungere un iscritto occorre che nella combobox sia selezionata la riga vuota, questo deve far cambiare la caption del pulsante registra e al posto di “Registra” deve apparire “Aggiungi”.

Qui viene poi utilizzato un nuovo metodo che è quello ADDNEW.

Dobbiamo adesso modificare alcune istruzioni nel codice di alcuni pulsanti già utilizzati vediamo come….

Page 15: Presentazione cancellazione registrazione modifica di un record in visual basic

15

Le modifiche del pulsante visualizzaIf cmbIscritti.ListIndex = -1 Then cmdRegistra.Caption = "Aggiungi" cmdRegistra.Enabled = True fraDati.Enabled = TrueElse cmdRegistra.Caption = "Registra" Posizione = InStr(cmbIscritti.Text, "-") RicCodIsc = Mid$(cmbIscritti.Text, 1, Posizione - 1) tblIscritti.Index = "PrimaryKey" tblIscritti.Seek "=", RicCodIsc If tblIscritti.NoMatch = True Then MsgBox ("Errore non esiste iscritto con quel codice") Else Call visDatiIscritto End If cmdRegistra.Enabled = True cmdModifica.Enabled = True cmdElimina.Enabled = TrueEnd If

Nel visualizza abbiamo aggiunto il se che guarda se la riga selezionata della combobox è vuota, se ciò è vero allora cambia la caption al pulsante registra e attiva tutte le text per poter aggiungere i dati del nuovo iscritto

Page 16: Presentazione cancellazione registrazione modifica di un record in visual basic

16

Le modifiche nel pulsante registraIf cmbIscritti.ListIndex = -1 Then tblIscritti.AddNewElse tblIscritti.EditEnd IftblIscritti("CodIsc") = txtCodIsc.TexttblIscritti("Cognome") = txtCognome.TexttblIscritti("Nome") = txtNome.TexttblIscritti("Indirizzo") = txtIndirizzo.TexttblIscritti("Città") = txtCitta.TexttblIscritti("Cap") = txtCap.TexttblIscritti("Telefono") = txtTelefono.TexttblIscritti("Email") = txtEmail.TexttblIscritti.UpdateMsgBox "Registrazione effettuata"cmbIscritti.ClearCall caricaCombo Call pulisciTextfraDati.Enabled = FalsecmdElimina.Enabled = FalsecmdModifica.Enabled = False

Si è aggiunto un se in modo da verificare quando nella combobox è selezionata la riga vuota o no.

Infatti se è selezionata la riga vuota deve eseguire l’istruzione di aggiungere nella tabella un nuovo iscritto altrimenti deve solo consentire di aggiungere le modifiche a un iscritto già presente

Page 17: Presentazione cancellazione registrazione modifica di un record in visual basic

17

Fine presentazione

Firenze, 22/12/2008