Appunti del Prof. Giuseppe Di Capua MODULO 5 PROGRAMMA DI DATA BASE MICROSOFT ACCESS 2007 Prof. Giuseppe Di Capua INDICE 1 CONCETTI DI BASE SUI DATABASE ............................................................................3 1.1 1.2 1.3 2 PRIMI PASSI CON MICROSOFT ACCESS ....................................................................8 2.1 2.2 2.3 2.4 2.5 2.6 3 DATABASE E DBMS ............................................................................................................3 CHIAVE PRIMARIA ............................................................................................................6 INDICE ..............................................................................................................................8 OGGETTI DI MICROSOFT ACCESS ....... ERRORE. IL SEGNALIBRO NON È DEFINITO. APRIRE E CHIUDERE MICROSOFT ACCESS .... ERRORE. IL SEGNALIBRO NON È DEFINITO. APRIRE UN DATABASE ESISTENTE ...................................................................................13 CREARE E SALVARE UN NUOVO DATABASE .....................................................................16 CHIUDERE UN DATABASE................................................................................................20 GUIDA IN LINEA ..............................................................................................................20 TABELLE ............................................................................................................................24 3.1 3.2 CREARE UNA NUOVA TABELLA ......................................................................................24 VISUALIZZAZIONE STRUTTURA E FOGLIO DATI DI UNA TABELLA ................... ERRORE. IL SEGNALIBRO NON È DEFINITO. 3.3 AGGIORNARE DATI ALL’INTERNO DI UNA TABELLA ...... ERRORE. IL SEGNALIBRO NON È DEFINITO. 3.4 AGGIORNARE LA STRUTTURA DI UNA TABELLA ............. ERRORE. IL SEGNALIBRO NON È DEFINITO. 3.5 RELAZIONI TRA TABELLE ................................................................................................30 4 MASCHERE ........................................................................................................................33 4.1 4.2 4.3 5 CREARE UNA MASCHERA ................................................................................................33 MODIFICARE, INSERIRE ED ELIMINARE RECORD ATTRAVERSO MASCHERE ......................40 MODIFICARE UNA MASCHERA .........................................................................................40 CERCARE INFORMAZIONI ...........................................................................................44 UTILIZZARE I COMANDI TROVA E CERCA ......... ERRORE. IL SEGNALIBRO NON È DEFINITO. 5.2 APPLICARE FILTRI A TABELLE E MASCHERE .. ERRORE. IL SEGNALIBRO NON È DEFINITO. 5.3 LE QUERY .......................................................................................................................51 5.4 CREARE QUERY CON CRITERI SEMPLICI...........................................................................52 5.4 CARATTERI JOLLY ..........................................................................................................52 5.1 6 GENERARE REPORT .......................................................................................................61 6.1 6.2 7 PREPARAZIONE ALLA STAMPA .................................................................................70 7.1 7.2 2 CREARE UN REPORT ...................................... ERRORE. IL SEGNALIBRO NON È DEFINITO. MODIFICARE UN REPORT................................................................................................67 ANTEPRIMA DI STAMPA ................................. ERRORE. IL SEGNALIBRO NON È DEFINITO. STAMPARE .................................................... ERRORE. IL SEGNALIBRO NON È DEFINITO. 1 Concetti di base sui Database In qualsiasi modello di organizzazione la quantità dei dati disponibili sia per il management che per l’utenza finale è sempre più numerosa e pertanto si fa sempre più pressante la necessità ed il bisogno del trattamento dei dati allo scopo di ottenere facilmente ed in tempi rapidi informazioni utili ed immediate. Lo schema riprodotto nella fig. 5.1.1 sintetizza ciò: i dati costituiscono l’input (immissione) del processo elaborativo; l’informazione si può anche identificare come il risultato dell’elaborazione. DATI ELABORAZIONE INFORMAZIONI (Figura 5.1.1) Elaborazione dati e informazione A ben vedere, la necessità di raccogliere informazioni era già avvertita prima che si sviluppasse l’informatica. Attraverso l’informatica si sono realizzati strumenti veloci ed affidabili per la gestione di grandi quantità di tali informazioni. Basti pensare alle informazioni necessarie per gestire l’anagrafica di un comune o i dati contabili di un’azienda. In una struttura aziendale non è però sufficiente raccogliere dati ed informazioni: essi devono essere organizzati in modo da consentirne una efficiente ed efficace gestione, peraltro in modo semplice. Inoltre, è necessario avere la possibilità di analizzare in modo semplice e efficace le informazioni raccolte. Per realizzare questi obiettivi, in campo informatico, è nato un settore specialistico dell’informatica, detto Database o Base di dati. 1.1 Definizioni di database Una prima definizione di data base potrebbe essere: Un database o base di dati è una raccolta coordinata ed integrata di dati, progettata e organizzata in modo che i dati siano fruibili in modo semplice da più applicazioni e da più utenti. Dalla definizione precedente emergono alcune caratteristiche: • i dati sono memorizzati in più archivi ma costituiscono un unico oggetto contenitore (il database): • il reperimento delle informazioni dal database deve essere facile, veloce e possibile attraverso un “motore” di accesso; • al database può accedere qualsiasi programma per compiere interrogazioni o per arricchire l’intero patrimonio informativo; • il database serve una molteplicità di utenti che contemporaneamente possono attingere ai dati in esso contenuti. Si può ora passare ad una definizione più completa di database: 3 Un database è un insieme organizzato di dati, strettamente correlati e memorizzati su un supporto di memoria ausiliaria costituenti un’unica raccolta unitaria, controllata da un software generalizzato di gestione con lo scopo di raggiungere un alto grado di efficienza nel trattamento, nella ricerca e nella distribuzione delle informazioni Perciò, quando si parla di database non si deve pensare ad un singolo file o ad uno specifico elenco di dati relativi ad esempio ad un insieme di clienti o amici o libri, ma ad una realtà più articolata di un settore informativo. Un database risponde piuttosto al bisogno di tenere sotto controllo differenti aspetti di un ambito più ampio e che abbracci diverse entità informative, sia statiche che dinamiche, cioè che presentano continuamente variazioni sia qualitative che quantitative Con il termine di il Data Base Management System (DBMS) si indica il programma di gestione del database che si occupa della memorizzazione, dell'organizzazione e della gestione dei dati: è ad esso che fanno capo tutte le operazioni di inserimento di nuovi dati, di cancellazione di quelli inutili, di modifica di quelli obsoleti od errati, e di ricerca. Attraverso il sistema di gestione del database, l'elaborazione dei dati contenuti nel database, aggregati tra loro od estratti secondo i criteri fissati in sede di progetto, sarà in grado di fornire informazioni, ossia di accrescere il livello di conoscenza dei fruitori del database. Ai fini della ricerca di informazioni, inoltre, attraverso l’ordinamento e l’organizzazione dei dati memorizzati nel database ed effettuato dal DBMS, secondo i criteri dettati dall’utente, sarà possibile catalogare i diversi dati ed estrarre solo quelli interessanti ed utili per le richieste di volta in volta proposte dall’utente finale che sarà facilitato nel prendere le decisioni. Prima dell’introduzione dei DBMS, i dati erano organizzati in file separati, ciascuno dei quali conteneva dati di un particolare aspetto del sottosistema informativo. In un’azienda esisteva pertanto il file anagrafico dei clienti, quello dei fornitori, il file dei movimenti contabili, il file del piano dei conti, ecc. Come rappresentato in figura 5.1.2, ogni programma applicativo elaborava dati presenti su ciascun file e ciò spesso comportava una serie di fenomeni negativi tra i quali la dipendenza dei programmi dai dati: quando emergeva il bisogno o la necessità di mutare la struttura di un file, quale ad esempio l’inserimento di un nuovo attributo oppure la variazione (in dimensione o in tipologia) di un attributo preesistente o infine la sua rimozione, si era costretti a rivedere tutti i programmi che avevano a che fare con quei file variati, con conseguenze di aumento di costi ed impegni lavorativi. 4 (Figura 5.1.2) Dipendenza dei programmi dai dati. Un altro inconveniente dell’organizzazione tradizionale dei file era dovuto alla presenza multipla degli stessi dati su archivi separati. Questo fenomeno, noto con il termine di ridondanza, era dovuto al fatto che a causa della dipendenza dei programmi dai dati la disponibilità dei dati doveva essere garantita a ciascun programma e pertanto ciò rendeva necessario duplicare i dati su diversi file. Gli svantaggi della ridondanza di dati non erano limitati al solo costo della memorizzazione dei dati sui diversi supporti, ma riguardavano anche l’impegno connesso alle operazioni da eseguire per garantire gli aggiornamenti di tutte le occorrenze in tutti gli archivi, in conseguenza di una variazione.. Un eventuale “dimenticanza” causava il fenomeno dell’inconsistenza, ovvero di valori diversi di un certo attributo nella base informativa. Inoltre, non sempre era possibile l’accesso da parte di più utenti agli stessi dati, in quanto dopo un accesso il dato era “prenotato” e non disponibile ad altri utenti. Con l’adozione del DBMS invece, più applicazioni possono accedere allo stesso data base, come schematizza la figura 5.1.3: (Figura 5.1.3) Schema di accesso da parte dei programmi al data base. Si ribadisce che, così come anche emerge dall’analisi della figura. 5.1.3, DBMS e database sono due cose ben distinte: il primo è il sistema di programmi che operano sul database e rendono 5 possibile la sua fruizione per gli utenti finali; il database è formato esclusivamente dai dati e dalle relazioni esistenti fra essi. Tra i più diffusi DBMS esistenti sul mercato si indicano: ORACLE di Oracle Corporation , Informix, DB2 di IBM , SQL Server 2005 di Microsoft e MySQL di MySQL AB. In conclusione, i vantaggi dell’adozione di un DBMS per la gestione di un data base sono, quindi, così sintetizzabili: Indipendenza dati/programmi Utilizzo da parte di più utenti Riduzioni delle ridondanze Facilità di accesso Integrità dei dati Sicurezza dei dati Uso di linguaggi per la gestione dei database Esistono diversi DBMS, nel senso che è possibile ispirarsi a diversi modelli di data base: 1. Modello Gerarchico 2. Modello Reticolare 3. Modello Relazionale 4. Modello ad Oggetti Il modello gerarchico di database dal punto di vista cronologico è stato il primo ad essere stato adottato, alla fine degli anni ’60. Secondo tale modello, i dati devono essere rappresentati secondo una struttura ad albero, nella quale gli archivi sono costituiti da ricorrenze (dette segmenti) legate da rapporti gerarchici del tipo padre-figlio. Un segmento (padre) , perciò, può avere uno o più segmenti (figli) ad esso subordinati ed il rapporto è del tipo 1 a n. La fig. 5.1.4 schematizza quanto accennato, riportando l’organizzazione dei dati presenti in una fattura, dove nella parte superiore, detta testata, compaiono i dati generali del documento (numero, data, cliente, modalità di pagamento, indirizzo di spedizione, imponibile, Iva, importo totale, ecc.). Nella parte centrale del documento, invece compaiono le righe, in numero variabile (da 1 a N), in ciascuna delle quali presumibilmente si indica l’articolo, la quantità venduta, il prezzo unitario, ecc. FATTURE TESTATA CORPO RIGA 1 RIGA 2 ... RIGA N (Figura 5.1.4) Struttura gerarchica di una fattura Il modello reticolare di database ha cercato di dare una risposta ai limiti e svantaggi insiti nel modello gerarchico. Se infatti in un data base gerarchico un segmento figlio può avere solo un segmento padre, nel database reticolare il rapporto è del tipo n a m. e ciò viene consentito dalla presenza di record di collegamento (link). 6 La fig. 5.1.5 rappresenta un modello reticolare di data base. PROPOSTE DI RIORDINO ARTICOLI MOVIMENTI DI ACQUISTO GIACENZE FORNITORI MOVIMENTI DI VENDITA MOVIMENTI DI MAGAZZINO CLIENTI (Figura 5.1.5) Schema del modello reticolare di database Nel 1970 un decisivo contributo offerto da Edward Codd, ha permesso di introdurre un nuovo modello di database, denominato relazionale e che attualmente costituisce il più diffuso tipo di modello adottato nei database. In un database relazionale i dati sono organizzati in tabelle collegate tra loro in modo da limitare al massimo il rischio delle ridondanze dei dati, in quanto la suddivisione dei dati fa si che in ogni tabella non ci siano duplicati. Ogni tabella contiene dati omogenei (per esempio: la tabella delle schede anagrafiche clienti, la tabella dei fornitori, la tabella degli studenti, ecc.). Le righe di una tabella sono dette record , mentre le colonne di una tabella costituiscono i campi della tabella, così come rappresentato in fig. 5.1.6 . Campo 1 Dato 11 Dato 21 ..... Dato N1 Campo 2 Dato 12 Dato 22 ..... Dato N2 ..... .... Campo K Dato 1K Dato 2K ..... Dato NK record (Figura 5.1.6) Struttura di una tabella di un database relazionale Ogni colonna, ovvero ogni campo di una tabella deve avere una serie di caratteristiche (proprietà), tra le quali: un nome un formato (Testo, numerico, data, etc….) una dimensione l’indicazione dell’obbligatorietà del dato o meno; Il modello di database ad oggetti , sviluppato negli anni ’80 prevede l’estensione di alcune caratteristiche tipiche del modello relazionale per rispondere alle esigenze delle applicazioni multimediali. In particolare, questo modello adotta il paradigma della programmazione ad oggetti (OOP) anche per le operazioni di manutenzione dei dati. Tra i diversi modelli di data base appena accennati, il modello relazionale è quello che si è diffuso più rapidamente. Microsoft Access costituisce il DBMS relazionale più diffuso nell’ambito dei personal computer e per questo motivo l’apprendimento di tale programma avvicina coloro che vogliono imparare i data base di tipo relazionale ad acquisire familiarità con tale modello . Nel prosieguo della trattazione ci si riferirà esclusivamente ai modelli relazionali di database. 7 1.2 Chiave primaria La chiave primaria di una tabella è un campo o una combinazione di campi il cui scopo è di identificare univocamente ogni record: ogni record della tabella, cioè possiede valori diversi per il campo (o i campi) chiave. Ad esempio, se pensiamo alla tabella dei dati anagrafici delle persone residenti in un certo comune, un campo chiave potrebbe essere il codice fiscale che individua univocamente un cittadino: ad ogni codice fiscale corrisponde un solo cittadino, così come ogni cittadino possiede un codice fiscale personale e diverso da quello degli altri. In un database la chiave primaria è lo strumento che permette di accedere ai dati di una tabella e di trovare rapidamente i dati ricercati; inoltre, la chiave primaria, evita che in una tabella ci siano record duplicati: la sua impostazione di default, infatti, è “Duplicati non ammessi”. Altro compito della chiave è quello di riordinare i dati, in altre parole, di indicizzarli: infatti, l’ordine naturale dei record presenti in una tabella è quello seguito in fase di inserimento, operazione che può essere avvenuta in modo disordinato e casuale. L’efficienza della chiave primaria e dell’indice ad essa associato, è particolarmente evidente in tabelle di grandi dimensioni perché, in assenza di chiave, è indispensabile effettuare la scansione dei record uno alla volta, dal primo all’ultimo registrato in fase di inserimento, fino a trovare il dato ricercato. La tabella senza campo chiave, infatti, come abbiamo appena visto, presenta i dati in ordine sequenziale, vale a dire secondo la sequenza con la quale sono stati inseriti, mentre la tabella indicizzata consente l’accesso random, ossia casuale, alla tabella, nel senso che si può accedere direttamente ad un suo qualsiasi record: la presenza della chiave primaria permette di trovare e raggiungere direttamente il dato cercato, senza dover scorrere e leggere i record a quello precedenti. Per questa sua funzione, la chiave primaria è paragonabile all’indice analitico di un libro, che indica in quale pagina si trova la parola cercata, o allo schedario di una biblioteca, nel quale è indicata l’esatta collocazione di ogni libro. 1.3 Indice La tabella può anche essere ordinata secondo una chiave diversa da quella primaria: in questo caso definiremo anche altre chiavi, creando altri indici nella tabella su altri campi. Un indice è perciò un campo qualsiasi della tabella su cui il DBMS ordina i dati in modo da rendere più veloce la ricerca in base ai dati presenti in quel campo. Naturalmente, la chiave primaria costituisce un indice di default. Tuttavia, in aggiunta alla chiave primaria, è possibile creare altri indici in funzione dell’uso che si intende fare dei dati contenuti nella tabella. E’ opportuno creare uno o più indici in presenza di un database costituito da tabelle di grandi dimensioni fra le quali si realizzano numerose relazioni. In questi casi, la ricerca dei dati richiesti dall’utente del database è lenta e può richiedere tempi estremamente lunghi. Con la creazione di indici, invece le operazioni da parte del DBMS sono semplificate e rendono i tempi di attesa più ridotti. 8 2 Primi passi con Microsoft Access In precedenza si è detto che Microsoft Access costituisce il più diffuso programma DBMS usato nell’ambito dei personal computer e segue il modello relazionale di data base. 2.1 Oggetti Oggetti di Microsoft Access Un database creato con Microsoft Access è costituito da un insieme di oggetti, appartenenti a diversi tipi. Per il prosieguo della trattazione soffermiamoci sui principali tipi di oggetto: • Tabelle • Maschere • Query • Report Una tabella è un contenitore di dati appartenenti ad un insieme omogeneo di soggetti. Ad esempio, si può pensare ad una tabella Studente o ad una tabella Cliente o ancora ad una tabella Modalità di Pagamento. In tutti e tre i casi, ciascuna tabella contiene solo soggetti appartenenti a quel sottoinsieme di dati, accomunati dal riguardare solamente quell’ambito informativo. Sarebbe sbagliato cioè inserire nella tabella Studente, dati che riguardino anche l’orario scolastico o il personale docente, così come sarebbe parimenti sbagliato immettere nella tabella Cliente dati che riguardino le vendite o gli articoli presenti a magazzino. Per questi altri dati si può invece pensare ad altre tabelle. In fig. 5.2.1 viene rappresentata una parte di una tabella denominata Libro e costituita da volumi presenti in una biblioteca. (Figura 5.2.1) Esempio di tabella. Imm16.tif Una maschera costituisce un altro tipo di oggetto che favorisce la gestione dei dati in una o più tabelle. Ad esempio se si pensa di voler effettuare operazioni di variazione di dati relativi alla tabella Libro, sarebbe utile far riferimento ad una maschera come quella presentata nella fig. 5.2.2 attraverso la quale l’immissione dei valori in ciascun campo è guidata e controllata. 9 (Figura 5.2.2) Esempio di maschera. Imm17.tif Nella maschera presentata in fig. 5.2.2, in realtà vengono visualizzati i dati memorizzati in tre tabelle (Libro, Autore e Materia). In definitiva una maschera può essere definita come un’interfaccia grafica tra i dati di una o più tabelle e l’utente finale. Una terza tipologia di oggetti è costituita dalle query: si tratta di procedure facilmente ottenibili da Microsoft Access mediante le quali dal database vengono estratti solo i dati interessanti una determinata richiesta da parte dell’utente finale. Ad esempio, come mostra la fig. 5.2.3, la query Libri Prestati mostra solo i titoli e gli autori dei libri dati in prestito. (Figura 5.2.3) Esempio di query. Imm18.tif Tipicamente una query estrae dati da una o più tabelle e realizza una vista logica dei dati che normalmente viene visualizzata. In altri casi tale vista logica è a sua volta oggetto di altre query; in altre parole, una query può elaborare, ovvero estrarre dati da un’altra query. L’ultima tipologia notevole di oggetti di Microsoft Access è il report, che letteralmente significa lista o tabulato. Reporting, infatti indica l’attività di produzione di liste da fornire alla Direzione Aziendale per politiche di controllo e di pianificazione degli interventi. Attraverso l’oggetto report, Microsoft Access offre la possibilità di produrre facilmente liste e tabulati contenenti dati presenti in una o più tabelle. 10 (Figura 5.2.4) Esempio di report. Imm19.tif La fig. 5.2.4 rappresenta un esempio di report che elenca tutti i libri memorizzati nella tabella Libro, con decodifica dell’autore e della materia cui appartiene ciascun libro. 2.2 Aprire e chiudere Microsoft Access Esistono differenti procedure per lanciare l’esecuzione di Microsoft Access. La prima consiste nel cliccare il tasto Start (o Avvio) e selezionare la voce Tutti i programmi. Tra i programmi visualizzati, si deve selezionare il gruppo Microsoft Office (come mostra la fig. 5.2.5) e poi cliccare su Microsoft Access 2007, contrassegnato dall’icona . (Figura 5.2.5) Esempio relazioni tra diverse tabelle assicurate da campi comuni. Imm02.tif Una valida quanto rapida alternativa per lanciare Microsoft Access è quella di cliccare due volte sulla sua icona ( ) se essa è presente sul Desktop di Windows Vista. Appena si è avviato Microsoft Access 2007, viene visualizzata la finestra di dialogo Introduzione a Microsoft Access (V. Fig. 5.2.6) nella quale a sinistra si trovano proposte di modelli di database predefiniti, mentre nel riquadro di destra sono elencati i database recentemente creati o modificati. Nella parte centrale della finestra di dialogo sono proposti i modelli in primo piano. 11 (Figura 5.2.6) Finestra di dialogo Introduzione a Microsoft Access. Imm04.tif Il pulsante Office Situato nell’angolo superiore sinistro, il pulsante Office permette di visualizzare i comandi di menù relativi ai file, come ad esempio aprire, salvare o chiudere un database. La fig. 5.2.7 presenta il menu che viene visualizzato dopo che è stato fatto clic sul pulsante Office. Chiudere il programma Per uscire da Microsoft Access, cioè per chiudere il programma di database, è sufficiente cliccare sul pulsante Office e dal menù successivo (rappresentato in fig. 5.2.7) cliccare sul pulsante Esci da Access. In alternativa, si può cliccare sul pulsante Chiudi finestra presente in altro a destra sulla barra del titolo della finestra. Si può anche utilizzare la scorciatoia da tastiera (shortcut) Alt + F4. 12 (Figura 5.2.7) Menu relativo al pulsante Office. Imm05.tif 2.3 Aprire un database esistente Il modo più usuale per aprire un database già esistente consiste nel cliccare il pulsante Office e dal successivo menu visualizzato (già rappresentato in fig. 5.2.7) cliccare sul comando Apri. Appare la finestra di dialogo mostrata in fig. 5.2.4 nella quale vengono visualizzati nella parte centrale della finestra tutti i file di database creati in precedenza da Microsoft Access. Questi file hanno estensione .accdb se sono stati creati con la versione 2007, mentre hanno estensione .mdb se creati con versioni precedenti (XP, 2003, 2000 o 97). Se si vuole, si può cambiare la cartella dove cercare il file di database da aprire, cliccando sul percorso (che nell’esempio di fig. 5.2.8 è Docente Documenti Database). 13 (Figura 5.2.8) Comando Apri. Imm08.tif Quando è stato aperto un database, Microsoft Access presenta una schermata simile a quella rappresentata nella fig. 5.2.9. Nel riquadro che si trova nella parte sinistra della figura, detto riquadro di spostamento, sono riportati tutti gli oggetti del database Biblioteca che, nel caso in esame, sono appartenenti a diverse categorie: 1) Tabelle. Sono rappresentate dalle icone . Nell’esempio le tabelle sono tre e sono denominate Autore, Materia e Libro. 2) Maschere. Sono rappresentate dalle icone . Nell’esempio le maschere sono tre e sono denominate Autore, Materia e Libro. Occorre notare a questo proposito che nonostante i nomi delle maschere siano uguali ai nomi delle tabelle, non c’è alcuna confusione tra gli oggetti citati, in quanto essi appartengono a tipologie differenti. 3) Query. Sono rappresentate dalle icone . Nell’esempio di cui alla fig. 5.2.9 le query sono due e si chiamano Libri di ECO e libri economici.. 4) Report. Sono rappresentati dalle icone . Nel database Biblioteca, c’è un solo report denominato Elenco Libri. Nella parte superiore della schermata si trova la barra multifunzione di Microsoft Access 2007 (mostrata ingrandita in fig. 5.210) che nella versione 2007 sostituisce i precedenti menu e barre degli strumenti. 14 Pulsante Office Barra di accesso rapido Barra multiunzione Barra del titolo (Figura 5.2.9) Apertura del database Biblioteca. Imm09.tif Riquadro di spostamento Finestra del documento La barra multifunzione è costituita da diverse schede di comandi; in fig. 5.2.10 viene presentata la scheda Home. Altre schede importanti sono Crea, Dati esterni e Strumenti database. (Figura 5.2.10) Barra multifunzione di Microsoft Access 2007. Imm12.tif In ogni scheda i comandi sono raccolti in gruppi ciascuno dei quali contiene pulsanti di comando (detti anche controlli). Ad esempio, nella scheda Home rappresentata in fig. 5.2.11, si possono rilevare i gruppi Visualizzazioni, Appunti, Carattere, Formato RTF, Record, Ordina e filtra e Trova. Se si prende in esame il gruppo di comandi Record, al suo interno possiamo trovare i pulsanti di comando seguenti: Aggiorna tutto, Nuovo, Salva, Elimina, Totali, Controllo ortografia e Altro, come mostra la fig. 5.2.11. (Figura 5.2.11) Gruppo di comandi Record della scheda Home. Imm14.tif In definitiva, la barra multifunzione consente di individuare rapidamente i comandi necessari per completare un'attività. Abbiamo prima specificato che essa è costituita da tre elementi: schede, gruppi e comandi. 15 Ogni scheda è collegata a un certo tipo di attività, ad esempio la scrittura dei record in una tabella. Allo scopo di ottimizzare lo spazio disponibile, alcune schede sono visualizzate solo quando sono necessarie. Ad esempio, la scheda Strumenti immagine viene visualizzata solo quando si deve gestire un'immagine. La barra degli strumenti di accesso rapido occupa la parte superiore sinistra della schermata classica di Microsoft Access 2007 e si presenta inizialmente in questo modo: (Figura 5.2.12) La Barra di accesso rapido. Imm04ter.tif Lo scopo della barra di accesso rapido consiste nel contenere comandi utilizzati frequentemente e perciò richiamabili semplicemente cliccando sull’icona corrispondente al comando stesso. Nella Figura 5.2.12 sono contenuti i comandi Salva, Annulla e Ripristina. Naturalmente si può anche procedere a personalizzare la barra di accesso rapido aggiungendo ulteriori comandi o cancellando quelli preesistenti. Per fare ciò si può ricorrere alla freccia dell’elenco Personalizza barra di accesso rapido ( ) e poi cliccando sul pulsante relativo al comando. 2.4 Creare e salvare un nuovo database Se si desidera creare un nuovo database, Microsoft Access offre la possibilità di utilizzare un modello predefinito per esigenze tipiche. Ad esempio, se si vuole creare un database nel campo scolastico, si potrebbe sfruttare un modello Studenti che tiene traccia delle informazioni degli studenti. Si tenga presente che ogni modello al suo interno contiene un database completo con tabelle, maschere, query e report già realizzati: occorre solo procedere a fare qualche integrazione (se necessaria) ed inserire i dati. Microsoft Access offre modelli cosiddetti locali e modelli online. I modelli locali sono già compresi nel programma Microsoft Access installato sul computer dove si lavora, mentre i modelli online devono essere scaricati dal sito internet di Microsoft Office. La fig. 5.2.13 presenta tipici modelli di database locali. (Figura 5.2.13) Modelli di database locali . 16 Imm20.jpg Sia che si utilizzi un modello oppure no, in ogni caso se si vuole creare un database, bisogna assegnare ad esso un nome ed un percorso, ovvero una cartella nella quale memorizzare il database. Come già specificato in precedenza, esistono due formati di file di database: .mdb è il formato delle versioni Microsoft Access precedenti a 2007, mentre la versione Microsoft Access 2007 propriamente utilizza il formato .accdb . Per creare un database vuoto, dopo aver avviato Microsoft Access ed aver visualizzato la finestra di Introduzione a Microsoft Office Access (mostrata già nella fig. 5.2.6), bisogna cliccare sull’icona Database vuoto posta nella parte centrale della finestra, in alto. Successivamente bisogna indicare il percorso dove creare il database, ovvero la cartella che conterrà il database. Per fare ciò, occorre cliccare sul pulsante Cerca il percorso in cui inserire il database ( ) posto affianco al nome del file e poi procedere sfogliando, secondo le usuali regole di Windows Vista per selezionare il percorso. In particolare cliccando sul pulsante in esame viene visualizzata la finestra Salva nuovo database (presentata in fig. 5.2.14) allo scopo di attribuire il percorso al database che si sta creando. (Figura 5.2.14) Finestra “Salva nuovo database”, per attribuire il percorso al database Imm22.tif Si può quindi scegliere dove archiviare il file di database. Di default (infatti appare evidenziata da un sottile riquadro), sarà proposta la cartella Documenti, ma è possibile navigare sulle risorse del computer per selezionare un percorso diverso (eventualmente accedendo ad una rete locale, se si è collegati ad essa). In particolare, seguendo l’esempio cui fa riferimento la fig. 5.2.14 si ipotizza di aver scelto la cartella Database a sua volta presente nella cartella Documenti. 17 Nella parte bassa della finestra, infine, si può scegliere il nome che si desidera attribuire al database, ad esempio Database1, e il tipo di archivio che si vuol creare: in questo caso si può scegliere Database di Microsoft Office Access 2007 (.accdb). A questo punto non resterà che cliccare sul pulsante OK e sarà nuovamente visualizzata la finestra da cui si era partiti, ma con il percorso assegnato e con il nome attribuito al database, come mostra la fig. 5.2.15. (Figura 5.2.15) Creazione di un database vuoto Imm23.tif Se si vuole, si è ancora in tempo per attribuire un nome diverso al file di database che si sta per creare, immettendo un nome diverso nella casella di testo Nome file nel riquadro a destra, presentato in modalità ingrandita nella fig. 5.2.16. (Figura 5.2.16) Particolare del riquadro destro di Introduzione a Microsoft Access Imm21.tif Infine bisogna cliccare sul pulsante Crea. Dopo pochi istanti, verrà visualizzata la finestra mostrata nella fig. 5.2.17, nella quale Microsoft Access presenta nella parte centrale una tabella vuota (denominata provvisoriamente Tabella1) ed attende istruzioni operative sul da farsi. 18 (Figura 5.2.17) Database vuoto appena creato. Imm22bis.tif Dopo aver operato sul database, nel senso di aver creato gli oggetti necessari (tabelle, maschere, query e report) ed aver popolato il database, occorre effettuarne il salvataggio su una unità di memorizzazione, che normalmente è il disco fisso. Sono possibili due tipologie differenti di salvataggio, dipendenti essenzialmente dalle esigenze dell’utente. Infatti, si può decidere di salvare il database nel formato di Microsoft Access 2007 oppure si può utilizzare un formato di una versione precedente di Microsoft Access (2000 o 2002- 2003). Se si vuole salvare un database per Microsoft Access 2007, è sufficiente cliccare sul pulsante Office e da questo cliccare sul comando Salva, ottenendo un file con estensione .accdb (nel caso dell’esempio Database1.accdb). Se invece si vuole salvare una copia di un database oppure modificare il formato del database secondo una versione precedente di Microsoft Access (2000 o 2002-2003), sempre dopo aver cliccato sul pulsante Office, bisogna cliccare sul comando Salva con nome. Sarà successivamente visualizzato il sottomenu di destra mostrato in fig. 5.2.18. In ogni caso, dopo aver cliccato sul formato con cui salvare il file, viene visualizzata la finestra Salva con nome, già mostrata in fig. 5.2.13, per selezionare l’unità e la cartella dove salvare il database. Naturalmente bisogna digitare nella casella Nome file il nome del file che si vuole attribuire al database ed infine cliccare sul pulsante Salva. 19 (Figura 5.2.18) Comando Salva con nome. Imm23bis.tif 2.5 Chiudere un database Per chiudere un database, dopo aver proceduto ad utilizzarlo, si deve cliccare sul pulsante Office e dal menu successivamente visualizzato (V. fig. 5.2.7) cliccare su Chiudi database, il cui effetto è la chiusura del database, ma non di Access. Anche in questo caso, bisogna osservare che eventuali operazioni di modifica effettuate sui file aperti danno luogo a segnalazioni attraverso una finestra come quella rappresentata in fig. 5.2.18 che chiede se riportare le ultime azioni svolte sul database oppure no. (Figura 5.2.18) Richiesta di salvataggio ultime azioni eseguite . Imm07.tif 2.6 Guida in linea Durante l’utilizzo di Microsoft Access, quando si rileva il bisogno di ottenere informazioni e suggerimenti riguardo ad alcune funzioni del programma si può fare ricorso alla guida in linea meglio nota con il nome help (aiuto). Le funzioni d’aiuto di Microsoft Access, come di tutti gli altri programmi che costituiscono la suite Microsoft Office, sono raggiungibili cliccando sul simbolo “?”, posto sulla barra multifunzione oppure premendo semplicemente il tasto F1. Viene visualizzata la finestra mostrata in fig. 5.2.19, composta di diverse voci. 20 Casella di ricerca (Figura 5.2.19) La Guida in linea. Imm24.tif Per cercare informazioni sull’utilizzo di Microsoft Access si può prima cliccare sulla casella di riepilogo Cerca, allo scopo di restringere la propria ricerca in un certo ambito dell’applicazione, così come mostra la fig. 5.2.20. (Figura 5.2.20) Casella di riepilogo Cerca nella Guida in linea. 21 Imm25.tif In ogni caso, per cercare aiuto per un certo argomento, si deve immettere una o più parole chiave nella casella di ricerca e poi cliccare sul pulsante Cerca. Saranno visualizzati tutti gli argomenti che sono connessi alla parola chiave digitata in precedenza. Ad esempio, se si digita la parola chiave aprire, appare la finestra rappresentata in fig. 5.2.21. (Figura 5.2.21) Ricerca di argomenti nella Guida in linea. Imm26.tif Tra tutti gli argomenti proposti (100 nell’esempio citato) si può cliccare su quello che si desidera approfondire e successivamente leggerne i dettagli. Ad esempio, nella fig. 5.2.22 si riporta la parte iniziale della guida in linea per aprire un database in Microsoft Access 2007. 22 (Figura 5.2.22) Guida in linea: aprire un database Imm27.tif Access mette a disposizione una guida in linea per chi ha problemi a utilizzare il programma o per chi vuole saperne di più. 23 3 Tabelle Quando si progetta una tabella, occorre pensare a due momenti distinti e separati: il primo riguarda le attività relative alla creazione del contenitore, che viene detto struttura della tabella. Come si vedrà più avanti, la struttura della tabella costituisce l’impalcatura logica dentro la quale poi prenderanno posto i dati veri e propri. La creazione della tabella precede ovviamente il momento dell’immissione dei dati e costituisce un momento molto delicato in quanto un’eventuale dimenticanza di un campo o un eventuale cattivo dimensionamento di un campo influirebbe negativamente sulla memorizzazione corretta dei dati relativi nella tabella. Il secondo momento della costituzione di una tabella si realizza attraverso la fase detta del popolamento ovvero dell’immissione dei dati nella tabella 3.1 Creare una nuova tabella Microsoft Access mette a disposizione del progettista diversi modi diversi per creare le tabelle. Ipotizzando aver già creato un database vuoto e di voler procedere a creare una nuova tabella il modo più usuale è di fare uso della barra multifunzione, cliccando sul pulsante Struttura Tabella presente nel gruppo Tabelle della scheda Crea (V. Fig. 5.3.1). (Figura 5.3.1) Creazione di una nuova tabella Imm66.tif Nella finestra che appare sullo schermo (mostrata in fig. 5.3.2), viene presentato lo schema da riempire per indicare i campi facenti parte della struttura della tabella. (Figura 5.3.2) Struttura di una nuova tabella Imm68.tif Occorre compilare una riga per ogni campo, indicando: 1. il nome del campo 2. il tipo di dati che il campo può accogliere 3. la descrizione del campo (contenuto, significato, commento, ecc.) Per quanto concerne il nome del campo, è buona norma specificare un nome sintetico e che ricordi il contenuto del campo. La lunghezza del nome deve essere ragionevolmente piccola ed in ogni caso non può superare i 64 caratteri, compresi gli spazi, purché non iniziali. Una volta terminato l’inserimento del nome del campo, si premerà il tasto Invio (o il tasto Tab oppure i tasti direzionali) per passare alla colonna successiva, dove una punta di freccia rivolta verso il basso indica la presenza di un menu a discesa: si tratta ora di definire il tipo di dati che possono essere immessi nel campo. Cliccando sulla freccia apparirà il menu di figura 5.3.3, nella quale sono elencati tutti i tipi di dati disponibili in Access. 24 (Figura 5.3.3) Possibili tipi di dati per un campo Imm69.tif Il tipo di dato più diffuso in una tabella è quello di tipo Testo: esso consente di inserire un dato costituito da una qualsiasi combinazione di caratteri dell’alfabeto inglese(sia minuscoli che maiuscoli), di cifre decimali e di molti caratteri speciali (virgola, punto, trattino, ecc.). La lunghezza massima che un campo di Testo può accogliere è di 255 caratteri. Il tipo Testo è indicato per quei campi che contengono dati descrittivi o che comunque non devono essere sottoposti a calcoli aritmetici. E’ evidente che la decisione della dimensione del campo va fatta in rapporto ai futuri dati che dovranno essere memorizzati nel campo: è opportuno perciò che si rifletta con attenzione, onde evitare troncamenti dei dati nel caso in cui si ecceda la lunghezza massima consentita per il campo. Un’estensione del tipo Testo è costituita dal tipo Memo che serve per memorizzare note, appunti o descrizioni di lunghezza più ampia: il tipo Memo riesce a conservare dati fino a 65.536 caratteri. Il tipo di dati Numerico è indicato per campi che contengono numeri da sottoporre a calcoli aritmetici. Ad esempio, un campo che contiene il numero delle fatture non ancora pagate è di tipo numerico, così come un campo che contiene la giacenza degli articoli a magazzino. Il tipo Data/ora è molto utile in Microsoft Access in quanto consente di memorizzare date di calendario, controllate direttamente dal programma e per le quali, perciò non bisogna scrivere nessun programma per svolgere le normali operazioni che si svolgono sulle date (come ad esempio il controllo di una data o la differenza in giorni tra due date o il differimento di una data per un numero precisato di giorni, ecc). Il tipo Valuta si usa per inserire dati valutari, ovvero espressi in dollari ($), in Euro (€), in Sterline (£), ecc. Si differenzia dal tipo Numerico perché nei calcoli, evita gli arrotondamenti per difetto. Il tipo Contatore consente di far generare automaticamente da Microsoft Access un numero progressivo che si incrementa ad ogni record inserito di un’unità rispetto al valore precedente. Il tipo Logico Si/No contiene uno fra i due possibili valori: Si (Vero) o No (Falso) e risulta utile per marcare se una certa condizione è vera o è falsa. Ad esempio, un campo di questo tipo potrebbe essere il campo Cliente_Italia per un’azienda multinazionale: un certo cliente se appartiene alla zona Italia ha il campo Cliente_Italia pari a Si altrimenti lo avrà pari a No. Il tipo Oggetto Ole (Object Linking and Embedding) si usa per inserire nel database oggetti, come, ad esempio, un documento Word o un foglio di Excel, creati in altri programmi secondo le specifiche del protocollo Ole. Il tipo Collegamento ipertestuale viene utilizzato quando si desidera inserire in un database l’indirizzo di un file ospitato da una risorsa di rete condivisa (percorso Unc), oppure quello di un sito o di una pagina web (Url). 25 Per quanto riguarda infine la descrizione del campo, si tratta (seppur non obbligatoria )di un’ulteriore informazione documentativa del campo: si può inserire una breve descrizione che sarà mostrata nella barra di stato allorché verrà mostrato il campo durante numerose operazioni di gestione del database. Una volta scelto il tipo, si passa alla parte inferiore della finestra, dove si indicano le altre caratteristiche del campo (denominate proprietà del campo) come: • • • • • • • • • Dimensione: permette di impostare il numero massimo di caratteri del campo; Formato: ovvero la forma di visualizzazione dei dati (per es: se è di tipo data il formato della data, come giorno/mese/anno) Etichetta: è il nome del campo che si vuole visualizzare. Se non immesso viene considerato il nome del campo. Valore predefinito: si può definire un valore che sarà messo automaticamente nel campo; Valido se: il programma permetterà di inserire dati che siano conformi al criterio fissato; Messaggio errore: messaggio di errore se la clausola di Valido se viene violata; Richiesto ovvero indica se il campo è obbligatorio; Consenti lunghezza zero: indica se nel campo è consentito inserire stringhe di lunghezza zero; Indicizzato: indica se sul campo occorre creare un indice. Le opzioni precedenti sono variabili in funzione del tipo di dati del campo. Quando sono stati inseriti tutti i campi che fanno parte del record della tabella, occorre salvare la tabella con un nome appropriato, coinciso e di lunghezza ragionevolmente breve. Per operare il salvataggio della struttura della tabella si può cliccare sul pulsante Salva sulla barra degli strumenti di accesso rapido. Apparirà la finestra mostrata in fig. 5.3.4: al posto del nome provvisorio Tabella1 attribuito di default da Microsoft Access occorre digitare il nome che si desidera attribuire alla tabella. (Figura 5.3.4) Attribuzione del nome alla tabella Imm72.tif Nel corso del primo salvataggio della tabella Microsoft Access, automaticamente, il programma segnalerà se non è stata indicata nessuna chiave primaria sulla quale indicizzare la tabella e chiederà conseguentemente l’autorizzazione a crearne una, così come mostra la fig. 5.3.5. (Figura 5.3.5) Richiesta di creazione automatica di chiave primaria Imm107.tif 26 Se si risponde Sì, Microsoft Access creerà un campo di nome ID contenente dati di tipo Contatore e ad esso attribuirà le funzioni di chiave primaria. Se invece si risponde No si può poi definire in modo autonomo una chiave primaria in base elle specifiche necessità. In ogni caso, successivamente sarà creata la tabella e memorizzata all’interno del database in precedenza aperto. Ricordiamo che il campo chiave ha la caratteristica di essere univoco, ovvero non è possibile inserire due record nella tabella che abbiano lo stesso valore nel campo chiave. Se per esempio si sta creando una tabella Anagrafica con il campo Cognome e lo si indica erroneamente come campo chiave, ciò implicherà che non potranno essere inserite due persone aventi lo stesso Cognome. Un’altra cosa da ricordare è che un campo di chiave non può ammettere valori nulli. Se il campo chiave è di tipo Contatore sarà Microsoft Access ad aggiornarlo automaticamente. 3.2 Visualizzazione Struttura e Foglio Dati di una tabella Come si è detto in precedenza, una tabella può essere gestita dal punto di vista della sua struttura (come è fatta) o del suo contenuto (i dati che la compongono). Abbiamo visto che quando si opera sulla struttura di una tabella si pone l’attenzione ad alcune sue caratteristiche (numero dei campi che compongono un singolo record, dimensione di ogni campo, formato della data costituente un altro campo, ecc.) In questi casi, ovvero quando si vuole operare sulla struttura della tabella (ad esempio per aggiungere un nuovo campo o variare delle proprietà di un campo preesistente) si deve , posta nella richiedere la Visualizzazione Struttura, contraddistinta dall’icona parte superiore sinistra della scheda Home della barra multifunzione Se invece si vuole visualizzare il contenuto della tabella, cioè i dati che formano i record della tabella, bisogna ricorrere alla Visualizzazione Foglio dati, la cui icona corrispondente è . Nella fig. 5.3.6, a titolo di esempio, è mostrata parte della visualizzazione struttura della tabella Libro del database di esempio Biblioteca, nella quale sono elencati tutti i campi che compongono ciascun record della tabella Libro. Per ogni campo è indicato il nome, il tipo di dati che esso può accogliere, la sua descrizione e le sue proprietà, ecc. (Figura 5.3.6) Visualizzazione Struttura della tabella Libro Imm40.tif La struttura della tabella va distinta dal suo contenuto, che come si è accennato prima viene indicato con il termine di Foglio dati. 27 La fig. 5.3.7 mostra la visualizzazione Foglio dati della tabella Libro: appaiono sullo schermo in un formato diviso in righe ed in colonne (simile per alcuni aspetti ad un foglio elettronico) i record memorizzati nella tabella. L’utente può, se lo vuole, procedere a qualche variazione di dati (cambiare ad esempio l’anno di edizione di un certo libro o lo stato del prestito di un altro libro), alla cancellazione di un record o all’immissione di un nuovo libro entrato nella biblioteca. (Figura 5.3.7) Visualizzazione Foglio dati della tabella Libro Imm41.tif Una volta aperta una tabella, per passare dalla Visualizzazione Struttura alla Visualizzazione Foglio dati e viceversa, si può semplicemente cliccare sulla casella di riepilogo Visualizza posta nella parte superiore sinistra della scheda Home della barra multifunzione e selezionare la visualizzazione desiderata (V. fig. 5.3.8). In alternativa, si può cliccare direttamente sulla parte superiore del pulsante Visualizza e passare dall’una all’altra visualizzazione. (Figura 5.3.8) Scelta della Visualizzazione Foglio dati della tabella Libro Imm42.tif 3.3 Aggiornare dati all’interno di una tabella Per navigare all’interno dei dati di una tabella, Microsoft Access mette a disposizione tante modalità. Il modo più agevole per l’utente consiste nel fare uso della barra di stato della tabella, presente in basso ai dati, come mostrato in fig. 5.3.9, dove tra le altre cose, viene visualizzato anche il numero del record attivo (quello dove è posizionato il punto d’inserimento). Nell’esempio di fig. 5.3.9, il record attivo è l’undicesimo, di 27 record presenti nella tabella dei libri; questa casella ha anche un’altra funzione: consente di spostarsi su di un record specifico, del quale si conosce la posizione relativa all’interno della tabella. Per fare questo basta 28 selezionare il numero del record attivo, digitare quello del record che si vuole raggiungere e premere Invio. (Figura 5.3.9) Navigazione in una tabella Imm50.tif Per aggiungere un nuovo record, si può cliccare nella barra multifunzione sul pulsante Nuovo all’interno del gruppo Record della scheda Home. In alternativa si può cliccare sul pulsante Nuovo record nella barra di stato in basso alla tabella. Per modificare i dati di un record preesistente, è sufficiente posizionarsi sul dato da modificare e aggiornarlo (premendo Invio oppure spostando il cursore del mouse su un altro campo). Per eliminare un record preesistente da una tabella, occorre prima selezionare il record, cliccando sul selettore di riga e poi cliccare nella barra multifunzione sul pulsante Elimina presente all’interno del gruppo di comandi Record della scheda Home. Quando si chiede l’eliminazione di un record, Microsoft Access chiede la conferma di tale operazione, in quanto ciò comporterebbe una perdita irrimediabile di tale record, senza alcuna possibilità di annullare l’operazione. 29 Inoltre nella caratteristica “Indicizzato” comparirà “Si (Duplicati non ammessi)” 3.5 Relazioni tra tabelle Quando si utilizza un database occorre evitare il fenomeno della ridondanza di dati, ossia che in una tabella siano presenti dati duplicati o dati già presenti in altre tabelle. Pertanto, in un database relazionale, come si è già accennato inizialmente, ogni tabella deve contenere una sola tipologia d’informazioni, come, ad esempio i dati anagrafici degli impiegati, oppure gli ordini di vendita da evadere oppure gli articoli a magazzino e così via. Lo schema rappresentato in Fig. 5.3.10 ipotizza che il sistema informativo della gestione ordini sia contenuto principalmente in tre tabelle (CLIENTI, COMMESSE e PARTI), contenenti rispettivamente i dati relativi ai clienti, alle evasione di commesse di vendita ed alle anagrafiche degli articoli presenti in magazzino. CLIENTI Cod Nome Località 100 150 170 BRESCIA MILANO MILANO ROSSI BIANCHI VERDI COMMESSE num. Codcli codpar quantità 1 2 3 4 150 100 150 170 A25 A10 B27 A25 1 3 4 2 PARTI codpar descr.merce giacenza A10 A25 B27 C05 Lyptus 4/4 Ash 4/4 Red Oak 4/4 Cherry 4/4 300 120 45 5 (Figura 5.3.10) Esempio di suddivisione di dati di evasioni vendite in più tabelle. La tabella COMMESSE contiene per ogni riga il numero della commessa di vendita, il codice del cliente, il codice della merce a magazzino ordinata e la quantità. Ogni codice (cliente e merce) trova consistenza nelle tabelle CLIENTI e PARTI che riportano i dati anagrafici e la quantità giacente a magazzino. Così facendo, si evitano inutili ripetizioni di dati su più righe: se ad esempio si prendono in esame la prima e la terza commessa, si può notare che esse fanno riferimento allo stesso cliente, ma non ripetono il nome del cliente (Bianchi), ma solo il codice. Analogamente, la prima e la quarta riga memorizzano la stessa merce (Ash 4/4), ma non ripetono la descrizione e la giacenza, riferendosi al solo codice A25. Le singole tabelle così create risultano di dimensioni più ridotte, e sono gestibili agevolmente. D’altro canto ed in riferimento al fatto che i dati sono memorizzati in tabelle separate, occorre utilizzare un metodo per collegare i dati: per ottenere ciò, bisogna allora stabilire relazioni tra diverse tabelle. Nell’esempio rappresentato nella fig. 2.7 per collegare i dati del cliente 150 alle commesse della prima e della terza riga e per collegare i dati del particolare di magazzino A25 alle commesse della prima e della quarta riga occorre correlare le tre tabelle CLIENTI, COMMESSE e PARTI. Per poter stabilire le relazioni tra tabelle diverse, è però necessario che queste abbiano almeno un campo in comune perché, in caso contrario, non sarà possibile correlarle. Nella Fig. 5.3.11 sono mostrate le due relazioni esistenti rispettivamente tra le tabelle CLIENTI e COMMESSE e tra le tabelle PARTI e COMMESSE. La prima relazione è assicurata dalla presenza in ambedue le tabelle dal campo codice cliente , mentre la presenza del campo codice parte garantisce la relazione tra le tabelle COMMESSE PARTI. 30 (Figura 5.3.11) Esempio relazioni tra diverse tabelle assicurate da campi comuni. Imm01.tif Ricordiamo che le relazioni rendono possibile consultare un database relazionale utilizzando le query (in italiano interrogazioni), che permettono di estrarre da più tabelle i dati che interessano e di riunirli ed organizzarli come se fossero contenuti in una nuova ed unica tabella “virtuale”. Le informazioni così ottenute potranno essere stampate in un resoconto, oppure visualizzate sullo schermo in una tabella unica, anche se i dati che la costituiscono continuano ad essere archiviati, ognuno, in tabelle d’origine separate. Per creare un collegamento occorre cliccare sulla scheda Strumenti, poi sul pulsante Relazioni e se necessario, fare clic sul pulsante Mostra tabella . Apparirà una finestra in cui bisogna selezionare le tabelle da mettere in relazione. Ogni volta che si seleziona una tabella si deve digitare il pulsante Aggiungi. Una volta selezionate tutte le tabelle prescelte su cui applicare la relazione, si deve premere il pulsante Chiudi. Apparirà una finestra come quella mostrata in fig. 5.3.12, in cui si ipotizza di voler creare una relazione tra le due tabelle Riga_ordine1 e Articoli_1. (Figura 5.3.12) Creazione di una relazione tra due tabelle (passaggio 1). Imm108.tif Per mettere in relazione i codici articolo delle due tabelle si deve cliccare su Codice_articolo della tabella Riga_ordine_1 e poi, tenendo premuto il mouse, lo si deve trascinare verso il campo codice_articolo della tabella Articoli_1. Quando appare un rettangolino occorre lasciare il mouse. Apparirà una finestra in cui sono indicati le tabelle e i campi delle tabelle che devono essere messi in relazione e selezionare il campo Applica integrità referenziale. Questo consente di inserire sulla tabella Riga_ordine_1 solo codici di articolo esistenti nella tabella Articolo_1. Alla fine selezionare il bottone Crea. 31 Apparirà la finestra mostrata in fig. 5.3.13, in cui i campi relazionati sono collegati da una linea. Per modificare o eliminare la relazione basta cliccare con il tasto destro del mouse sulla linea della relazione e dal menu contestuale scegliere Modifica relazione o Elimina. (Figura 5.3.13) Creazione di una relazione tra due tabelle (passaggio 2). 32 Imm109.tif 4 Maschere Per gestire i dati di una tabella, spesso si fa ricorso alle maschere (rappresentate in Microsoft Access dalle icone ) che consentono la visualizzazione e la gestione di un record alla volta. I campi del record sono contenuti all’interno di campi di maschera e vicino ad ogni campo vi è un’etichetta che identifica il campo stesso. Le maschere possono essere personalizzate sia con le proprietà desiderate (colori, sfondo, stile, ecc.), sia come posizione dei campi, che come etichette. Una maschera perciò costituisce un altro tipo di oggetto di database di Microsoft Access, il cui scopo è quello di favorire la gestione dei dati in una o più tabelle. Ad esempio se si pensa di voler effettuare operazioni di variazione di dati relativi alla tabella Disco, sarebbe utile far riferimento ad una maschera come quella presentata nella fig. 5.4.1, attraverso la quale l’immissione dei valori in ciascun campo è guidata e controllata. (Figura 5.4.1) Esempio di maschera. Imm17.tif In definitiva una maschera può essere definita come un’interfaccia grafica tra i dati di una o più tabelle e l’utente finale. 4.1 Creare una maschera Per mostrare come Microsoft Access consenta di creare la maschera, si ipotizzerà di voler realizzare nel Database già esistente Musica la maschera di figura 5.4.1 relativa alla tabella Dischi. Dopo aver aperto il database Musica si dovrà innanzitutto cliccare sulla scheda Crea della barra multifunzione, con il risultato mostrato in fig. 5.4.2. (Figura 5.4.2) Barra multifunzione (scheda Crea). Imm186.tif Come si evince dal gruppo di comandi Maschere, sono molte modalità per creare una maschera, ma per il nostro esempio è conveniente ricorrere al comando Creazione guidata Maschera, visualizzato dopo aver cliccato sul pulsante Altre maschere (V. fig. 5.4.3). 33 (Figura 5.4.3) Comando Creazione guidata Maschera Imm187.tif La procedura si presenta in modo abbastanza simile a quella descritta a proposito della creazione guidata di una tabella, in quanto si apre con una finestra per scegliere, grazie ad un elenco a discesa che mostra tutte le tabelle e le query presenti nel database, dell’origine dei dati e dei campi da inserire nella maschera. Nella parte centrale della finestra si trovano due caselle: in quella di sinistra sono elencati i campi compresi nella tabella o nella query prescelta, in quella di destra saranno mostrati i campi da inserire nella maschera. Tra le due caselle si trovano quattro pulsanti ( > = inserisce il campo selezionato, >> = inserisce tutti i campi, < = rimuove il campo selezionato, << = rimuove tutti i campi) per inserire i campi nella maschera o rimuoverli (V. Fig. 5.4.4). (Figura 5.4.4) Finestra per la scelta dei campi da inserire nella maschera Imm188.tif Nella parte bassa della finestra sono presenti quattro pulsanti: • Annulla: chiude la procedura di creazione guidata, annullando tutte le scelte fatte. • Indietro: torna alla finestra precedente (in fig. 5.4.4 non è attivo, trattandosi della prima finestra). • Avanti: va alla finestra successiva. • Fine: completa la creazione della maschera assumendo le impostazioni successive di default. Per creare la maschera dell’esempio, dall’elenco a discesa che si trova nella parte superiore della finestra si dovrà scegliere la tabella Dischi e, nella casella di sinistra, appariranno tutti i campi 34 che la compongono; a questo punto, utilizzando i pulsanti, possono essere scelti i campi da inserire nella maschera. Nel caso in cui la maschera dovesse essere composta di tutti i campi della tabella scelta si dovrà ciccare sul pulsante >> . E’ opportuno ricordare che non è obbligatorio inserire tutti i campi di una tabella in una maschera: si può anche scegliere di inserirne solo una parte di essi, così come è possibile mettere i campi secondo un ordine diverso da quello memorizzato nella tabella. In ogni caso, dopo aver scelto i campi da inserire nella maschera, occorre cliccare sul tasto Avanti e passare alla finestra successiva, mostrata in fig. 5.4.5, che serve a scegliere il layout (ovvero la disposizione) della maschera ed è divisa in due parti: a destra sono elencati i diversi tipi disponibili, mentre a sinistra sarà mostrata un’anteprima della maschera che si sta realizzando. (Figura 5.4.5) Finestra per la scelta del layout della maschera. Imm189.tif Nell’ipotesi in cui si scelga il tipo A colonna e che si prema di nuovo il pulsante Avanti sarà visualizzata la finestra di cui alla fig. 5.4.6, che serve ad attribuire uno stile alla maschera. Anche in questo caso la finestra è divisa in due parti: a sinistra viene presentata l’anteprima, mentre a destra sono elencati gli stili disponibili. Nell’ipotesi in cui si lasci l’impostazione proposta (Office) e dopo aver cliccato su Avanti, verrà presentata l’ultima finestra della creazione guidata (V. fig. 5.4.7): occorre nella sostanza attribuire un nome alla maschera e indicare se si desidera aprirla subito oppure se si vuole operare qualche modifica alla maschera appena creata. Pertanto dopo aver digitato un nome appropriato (ad esempio Gestione Dischi), si può scegliere la prima ipotesi già impostata (Aprire la maschera per visualizzare o inserire le informazioni) e premere il pulsante Fine. 35 (Figura 5.4.6) Finestra per la scelta dello stile da applicare alla maschera. Imm190.tif occorre (Figura 5.4.7) Finestra per l’attribuzione del nome alla maschera. Imm191.tif In questo caso, la chiusura della procedura di creazione guidata salva la maschera appena creata e ne provoca l’apertura (Fig. 5.4.8): quando si vuole, si può iniziare ad operare sui dati della tabella Dischi attraverso la maschera. 36 (Figura 5.4.8) Maschera “Gestione Dischi”. Imm192.tif Una volta creata una maschera, essa è visibile nel riquadro di spostamento della finestra del database, così come riportato nell’esempio di fig. 5.4.9, in cui - per soli motivi di chiarezza - la maschera appare cerchiata nell’ellisse rossa. Per poter eseguire (o aprire) la maschera, sarà sufficiente cliccare due volte sul nome della maschera. (Figura 5.4.9) Oggetti di un database. 37 Imm268.tif 4.2 Modificare, inserire ed eliminare record attraverso maschere L’uso della maschera è intuitivo e molto semplice; nella sua barra di stato, posta nella parte inferiore della maschera trovano posto gli stessi pulsanti, già descritti a proposito delle tabelle, che permettono all’utente di spostarsi al primo record della tabella ( ), al record precedente ( ), a quello successivo ( ) e all’ultimo ( ). L’ultimo pulsante della barra di stato ( ) serve ad inserire un nuovo record; lo stesso risultato si ottiene anche se, giunti all’ultimo record, si clicca sul pulsante di passaggio al successivo. Anche in questo caso il salvataggio avviene automaticamente passando ad un altro record. La casella centrale di questa piccola barra di navigazione mostra un numero, coincidente con il numero relativo di record sul quale ci si trova posizionati in quel determinato istante. La stessa casella permette altresì di spostarsi ad un record specifico, semplicemente inserendo il numero corrispondente alla sua posizione e premendo il tasto Invio. La modifica dei dati è molto semplice: basta posizionare il punto d’inserimento sul campo che si vuole modificare ed eseguire le correzioni; il passaggio ad altro record salva automaticamente le modifiche fatte, a meno che non si sia violata qualche regola di validazione o d’integrità referenziale, casi nei quali appare una finestra di avvertimento dell’errore commesso, come dimostra l’esempio rappresentato in fig. 5.4.10. (Figura 5.4.10) Violazione di una regola di validazione. Imm197.tif Per eliminare dati in un record, ad esempio l’anno di pubblicazione di un disco memorizzato nel campo Anno_Disco di cui alla Fig. 5.4.10, dopo aver proceduto a rendere corrente il record interessato all’operazione, è sufficiente posizionare il punto d’inserimento nel campo relativo (Anno_Disco dell’esempio), cliccare due volte con il mouse allo scopo di selezionare l’intero contenuto del campo ed infine premere dalla tastiera CANC oppure cliccare sul pulsante Elimina dalla barra multifunzione (scheda Record) come mostra la fig. 5.4.11. Per inserire un nuovo record attraverso la maschera, si può seguire in alternativa uno dei tre procedimenti di seguito elencati: 1. Cliccare sul pulsante Nuovo dal gruppo di comandi Record (V. fig. 5.4.11); 2. Cliccare sul pulsante Nuovo record (vuoto) sulla barra di navigazione ( ) 3. Ricorrere alla scorciatoia premendo dalla tastiera Ctrl + + ; 38 Pulsante Elimina per eliminare dati in un record attraverso una maschera Pulsante Nuovo per inserire dalla maschera un nuovo record (Figura 5.4.11) Gruppo di comandi Record . Imm198.tif In ogni caso, a prescindere dal metodo scelto, apparirà una maschera con i campi vuoti come quella mostrata dalla fig. 5.4.12. (Figura 5.4.12) Finestra per l’inserimento di un nuovo record. Imm200.tif Dopo aver proceduto a riempire i diversi campi, si può cliccare su un pulsante della barra di stato oppure ancora procedere all’inserimento di un nuovo record secondo le regole appena descritte. Per cancellare un record attraverso l’uso della maschera, è necessario dapprima selezionarlo, operazione che si può compiere cliccando, se presente, il Selettore record, che è il pulsante grigio, che occupa, per tutta la sua altezza, il lato sinistro dello spazio occupato dal record. Un record selezionato può essere deselezionato con un clic su un punto qualsiasi della maschera al di fuori del selettore. opportunamente sulla barra di stato. L’eliminazione del record selezionato può avvenire poi con una delle procedure seguenti: • selezionando il comando Elimina record dopo aver cliccato sul pulsante Elimina presente sulla barra multifunzione (Fig. 5.4.13). • premendo sulla tastiera il tasto Canc. 39 (Figura 5.4.13) Eliminazione di un record ricorrendo al pulsante Elimina record. Imm201.tif In ogni caso, si apre la finestra di dialogo di figura 5.4.14 che chiede di confermare l’eliminazione. (Figura 5.4.14) Conferma dell’eliminazione di un record. Imm202.tif 4.3 Modificare una maschera Per modificare una maschera, occorre nella finestra del database, nel riquadro di spostamento, selezionare dapprima la maschera e poi richiederne la Visualizzazione Struttura, attraverso l’apposito pulsante 40 presente nella barra multifunzione, come mostra la fig. 5.4.15. (Figura 5.4.15) Diverse modalità di visualizzazioni per la maschera . Imm213.tif Una volta richiesta la Visualizzazione Struttura, apparirà una finestra come quella di fig. 5.4.16. (Figura 5.4.16) Visualizzazione Struttura di una maschera . Imm203.tif La struttura della maschera si presenta come una serie di aree all’interno delle quali sono contenute caselle di testo, etichette dei dati ed altri oggetti. Lo sfondo della finestra ha una griglia per agevolare le operazioni di allineamento del testo. E’ possibile spostare sia le caselle di etichette, sia le caselle dei dati in modo da ridisegnare la maschera. Per far questo basta selezionare una casella e con il drag & drop spostarla. E’ possibile aggiungere oggetti di controllo (caselle di testo, etichette, pulsanti, ecc.) nella maschera. Queste operazioni si eseguono utilizzando il gruppo di comandi Controlli presente nella scheda Struttura della barra multifunzione, così come mostrato in fig. 5.4.17. 41 casella di testo pulsante di comando etichetta (Figura 5.4.17) Gruppo di comandi Controlli della scheda Struttura della barra multifunzione. Imm269.tif Facciamo un esempio di inserimento di un pulsante di controllo: per inserire un pulsante si clicca sull’icona corrispondente al pulsante di comando, come indicato in fig. 5.4.17. Successivamente occorre posizionare con il mouse il cursore sul punto dove si desidera inserire il pulsante ed infine si disegna il pulsante con la tecnica del drag & drop. Apparirà una finestra come in fig. 5.4.18, in cui occorre scegliere la categoria del pulsante cui l’azione è associata. (Figura 5.4.18) Creazione guidata Pulsante di comando. Imm270.tif Successivamente bisogna cliccare su Avanti e poi, nella finestra successiva scegliere il disegno da applicare al pulsante ed infine nella terza finestra cliccare su Fine. L’effetto finale sulla maschera sarà quello mostrato a titolo di esempio in fig. 5.4.19, dove cliccando sul pulsante aggiunto viene eseguita l’operazione associata al pulsante. 42 (Figura 5.4.19) Maschera con pulsante di uscita. 43 Imm271.tif 5 Cercare Informazioni 5.1 Utilizzare i comandi Trova e Cerca Uno degli scopi principali dell’utente di un database consiste nel ricercare le informazioni necessarie a soddisfare un bisogno informativo. Occorre trovare ciò che si cerca nel modo più rapido e preciso possibile. Microsoft Access mette a disposizione dell’utente una vasta gamma di strumenti di ricerca, cercando di ricoprire il massimo numero di esigenze, garantendo nel contempo buone prestazioni anche in presenza di archivi voluminosi e complessi e rispondendo anche a necessità molto specifiche. Gli strumenti messi a disposizione sono vari e molteplici: il primo consiste nella funzione Trova, che permette di individuare record specifici o trovare determinati valori all’interno dei campi di una tabella. Il comando Trova consente di trovare ogni occorrenza (cioè ogni ripetizione) di quanto richiesto e può essere utilizzato indifferentemente sul foglio dati di una tabella oppure sulla maschera ad essa collegata. Per trovare una parola, un numero o una data in un campo attraverso la funzione Trova, occorre che la tabella o la maschera nella quale si vuole compiere la ricerca sia stata precedentemente aperta. Successivamente occorre procedere a collocare il punto di inserimento nel campo o nella colonna in cui si vuole svolgere la ricerca, così come mostra la fig. 5.5.1., in cui si ipotizza che il cursore sia stato collocato nel campo Nome_brano. (Figura 5.5.1) Posizionamento nel campo dove compiere la ricerca. Imm110.tif Successivamente, facendo uso della scheda Home della barra multivolume, si deve cliccare sul pulsante Trova, con l’effetto di visualizzare la finestra rappresentata in fig. 5.5.2, che prevede due schede: Trova e Sostituisci. 44 (Figura 5.5.2) Utilizzo del comando Trova. Imm111.tif Per ricercare il record contenente un determinato profilo (o stringa), sarà sufficiente digitare nella casella di testo Trova la parola desiderata (eventualmente utilizzando le opzioni presentate nella finestra) e poi cliccare sul pulsante Trova successivo: verrà visualizzato in chiaro il record contenente la prima occorrenza della stringa digitata in precedenza (V. fig. 5.5.3), mentre per ricercare successivi record contenenti la medesima stringa, occorrerà fare clic nuovamente su Trova successivo. (Figura 5.5.3) Risultato della ricerca di una stringa in un campo di tabella. Imm112.tif Le medesime modalità appena viste per cercare una stringa, un numero o una data all’interno di una tabella possono essere applicate anche per le maschere. In fig. 5.5.4 è riportato il caso di un’ipotetica ricerca in una maschera di dati relativi a dischi di un determinato titolo di una raccolta. 45 (Figura 5.5.4) Utilizzo della funzione Trova per una maschera. Imm114.tif Con la versione 2007, Microsoft Access offre uno strumento aggiuntivo per cercare i record delle tabelle che contengono una determinata stringa o numero o data. Si tratta della casella Cerca presente nella parte inferiore della tabella in Visualizzazione Foglio dati. (Figura 5.5.5) Ricerca di record attraverso la casella Cerca. Imm113.tif Nell’esempio rappresentato nella fig. 5.5.5, si ipotizza di voler ricercare il record contenente la data di prestito del 01/06/2009: per fare ciò, dopo aver aperto la tabella Prestiti nella modalità di visualizzazione Foglio dati, sarà sufficiente digitare direttamente nella casella Cerca la data in questione e Microsoft Access direttamente evidenzierà in nero il primo record contenente al suo interno quella data, anche durante la digitazione seppur parziale della data. Per visualizzare eventuali altri record successivi a quello già visualizzato, basterà premere il tasto di Invio. 46 5.2 Applicare filtri a tabelle e maschere Microsoft Access mette a disposizione dell’utente di database il filtro, ovvero uno strumento grafico facile e flessibile che permette di estrarre da una tabella e visualizzare tutti i record che hanno una certa caratteristica in comune. Come già descritto per il comando Trova, il filtro può essere applicato sia ad una tabella sia ad una maschera. Nel primo caso, il foglio dati mostra solo i record significativi, ovvero quelli che, in altre parole, rispondono al criterio impostato nella costruzione del filtro; nel secondo caso, la maschera consentirà di visualizzare solo questi, come se fossero gli unici presenti. In entrambi i casi, la tabella apparirà all’utente come se fosse composta solo dai record significativi. Se si prende ad esempio in esame la tabella Brani, potrebbe essere interessante elaborare i soli record appartenenti allo stesso disco; Un filtro può essere applicato in vari modi: il più semplice è quello di aprire il foglio dati, posizionare il punto di inserimento sul campo che si vuole filtrare, attivare il menu contestuale, scegliere la voce Filtri (numerici o di testo o di data, a seconda della tipologia del campo selezionato) ed inserire, nella casella predisposta a tale scopo, il valore che si vuole usare come discriminante (Fig. 5.5.6). (Figura 5.5.6) Il comando Filtro del menu contestuale di un campo . Imm115.tif Nel caso della fig. 5.5.6 dove si ipotizza l’utilizzo della tabella Brani, si vogliono elaborare i soli brani che si riferiscono al disco 13. In questo caso, si può cliccare sulla voce Uguale a 13. 47 Successivamente il foglio dati apparirà costituito solo da quei record che interessano il disco con identificativo 13, come rappresentato in Fig. 5.5.7. Si noti come affianco al campo Id_disco compaia il simbolo , indicante un filtro. Nella barra di stato del foglio dati appare il numero dei record filtrati che corrispondono alla richiesta. (Figura 5.5.7) Applicazione del filtro alla tabella Brani. Imm116.tif per indicare che i 9 Inoltre, nella parte inferiore della finestra, compare la dicitura record visualizzati non sono gli unici record della tabella Brani, ma costituiscono il risultato dell’applicazione di un Filtro alla tabella Brani. L’applicazione di un filtro, così come descritto in precedenza, può essere realizzata anche facendo uso della barra multifunzione: nella scheda Home, esiste il gruppo di comandi Ordina e filtra che al suo interno contiene il pulsante Filtro: se dopo aver cliccato su una certa colonna della tabella si clicca sul pulsante Filtro, appare una finestra che evidenzia tutti i valori contenuti in quella colonna (V. fig. 5.5.8). (Figura 5.5.8) Utilizzo del pulsante Filtro alla tabella Brani. Imm119.tif 48 A quel punto, si può mantenere selezionato solo quel valore (o quei valori) per i quali si desidera l’applicazione del filtro desiderato. Sempre facendo uso della barra multifunzione, in molte circostanze è utile, durante la navigazione di una tabella, vedere tutti i record che presentano contenuti simili in un certo campo. Ad esempio, in riferimento alla tabella Brani, durante la navigazione il cursore è posto sulla durata 4’44” del settimo record e ci si potrebbe chiedere: quali sono i brani che presentano la medesima durata ? In questo caso, basterebbe cliccare sul pulsante Selezione posto sempre all’interno del gruppo Ordina e filtra della scheda Home della barra multifunzione. Apparirà un elenco di possibili comandi, rappresentati in fig. 5.5.9: è chiaro che cliccando la prima opzione (Uguale a 4’44”) verranno visualizzati i soli record della tabella che rispettano la condizione in esame. (Figura 5.5.9) Comando Selezione . Imm124.tif L’esatto contrario della condizione discussa è ottenuta attraverso la voce Non contiene 4’44”: in questo caso il foglio dati mostrerebbe solo i record nei quali il campo non contiene esattamente il criterio di filtro. È possibile filtrare la tabella anche in base a più criteri contemporaneamente, usando il comando Filtro in base a maschera conseguente al pulsante Avanzate del gruppo Ordina e filtra (Fig. 5.5.10): questo comando provoca l’apertura di una struttura di selezione, costituita da un record completamente vuoto che va riempito con le condizioni per applicare il filtro (Fig. 5.5.11). Nei campi di questo record si possono inserire i criteri di filtro, selezionandoli, se del caso, da un menu a discesa che mostra i valori presenti nella tabella. (Figura 5.5.10) Comando Filtro in base a maschera . Imm125.tif (Figura 5.5.11) Record nel quale inserire i criteri per il filtro. Imm126.tif Nell’esempio di cui alla fig. 5.5.11, sono stati posti due criteri: il primo riguarda il nome del soggetto cui si vuole applicare il filtro (Bianchi Anna), mentre il secondo è relativo alla data del prestito, ovvero successiva al 30/05/2009. Si noti che per quanto riguarda il nome, dato che si tratta di una stringa di testo, il criterio delimita con le virgolette la stringa di riferimento. Per la 49 data invece, occorre tener presente che occorre delimitarla con il carattere # ; inoltre la condizione utilizza anche il simbolo “maggiore di” che viene codificato con il carattere > . Una volta inseriti tutti i criteri, sempre dalla barra multifunzione si può cliccare sul pulsante : il risultato, sarà che dei tanti record verranno visualizzati solo quelli che rispettano ambedue i criteri indicati (V. fig. 5.5.12), secondo l’operatore logico AND. (Figura 5.5.12) Filtro con diverse condizioni applicate. Imm127.tif Se invece si vogliono applicare più criteri, ma secondo logiche alternative fra di loro (o, come si dice in linguaggio di logica booleana, in OR), si deve fare uso della scheda Oppur presente nella parte inferiore del filtro. Ad esempio, se si vogliono visualizzare i soli record di Bianchi Anna oppure di Frizzi Sandra, dopo aver indicato il primo nome (come in fig. 5.5.13), si deve cliccare su Oppur e poi digitare il nome “Frizzi Sandra” nel campo Prestato_A, così come mostra la fig. 5.27. (Figura 5.5.13) Utilizzo di criteri Or nel filtro in base a maschera. Imm129.tif La logica sottesa dall’applicazione del filtro è di estrarre i soli record che presentano come soggetto del prestito Bianchi Anna oppure Frizzi Sandra. Il risultato sarà quello presentato nella fig. 5.5.14. (Figura 5.5.14) Applicazione di filtro composto da più condizioni Or. Imm130.tif Il comando Attiva/disattiva filtro consente, in qualsiasi momento, di applicare alla tabella l’ultimo filtro che è stato creato. Per rimuovere un filtro, oltre che fare uso del comando Attiva/disattiva filtro, presente nella barra multifunzione, all’interno del gruppo Ordina e filtra, si può anche agire sull’icona che compare affianco al campo cui è stato applicato il filtro. Se si clicca su tale icona, compare la finestra rappresentata in fig. 5.5.15, dalla quale è sufficiente selezionare il comando Cancella filtro da. 50 (Figura 5.5.15) Menu contestuale del filtro. Imm132.tif Come detto inizialmente, un filtro può essere applicato oltre che ad una tabella anche ad una maschera. 5.3 Le query Allo scopo di rendere le interrogazioni fruibile per l’utente di database, Microsoft Access prevede che all’interno del database si possa realizzare un particolare oggetto detto query (letteralmente interrogazione) dd indicato dall’icona Le query in un database di Microsoft Access rappresentano le fondamentali procedure componenti il lavoro con i database: in un certo senso, esse rappresentano il vero scopo per cui si dedica molto tempo per memorizzare i numerosissimi dati sotto forma di tabelle: la funzione di una query consiste nel dare la possibilità di interrogare una o più tabelle per estrarre informazioni. E’ bene perciò comprendere un concetto fondamentale: con le query non si creano nuove informazioni, ma si estraggono i dati già presenti nelle tabelle del database e si presentano questi ultimi in forme leggibili e facilmente fruibili all’utilizzatore del database . Il risultato di una query può essere mostrato oltre che in un foglio dati di una tabella anche in una maschera. Una modalità richiesta di presentazione delle informazioni potrebbe essere un elenco in ordine alfabetico o in ordine crescente rispetto a numeri o date. In questo caso si parla più propriamente di query di ordinamento. Una query di selezione invece è caratterizzata da una modalità di presentazione dei dati estratti in termini di vero e proprio filtro dei risultati: ad esempio, si potrebbe pensare ad una query che richiede di visualizzare l’elenco dei soli clienti morosi ed appartenenti ad una determinata zona geografica e per i quali si desidera elencare la sola ragione sociale e consistenza del debito. La fig. 5.5.16 riporta nel riquadro di spostamento tre query rispettivamente di nomi Libri di ECO, libri economici e Libri Prestati. Nella parte destra della figura compare il risultato della query Libri Prestati che elenca solo i libri prestati in un determinato momento. Vengono visualizzati per ciascun libro il titolo, il nome ed il cognome dell’autore. 51 (Figura 5.5.16) Esempio di query di selezione. Imm133.tif 5.4 Creare query con criteri semplici Per creare una query in Microsoft Access in modo semplice, si suggerisce di utilizzare la procedura di creazione guidata. Per mostrare come si realizza una query, ipotizzeremo di voler elencare tutti i dischi che sono memorizzati nella tabella Dischi presente nel database Musica. Dopo aver aperto il database Musica, nella barra multifunzione, occorre cliccare sulla scheda Crea e da quest’ultima ricorrere al gruppo di comandi Altro (V. fig. 5.5.17), in cui si deve ciccare sul pulsante Creazione guidata Query. (Figura 5.5.17) Gruppo di comandi Altro. Imm134.tif Apparirà una prima finestra (rappresentata in fig. 5.5.18) per la creazione della query per specificare la tipologia di interrogazione da realizzare (Figura 5.5.18) Prima finestra per la creazione di una nuova query. Imm135.tif 52 Dopo aver selezionato la voce Creazione guidata Query semplice ed aver cliccato sul pulsante OK, apparirà la finestra rappresentata in fig. 5.5.19, nella quale devono essere sostanzialmente indicate: • le tabelle da includere nella ricerca dei dati • i campi delle tabelle selezionate da includere nell’estrazione dei dati (Figura 5.5.19) Seconda finestra per la creazione di una nuova query semplice. Imm136.tif Nel nostro esempio, i dati da estrarre sono memorizzati nelle due tabelle Dischi e Brani e pertanto nella casella di riepilogo Tabelle/query, sarà sufficiente dapprima selezionare Tabella Dischi, come mostrato in fig. 5.5.20. (Figura 5.5.20) Scelta della tabella da includere nella query. Imm137.tif Una volta selezionata la tabella Dischi, più in basso, nell’altra casella Campi disponibili appariranno tutti i campi della tabella scelta. Usando, nel modo noto, i pulsanti , , e , si possono spostare nella casella Campi selezionati, quelli che si vogliono siano inseriti nella query. Per procedere nel nostro esempio, si ricorda che terminata questa operazione, potremo scegliere l’altra tabella Brani e ripetere tale procedimento, sino a che saranno stati selezionati tutti i campi che si desidera inserire nella query. Per il nostro esempio, si estrarranno (utilizzando il pulsante ) i campi Id_Disco, Tipo_Disco, Utilizzato, Prestito_Disco, Titolo_Disco, Cod_Art_Disco e Anno_Disco. Si può naturalmente scegliere l’ordine che si considera più appropriato per quello che intende fare della query e pertanto, la situazione prescelta è mostrata in fig. 5.5.21. 53 (Figura 5.5.21) Scelta dei campi da includere nella query. Imm143.tif A questo punto si tornerà ad utilizzare il menu a discesa relativo alla casella Tabelle/query e si selezionerà Brani: nella casella Campi disponibili scegliamo Brano, Progressivo e Durata. Abbiamo così selezionato tutti i campi che ci interessano (V. fig. 5.5.22): premiamo il pulsante Avanti e proseguiamo ad essere assistiti nel wizard della creazione query. (Figura 5.5.22) Situazione finale di scelta dei campi da includere nella query. Imm144.tif Data la presenza di campi prescelti di tipo numerico, la finestra successiva (V. fig. 5.5.23) ci chiede se vogliamo creare una query di dettaglio, nella quale siano mostrati tutti i dati contenuti nei campi selezionati, o di riepilogo, nella quale si esegue un riepilogo dei valori numerici presenti nei campi selezionati; è chiaro che nel caso in cui non siano presenti campi di tipo numerico, la finestra non appare. Dopo aver scelto il default Dettaglio ed aver cliccato sul pulsante Avanti, nella finestra successiva (Fig. 5.5.23) attribuiamo il nome alla query (nel nostro esempio Catalogo) e terminiamo la procedura di creazione, scegliendo di aprire immediatamente la query e cliccando sul pulsante Fine. 54 (Figura 5.5.23) Finestra per la scelta fra dettaglio o riepilogo della query. Imm145.tif (Figura 5.5.24) Indicazione del nome da assegnare alla query. Imm146.tif I dati scelti appariranno raggruppati in un unico foglio dati, come se provenissero da un’unica tabella (Fig. 5.5.25). 55 (Figura 5.5.25 )Il risultato della query. Imm147.tif Aggiunta di criteri ad una query Se invece dalla finestra di cui alla fig. 5.5.24, si sceglie l’opzione Modifica la struttura della query, appare la finestra di cui alla fig. 5.5.26 che visualizza la struttura della query appena creata. (Figura 5.5.26 ) Struttura di una query. Imm272.tif La finestra è divisa in due parti: sopra si possono vedere le tabelle sottoposte all’elaborazione e le eventuali relazioni esistenti tra loro. Nella parte inferiore della finestra trovano invece posto i campi che si vogliono che siano compresi nella query, per ciascuno dei quali bisogna sono definite le proprietà, quali ad esempio l’ordinamento o eventuali criteri di validazione. 56 Di seguito descriviamo le righe che costituiscono la struttura della query: • Campo: consente di scegliere, grazie ad un menu a discesa, quali campi di quali tabelle vogliamo siano inseriti nella query. Microsoft Access consente di inserire un campo anche con il trascinamento attraverso il mouse (drag and drop) del campo dall’elenco della tabella d’origine alla cella Campo di una colonna della query (in questo caso, automaticamente sarà riempita anche la cella Tabella). • Tabella: consente di individuare, grazie ad un menu a discesa, la tabella dalla quale vogliamo estrarre i campi; se abbiamo già eseguito la scelta nella riga superiore, in questa apparirà solo il nome della tabella d’origine mentre se iniziamo ad operare da qui, nella riga Campo appariranno solo i campi della tabella scelta. • Ordinamento: ci permette di esporre i dati in ordine crescente (ad esempio dal numero più piccolo al più grande, in ordine alfabetico, dalla data più remota alla più recente), decrescente o di non riordinarli in alcun modo. • Mostra: è un campo logico che ci permette di mostrare o di nascondere il campo. • Criteri: serve ad inserire i criteri che un dato deve soddisfare per essere inserito nella query. • Oppure: insieme alle righe sottostanti senza titolo, serve ad aggiungere altri criteri che un dato deve soddisfare per essere inserito nella query. Proviamo adesso ad applicare anche un criterio: vogliamo, infatti, che nella query compaiano solo i Compact disc (carattere “C” in Tipo_Disco) e non i vecchi dischi in vinile( caratterizzati dalla lettera “V” nel campo Tipo_Disco). • Il modo più immediato per ottenere il risultato atteso consiste nello scrivere =”C” in corrispondenza del campo Tipo_Disco e nella riga Criteri. Ai campi possono essere attribuiti più criteri: se essi sono scritti nella stessa riga, Microsoft Access li considererà collegati tra loro dall’operatore booleano AND (il record deve soddisfare la prima e la seconda condizione contemporaneamente), se in righe diverse dall’operatore OR (il record deve soddisfare almeno una delle due condizioni indicate). Applichiamo quanto abbiamo descritto al nostro esempio: abbiamo attribuito al campo Tipo di disco il criterio =”C” e ciò significa che la query estrapolerà dalla tabella solo i record che soddisfano questa condizione, ovvero saranno estratti i soli dischi di tipo Compact Disc. Al campo Prestito_Disco (di tipo Si/No) dalla tabella Dischi assegneremo il criterio Vero: in questo modo saranno selezionati solo i record riguardanti i CD che sono stati dati in prestito (contenenti cioè nel campo Prestito_Disco il valore logico Si). Lo stato finale della struttura della query che stiamo realizzando si presenta come in fig. 5.5.27. 57 (Figura 5.5.27) Struttura finale della query per estrarre i soli Compact Disc prestati. Imm273.tif Proviamo ora ad eseguire quanto abbiamo realizzato: per fare ciò, ricorreremo al gruppo di comandi Risultati (V. fig. 5.5.28) che si trova nella scheda Struttura della barra multifunzione. (Figura 5.5.28) Gruppo di comandi Risultati di una query. Imm158.tif Nel gruppo troviamo due pulsanti: Visualizza e Esegui. Per il nostro scopo, possiamo cliccare sull’uno o sull’altro pulsante e sarà visualizzato il risultato della nostra query, rappresentato in fig. 5.5.29. (Figura 5.5.29) Risultato di una query. Imm274.tif Come mostrato in figura, sono visualizzati i soli dischi di tipo Compact Disc e dati in prestito. 58 Alla fine del lavoro, occorre procedere ad effettuare il salvataggio della query: possiamo usare il comando Salva dalla barra degli strumenti di accesso rapido, oppure usare la scorciatoia (Maiusc + F12) oppure chiedere il menu contestuale (V. fig. 5.5.30) cliccando il tasto destro del mouse sulla linguetta contenente il nome provvisorio della query (nel nostro esempio Catalogo). (Figura 5.5.30) Menu contestuale per l’oggetto query. Imm160.tif Un’altra strada da seguire per salvare la query consiste nel chiudere la finestra della struttura in alto a destra oppure scegliendo la della query (cliccando sul pulsante di chiusura finestra voce Chiudi dal menu contestuale): in questo caso apparirà il messaggio di figura 5.5.31, che chiede se si vogliono salvare le modifiche apportate. (Figura 5.5.31) la richiesta di salvataggio della struttura della query. Imm275.tif 5.4 Caratteri Jolly Quando si conosce una parte di un testo da ricercare si possono usare come criteri due caratteri jolly: “*” (asterisco) “?” (punto interrogativo). Il primo carattere (*), messo all’inizio di una parola o dopo la parola, cerca tutte le occorrenze di quella parola, indipendentemente da cosa la precede o la segue. Il secondo carattere (?), messo all’interno di una parola, cerca tutte le occorrenze di quelle parole che sono uguali alla parola indicata a meno del carattere in corrispondenza del “?”. I due caratteri per essere utilizzati devono essere preceduti dall’operatore like. Esempi Se si vogliono cercare tutti i cognomi che iniziano con “Di” si scriverà nei criteri della colonna cognome : like “Di*” 59 Se si vogliono cercare tutti i nati nel 1987, si scriverà nei criteri della colonna data : like “*1987” Se si vogliono cercare tutti i cognomi tipo “Frasca”, “Frisca”, “Frosca”, … cioè che differiscono solo di un carattere si scriverà nei criteri della colonna cognome : like “Fr?sca” Una volta creata una query occorre salvarla con un nome. A questo punto essa compare nella finestra del database e cliccandoci sopra due volte viene eseguita. 60 6. Generare Report Lo strumento utile per pubblicare il frutto del lavoro di ricerca ed estrazione di dati provenienti da tabelle e da query è costituito dal report, che letteralmente in lingua italiana indica la parola rapporto. Un report di Microsoft Access offre possibilità molto più ampie di una semplice stampa di record di una tabella o di una query. Il seguente elenco costituisce un gruppo di possibili esempi ottenibili da un report di Microsoft Access: • lista dei i brani componenti ciascun disco, raggruppati per cantante o per anno di pubblicazione • quantità di dischi eseguiti da ciascun cantante o pubblicati in ciascun anno • quantità di dischi dati in prestati, raggruppati per tipologia di dischi (CD o vinile) • lista dei dischi prestati nel mese di maggio 2009 . Un report pertanto non è una procedura di stampa, né una sorta di impaginazione realizzata per migliorare la leggibilità delle informazioni ricavate da un database, ma è molto di più: è uno strumento che opera in maniera autonoma sul database, non producendo puri e semplici elenchi, fedeli riproduzioni del foglio dati, ma organizzando le informazioni secondo precisi criteri di selezione. Come accennato poc’anzi, le funzionalità offerte dalla tipologia report di Microsoft Access sono: • informazioni dettagliate e riepilogative provenienti da una o più tabelle e query • inclusione nella stampa di possibili calcoli su dati, di immagini, ClipArt e fotografie • possibilità di utilizzare avanzate tecniche di formattazione per facilitare la lettura e la comprensione dei dati esposti su carta • gestione di intestazioni e di piè di pagina per identificare le pagine stampate e per integrarle con informazioni utili (data, ora, numerazione di pagina, ecc.) • raggruppamento ed ordinamento delle informazioni stampate in base a criteri facilmente indicati e gestiti dall’utente Allo scopo di facilitare il lavoro dell’utente e di salvaguardare l’ambiente, senza inutili sprechi di carta e disagio per l’utente, Microsoft Access realizza i report in modo da pubblicarli sia su carta che soltanto sul video. 6.1 Creare un Report Per descrivere la creazione di un report, poniamoci l’obiettivo di ottenere dal database Musica un elenco dei brani componenti ciascun disco che abbiamo in catalogo: dopo aver aperto il database Musica, occorre cliccare sulla scheda Crea della barra multifunzione. Per quanto concerne il nostro esempio, ci concentreremo sul gruppo di comandi Report, mostrato in fig. 5.6.1, dal quale si evince che esistono diverse modalità per procedere alla creazione di un report. (Figura 5.6.1) Gruppo di comandi Report (scheda Crea). Imm218.tif Si può infatti ricorrere ad una creazione rapida di un report in formato colonna e basato su dati memorizzati in una tabella o query selezionati attraverso il pulsante Report, così come si può 61 invece utilizzare la procedura di creazione guidata di un report facendo clic sull’omonimo pulsante. Iniziamo a richiedere la creazione rapida di un report per renderci conto della facilità con cui Microsoft Access realizzi un report automaticamente e con pochi clic. Prima di tutto, selezioniamo nel riquadro di spostamento la query Catalogo, già oggetto della nostra attenzione così come descritta nella precedente unità didattica. Successivamente clicchiamo sul pulsante Report, come detto presente all’interno del gruppo di comandi Report (scheda Crea) della barra multifunzione. Dopo pochi attimi, si presenta a video il nostro report in modalità anteprima, rappresentato in fig. 5.6.2: notiamo che il report si presenta con un’intestazione composta da un logo standard, un titolo e la data con orario; inoltre, sempre in alto al report è riportata una riga con l’indicazione dei nomi dei campi. Nel corpo del report sono presenti i record provenienti dalla query che, come ricorderemo, contiene tutti i brani raggruppati per dischi di riferimento. Il report in esame si presenta in modo semplice e con qualche limite legato alla poca eleganza (i titoli sono appena accettabili in quanto non sono altro che i nomi dei campi, ripetitivi ed in certi casi lunghi o poco chiari) ed alla eccessiva ripetizione di taluni dati (ad esempio l’identificatore del disco, il titolo del disco, ecc). (Figura 5.6.2) Anteprima del report Catalogo. Imm220.tif Proviamo, allora ad ottenere lo stesso report, ma questa volta ricorrendo alla procedura Creazione guidata Report, ottenibile cliccando sul pulsante omonimo sulla barra multifunzione. 62 La prima finestra della creazione guidata è, come il solito, quella che ci permette di scegliere la tabella o la query dalla quale estrarre i dati ed i campi che vogliamo siano compresi nel rapporto (Fig. 5.6.3): l’operazione si svolge in modo identico alle modalità già descritte precedentemente a proposito della creazione guidata maschera. Effettuata la scelta dei campi, cliccando sul tasto Avanti passiamo alla seconda finestra, nella quale possiamo indicare l’ordine in base al quale visualizzare i dati, dato che essi provengono in ultima analisi da due tabelle (Dischi e Brani). Questa finestra, se eseguiamo la creazione guidata Report in base ad una semplice tabella, non viene visualizzata. Nel nostro caso, le possibilità sono due: indichiamo di voler procedere alla visualizzazione in base ai Dischi (V. fig. 5.6.4). (Figura 5.6.3) La finestra della creazione guidata per la scelta della tabella e dei campi da inserire nel report. Imm221.tif 63 (Figura 5.6.4) La finestra della creazione guidata per la visualizzazione dei dati in base all’una o all’altra tabella componenti la query. Imm222.tif Cliccando di nuovo sul tasto Avanti viene visualizzata una finestra successiva, nella quale si può indicare se uno o più dei campi inseriti devono essere usati come criterio di raggruppamento: questo significa che, nel report, saranno messi insieme tutti i record che contengono lo stesso valore per il campo di raggruppamento. Nel nostro caso, così come mostra la fig. 5.6.5, dato che nella finestra precedente abbiamo già scelto di visualizzare i dati in base alla tabella Dischi, viene già impostato un ordine di raggruppamento basato sui campi della tabella Dischi (Id_Disco, Tipo_Disco, Prestito_Disco). Pertanto, clicchiamo sul pulsante Avanti per passare alla finestra successiva, rappresentata in fig. 5.6.6, dove possiamo indicare se vogliamo che i (Figura 5.6.5) La finestra per la scelta dei campi di raggruppamento. 64 Imm223.tif record siano ordinati in base ad un determinato campo: premiamo il pulsante posto a destra della prima casella e, dal menu a discesa che appare, scegliamo il campo che vogliamo sia ordinato; il pulsante Crescente all’estrema destra serve per indicare se si desidera un ordinamento crescente o decrescente. Ogni report può essere ordinato per un massimo di quattro campi, ognuno dei quali con ordinamento crescente o decrescente (Fig. 5.6.6). Scegliamo di ordinare secondo il campo Nome_brano e clicchiamo su Avanti. L’elenco a cascata per la scelta del campo su cui ordinare (Figura 5.6.6) La finestra per l’indicazione di campi di ordinamento del report. Imm224.tif La finestra successiva consente di scegliere il tipo di impaginazione (layout) che si vuole adottare e l’orientamento, verticale od orizzontale, da attribuire al report (Fig. 5.6.7). (Figura 5.6.7) La finestra per la scelta del layout del report. 65 Imm225.tif Dopo aver effettuato le scelte opportune, si clicca sul tasto Avanti per passare alla finestra dove scegliere lo stile del report, mostrata in fig. 5.6.8: come in quella precedente, anche qui dopo aver effettuato la scelta si clicca sul tasto Avanti. (Figura 5.6.8) La finestra per la scelta dello stile del report. Imm226.tif Giunti all’ultima finestra della creazione guidata, occorre ora attribuire il nome al report e scegliere se vedere, all’uscita della procedura, un’anteprima del rapporto oppure procedere ad un’eventuale variazione della struttura del report appena creato(Fig. 5.6.9). Chiamiamo il report con il titolo Elenco dei dischi e scegliamo di Visualizzare un’anteprima del report, cliccando poi sul pulsante Fine. L’uscita dalla procedura di creazione guidata corrisponde ad un salvataggio. 66 (Figura 5.6.9) La finestra per l’attribuzione del nome al report. Imm227.tif Un esame dell’anteprima (Fig. 5.6.10) ci mostra come le etichette di alcuni campi o addirittura alcuni campi siano stati troncati (ad esempio Durata), con un effetto poco gradevole; vedremo Le etichette dei campi sono tra poco come porvi rimedio. state troncate. (Figura 5.6.10) L’anteprima del report. Imm228.tif 6.2 Modificare un report Per correggere gli errori di impaginazione presenti in figura 5.6.10, o comunque per variare un report già esistente, occorre aprire il report in Visualizzazione Struttura, usando, ad esempio, il comando Visualizzazione Struttura del menu contestuale (V. Fig. 5.6.11), visualizzabile attraverso il clic del tasto destro del mouse sulla linguetta del nome del report oppure semplicemente cliccando sul pulsante Chiudi Anteprima di Stampa. Apparirà la finestra relativa alla Visualizzazione Struttura del report, così come in fig. 5.6.12. 67 (Figura 5.6.11) Come passare dall’anteprima del report alla Visualizzazione Struttura. Imm229.tif Possiamo, quindi, selezionare le etichette e i campi da modificare ed intervenire su di essi, ad esempio riducendo il corpo del carattere da 10 a 9, il tipo di carattere ed altre proprietà. (Figura 5.6.12) Visualizzazione Struttura di un report. Imm230.tif Il report si presenta con molte somiglianze rispetto ad una maschera: ogni elemento che lo costituisce è selezionabile e modificabile singolarmente, può essere spostato e cancellato ed è provvisto di una propria tabella delle proprietà, consultabile e modificabile selezionando la voce Proprietà dal menu contestuale. In Visualizzazione Struttura del report, poi, Microsoft Access offre il gruppo di comandi Controlli all’interno della scheda Struttura della barra multifunzione (Fig. 5.6.13) , già vista a proposito delle maschere. (Figura 5.6.13) Gruppo di comandi Controlli (Scheda Struttura). Imm232.tif 68 Quando sono state apportate tutte le variazioni desiderate, ciccando sul pulsante Visualizza Report apparirà l’anteprima del report. Per salvare il lavoro svolto è possibile chiudere la finestra Visualizzazione Struttura del report: si apre la consueta finestra di avvertimento che chiede se si desidera salvare le modifiche eseguite (Fig. 5.6.14). Il salvataggio può, comunque, essere eseguito anche con gli altri procedimenti già descritti per gli altri oggetti, come ad esempio attraverso il comando Salva dal menu contestuale oppure cliccando sul pulsante Salva dalla barra degli strumenti di accesso rapido oppure con la scorciatoia da tastiera Maiusc + F12. (Figura 5.6.14) la finestra di conferma del salvataggio del report. Imm238.tif 69 7. Preparazione alla stampa Anteprima di stampa Ogni componente di un database di Microsoft Access può essere sottoposto a stampa, sia esso un foglio dati o maschera o query, oltre che ovviamente report. E’ ragionevole pensare di far precedere alla stampa la visualizzazione in anteprima dell’oggetto da stampare, allo scopo di ben valutare se la stampa conseguente sia significativa e leggibile, se occorra cambiare l’orientamento del foglio, mutare i margini della pagina, ecc.. Il comando di anteprima di stampa si trova nel menu visualizzato dopo aver cliccato sul pulsante Office (Fig. 5.7.1): una volta scelto tale comando si aprirà la finestra di anteprima (Fig. 5.7.2), nella quale può essere visualizzato l’aspetto finale del documento richiesto (nell’esempio la maschera Brani Musicali). (Figura 5.7.1) Comando di anteprima di stampa dal pulsante Office. 70 Imm253.tif (Figura 5.7.2) Una maschera in anteprima di stampa. Imm254.tif Direttamente dalla finestra dell’anteprima e facendo uso dei pulsanti raccolti nel gruppo di comandi Layout di pagina (V. fig. 5.7.3) è possibile impostare i margini (superiore, inferiore, sinistro e destro) del foglio di stampa cliccando sul pulsante Imposta pagina che visualizza la finestra di dialogo mostrata in fig. 5.7.4. (Figura 5.7.3) Gruppo di comandi Layout di pagina dell’anteprima di stampa. 71 Imm257.tif (Figura 5.7.4) Finestra di dialogo Imposta pagina. Imm256.tif Se si vuole modificare l’orientamento verticale o orizzontale della stampa, occorre cliccare sul relativo pulsante Verticale o Orizzontale contenuti nel gruppo Layout di Pagina. In alternativa, si può anche indicare l’orientamento cliccando sulla scheda Pagina della finestra di dialogo Imposta pagina. Per uscire dall’anteprima è sufficiente cliccare sul pulsante Chiudi Anteprima di stampa e si torna alla finestra precedente. 7.2 Stampare Qualunque sia l’oggetto che occorre stampare la procedura è sempre la stessa: occorre selezionare la voce Stampa attraverso il menu visualizzato dopo aver cliccato sul pulsante Office (come già visto in fig. 5.7.1), oppure dall’Anteprima di Stampa, cliccando sul pulsante Stampa. In ogni caso, viene visualizzata la finestra di dialogo Stampa, visualizzata in fig. 5.7.5. 72 (Figura 5.7.5) Finestra di dialogo Stampa. Imm260.tif In tale finestra di dialogo, è possibile indicare la stampante verso la quale indirizzare il lavoro di stampa. Inoltre, sempre da tale finestra si può anche indicare un possibile intervallo di stampa (dalla pagina .. alla pagina …) in alternativa alla stampa completa del documento, così come si può ottenere un numero di copie del documento stampato, oltre che richiedere la finestra di dialogo Imposta pagina (già vista precedentemente) cliccando sul pulsante Imposta … . Se invece, dal menu Office, si richiede il comando Stampa immediata, contrariamente a quanto accade nel caso precedente, viene lanciata direttamente l’operazione di stampa, utilizzando la stampante e le altre impostazioni di default. 73