1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori...

31
1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una “Videoteca” Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003 Progetto Docente

Transcript of 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori...

Page 1: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

1

PROGRAMMARE IN VISUAL BASIC

Prof. F. Di Gerlando

Gestione di una “Videoteca”

Classe V Programmatori

I.T.C. Don M. Arena Sciacca

Anno Scolastico 2002-2003

Progetto Docente

Page 2: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

2

GESTIONE DI UNA GESTIONE DI UNA VIDEOTECAVIDEOTECA

Presentazione Modellazione Interfacce Codice

Progetto

Page 3: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

3

IntroduzioneIntroduzione

Presentazione del ProgettoPresentazione del Progetto

““GESTIONE DI UNA VIDEOTECA”GESTIONE DI UNA VIDEOTECA”Il progetto software qui presentato ha come oggetto la gestione di Il progetto software qui presentato ha come oggetto la gestione di una videoteca. L’idea di realizzare questo progetto è nata una videoteca. L’idea di realizzare questo progetto è nata dall’importanza che l’automazione delle informazioni ha subito dall’importanza che l’automazione delle informazioni ha subito nell’ultimo decennio. Per cui profondi mutamenti si sono avuti in nell’ultimo decennio. Per cui profondi mutamenti si sono avuti in buona parte grazie all’evoluzione della tecnologia informatica, ma buona parte grazie all’evoluzione della tecnologia informatica, ma anche grazie all’esigenza di predisporre di flussi informativi più anche grazie all’esigenza di predisporre di flussi informativi più precisi, tempestivi, completi e soprattutto inseriti in un sistema precisi, tempestivi, completi e soprattutto inseriti in un sistema

integratointegrato. .

Segue

Page 4: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

4

Nel realizzare tale gestione è opportuno curare un lavoro di progettazione iniziale, con riferimento ai dati da memorizzare e destinati alla successiva elaborazione. Innanzitutto bisogna effettuare una raccolta di informazioni attinenti al progetto in questione, ricercare poi i dati aventi elementi caratterizzanti e i legami intercorrenti tra essi. Disponendo del livello concettuale si inizia ad acquisire i dati. Per far ciò è opportuno l’utilizzo di un sistema di gestione di basi di dati nella fattispecie l’ambiente software “Microsoft Access” attraverso quest’ultimo è possibile creare cinque tabelle e cioè degli schemi secondo cui saranno organizzati i dati all’interno del database.

Segue

Page 5: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

5

Per la gestione delle videocassette e dei dati dei clienti vengono Per la gestione delle videocassette e dei dati dei clienti vengono

individuate le entità seguenti:individuate le entità seguenti:

Tessere: per rappresentare i dati anagrafici, i dati relativi Tessere: per rappresentare i dati anagrafici, i dati relativi

all’eventuale abbonamento e le statistiche di noleggio dei all’eventuale abbonamento e le statistiche di noleggio dei

clienti;clienti;

Genere: per gestire i generi delle videocassette;Genere: per gestire i generi delle videocassette;

Cassette: per gestire le varie videocassette della videoteca;Cassette: per gestire le varie videocassette della videoteca;

Noleggi: per gestire i noleggi delle videocassette;Noleggi: per gestire i noleggi delle videocassette;

Utente: per gestire i dati dell’utente che utilizza il software.Utente: per gestire i dati dell’utente che utilizza il software.

Segue

Page 6: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

6

Dopo aver terminato la fase di modellazione dei dati, si può Dopo aver terminato la fase di modellazione dei dati, si può

utilizzare un linguaggio di programmazione orientato agli oggetti utilizzare un linguaggio di programmazione orientato agli oggetti

e basato sugli eventi: Visual Basic. Tale linguaggio ormai è e basato sugli eventi: Visual Basic. Tale linguaggio ormai è

utilizzato in tutti gli ambienti di lavoro, anche scolastici in cui utilizzato in tutti gli ambienti di lavoro, anche scolastici in cui

anche gli alunni si cimentano nel corso dell’ultimo anno. Esso è anche gli alunni si cimentano nel corso dell’ultimo anno. Esso è

in grado di leggere i formati appartenenti a molti tipi di database in grado di leggere i formati appartenenti a molti tipi di database

e creare interfacce che facilitano l’interattività tra l’utente e la e creare interfacce che facilitano l’interattività tra l’utente e la

macchina. macchina.

Segue

Page 7: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

7

Per gestire la videoteca attraverso tale linguaggio è necessarioPer gestire la videoteca attraverso tale linguaggio è necessariopianificare il lavoro in tre fasi:pianificare il lavoro in tre fasi: CREAZIONE DELL’INTERFACCIA UTENTECREAZIONE DELL’INTERFACCIA UTENTE: mediante : mediante

la quale viene progettata la parte grafica inserendo all’interno la quale viene progettata la parte grafica inserendo all’interno di finestre (form) una serie di controlli per l’inserimento, la di finestre (form) una serie di controlli per l’inserimento, la visualizzazione, la modifica e la cancellazione dei record.visualizzazione, la modifica e la cancellazione dei record.

IMPOSTAZIONE DELLE PROPRIETA’IMPOSTAZIONE DELLE PROPRIETA’: mediante la : mediante la quale si assegnano ai controlli un nome e si definisco attributi quale si assegnano ai controlli un nome e si definisco attributi come il contenuto di un’etichetta, la dimensione del testo, lo come il contenuto di un’etichetta, la dimensione del testo, lo stile e le parole che appaiono su un pulsante di comando o stile e le parole che appaiono su un pulsante di comando o nella barra del titolo del form.nella barra del titolo del form.

SCRITTURA DEL CODICESCRITTURA DEL CODICE: mediante la quale vengono : mediante la quale vengono create e scritte le routine necessarie per potere eseguire il create e scritte le routine necessarie per potere eseguire il progetto. In questa fase è necessario l’utilizzo di istruzioni di progetto. In questa fase è necessario l’utilizzo di istruzioni di programmazione basic per eseguire le azioni richieste dal programmazione basic per eseguire le azioni richieste dal programma.programma.

Segue

Page 8: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

8

In conclusione, il progetto sarà in grado di gestire leIn conclusione, il progetto sarà in grado di gestire le

videocassette di una videoteca e realizzare:videocassette di una videoteca e realizzare:

1.1. La gestione dei noleggi; La gestione dei noleggi;

2.2. La gestione delle tessere;La gestione delle tessere;

3.3. Ordinamento di liste per codice, descrizione, nomi….Ordinamento di liste per codice, descrizione, nomi….

4.4. La gestione di stampe.La gestione di stampe.

ConclusioneConclusione

Page 9: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

9

Le entità che possono essere individuate nel problema sono:

CASSETTE: per gestire le varie videocassette della videoteca;

TESSERE: per rappresentare i dati anagrafici, i dati relativi

all’eventuale abbonamento e le statistiche di noleggio dei clienti;

NOLEGGI: per gestire i noleggi delle videocassette;

GENERE: per gestire i generi delle videocassette;

UTENTE: per gestire i dati dell’utente che utilizza il software.

Descrizione delle entitàDescrizione delle entità

Segue

Page 10: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

10

• Gli attributi dell’entità Cassette sono: codice cassetta, codice a barre, titolo, codice genere, durata, premi oscar, primo attore, secondo attore, regia, distribuzione, anno di uscita, gradimento, colonna sonora, visione, totale cassette a disposizione, cassette noleggiate, numero di noleggi, data inserimento, posizione.

• Gli attributi dell’entità Tessere sono: codice tessera, nominativo, codice fiscale, indirizzo, città, provincia, cap, numero di telefono, tipo documento, abbonato (si/no), data abbonamento, data scadenza, importo abbonamento, cassette noleggiate, numero noleggi, cassette in ritardo, importo noleggi, note.

• Gli attributi dell’entità Gli attributi dell’entità NoleggiNoleggi sono: ID noleggio, codice tessera, sono: ID noleggio, codice tessera, codice cassetta, data noleggio, data restituzione, restituita (Si/No).codice cassetta, data noleggio, data restituzione, restituita (Si/No).

• Gli attributi dell’entità Genere sono: codice genere, genere.• Gli attributi dell’entità Gli attributi dell’entità UtenteUtente sono: utente, indirizzo, cap, sono: utente, indirizzo, cap,

località, provincia, numero di telefono, e-mail, partita iva o codice località, provincia, numero di telefono, e-mail, partita iva o codice fiscale.fiscale.

Segue

Page 11: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

11

• Tra le entità Tra le entità GenereGenere e e CassetteCassette si può stabilire un’associazione si può stabilire un’associazione uno a moltiuno a molti, perché un genere può corrispondere a una o più , perché un genere può corrispondere a una o più videocassette, e molte videocassette possono corrispondere a videocassette, e molte videocassette possono corrispondere a uno stesso genere.uno stesso genere.

• Tra le entità Tra le entità CassetteCassette e e NoleggiNoleggi si può stabilire un’associazione si può stabilire un’associazione uno a moltiuno a molti, perché una cassetta può essere soggetta a diversi , perché una cassetta può essere soggetta a diversi noleggi, e il noleggio può riferirsi a una sola cassetta. noleggi, e il noleggio può riferirsi a una sola cassetta.

• Tra le entità Tra le entità TessereTessere e e Noleggi Noleggi si può stabilire un’associazione si può stabilire un’associazione uno a moltiuno a molti, perché una tessera può essere utilizzata per più , perché una tessera può essere utilizzata per più noleggi, e diversi noleggi possono essere effettuati con una noleggi, e diversi noleggi possono essere effettuati con una tessera.tessera.

Segue

Page 12: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

12

Sulla base dell’analisi effettuata si può disegnare il modello entità\associazioni :

Modello E\R 

Nel modello E/R sono stati indicati i nomi dei versi delle associazioni e l’opzionalità o l’obbligatorietà delle associazioni (indicate rispettivamente dalla linea tratteggiata o continua).

Utilizziamo le regole di derivazione si ottengono le seguenti tabelle:Tessere (Codice tessera, Nominativo, Codice fiscale, Indirizzo, Città, Provincia, Cap, Numero di telefono, Tipo documento, Abbonato (si/no), Data abbonamento, Data scadenza, Importo abbonamento, Cassette noleggiate, Numero noleggi, Cassette in ritardo, Importo noleggi, Note).

Segue

Page 13: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

13

Cassette (Codice cassetta, Codice a barre, Titolo, Codice genere, Durata, Premi oscar, Primo attore, Secondo attore, Regia, Distribuzione, Anno di uscita, Gradimento, Colonna sonora, Visione, Totale cassette a disposizione, Cassette noleggiate, Numero di noleggi, Data inserimento, Posizione).

Tessere (Codice tessera, Nominativo, CF, Indirizzo, Città, Prov, Cap, Telefono, Documento abbonato, Data abbonamento, Data scadenza, Importo abbonamento, Cassette noleggiate, Numero noleggi, Cassette ritardo, Importo noleggi, Note).

Noleggi (ID noleggio, Codice tessera, Codice cassetta, Data noleggio, Data restituzione, Restituita (si/no)).

Genere (Codice genere, Genere.)

Utente (Utente, Indirizzo, Cap, Località, Provincia, Numero di telefono, E-mail, Partita Iva o Codice Fiscale).

Page 14: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

14

AssociazioniAssociazioni

Noleggi

Cassette

Tessere

Genere

Utente

Page 15: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

15

Nome CampoNome Campo Tipo datiTipo dati DimensioneDimensione DescrizioneDescrizione

CodiceCassetta Contatore Intero lungo Chiave Primaria

CodiceBarre Testo 13 Codice per lettore (Chiave esterna)

Titolo Testo 40 Identifica titolo del film

CodiceGenere Numerico Intero lungo Identifica codice genere

Durata Numerico Byte Durata del film

PremiOscar Numerico Byte Oscar ricevuti

PrimoAttore Testo 25 Nome 1° attore

SecondoAttore Testo 25 Nome 2° attore

Regia Testo 40 Nome regista

Distribuzione Testo 40 Casa cinematografica

AnnoUscita Numerico Intero Anno uscita film

Gradimento Testo 5 Identifica gradimento pubblico

ColonnaSonora Testo 30 Autore colonna sonora

Visione Testo 7 Identifica la visione

TotaleCassette Numerico Byte Numero cassette

CassetteNoleggiate Numerico Byte Numero cassette noleggiate

NumNoleggi Numerico Intero Numero totale noleggi

DataInserimento Data/ora Data in cifre Data archiviazione

Posizione Testo 6 Classifica

CassetteCassette

Page 16: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

16

Nome CampoNome Campo Tipo datiTipo dati DimensioneDimensione DescrizioneDescrizione

CodiceTessera Contatore Intero lungo Chiave Primaria

Nominativo Testo 40 Nome e cognome

CF Testo 16 Codice fiscale

Indirizzo Testo 25 Indirizzo cliente

Citta Testo 25 Sede cliente

Prov Testo 2 Provincia cliente

CAP Testo 5 Codice avviamento postale

Telefono Testo 15 Telefono cliente

Documento Testo 20 Numero identità cliente

Abbonato Si/No Logico

DataAbbonamento Data/ora Data in cifre Data abbonamento cliente

DataScadenza Data/ora Data in cifre Data scadenza abbonamento

ImportoAbbonamento Valuta Euro Prezzo abbonamento

CassetteNoleggiate Numerico Byte Numero cassette noleggiate

NumeroNoleggi Numerico Byte Totale noleggi

CassetteRitardo Numerico Byte Numero cassette da restituire

ImportoNoleggi Valuta Euro Totale importo noleggiate

Note Memo Memo Promemoria

TessereTessere

Page 17: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

17

Nome CampoNome Campo Tipo datiTipo dati DimensioneDimensione DescrizioneDescrizione

IDNoleggio Contatore Intero lungo Chiave primaria

CodiceTessera Numerico Intero lungo Codice tessera utente(Chiave esterna)

CodiceCassetta Testo 6 Codice videocassetta

DataNoleggio Data/ora Data in cifre Data noleggio

DataRestituzione Data/ora Data in cifre Data restituzione

Restituita Si/No Si: Cassetta restituita

No:Cassetta da restituire

Nome CampoNome Campo Tipo datiTipo dati DimensioneDimensione DescrizioneDescrizione

CodiceGenere Contatore Intero lungo Chiave primaria

Genere Testo 20 Identifica genere film

NoleggiNoleggi

GeneriGeneri

Page 18: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

18

Nome CampoNome Campo Tipo datiTipo dati DimensioneDimensione DescrizioneDescrizione

Utente Testo 40 Nome utente

Indirizzo Testo 25 Indirizzo utente

Cap Testo 5 Codice avv. postale

Localita Testo 25 Residenza utente

Prov Testo 2 Provincia utente

Telefono Testo 15 Telefono utente

E-mail Testo 20 E-mail dell’utente

PartitaIvaCF Testo 16 P.I. o Codice Fiscale

UtenteUtente

Page 19: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

19

InterfacceInterfacceForm Menù PrincipaleForm Menù Principale

Page 20: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

20

Form CassetteForm Cassette

Page 21: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

21

Form TessereForm Tessere

Page 22: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

22

Form NoleggiForm Noleggi

Page 23: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

23

Form GeneriForm Generi

Page 24: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

24

Form UtenteForm Utente

Page 25: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

25

Codice (Form Utente)Codice (Form Utente) Private Sub Form_Load()

Const grigio = &H8000000F

‘collega il database all’oggetto data control

datUtente.DatabaseName = App.Path & "\dbVideotecaPrec.mdb"

datUtente.RecordSource = "tblUtente"

datUtente.Refresh

'centra il form nello schermo

frmUtenti.Top = (Screen.Height - frmUtenti.Height) / 2

frmUtenti.Left = (Screen.Width - frmUtenti.Width) / 2

For Ind = 1 To 8

txtUtente(Ind).BackColor = grigio

txtUtente(Ind).Enabled = False

Next Ind

VisualizzaRecord

End Sub

Private Sub txtUtente_GotFocus(Index As Integer)

'sfondo giallo per il text in uso

txtUtente(Index).BackColor = vbYellow

End Sub

Private Sub txtUtente_LostFocus(Index As Integer)

'sfondo bianco per i text non in uso

txtUtente(Index).BackColor = vbWhite

End Sub

Private Sub txtUtente_Validate(Index As Integer, Cancel As Boolean)

Select Case Index

Case 3

If Not IsNumeric(txtUtente(Index).Text) Then

MsgBox "Attenzione: Inserire solo numeri"

txtUtente(Index).Text = ""

Cancel = True

End If

End Select

End Sub

Page 26: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

26

Codice (Form Cassette)Codice (Form Cassette) Private Sub RegistraRecord()

Dim Ind As Byte

For Ind = 0 To 14

If Len(txtCampo(Ind).Text) = 0 Then

MsgBox "Inserire campo", vbOKOnly + vbExclamation, "Campo mancante"

txtCampo(Ind).SetFocus

Exit Sub

End If

Next Ind

datVideocassette.Recordset.AddNew

AssegnaCampi

datVideocassette.Recordset.Update

PulisciMaschera

datVideocassette.Recordset.MoveLast

txtCampo(0).Text = datVideocassette.Recordset("CodiceCassetta") + 1

txtCampo(1).SetFocus

End Sub

Private Sub PulisciMaschera()

Dim Ind As Byte

For Ind = 0 To 16

txtCampo(Ind).Text = ""

Next Ind

lblcampo(18).Caption = ""

End Sub

Private Sub RicercaRecord()

datVideocassette.Recordset.Index = "PrimaryKey"

datVideocassette.Recordset.Seek "=", CLng(txtCampo(0).Text)

If datVideocassette.Recordset.NoMatch Then

MsgBox " Codice cassetta inesistente", vbOKOnly + vbExclamation

txtCampo(0).SetFocus

Else

VisualizzaRecord

RicercaRecordGenere

End If

End Sub

Page 27: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

27

Codice (Form Tessere)Codice (Form Tessere) Private Sub RicercaRecord()

datTessere.Recordset.Index = "PrimaryKey"

datTessere.Recordset.Seek "=", CLng(txtCampo(0).Text)

If datTessere.Recordset.NoMatch Then

MsgBox "Codice Tessera inesistente!", vbOKOnly + vbExclamation, "ATTENZIONE!"

txtCampo(0).Text = ""

txtCampo(0).SetFocus

Else

VisualizzaRecord

End If

End Sub

Private Sub VisualizzaRecord()

txtCampo(0).Text = datTessere.Recordset("CodiceTessera")

txtCampo(1).Text = datTessere.Recordset("Nominativo")

txtCampo(7).Text = datTessere.Recordset("CF")

txtCampo(2).Text = datTessere.Recordset("Indirizzo")

txtCampo(3).Text = datTessere.Recordset("CAP")

txtCampo(4).Text = datTessere.Recordset("Citta")

txtCampo(5).Text = datTessere.Recordset("Prov")

txtCampo(6).Text = datTessere.Recordset("Telefono")

txtCampo(8).Text = datTessere.Recordset("Documento")

txtCampo(9).Text = datTessere.Recordset("ImportoAbbonamento")

txtCampo(10).Text = datTessere.Recordset("NumeroNoleggi")

dtpDataScadenza.Value = datTessere.Recordset("DataScadenza")

dtpDataIscrizione.Value = datTessere.Recordset("DataAbbonamento")

txtCampo(11).Text = datTessere.Recordset("CassetteRitardo")

txtCampo(12).Text = datTessere.Recordset("ImportoNoleggi")

txtCampo(13).Text = datTessere.Recordset("Note")

End Sub

Private Sub RegistraRecord()

Dim Ind As Byte

For Ind = 0 To 12

If Len(txtCampo(Ind).Text) = 0 Then

MsgBox "Inserire campo", vbOKOnly , "Dati mancanti"

txtCampo(Ind).SetFocus

Exit Sub

End If

Next Ind

datTessere.Recordset.AddNew

AssegnaCampi

datTessere.Recordset.Update

PulisciMaschera

datTessere.Recordset.MoveLast

txtCampo(0).Text = datTessere.Recordset("CodiceTessera") + 1

txtCampo(1).SetFocus

End Sub

Page 28: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

28

Codice (Form Noleggi)Codice (Form Noleggi) Private Sub ModificaNoleggio()

Const Bianco = vbWhite

Dim Ind As Byte

For Ind = 0 To 2

txtCampo(Ind).Enabled = True

txtCampo(Ind).BackColor = Bianco

Next Ind

For Ind = 0 To 2

cmdLista(Ind).Enabled = True

Next Ind

dtpDataNoleggio.Enabled = True

dtpDataRestituzione.Enabled = True

optNoleggio.Enabled = True

optRestituzione.Enabled = True

chkRestituita.Enabled = True

txtCampo(0).SetFocus

End Sub

Private Sub AssegnaCampi()

datNoleggi.Recordset("CodiceTessera") = CLng(txtCampo(1).Text)

datNoleggi.Recordset("CodiceCassetta") = CLng(txtCampo(2).Text)

datNoleggi.Recordset("DataNoleggio") = dtpDataNoleggio.Value

datNoleggi.Recordset("DataRestituzione") = dtpDataRestituzione.Value

datNoleggi.Recordset("Restituita") = CBool(chkRestituita.Value)

End Sub

Private Sub AggiornaRecord()

datNoleggi.Recordset.Edit

AssegnaCampi

datNoleggi.Recordset.Update

PulisciMaschera

End Sub

Private Sub RicercaRecord()

datNoleggi.Recordset.Index = "Primarykey"

datNoleggi.Recordset.Seek "=", CLng(txtCampo(0).Text)

If datNoleggi.Recordset.NoMatch Then

MsgBox "Codice Noleggio non trovato!", vbOKOnly + vbExclamation

txtCampo(0).Text = ""

txtCampo(0).SetFocus

Else

VisualizzaRecord

RicercaRecordTessere

RicercaRecordCassetta

End If

End Sub

Page 29: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

29

Codice (Form Genere)Codice (Form Genere) Private Sub cmdListaGeneri_Click()

CodiceRicerca = 0

frmListaGeneri.Show 1

If (CodiceRicerca > 0) Or (CodiceRicerca <> 0) Then

txtCampo(0).Text = CodiceRicerca

RicercaRecord

Else

txtCampo(0).Text = ""

txtCampo(0).SetFocus

End If

End Sub

Private Sub cmdModifica_Click()

Dim Ind As Byte

ImpostazioniComandi

lblAzione.Caption = "Modifica"

cmdOk.ToolTipText = "Conferma modifica"

cmdListaGeneri.Enabled = True

For Ind = 0 To 1

txtCampo(Ind).BackColor = vbWhite

txtCampo(Ind).Enabled = True

Next Ind

txtCampo(0).SetFocus

End Sub

Private Sub cmdNuovo_Click()

Const grigio = &HC0C0C0

Dim Ind As Byte

ImpostazioniComandi

For Ind = 0 To 1

txtCampo(Ind).BackColor = vbWhite

txtCampo(Ind).Enabled = True

Next Ind

txtCampo(1).SetFocus

lblAzione.Caption = "Nuovo"

cmdOk.ToolTipText = "Nuovo"

cmdListaGeneri.Enabled = False

txtCampo(0).Enabled = False

txtCampo(0).BackColor = grigio

datGeneri.Recordset.OpenRecordset

If (datGeneri.Recordset.BOF) And (datGeneri.Recordset.EOF) Then

txtCampo(0).Text = 1

Else

datGeneri.Recordset.MoveLast

txtCampo(0).Text = datGeneri.Recordset("CodiceGenere")

End If

End Sub

Page 30: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

30

Gruppi di lavoroGruppi di lavoro Primo gruppoPrimo gruppo

Secondo gruppoSecondo gruppo

Terzo gruppoTerzo gruppo

Quarto gruppoQuarto gruppo

Quinto gruppoQuinto gruppo

Rossi Francesco

Verdi Giulio

Serri Marinella

Impastato Gino

Medico Giuseppe

Campo Elisa

Conte Paolo

Mancini Alberto

Reale Carla

Vinci Enzo

Palermo Andrea

Di Marco Daniele

Fantini Laura

Marino Stefano

Bellini Francesco

Serra Pierangelo

Quintini Angelo

Gentile Mariella

Marchese Giusy

Page 31: 1 PROGRAMMARE IN VISUAL BASIC Prof. F. Di Gerlando Gestione di una Videoteca Classe V Programmatori I.T.C. Don M. Arena Sciacca Anno Scolastico 2002-2003.

Premi ESC per uscire