Sviluppare un DB step by step Creare un nuovo database Per prima cosa creiamo un nuovo DB vuoto Access di default salverà il db dandogli come nome Database 1 se è già presente un file con tale nome Database 2 e così via.. Il file verrà salvato nella cartella Documenti dell’utente corrente. Oggetti Avremo a che fare con i seguenti oggetti: Table (TabelIe) Query (Interrogazioni) Form (Maschere) Report (Rapporti) Macro Tabelle Le tabelle rappresentano la struttura del database Possiamo creare la tabelle in diverse maniere: In visualizzazione tabelle tramite modelli predefiniti in visualizzazione Struttura. Creiamo una tabella in Visualizzazione Struttura Denominandola “Rubrica” Tabella Rubrica Creiamo i seguenti campi: IdRubrica, Cognome, Nome, Email, DataNascita, Indirizzo, NumeroCivico, Città, CAP. Rispettivamente di tipo Contatore, testo, testo, testo, data/ora, testo, testo, testo, data/ora, numerico. Opzioni campo testo Per ogni campo possiamo impostare le opzioni Per il campo testo potremmo cambiare la dimensione massima oppure indicare se il campo è necessario o meno. Opzioni campo data/ora Per il campo data/ora potremmo impostare il formato come “data in cifre”. Opzioni campo data/ora Inoltre possiamo impostare la maschera di input che ci aiuterà nella immissione dei dati così come visualizzato nel campo prova. Tabella Opzioni Analogamente come fatto per rubrica creiamo una tabella denominata “ambito” con un solo campo “opzioni” di tipo testo: In visualizzazione Foglio dati inseriamo i seguenti valori: casa, ufficio, fax, cell, cell 2. Tabella Telefono Creiamo ora una tabella denominata “telefono” con seguenti campi: IdTelefono : Chiave di tipo contatore IdRubrica : Numerico Ambito : che prenderà i valori contenuti nella tabella precedentemente creata. Numero: testo 16 caratteri (es. 0039 333 1234567) Per creare un campo con dei valori predefiniti clicchiamo su ricerca guidata e seguiamo i passi della procedura guidata. Scegliamo la tabella dalla quale prendere i valori e in particolare il campo. Se visualizzarli in ordine crescente e vediamo l’anteprima, Diamo il nome al campo appena creato “Ambito” e scegliamo di salviamo le relazioni. Quando andremo nel foglio dati relativo alla tabella telefono il campo ambito sarà a scelta tra quelli inseriti nella tabella “Ambito” campo “Opzioni” Relazioni Riempiamo la tabella “Rubrica” e al tabella “Telefono”. Se vogliamo inserire uno o più telefoni relativi ad un contatto presente nella tabella rubrica, nella tabella telefono dobbiamo avere lo stesso IDRubrica. Ovviamente questa operazione è semplice da ricordare se abbiamo pochi contatti, quasi impossibile se sono molti. Per fare in modo che sia Access a gestire questo “accoppiamento” dobbiamo creare le “Relazioni”. Relazioni Nella scheda Strumenti Database selezioniamo l’icona “Relazioni”. Relazioni Troviamo una relazione già fatta. Aggiungiamo la tabella “Rubrica” Relazioni Mettiamo in relazione il campo “IDRubrica” della tabella “Rubrica” col campo “IDRubrica” della tabella “Telefono” Applichiamo l’integrità referenziale Aggiorna campi correlati a catena Elimina record correlati a catena Relazioni Ecco il risultato finale: Ad ogni record della tabella Rubrica ne possono corrispondere diversi della tabella Telefono Il campo Ambito della tabella Telefono prende i valori dal campo opzioni della tabella Ambito Query Le Query sono strumenti che ci permettono di interrogare il Database Possono recuperare i dati da una sola tabella o da più tabelle. Creeremo 2 query mediante la “Struttura query”: Ricerca di tutti i contatti di una determinata città “RicercaCittà” Ricerca di tutti i recapiti telefonici di un contatto “RicercaContatti” RicercaCittà Creiamo la query specificando le opzioni come sotto: RicercaCittà La stessa query vista in SQL RicercaContatti Creiamo la query specificando le opzioni come riportato in figura: Aggiunta Dati Popoliamo il nostro database, aggiungendo una decina di contatti (magari di almeno 2 città distinte) Per ognuno di essi inseriamo 2 o più numeri telefonici Così facendo potremo testare il funzionamento delle query appena create. Maschere Le maschere sono la “visualizzazione grafica” basata su tabelle e query Inoltre nella maschera possiamo specificare la natura delle operazione da apportare sui dati: Inserimenti Modifica Cancellazione Maschere Creeremo le seguenti maschere: VisualizzaContatto (dove non saranno consentite modifiche ne inserimenti di nuovi record) Modifica Contatto (sarà possibile modificare i singoli campi o cancellare il record, ma non inserirne di nuovi) Inserimento Contatto Ricerca Per Città Ricerca Per Cognome Menù Maschere Questa maschera ci servirà per visualizzare ogni singolo contatto Sono diverse le modalità di creazione di una maschera tra cui: Maschera Maschera divisa Più elementi Maschera Vuota Creazione Guidata Maschere Maschera crea una maschera dove sarà possibile inserire un singolo record della tabella collegata, nel caso in cui ci sia una relazione 1 a ∞ creerà una sottomaschera Maschera divisa contemporaneamente visualizza una maschera “grafica” e la corrispondente in foglio dati Più elementi crea una maschera detta “tabulare” Maschera Vuota crea una maschera vuota dove saremo noi ad aggiungere i vari elementi (bottoni, etichette, campi testo, ecc.ecc.) Creazione Guidata parte una procedura guidata che ci aiuta nella creazione della maschera Maschera in autocomposizione Selezioniamo la tabella rubrica e su crea clicchiamo sull’icona maschera Scegliamo di aprire la tabella in visualizzazione struttura per apportare modifiche Modifiche Maschera Possiamo modificare le proprietà dei singoli oggetti Inserire nuovi oggetti manualmente o in autocomposizione Modificare le proprietà della scheda opzioni Per qualsiasi elemento della maschera e per la maschera stessa troviamo le seguenti schede: Formato opzioni relative all’aspetto Dati opzioni relative al contenuto Evento opzioni relative all’interaggire con l’elemento Altro opzioni proprie dell’oggetto Tutte tutte le opzioni Campi etichette e testo Selezioniamo l’etichetta “Rubrica” nell’intestazione della maschera Tasto destro del mouse proprietà Alcune opzioni delle Etichette Cambiamo l’etichetta da rubrica a scheda Il colore da testo scuro a rosso Il font da Segoe UI a Times La dimensione da 18 a 24 Possiamo cambiare altre caratteristiche come le dimensioni, bordi, colore sfondo ecc.ecc. Opzioni delle selezioni multiple Quando selezioniamo più oggetti nelle proprietà visualizziamo solo quelle comuni a tutti Selezioniamo il campo “IdRubrica” e la relativa etichetta Nella scheda formato settiamo visibile a “no” Vedremo in seguito perché non li abbiamo cancellati !! Approfondimenti La scheda appena creata presenta una parte grafica ed una parte tabellare (quella relativa ai numeri di telefono) Volendo potremmo modificare la parte tabellare sostituendola con una grafica creando una scheda relativa ai numeri di telefono Maschera VisualizzaNumeri Selezioniamo la tabella Telefono e clicchiamo sul menù crea › maschera › più elementi Scheda Telefono Ecco la scheda ottenuta: Nella Scheda Visualizza: Eliminiamo l’oggetto sottomaschera/sottoreport Inseriamo nuovamente un oggetto sottomaschera/sottoreport ma questa volta con la maschera appena creata Scegliamo la maschera telefono Scegliamo mostra telefono per ogni record in rubrica che usa IdRubrica Nella maschera Visualizza e nella maschera telefono impostiamo: visualizza selettori di record : no Barre scorrimento : no pulsanti di spostamento : no Nella maschera telefono non visualizziamo ne IdTelefono ne IdRubrica e le rispettive etichette Modifichiamo il layout della maschera visualizza per massimizzare le informazioni visualizzate per far ciò dobbiamo sbloccare il layout come spiegato nella prox slide. Dalla scheda disponi Selezioniamo i campi Clicchiamo su rimuovi (per poterli spostare liberamente nella scheda) Sia nella maschera Visualizza sia nella maschera telefono impostiamo: Consenti aggiunte : no Consento eliminazioni : no Consenti modifiche : no Così facendo la maschera sarà di sola visualizzazione Scheda Visualizza completa Scheda ModificaContatto In sostanza si tratta di creare una scheda simile alla precedente ma dove è possibile modificare i campi Facciamo una copia della scheda VisualizzaContatto Rinominiamola in ModificaContatto Apriamola in Visualizza Struttura Nella proprietà della maschera nella scheda dati settiamo consenti modifiche “si” Salviamo e chiudiamo la scheda appena modificata Colleghiamo le maschera Apriamo la maschera Visualizza contatto in visualizzazione struttura Creiamo un pulsante (il bottone bacchetta magica deve essere attivo) Colleghiamo le maschera Scegliamo Operazioni tra maschere Apri maschera Colleghiamo le maschera Scegliamo la maschera ModificaContatto Selezioniamo Apri maschera e trova dati specifici da visualizzare Colleghiamo le maschera Mettiamo in corrispondeza IdRubrica di VisualizzaContatto con IdRubrica di ModificaContatto Concludiamo la procedura Inserimento Contatto Procediamo come in preceenza Facciamo una copia della scheda VisualizzaContatto Rinominiamola in InserisciContatto Apriamola in Visualizza Struttura Nella proprietà della maschera nella scheda dati settiamo consenti aggiunte“si” Salviamo e chiudiamo la scheda appena modificata La scheda così fatta consente l’immissione di nuovi record Vorremmo però che tale scheda in apertura si vada a posizionare sull’ultima posizione (quella per gli inserimenti) Non avendo conoscenza di programmazione possiamo procedere nella seguente maniera Creazione di una macro Sulla scheda InserisciContatto in visualizzazione struttura creiamo un pulsante Operazioni su record Aggiungi nuovo record Concludiamo la procedura guidata Nel pulsante appena creato Andiamo nella scheda evento e su clic troviamo [macro incorporata] Creazione di una macro Facciamo clic su “…” Salviamo la macro con nome InserisciContatto Macro richiamata all’apertura Così facendo abbiamo creato una macro che possiamo richiamare in qualsiasi momento Andiamo nelle proprietà della maschera Nella scheda evento Su caricamento Dal menù a cascata richiamiamo la macro appena creata Possiamo cancellare il pulsante creato in precedenza Ultimi aggiustamenti La maschera appena creata ci consente si creare un contatto Non ci consente di inserire numeri telefonici… Per risolvere dobbiamo creare una copia della maschera telefono Abilitare l’immissione dati E sostituirla nella maschera inserisciContatto alla sottomaschera/sottoreport Ricerca per città Creiamo una maschera a più elementi a partire dalla query ricercacittà Nella maschera in visualizza struttura mettiamo Consenti modifiche a no Consenti aggiunte a no Eliminiamo i selettori di record e i pulsanti di spostamento Rendiamo non visibile IdRubrica e la relativa etichetta Mettiamo un pulsante per aprire la scheda VisualizzaContatto mettendo in Relazione IdRubrica di ciascuna maschera Query RicercaCognome Creiamo una query Ricerca cognome come mostrato in figura: Ricerca per cognome Creiamo una maschera a più elementi a partire dalla query RicercaCognome Nella maschera in visualizza struttura mettiamo Consenti modifiche a no Consenti aggiunte a no Eliminiamo i selettori di record e i pulsanti di spostamento Rendiamo non visibile IdRubrica e la relativa etichetta Mettiamo un pulsante per aprire la scheda VisualizzaContatto mettendo in Relazione IdRubrica di ciascuna maschera Pulsante Chiudi maschera Per ogni maschera potremmo aggiungere un pulsante di chiusura come illustrato in figura: Creiamo il menù Partendo da una maschera vuota: Inseriamo etichette e pulsanti per aprire le maschere create in precedenza. Creiamo un pulsante per chiudere l’applicazione Query RicercaTutti Creiamo una query come illustrato in figura: Creazione di un report Creiamo un report a patire dalla query ricercatutti Utilizziamo la creazione guidata report Creazione di un report Scegliamo di ordinare in base alla tabella rubrica Creazione di un report Scegliamo di aggiungere un livello basato sul campo città Creazione di un report Scegliamo di ordinare ulteriormente in all’ambito Creazione di un report Scegliamo il layout Creazione di un report Ecco il risultato! Potremmo rendere non visibile l’idRubrica e allargare il campo Città Completiamo il menù Aggiungiamo un pulsante per stampare tutti i contatti Utilizziamo il pulsante operazioni su report apri report Maschera Menù La maschera del menù dovrebbe così apparire! Macro Autoexec Per completare il nostro lavoro potremmo creare una macro che chiameremo “Autoexec” che: apre la maschera menù Ingrandisce la dimensione di tutte le maschere