Basic
<<     >>
PROGRAMMARE IN VISUAL BASIC
PROGRAMMARE IN VISUAL BASIC
GESTIONE DI UNA VIDEOTECA
GESTIONE DI UNA VIDEOTECA
Introduzione
Introduzione
Nel realizzare tale gestione
Nel realizzare tale gestione
Per la gestione delle videocassette e dei dati dei clienti vengono
Per la gestione delle videocassette e dei dati dei clienti vengono
Dopo aver terminato la fase di modellazione dei dati, si pu
Dopo aver terminato la fase di modellazione dei dati, si pu
Per gestire la videoteca attraverso tale linguaggio
Per gestire la videoteca attraverso tale linguaggio
Conclusione
Conclusione
Descrizione delle entit
Descrizione delle entit
Gli attributi dellentit
Gli attributi dellentit
Tra le entit
Tra le entit
Sulla base dellanalisi effettuata si pu
Sulla base dellanalisi effettuata si pu
Cassette (Codice cassetta, Codice a barre, Titolo, Codice genere,
Cassette (Codice cassetta, Codice a barre, Titolo, Codice genere,
Associazioni
Associazioni
Cassette
Cassette
Tessere
Tessere
Noleggi
Noleggi
Utente
Utente
Interfacce
Interfacce
Form Cassette
Form Cassette
Form Tessere
Form Tessere
Form Noleggi
Form Noleggi
Form Generi
Form Generi
Form Utente
Form Utente
Codice (Form Utente)
Codice (Form Utente)
Codice (Form Cassette)
Codice (Form Cassette)
Codice (Form Tessere)
Codice (Form Tessere)
Codice (Form Noleggi)
Codice (Form Noleggi)
Codice (Form Genere)
Codice (Form Genere)
Gruppi di lavoro
Gruppi di lavoro
The End
The End

: PROGRAMMARE IN VISUAL BASIC. : Prof. Di Gerlando. : PROGRAMMARE IN VISUAL BASIC.PPT. zip-: 789 .

PROGRAMMARE IN VISUAL BASIC

PROGRAMMARE IN VISUAL BASIC.PPT
1 PROGRAMMARE IN VISUAL BASIC

PROGRAMMARE IN VISUAL BASIC

Progetto Docente

Gestione di una Videoteca

Prof. F. Di Gerlando

Classe V Programmatori

Anno Scolastico 2002-2003

I.T.C. Don M. Arena

Sciacca

1

2 GESTIONE DI UNA VIDEOTECA

GESTIONE DI UNA VIDEOTECA

Progetto

Interfacce

Codice

Presentazione

Modellazione

2

3 Introduzione

Introduzione

Presentazione del Progetto GESTIONE DI UNA VIDEOTECA Il progetto software qui presentato ha come oggetto la gestione di una videoteca. Lidea di realizzare questo progetto ? nata dallimportanza che lautomazione delle informazioni ha subito nellultimo decennio. Per cui profondi mutamenti si sono avuti in buona parte grazie allevoluzione della tecnologia informatica, ma anche grazie allesigenza di predisporre di flussi informativi pi? precisi, tempestivi, completi e soprattutto inseriti in un sistema integrato.

Segue

3

4 Nel realizzare tale gestione

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 lutilizzo di un sistema di gestione di basi di dati nella fattispecie lambiente software Microsoft Access attraverso questultimo ? possibile creare cinque tabelle e cio? degli schemi secondo cui saranno organizzati i dati allinterno del database.

Segue

4

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: Tessere: per rappresentare i dati anagrafici, i dati relativi alleventuale abbonamento e le statistiche di noleggio dei clienti; Genere: per gestire i generi delle videocassette; Cassette: per gestire le varie videocassette della videoteca; Noleggi: per gestire i noleggi delle videocassette; Utente: per gestire i dati dellutente che utilizza il software.

Segue

5

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 e basato sugli eventi: Visual Basic. Tale linguaggio ormai ? utilizzato in tutti gli ambienti di lavoro, anche scolastici in cui anche gli alunni si cimentano nel corso dellultimo anno. Esso ? in grado di leggere i formati appartenenti a molti tipi di database e creare interfacce che facilitano linterattivit? tra lutente e la macchina.

Segue

6

7 Per gestire la videoteca attraverso tale linguaggio

Per gestire la videoteca attraverso tale linguaggio

necessario pianificare il lavoro in tre fasi: CREAZIONE DELLINTERFACCIA UTENTE: mediante la quale viene progettata la parte grafica inserendo allinterno di finestre (form) una serie di controlli per linserimento, la visualizzazione, la modifica e la cancellazione dei record. IMPOSTAZIONE DELLE PROPRIETA: mediante la quale si assegnano ai controlli un nome e si definisco attributi come il contenuto di unetichetta, la dimensione del testo, lo stile e le parole che appaiono su un pulsante di comando o nella barra del titolo del form. SCRITTURA DEL CODICE: mediante la quale vengono create e scritte le routine necessarie per potere eseguire il progetto. In questa fase ? necessario lutilizzo di istruzioni di programmazione basic per eseguire le azioni richieste dal programma.

Segue

7

8 Conclusione

Conclusione

In conclusione, il progetto sar? in grado di gestire le videocassette di una videoteca e realizzare: La gestione dei noleggi; La gestione delle tessere; Ordinamento di liste per codice, descrizione, nomi. La gestione di stampe.

8

9 Descrizione delle entit

Descrizione delle entit

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 alleventuale 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 dellutente che utilizza il software.

Segue

9

10 Gli attributi dellentit

Gli attributi dellentit

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. ? 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. ? Noleggi sono: ID noleggio, codice tessera, codice cassetta, data noleggio, data restituzione, restituita (Si/No). ? Genere sono: codice genere, genere. ? Utente sono: utente, indirizzo, cap, localit?, provincia, numero di telefono, e-mail, partita iva o codice fiscale.

Segue

10

11 Tra le entit

Tra le entit

Genere e Cassette si pu? stabilire unassociazione uno a molti, perch? un genere pu? corrispondere a una o pi? videocassette, e molte videocassette possono corrispondere a uno stesso genere. ? Cassette e Noleggi si pu? stabilire unassociazione uno a molti, perch? una cassetta pu? essere soggetta a diversi noleggi, e il noleggio pu? riferirsi a una sola cassetta. ? Tessere e Noleggi si pu? stabilire unassociazione uno a molti, perch? una tessera pu? essere utilizzata per pi? noleggi, e diversi noleggi possono essere effettuati con una tessera.

Segue

11

12 Sulla base dellanalisi effettuata si pu

Sulla base dellanalisi 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 lopzionalit? o lobbligatoriet? 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

12

13 Cassette (Codice cassetta, Codice a barre, Titolo, Codice genere,

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).

13

14 Associazioni

Associazioni

Cassette

Genere

Noleggi

Tessere

Utente

14

15 Cassette

Cassette

15

Nome Campo

Tipo dati

Dimensione

Descrizione

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

16 Tessere

Tessere

Nome Campo

Tipo dati

Dimensione

Descrizione

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

16

17 Noleggi

Noleggi

Generi

IDNoleggio

CodiceGenere

Contatore

Intero lungo

Chiave primaria

CodiceTessera

Numerico

Intero lungo

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

Contatore

Intero lungo

Chiave primaria

Genere

Testo

20

Identifica genere film

Nome Campo

Tipo dati

Dimensione

Descrizione

Codice tessera utente(Chiave esterna)

Nome Campo

Tipo dati

Dimensione

Descrizione

17

18 Utente

Utente

Utente

Testo

40

Nome utente

Indirizzo

Testo

25

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 dellutente

PartitaIvaCF

Testo

16

P.I. o Codice Fiscale

Nome Campo

Tipo dati

Dimensione

Descrizione

Indirizzo utente

18

19 Interfacce

Interfacce

Form Men? Principale

19

20 Form Cassette

Form Cassette

20

21 Form Tessere

Form Tessere

21

22 Form Noleggi

Form Noleggi

22

23 Form Generi

Form Generi

23

24 Form Utente

Form Utente

24

25 Codice (Form Utente)

Codice (Form Utente)

25

Private Sub Form_Load() Const grigio = &H8000000F collega il database alloggetto 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

26 Codice (Form Cassette)

Codice (Form Cassette)

26

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

27 Codice (Form Tessere)

Codice (Form Tessere)

27

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

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

28 Codice (Form Noleggi)

Codice (Form Noleggi)

28

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

29 Codice (Form Genere)

Codice (Form Genere)

29

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

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

30 Gruppi di lavoro

Gruppi di lavoro

Primo gruppo

Quarto gruppo

Terzo gruppo

Secondo gruppo

Quinto gruppo

Rossi Francesco Verdi Giulio Serri Marinella

Di Marco Daniele Fantini Laura Marino Stefano Bellini Francesco

Mancini Alberto Reale Carla Vinci Enzo Palermo Andrea

Impastato Gino Medico Giuseppe Campo Elisa Conte Paolo

Serra Pierangelo Quintini Angelo Gentile Mariella Marchese Giusy

30

31 The End

The End

Premi ESC per uscire

PROGRAMMARE IN VISUAL BASIC
http://900igr.net/prezentacija/informatika/programmare-in-visual-basic-199797.html
c

130
900igr.net > > Basic > PROGRAMMARE IN VISUAL BASIC