http://digilander.libero.it/MATELIBER/ecdl/m5/modulo5.htm Basi di Dati Questo modulo verifica la conoscenza e l'utilizzo dei concetti fondamentali dei database. Il modulo è strutturato in due parti: la prima verifica la capacità di creare un semplice database utilizzando un pacchetto software standard; la seconda invece la capacità di estrarre informazioni da un database esistente usando gli strumenti di interrogazione, selezione e ordinamento disponibili, e di generare i rapporti relativi. Per iniziare In questo capitolo si conoscerà il concetto di database, come si apre un programma di database, come si effettuano le modifiche nei record in un database esistente, come si salva il database sull'hard disk e come si effettuano le modifiche dell'impostazione di base. Primi passi con un database In italiano la parola database significa letteralmente base di dati , cioè un insieme integrato di informazioni omogenee che riguardano un certo argomento. Esempi di database sono: una rubrica telefonica, l'archivio dei cittadini di un comune, l'elenco degli alunni di una scuola. La prima considerazione da fare è che un database non è un archivio statico, nel senso di un deposito nel quale immagazzinare dati e dimenticarli, anzi, assomiglia a un grande negozio nel quale entrare di continuo per cercare notizie e informazioni. Un database efficiente, deve essere organizzato al meglio per riuscire a individuare le informazioni che occorrono all'utente nel minor tempo possibile. Esistono diversi programma di gestione dei database: Microsoft Access, Oracle, Informix,, IBM DB2, Lotus Approach. Questi programmi vengono indicati con l'acronimo DBMS (DataBase Management System), ossia programmi di gestione di database, ma comunemente si parla del database Access o del database Oracle. Il database fornisce una serie di strumenti per la catalogazione, l'ordinamento e la ricerca dei dati, quali: tabelle , query , maschere ( Form ) e report . La tabella è l'archivio che contiene dati relativi a un certo argomento. La query è l'interrogazione dell'archivio per ricavare l'informazione desiderata. La maschera è la videata utilizzata per l'immissione e la variazione dei dati. Il report è la stampa che contiene i dati che sono stati estratti dal database seguendo alcuni criteri e nella forma richiesta dall'utente. Aprire un programma di database Per lanciare in esecuzione un programma di database utilizzando Microsoft Windows è necessario seguire questa sequenza operativa: 1. Fare clic sul pulsante Avvio/Start. 2. Selezionare la voce Programmi. 3. Apparirà il sottomenu con l'elenco di tutti i programmi. 4. Fare clic sulla voce Microsoft Access Un'altra possibilità per lanciare in esecuzione Access è individuare l' icona sul Desktop e fare doppio clic su di essa. Inoltre, accanto al pulsante Start, nella Barra delle Applicazioni, ci sono le icone per l'avvio veloce dei programmi. Per lanciare in esecuzione Access basta fare solo un clic sulla icona corrispondente. Con Office, Microsoft fornisce la Barra degli strumenti di Office, che normalmente si dispone su uno dei quattro lati della videata. Essa contiene l'icona di avvio di Access. Facendo clic su di essa, il programma di foglio elettronico verrà lanciato in esecuzione. Fatto questo apparirà sullo schermo la finestra di Access. Aprire un database esistente con l'impostazione di default Poichè l'estensione definisce il formato di un file, è importante saper riconoscere quella che caratterizza i file di database . In Microsoft Access un database, inteso come gruppo di archivio correlati, viene memorizzato come un unico file. Quando i file di database vengono salvati sul disco, Access assegna loro l'estensione .MDB. Il sistema operativo associa questa estensione al programma e grazie a essa, Access stesso è in grado di riconoscere i propri file. Quando viene avviato in esecuzione Access appare una finestra di lavoro nella quale l'utente può scegliere tra: Aprire un nuovo database completamente vuoto. Aprirne uno lasciandosi pilotare da una creazione guidata. Aprirne uno già esistente. Successivamente al primo avvio in esecuzione del programma, per aprire un database esistente si può agire con il comando Apri. Il comando Apri può essere eseguito facendo clic sull'icona Apri, che si trova normalmente nella Barra degli strumenti, oppure attraverso la sequenza File/Apri dalla Barra dei menu. Si aprirà una finestra di dialogo dalla quale scegliere nel file system il file da aprire. In Microsoft Access la finestra è divisa in due parti in senso verticale e in tre in senso orizzontale. Guardandola per colonne, sulla sinistra c'è una sorta di barra di navigazione con cinque pulsanti. I pulsanti prendono i nomi di: Cronologia Documenti Desktop Preferiti Cartelle Web Facendo clic su Cronologia, nel riquadro centrale della finestra vengono elencati tutti i file di tipo documento o le cartelle alle quali si è avuto accesso di recente, con uno dei programmi Microsoft. Facendo clic su Documenti, si accede all'omonima cartella di sistema, che viene proposta dai programmi come standard per la memorizzazione dei file creati dai vari applicativi. Se si fa clic su Desktop, si visualizza il file system a partire dalla cartella principale. Il pulsante Preferiti dà accesso a una cartella particolare, nella quale l'utente avrà memorizzato i file preferiti. Con Cartelle Web, infine, si accede a dischi disponibili in rete locale o geografica. Per esempio, si potrà lavorare aprendo un database da Internet esattamente come se fosse memorizzato nel disco rigido del computer dell'utente. In alto nella finestra di dialogo, c'è una zona rettangolare nella quale sono raccolti diversi pulsanti strettamente operativi. A partire da sinistra, i primi vengono utilizzati per navigare nel file system: si può tornare alla cartella precedente, salire in quella di livello superiore o effettuare una ricerca nel Web. I pulsanti successivi permettono di cancellare un file che è stato selezionato nel riquadro oppure visualizzare quelli elencati in un certo ordine (di nome, di estensione, di data). Si può anche accedere a funzioni più sofisticate ricercando il file in base a particolari parametri (un nome che contiene certi caratteri, intervalli di tempo e così via). Nella parte in basso, infine, ci sono due caselle e due pulsanti. La prima casella di testo consente di scrivere direttamente il nome completo del file da aprire, compreso di estensione. La seconda è una casella di riepilogo, che contiene i tipi di file che è in grado di leggere Microsoft Access. Se si desidera aprire un database creato con un altro programma, indicando in questa cartella il tipo esatto del file si otterrà una conversione del formato e il database verrà letto in Access. Il pulsante Annulla permette di rinunciare all'apertura di un database. Il pulsante Apri, invece, è affiancato un altro piccolo tasto rettangolare, che dà accesso a un sottomenu di opzioni. Oltre all'apertura diretta del file, è possibile accedervi, per esempio, in sola lettura o in modalità esclusiva, per evitare che altri possono inserire, tramite la rete, mentre si stanno apportando modifiche importanti. Se si fa clic su File nella Barra dei menu, notoriamente si apre un menu a discesa che contiene tutti i comandi disponibili per operare sui file. Oltre all'elenco dei comandi (per aprire, salvare, stampare, chiudere e così via), nella parte inferiore il programma elenca i nomi dei file aperti di recente, in ordine inverso. In altre parole, l'ultimo file che è stato aperto viene visualizzato in cima all'elenco con accanto il numero uno, il penultimo viene visualizzato subito dopo e indicato con il numero due. Di seguito ne vengono mostrati altri. Se si lavora di frequente con un certo database, lo si troverà in quell'elenco. Per esempio, sicuramente ci sarà quello che è stato chiuso per ultimo la sera precedente. Aperto il database, sul monitor apparirà la relativa finestra. Modificare un record in un database esistente e salvarlo I singoli archivi che costituiscono un intero database vengono chiamati tabelle. Una tabella di un database è composto da più righe , chiamate record , ognuna delle quali è divisa in componenti elementari definiti campi . Un record è costituito da un insieme di campi riferiti a un singolo soggetto.In un database che raccoglie i dati dei clienti, per esempio, tutte le informazioni relative a uno stesso cliente sono registrate in un record. Un campo è uno spazio nel database che contiene un'unità di informazione, come un nome, un numero di telefono, una data. Nel caso occorresse modificare il contenuto di un record in un database, si agisce sempre su un singolo campo per volta, quindi si passa a un altro record. La fase di modifica di un record può avvenire in modalità tabella o in modalità maschera . Nel primo caso si chiede di aprire una tabella e di visualizzarla in un formato grafico. In termini pratici, per effettuare una modifica di un record in modalità tabella in Microsoft Access 2000 la sequenza operativa è la seguente: 1. Aprire un database, per visualizzare una finestra che contiene tutti gli oggetti che è possibile gestire. 2. Tra essi, fare clic sulla prima voce Tabelle. 3. Individuare la tabella nella quale si intende intervenire e fare doppio clic su di essa. 4. Spostarsi tra i campi della tabella utilizzando i tasti direzionali oppure il mouse e le barre di scorrimento. 5. Selezionare il campo che contiene il dato da variare. 6. Modificarlo (cancellandone una parte, aggiungendo caratteri, variandone il valore). 7. Spostarsi in un altro record. Nel momento in cui si sposta il cursore del record modificato a un altro qualsiasi, i nuovi valori vengono aggiornati nell'archivio di appartenenza. Se è stata creata una maschera, per avere una visualizzazione grafica più gradevole del contenuto dell'archivio, il singolo record sarà visualizzato in una finestra contenente casella di testo e altri dati . Per modificarli, si potrà fare clic sul campo e scrivere nella casella, in modo simile a come avviene in una qualsiasi finestra di dialogo. La modifica di un record effettuata in modalità maschera, invece, può essere eseguita con questa sequenza operativa: 1. Aprire un database e visualizzare la finestra con i tipi di oggetti che è possibile gestire. 2. Fare clic sulla voce Maschere. 3. Individuare la maschera che permette di vedere i dati della tabella da modificare e fare doppio clic su di essa. 4. Spostarsi tra i record della tabella, utilizzando i pulsanti riportati nella riga orizzontale in basso nella maschera (indietro, avanti, primo record, ultimo record). 5. Selezionare il campo contenente il dato da modificare. 6. Modificare il contenuto. 7. Spostarsi in un altro record. Nel momento in cui si sta visualizzando un record diverso da quello modificato, l'archivio è già stato aggiornato sul disco. Salvare un database sull'hard disk o su un dischetto Una volta che si è modificato un certo dato , lo si salva aggiornandolo direttamente nell'archivio sul disco. Può capitare ugualmente, però, di trovarsi con un database corrotto, soprattutto se a esso accedono più persone in un sistema multiutente. Il salvataggio è anche un'operazione che consente la memorizzazione del database con un nome diverso oppure su un altro supporto di memoria, come un dischetto. Queste opportunità possono essere sfruttate per avere copie diverse di uno stesso database, oppure per creare un nuovo database, sfruttando in tutto o in parte la struttura o il contenuto di quello originale. Per salvare il database corrente su un supporto di memoria, basta semplicemente fare clic sull' icona Salva nella Barra degli strumenti standard. Chiudere il database Terminato il lavoro di aggiornamento, per chiudere il database è necessario chiudere tutte le finestre aperte durante la sessione di lavoro. L'utente può chiudere ogni finestra aperta e poi l'intero database. L'operazione può essere eseguita semplicemente facendo clic sul pulsante di chiusura sulla barra del titolo di ogni singola finestra. Ogni tabella e ogni maschera, infatti, riporta la classica icona con il disegno di una "X" in alto sulla destra. La sequenza più veloce per chiudere l'intero database, invece, in Microsoft Access è: 1. Selezionare la finestra del database, facendo clic sulla sua Barra del titolo. 2. Fare clic su File, nella Barra dei menu. 3. Fare clic su Chiudi. Immediatamente si chiuderanno tutte le singole finestre che sono state aperte, indipendentemente dal loro contenuto. In questo modo il database viene chiuso, ma il programma rimane in esecuzione. Se si desidera chiudere contemporaneamente il database e il programma di gestione, si può agire in una delle modalità di chiusura dei file in Windows: 1. Fare clic su File/Barra dei menu e poi su Esci. 2. Fare clic sull'icona di chiusura in alto a destra nella Barra del titolo. Premere la combinazione rapida dei tasti Alt+F4 (il tasto funzione F4, in alto sulla tastiera). Utilizzare le funzioni di Help Le funzioni di Help possono aiutare l'utente a togliersi d'impaccio in più di un'occasione, fornendo una serie di indicazioni funzionali durante il lavoro e di risposte a domande specifiche su un certo argomento. Questo avviene facendo clic su un personaggio animato chiamato Assistente di Office , che ha l'aspetto di un simpatico pupazzetto. L'Assistente di Office, visualizza una particolare finestra nella quale è presente un riquadro in cui scrivere una domanda. In risposta, il programma visualizza una serie di scritte con argomenti ritenuti attinenti al testo della domanda. L'elenco appare sotto forma di collegamenti a pagine contenenti testi di spiegazione. Facendo clic su una delle scritte, viene visualizzata la finestra di lavoro della Guida in linea di Microsoft Access. Al suo interno è possibile leggere per esteso un testo che riguarda l'argomento in questione. La finestra della Guida in linea di Microsoft Access è divisa in tre schede: Sommario Ricerca libera Indice Nella pagina Sommario sono elencati uno dopo l'altro un gruppodi argomenti che parlano di Microsoft Access, come fossero lezioni tratte da un manuale. Facendo clic su una di esse, nella zona a destra viene visualizzato il testo riferito all'argomento selezionato. La pagina che appare facendo clic su Ricerca libera permette di scrivere una domanda esattamente come nel caso del quesito rivolto all'Assistente di Office, in forma libera. Nella pagina chiamata Indice, infine, compare una casella di testo in cui digitare una parola chiave . Già mentre si sta scrivendo, nella zona inferiore il programma visualizza un elenco di argomenti che contengono la parola digitata. Facendo clic su uno di essi, nel riquadro grande a destra viene mostrata la pagina descrittiva dell'argomento selezionato. In ambiente Windows si accede alle funzioni di Help facendo clic sul punto interrogativo (?), riportato in fondo a destra nella Barra dei menu. In Microsoft Access, facendo clic su di esso si apre un menu a discesa che contiene diverse voci, la prima delle quali èproprio Guida in linea. Modificare le impostazioni di base L'effetto visibile di ogni programma lanciato in esecuzione è quello dell'apertura di una finestra di lavoro in cui l'utente può operare per creare, modificare e salvare archivi. Ogni programma avviato in esecuzione legge i dati che riguardano le impostazioni predefinite da uno o più file di configurazione e li utilizza per la sessione corrente, a meno che l'utente non li modifichi. Per poter lavorare nel modo più comodo e funzionale, un programma di gestione database da la possibilità di impostare caratteristiche: Strutturali Funzionali Le prime incidono sulla struttura e sul contenuto dei campi delle tabelle del database . Le caratteristiche funzionali, invece, intervengono su elementi come l'aspetto delle finestre e le modalit&à operative con le quali è possibile agire nel programma. Per esempio, si può stabilire se aprire una tabella con un clic oppure con un doppio clic e si possono personalizzare le Barra degli strumenti . Tutte queste caratteristiche fanno parte di un gruppo di elementi che i programmi chiamano Impostazioni. In Microsoft Access sono raccolte sotto le voci di Opzioni e Personalizzazioni. Per controllare ed, eventualmente, variare le impostazioni generali che riguardano il database, in Microsoft Access la sequenza operativa è la seguente: 1. Fare clic su Strumenti, nella Barra dei menu 2. Fare clic su Opzioni. Nella finestra di lavoro viene visualizzata una finestra di dialogo che comprende un nutrito numero di pagine. Per entrare in una di esse, è sufficiente fare clic su una delle linguette in alto, che prendono i nomi di: Visualizzazione Generale Modifica/Trova Tastiera Foglio dati Maschere/Report Avanzate Tabelle/Query Nella pagina Visualizzazione l'utente può impostare se gli oggetti del database devono essere aperti con un clic del mouse o con il doppio clic. Inoltre può selezionare gli oggetti che devono essere visualizzati nella finestra di Microsoft Access. In Generale c'è la possibilità di impostare i margini che deve avere la stampa sul foglio, la cartella predefinita nella quale il programma deve memorizzare il nuovo database creato, se non indicata diversamente dall'utente, e scegliere se utilizzare il formato esteso dell'anno per la data. Nella pagina Modifica/Trova l'utente può impostare il funzionamento predefinito delle operazioni di ricerca/sostituzione. Si può impostare se la ricerca deve essere effettuata solo nel campo corrente o in tutti i campi. Nella pagina attivata con la linguetta Tastiera si può decidere se premendo Invio, si debba passare al campo successivo, al record successivo oppure di non spostare il cursore; si può anche stabilire se, premendo uno dei tasti di direzione si debba passare al carattere o al campo successivo. Nella pagina Foglio dati l'utente può impostare il carattere (colore, tipo, dimensione e stile), lo sfondo e le griglie dei nuovi fogli dati. Nella pagina Maschere/Report l'utente può digitare il nome di una maschera o di un report esistente da utilizzare come modello per una nuova maschera o un nuovo report. Facendo clic su Avanzate, si può impostare l'apertura condivisa o esclusiva del database. Se il database è aperto in modalità condivisa è permesso l'accesso a più utenti contemporaneamente. Se il database è aperto in modalità esclusiva, può essere utilizzato solo dal proprietario. Tra le caratteristiche che intervengono sulla struttura e sulla composizione dei campi delle tabelle, nella pagina Tabelle/Query l'utente può stabilire quale sia il tipo di campo predefinito e la sua dimensione. Modificare il modo di visualizzazione sullo schermo Un archivio può mostrare i dati contenuti in diversi modi possibili. In un programma di gestione database, esistono visualizzazioni diverse della singola tabella , una delle quali è la modalità foglio dati . Essa mostra il contenuto dell'archivio in modo del tutto analogo a quello di un foglio di lavoro di un programma di foglio elettronico . I dati contenuti nel foglio possono essere visualizzati in diversi modi. Nella pagina che si ottiene in Microsoft Access facendo clic su Strumenti, quindi su Opzioni e, infine, sulla linguetta di Visualizzazione, si impostano le componenti opzionali della finestra da visualizzare. La finestra è divisa in più riquadri. Nel riquadro sotto la voce Mostra, sono raccolte una serie di caselle di selezione, tra le quali si trovano: 1. Barra di stato 2. Finestra di dialogo di avvio 3. Icone sulla barra delle applicazioni Se viene attivata la casella Barra di stato, nella parte inferiore della finestra di lavoro verrà visualizzata la barra di stato in cui Access visualizza ciò che viene mostrato in quel momento nella finestra di lavoro, lo stato in cui si trova (per esempio: Pronto) e anche eventuali suggerimenti, qualora la situazione lo richieda. Lasciando selezionata la casella Finestra di dialogo di avvio, Access continuerà a visualizzare la finestra di dialogo che si apre quando il programma si è appena avviato in esecuzione e nella quale viene chiesto se si intende creare un nuovo database , avviare una creazione guidata oppure aprirne uno degli ultimi sui quali si è lavorato. Se si disattiva questa casella, il programma aprirà direttamente la finestra di lavoro e sarà l'utente a stabilire come procedere tramite la Barra dei menu. Lavorando in un database, si aprono più finestre. Oltre quella generale, in un certo momento potrebbero trovarsi aperte due finestre che mostrano i fogli dati di due tabelle e una che visualizza una maschera. La casella Icone sulla barra delle applicazioni controlla se debba apparire sulla Barra delle applicazioni (quella del pulsante Start) un'icona per ogni finestra attiva del database oppure un'icona che indica semplicemente che Microsoft Access è in esecuzione. Nella pagina Foglio Dati della finestra di dialogo Opzioni si possono definire i parametri per impostare un'estetica personalizzata al foglio dati. E' divisa in quattro zone che riguardano: I colori Il carattere La griglia Gli effetti Nella parte dei colori, è possibile stabilire quale attribuire ai caratteri del contenuto dei campi , allo sfondo e alla griglia che fa da cornice. Il controllo avviene attraverso caselle di riepilogo, che raccolgono una serie di colori predefiniti in finestre a discesa. Ogni campo di un record contiene dati. Un dato può essere per esempio un testo, un numero, una data, che devono essere rappresentati con dei caratteri. Nella parte indicata con Carattere predefinito, si possono scegliere tipo, dimensione e attribuiti del carattere visualizzato in un campo di un foglio dati del database. Gli attributi sono quelli tipici del testo e riguardano il corsivo, la sottolineatura e lo spessore. Le opzioni della griglia permettono di stabilire se visualizzarla oppure no, sia in orizzontale, sia in verticale, la scelta dipende solo dai gusti personali. Nel riquadro Effetto celle predefinite si può indicare se si desidera che il singolo campo appaia in rilievo o come se fosse incassato. Modificare le barre degli strumenti E' possibile accedere a tutti i comandi di un programma tramite i menu a discesa che si aprono sotto le voci presenti nella Barra dei menu. Per velocizzare le operazioni, sotto la Barra dei menu sono presenti icone e caselle di riepilogo che corrispondono ai singoli comandi ai quali si potrebbe accedere solo con una sequenza di clic. Le icone sono strumenti di lavoro veri e propri e sono moltissime. Per avere un maggiore ordine e una migliore funzionalità, sono raccolte in zone rettangolari chiamate Barra degli strumenti . Ognuna di esse ha un nome e contiene le icone e le caselle di riepilogo che riguardano un certo argomento. Sono tra i comandi più utilizzati e avere la possibilità di lanciarli con un solo clic offre la possibilità di essere più efficienti durante le fasi di lavoro. Sono presenti numerose Barre degli strumenti, ognuna delle quali può essere resa maggiormente funzionale rispetto alle esigenze dell'utente, aggiungendo o eliminando icone in base alle necessità. Per eseguire una personalizzazione, si può agire tramite la Barra dei menu oppure sfruttare un menu contestuale. Nel primo caso, la sequenza operativa da eseguire è: 1. Fare clic su Strumenti. 2. Fare clic su Personalizza. Nel secondo caso, la sequenza operativa da eseguire è:/P> 1. Fare clic con il tasto destro del mouse in una zona a destra della Barra dei menu o delle icone. 2. Fare clic su Personalizza, presente tra le voci del menu contestuale. La finestra di dialogo contiene tre pagine indicate dalle linguette: Barre degli strumenti Comandi Opzioni Nella scheda Barre degli strumenti, il riquadro di sinistra visualizza l'elenco delle barre disponibili. Facendo apparire il segno di spunta all'interno di una casella di selezione, viene visualizzata immediatamente la Barra degli strumenti relativa. Nella scheda Comandi, è possibile aggiungere o togliere un'icona (o una casella di riepilogo) a una delle barre visualizzate. L'azione viene eseguita semplicemente con la tecnica del drag and drop . Per aggiungere un'icona a una barra, la si prende con il mouse dal riquadro Comandi e la si trascina fino alla barra di destinazione. Per togliere un'icona è sufficiente prenderla con il mouse sulla barra e trascinarla in un qualsiasi punto al di fuori di essa nella finestra di lavoro. Lasciando il tasto sinistro del mouse, l'icona viene eliminata. Nella pagina Opzioni si possono controllare alcune funzionalità per rendere ancora più comodo il lavoro con le barre delle icone. Per esempio, in Microsoft Access 2000 è previsto l'utilizzo di particolari menu a discesa, che sono più piccoli del normale e visualizzano solo i comandi maggiormente utilizzati. E' una funzione comoda per ridurre l'ingombro dei menu nella finestra di lavoro. Solo dopo qualche secondo il menu si apre interamente, se il puntatore rimane fermo su di esso, con un effetto a fisarmonica. Nella personalizzazione è possibile definire l'apertura dei menu interamente, invece di mostrarne solo alcune voci. Buona parte dei comandi sono attivabili anche con combinazioni rapide di tasti: una casella di selezione permette di visualizzare o meno la relativa combinazione rapida di tasti nella descrizione dei comandi. Un'altra casella di selezione della pagina Opzioni permette di visualizzare (o togliere, se sono già presenti) le descrizioni accanto ai comandi. Un'ulteriore casella attiva la visualizzazione dei tipi di carattere con il loro aspetto reale, invece che con la sola descrizione del nome del font , nella casella di riepilogo carattere . Creare un database In questo capitolo si apprenderà come impostare e pianificare un database, come creare una tabella e inserire dati in essa, che cos'è la chiave e come si definisce tale chiave primaria. Inoltre, verranno spiegate le modalità per aggiornare un database. Operazioni di base La creazione di un database è l'atto conclusivo di un insieme di momenti, nel quale si fa un'operazione di sintesi tra: L'analisi del problema che si intende risolvere con la memorizzazione dei dati che andranno a riempire gli archivi. La stesura materiale del progetto, nel quale occorre prima pianificare e poi ottimizzare la struttura dell'intero database. Prima di iniziare il lavoro di creazione è fondamentale definire che tipo di dati saranno conservati nelle tabelle del database. Le domande da porsi inizialmente riguardano la valutazione di alcuni punti elencati di seguito: Cosa si vuole memorizzare. Con quali modalità si desidera interrogare o stampare il database. In quale formato si desidera ottenere le informazioni a video e su carta. Supponiamo di voler creare il database di una rubrica telefonica delle persone e delle aziende che si contattano quotidianamente, quali dovrebbero essere, quindi, i passi da seguire nella creazione del database? I dati da memorizzare per ogni record potrebbero essere, presumibilmente, Cognome, Nome, Indirizzo, CAP, Città, Provincia e Telefono. A queste notizie minime se ne potrebbero aggiungere molte altre. Per esempio, si potrebbero memorizzare anche il fax, il numero del telefono cellulare, l'indirizzo di posta elettronica, la data di nascita. Come si può immediatamente rilevare, l'analisi è stata appena abbozzata, eppure di elementi da valutare ce ne sarebbero ancora tanti. Per esempio, in merito ai singoli campi sarebbe da definire almeno la lunghezza e il tipo (è un testo generico, un numero, una data). Una volta creata la struttura di una tabella, bisogna stabilire in che ordine si desiderano visualizzare i record: per esempio in ordine di cognome. C'è un ulteriore esigenza fondamentale da rispettare in una tabella di un archivio: ogni record deve essere individuato in modo univoco. Se non fosse così, in un database di una rubrica telefonica si correrebbe il rischio di inserire una o più volte uno stesso nome, senza rendersene conto. Per evitare questa evenienza, in ogni tabella deve essere presente un campo definito come campo chiave , per rendere con certezza unico ogni record. Nel database della rubrica telefonica, se si ponesse come campo chiave il cognome, ci sarebbe comunque la possibilità di trovare due fratelli (o semplicemente due omonimi) che hanno lo stesso cognome. Tentando di inserire il secondo record, il programma segnalerebbe che esiste già un'altra occorrenza della stessa chiave e non permetterebbe di memorizzarli entrambi. Negli archivi di grosse dimensioni per evitare di trovarsi in difficoltà si utilizza un tipo di campo detto contatore, presente nei programmi di gestione database. E' un valore intero numerico che parte da uno e viene incrementato automaticamente dal programma ogni volta che si aggiunge un nuovo record alla tabella. Utilizzandolo come campo chiave, si renderà ogni record sicuramente unico, in quanto non potrà accadere che il numero di un record risulti uguale a quello di un altro. Poi occorre definire il nome della tabella. Prima di affrontare le attività per la creazione di un database, è opportuno ripercorrere le definizioni dei termini che si incontrano nel lavoro. Campo Un campo è l'elemento base di una tabella di un database. Contiene uno dei dati elementari di cui è composto un record. Un campo ha diversi attributi che lo caratterizzano; i principali sono il nome, il tipo e la dimensione. Tipo di campo Il tipo di campo è la tipologia del dato contenuto in esso. Nei database moderni i tipi di dati possono essere numerosi. I principali sono il testo (una qualsiasi sequenza di caratteri), i numeri (interi, con decimali, positivi e negativi) e le date. Indicare correttamente il tipo di dato è fondamentale per contenere lo spazio occupato, per ottenere un corretto ordinamento dei record e per collegare tra loro archivi diversi. Record Il record è l'unità funzionale dell'informazione strutturata. Un archivio di un database o tabella è composto da più record omogenei tra loro, ognuno dei quali è diviso in campi. In un archivio cartaceo, il record è l'equivalente della singola scheda di cartoncino dove si scrivono tutte le notizie che costituiscono l'informazione completa. Tabella Nei database una tabella è un archivio che include i dati relativi a un certo argomento, strutturato in record. Contiene i dati immessi dall'utente come sequenza di record, che possono essere modificati, visualizzati e stampati dall'utente seguendo certi criteri e ordinati secondo uno o più indici. Indice Un indice è un particolare archivio costruito dal programma di gestione database per poter scorrere i record di una tabella diversamente da come l'utente li ha immessi. Infatti, la posizione fisica dei record nella tabella rimane la stessa anche con le variazioni e le immissioni di quelli nuovi. Per avere la visualizzazione o la stampa in un certo ordine (per cognome, per data, per città), il programma costruisce un archivio indice basato sul campo sul quale si desidera avere l'ordinamento. Database Un database è costituito da una o più tabelle correlate tra loro, il cui contenuto riguarda complessivamente un dato argomento. Il database dei numeri telefonici dei cittadini italiani è diverso da quello dei contribuenti italiani o da quello dei clienti di una certa azienda. Impostare e pianificare un database Il primo passo nella creazione di un database consiste nella creazione di tabelle. Access offre tre opzioni per creare una tabella di database. Il pulsante Crea una tabella in visualizzazione Struttura consente di definire la struttura della tabella, indicando di quante colonne è composta, come si chiama ogni colonna (ossia il campo), che cosa debba contenere e quanto sia grande. Il pulsante Crea una tabella mediante l'immissione Dati permette la creazione di una nuova tabella immettendo direttamente i dati. Si inseriscono i dati in una struttura che appare come un foglio vuoto, un campo dopo l'altro. E' il programma stesso a determinare il tipo di ogni campo, desumendolo dalla tipologia di dati immesso. Il pulsante Crea una tabella mediante una creazione guidata permette di utilizzare modelli di tabella precostituiti per archiviare i dati, nei quali sono già presenti categorie di catalogazione da associare ai campi. Una volta creata la struttura, per inserire i dati nei record, bisogna aprire la tabella in visualizzazione foglio dati . Nella visualizzazione foglio dati, sarà sufficiente spostarsi tra i campi con i tasti di direzione o il mouse. Posizionando il cursore su un campo, lo si potrà riempire con scritte, numeri o uno degli altri tipi di dati con i quali sono stati definiti. Il programma controllerà che i dati immessi siano congruenti con il tipo e, nel caso non lo fossero, visualizzerà un messaggio di errore. Scrivendo i dati, si riempiono i campi un rigo dopo l'altro e la tabella si riempie. La dimensione in numero di record, quindi, per definizione non è predeterminata. Il totale dei record di una tabella cresce sempre più, man mano che vi si aggiungono altre righe. Un database, si è detto, è costituito da una o più tabelle collegate insieme. Le diverse tabelle possono dover essere messe in relazione tra loro. Questa tecnica serve, per esempio, per ridurre le dimensioni di un database, evitando di duplicare i dati più volte. Il tipo di problema che si risolve mettendo in relazione una tabella con un'altra può essere rappresentato con un esempio. Nel database della rubrica, il record di una persona inserita nella tabella principale insieme con cognome, nome e numero di telefono contiene anche l'indirizzo e la città. Se si scrive il nome di una città come Sant'Angelo dei Lombardi, si corre il rischio di trovarsela scritta in modi diversi: S. Angelo dei Lombardi S. Angelo dei L. Sant'Angelo dei Lomb. S. Ang. dei Lomb. Per la tabella ci sono due evidenze negative. La prima è che si occupa inutilmente uno stesso campo più volte con la stessa scritta; la seconda è che il contenuto dello stesso campo risulta diverso in record differenti, mentre si intendeva avere lo stesso nome di città dappertutto. Oltre alle difficoltà evidenziate, può succedere anche che si decida di modificare parte del nome, indicandolo, per esempio, sempre con Sant'Angelo invece di S. Angelo. Se la tabella contiene molte persone che hanno l'indirizzo in questa città, l'operazione di aggiornamento è sicuramente lunga e foriera di numerosi errori. Per esempio, ci si può dimenticare di aggiornarne uno oppure si possono scrivere i nomi una volta con caratteri in minuscolo e un'altra in maiuscolo. Se si crea una seconda tabella di nome "Città", e si individua ognuna di esse con un campo Codice città che sia di tipo numero a tre cifre, si può sostituire il campo Città della tabella principale "Rubrica" con uno il cui nome sia proprio Codice città. Questo campo ovviamente sarebbe anch'esso un numero di tre cifre. Le due tabelle verrebbero messe in relazione tramite campi Codice città. Di conseguenza, se il codice Sant'Angelo dei Lombardi fosse 124, sarebbe sufficiente scrivere questo numero nel campo Codice città e il nome della città verrebbe richiamato automaticamente senza errori, riducendo inoltre le richieste di spazio sul disco. Per di più, se si decidesse di modificare anche di poco il nome della città, nella tabella principale non sarebbe necessario eseguire alcuna operazione. Il fatto che ci sia il codice numerico provoca direttamente la lettura del valore aggiornato del nome della città, in tutti i record. In genere i tipi di relazioni tra tabelle di un database possono essere: Uno a molti, in cui un record della tabella A si collega a molti record della tabella B, ma i record della tabella B si collegano a un solo record della tabella A. Molti a molti, in cui più record di una tabella sono collegati a diversi record di un'altra tabella. Uno a uno, in cui ogni record di una tabella è associato a un solo record di un'altra tabella. Nella tabella "Città" compare una sola volta il nome di ogni città. Mettendola in relazione con la tabella "Rubrica telefonica", si può notare facilmente che una stessa città è presente diverse volte: questo è il tipo di relazione uno a molti. Il tipo di relazione molti a molti si può spiegare con un altro esempio. Se si crea un database dei prodotti acquistati da un certo numero di clienti di un'azienda, la tabella dei prodotti avrà riferimenti a più clienti (che ne hanno acquistato uno) e quella dei clienti ne avrà a più prodotti (che sono stati acquistati da uno stesso cliente). Il tipo di relazione uno a uno associa il record sui dati anagrafici di un cliente con un solo record di un'altra tabella con le indicazioni del conto bancario del cliente. Creare una tabella con campi e attributi Per creare una nuova tabella , bisogna creare un nuovo database . La finestra del database contiene tutti gli oggetti utilizzabili per lavorare. Questi oggetti sono posti nel riquadro Oggetti a sinistra della finestra. Si tratta di veri e propri strumenti di lavoro, che possono essere utilizzati per gestire l'intero database. Le voci elencate sotto Oggetti sono: Tabelle Maschere Report Pagine Macro Moduli Si fa clic su uno dei pulsanti visualizzati nella colonna di sinistra, nel riquadro più grande sulla destra vengono mostrate le voci che si riferiscono a esso. Per creare una tabella si utilizza la prima voce. Facendo clic su Tabelle, a destra appaiono tre icone, da utilizzare per creare una nuova tabella. Crea una tabella in Visualizzazione struttura Crea una tabella mediante una Creazione guidata Crea una tabella mediante l'Immissione di dati Facendo doppio clic sulla prima, appare una finestra che contiene tre colonne. In alto sulla prima c'è la scritta Nome campo, sulla seconda Tipo dati, sulla terza Descrizione. Le caselle da riempire obbligatoriamente sono le prime due. Una volta inserito il nome del campo e definito il tipo di dati che vi sarà contenuto, per poter lavorare con la tabella non è necessario aggiungere la descrizione. Per inserire il nome del campo, è sufficiente scriverlo nella casella di sinistra. Per indicare il tipo, si fa clic sul pulsante con la freccia in basso per provocare l'apertura di una finestra a discesa, al cui interno sono presenti tutti i tipi di dati che è possibile inserire in un campo. I tipi di dati sono: Contatore Testo Si/No (o tipo Logico) Numero Data Memo Valuta Oggetto OLE Collegamento ipertestuale Autocomposizone ricerca In Microsoft Access il nome può contenere fino a 64 caratteri e comprendere anche spazi. Il tipo di Contatore è un numero che non viene inserito dall'utente, ma che parte da uno e viene incrementato automaticamente dal programma ogni volta che si aggiunge un nuovo record alla tabella. Lo si utilizza per avere un codice unico per ogni riga della tabella, senza che ci si debba preoccupare di aggiungere uno nuovo ogni volta. Il campo di tipo Testo è un campo formato semplicemente da scritte: lettere, numeri, segni di interpunzione e spazi, in qualsiasi combinazione. Il numero di Byte che occupa un campo è un elemento da tenere sempre nella massima considerazione. E' importante sia per ridurre lo spazio complessivo impegnato dai file sul disco, sia per aumentare le prestazioni del programma in fase di aggiornamento e, soprattutto, di interrogazione. Un campo di tipo Testo, per esempio, non può essere di lunghezza infinita: i programmi di gestione database la limitano a valori come 255 caratteri. Il numero preciso, però, può essere impostato dall'utente. Il valore predefinito è di cinquanta caratteri e può essere variato agendo sulle proprietà del campo. Nel caso in cui occorresse più spazio dei 255 caratteri previsti come limite, nei programmi di gestione database esiste un particolare tipo di campo indicato con Memo. Più che un tipo di dato vero e proprio, il campo Memo rappresenta un particolare collegamento a un file esterno al database. In questo modo si potranno scrivere testi lunghi quanto si desidera, perchè non viene occupato un corrispondente spazio fisso all'interno del database, ma solo quello di una scritta che fa da riferimento al testo memorizzato all'esterno della tabella. Il tipo Si/No è detto anche tipo Logico, perchè può assumere solo due valori: Sì oppure No, detti anche Vero o Falso. Viene utilizzato per non sprecare spazio inutile, quando il contenuto del campo serve solo per confermare o per negare un'affermazione. Il tipo di campo Numerico, va definito insieme con altre informazioni. Quanto può essere grande al massimo il numero? Può essere solo intero oppure può contenere anche cifre decimali? Quante cifre intere e quante cifre decimali puòavere al massimo? E' un campo specifico per poter effettuare calcoli sul suo contenuto. Il tipo di campo Valuta viene utilizzato in alternativa a Numero, per la definizione di valori che riguardano importi in denaro. Il suo utilizzo evita possibili errori di arrotondamento in seguito ai calcoli. Microsoft Access permette una precisione pari a quindici cifre per gli interi e quattro per i decimali e, in più, visualizza il simbolo della valuta all'inizio del campo, come per esempio, "L." per Lire. La data ha un tipo di campo proprio. Un programma, infatti, deve poter riconoscere la data come un dato particolare, in modo da potervi eseguire delle elaborazioni. L'esempio tipico che viene spesso proposto è quello della data di nascita di una persona, che può essere rapportata al giorno corrente per valutare quanti anni ha oppure se sia il suo compleanno. Per una banca, la differenza tra date dà la possibilità di eseguire calcoli che riguardano la corresponsione degli interessi o il loro prelievo dal conto corrente del cliente. In Microsoft Access il tipo del campo è Data/Ora. In altre parole in un campo si può mettere solo la data, la data e l'ora insieme oppure solo l'ora. Per il campo Data/Ora è possibile impostare diversi formati di visualizzazione. Il meccanismo del collegamento a un file esterno al database viene sfruttato più in generale per i campi che permettono di inserire oggetti multimediali. Un oggetto multimediale può essere una foto, un disegno, un filmato, un suono, un grafico o una qualsiasi combinazione di essi. Può essere collegato a un database grazie a una tecnologia Windows chiamata OLE (Object Linking and Embedding), ossia collegamento e incorporamento di oggetti. Inserendo in un campo un tipo di dato che viene chiamato Oggetto OLE, si possono collegare a una tabella di un database oggetti multimediali di qualsiasi tipo. Per esempio, si può allegare a ogni record di una tabella, che contiene dati di una rubrica, la foto della persona alla quale si riferisce il record. L'occupazione di spazio nell'archivio rimane limitata a quella del collegamento, al file che contiene l'oggetto, che, invece, può essere grande quanto si desidera. Ovviamente lo spazio complessivo di database più immagini o altri oggetti multimediali è comunque pari alla loro somma; le tabelle del database, però, rimangono di dimensioni ridotte, il che si traduce in un aumento della velocità di gestione. Con il tipo di campo Collegamento ipertestuale si intende una scritta che sia, per esempio, un collegamento a una pagina Web o ad un indirizzo di posta elettronica. Il tipo di campo Autocomposizione ricerca guida l'utente alla creazione di un elemento che contiene l'elenco dei soli valori che è possibile inserire nel campo. In questo modo, l'utente viene facilitato nell'immissione dei dati, riducendo la possibilità che si verifichino errori. Navigare in una tabella Una volta creata una tabella con una delle modalità previste dai programmi di gestione del database , occorre cominciare a inserire i dati nei campi che ne costituiscono i record . La fase di inserimento dei dati potrebbe anche sembrare poco interessante; invece, si può dire che sia la parte fondamentale della gestione di un database. Se gli archivi non vengono riempiti, non si potrà eseguire alcuna elaborazione o stampa di informazioni. Per passare all'inserimento dei dati, in Microsoft Access, è necessario aprire prima il database. Nella finestra di lavoro del programma viene visualizzata quella del database che contiene gli strumenti di gestione. Se non fossero visibili le tabelle, sarebbe necessario fare clic sul pulsante Tabella per averle a disposizione nel riquadro di destra. Una volta individuata la tabella nella quale si desidera cominciare a inserire nuovi record, è sufficiente fare doppio clic sull' icona che la rappresenta per aprirla in visualizzazione foglio dati . A questo punto si può cominciare a immettere dati nei campi. Prima si scrive il dato e poi ci si sposta con la freccia direzionale a destra, nel campo successivo. Completato l'ultimo campo, il cursore va a capo, creando un nuovo record. Per spostarsi tra i campi di un record e tra i record di una tabella., ossia per navigare al suo interno, si possono utilizzare sia il mouse, sia la tastiera. Con il mouse ci si sposta esattamente come in una qualsiasi finestra di Windows, sfruttando, se occorrono, le barre di scorrimento orizzontale e verticale. Con la tastiera si possono utilizzare i tasti di direzione, il tabulatore, PgSu, PgGiù e, se abilitato, il tasto Invio. Con i tasti direzionali ci si sposta tra le caselle che rappresentano i campi della tabella, nelle quattro direzioni canoniche: su, giù, destra e sinistra. Il tabulatore permette di passare al campo successivo e, se premuto insieme con Shift (il tasto per ottenere le maiuscole), provoca lo spostamento del cursore al campo precedente. Nella visualizzazione foglio dati, con PgSu e PgGiù ci si sposta di un gruppo di record per volta. Per muoversi da un campo a un altro con il mouse, è sufficiente fare clic direttamente nel campo. Per spostarsi tra i record, sempre mediante mouse, si possono utilizzare anche i pulsanti di un'apposita barra di navigazione posta in basso nella finestra. I due sulla sinistra provocano il posizionamento del puntatore ai record precedenti rispetto a quello attuale, mentre gli altri a destra lo spostano verso i successivi. In particolare, guardando i pulsanti a sinistra della casella che contiene il numero del record corrente, è possibile fare clic per ottenere gli spostamenti seguenti: Primo pulsante (una barra verticale con accanto una freccia verso sinistra), per spostare il puntatore sul primo record della tabella. Secondo pulsante (una freccia verso sinistra), per spostare il puntatore sul record della tabella che precede quello corrente. Continuando con gli altri pulsanti che sono sulla destra della casella, facendo clic, è possibile ottenere gli spostamenti seguenti: Terzo pulsante (una freccia a destra), il puntatore si sposta sul record della tabella successivo a quello corrente. Quarto pulsante (una freccia verso destra accanto a una barra verticale), il puntatore si sposta sull'ultimo record della tabella. Quinto pulsante (una freccia verso destra che punta un asterisco), il puntatore si sposta sul primo valore libero di un record, per crearne uno nuovo. Se si scrive il numero di un record direttamente nella casella di testo, si passa il puntatore a quel record. Nella visualizzazione in modalità foglio dati, per raggiungere un campo specifico si possono sfruttare entrambe le Barre di scorrimento. Quella verticale permette di spostarsi tra i record della tabella, mentre quella orizzontale permette di visualizzare i campi che non dovessero essere visibili a causa delle ridotte dimensioni della finestra rispetto a quella larghezza del record. Inserire dati in una tabella L'inserimento dei dati corrisponde al riempimento dei singoli campi di un record . Per inserire dati in una tabella in modalità foglio dati , è necessario prima di tutto aprire la tabella. Le operazioni da seguire in Microsoft Access sono: 1. Aprire il database . 2. Fare clic sul pulsante Tabella, nella barra di navigazione a sinistra della finestra del database. 3. Fare doppio clic sul nome della tabella che viene visualizzato nel riquadro di destra. In questo modo viene visualizzato il foglio dati che contiene i dati della tabella. Se la tabella è appena stata creata, nella finestra di lavoro risulterà visibile il primo record vuoto, con il cursore che lampeggia sul primo campo. A quel punto sarà sufficiente inserire il dato corrispondente al tipo del campo e passare al campo successivo a destra (con Invio o con la freccia a destra, per esempio) per continuare con l'inserimento. Se, invece, la tabella contiene già numerosi record, è necessario portarsi in corrispondenza della prima riga libera prima di inserire i dati del nuovo record. In Microsoft Access un modo per portarsi nella posizione di un nuovo record è quello di eseguire la sequenza operativa che segue: 1. Fare clic su Record, nella Barra dei menu. 2. Fare clic su Immissione dati. Una volta che si dispone del cursore che lampeggia in un campo vuoto, i dati da inserire devono rispecchiare quelli definiti con il tipo di ogni campo. Scrivendo un dato di tipo diverso da quello per il quale è impostato il campo, il programma segnalerebbe un messaggio di errore. Dopo aver fatto clic sul pulsante OK, l'utente dovrà modificare il campo, scrivendolo nel modo corretto. Definire la chiave In una tabella di un database la chiave è l'impostazione di uno dei campi per fare in modo che nell'archivio non ci siano record duplicati e che il programma possa visualizzarli in ordine e, in modo efficiente. Per comprendere meglio il significato di un campo chiave e della necessità di creare un indice , si può fare riferimento a un database che contenga i dati di tutti gli insegnanti di una certa regione d'Italia. Gli archivi che lo compongono saranno di dimensioni sostenute e cercare un'informazione che riguarda uno degli insegnanti potrebbe diventare un'operazione lunga e complicata. Lo sarebbe sicuramente ancora di più, se la tabella che contiene cognomi e nomi avesse i record semplicemente nell'ordine in cui sono stati immessi i dati. Normalmente i record dovrebbero essere visualizzati nell'ordine esatto in cui sono stati creati. Se non si potesse intervenire in qualche modo, sorgerebbero diverse difficoltà, una delle quali sarebbe la mancanza di efficienza nel trovare i dati di un insegnante specifico, perchè bisognerebbe scorrere i record uno a uno finché non lo si trova nell'archivio. Un'altra difficoltà è che può capitare di inserire due volte i dati di una stessa persona, perchè non si potrebbe controllare facilmente coloro che sono già presenti nella tabella. Problemi di questo tipo renderebbero poco utilizzabile un database. La soluzione è quella di creare un campo come chiave della tabella. Supponendo che la chiave sia il cognome dell'insegnante, si potrebbe far creare dal programma un archivio indice associato a quel campo, per ottenere i seguenti risultati positivi: L'archivio verrebbe visualizzato e gestito dal programma in ordine alfabetico, in modo da poterlo consultare con maggiore rapidità. Si potrebbe controllare subito se un certo cognome sia già stato inserito, evitando di aggiungerlo nuovamente. Nel caso dell'esempio, si potrebbe obiettare giustamente che possono esistere più insegnanti con lo stesso cognome, i quali andrebbero comunque inseriti tutti nella tabella. Quest'osservazione spiega perchè viene normalmente utilizzato un campo chiave definito come primario. Lo scopo è quello di fare in modo che quel campo sia unico per ognuno dei record della tabella, evitando qualsiasi ambiguità. Per farlo, in Microsoft Access occorre impostare, nelle proprietà del campo, la generazione di un indice che escluda la possibilità di duplicati. Nel caso del database degli insegnanti, per esempio, si potrebbe utilizzare come chiave primaria il codice fiscale, assegnato a ogni cittadino italiano e unico per ognuno di essi. E se si volesse visualizzare o stampare l'elenco degli insegnanti per materia, per tipo di scuola oppure per città? Per avere i record ordinati in modo diverso, è necessario definire altri indici in alternativa. Vengono definiti indici secondari, proprio perchè utilizzabili al posto di quello principale. Se ne potrebbero stabilire quanti se ne desidera, anche uno per ogni campo o combinazione di campi di una tabella. Questo però non è consigliabile, perchè ogni volta che si interviene con una modifica sulla tabella il programma dovrebbe aggiornare tutti gli indici, con una considerevole perdita di tempo. E' utile, invece, definire solo quelli che si pensa possano essere effettivamente utilizzati con il database. Definire una chiave primaria Per definire una chiave primaria, in Microsoft Access è necessario portare la tabella in modalità Struttura. La sequenza di operazioni da seguire è la seguente: 1. 2. 3. 4. Aprire il database . Fare clic su Tabelle, nella finestra del database. Selezionare la tabella sulla quale si desidera intervenire. Fare clic sul pulsante Struttura, sotto la barra del titolo della finestra. In alternativa, si può fare clic con il tasto destro del mouse sull' icona della tabella e fare clic sulla voce Visualizzazione struttura. Avendo l'elenco dei campi riportato sulla sinistra, se ne può selezionare uno, facendo clic in un punto qualsiasi del rigo che ne contiene nome, tipo e descrizione. Per impostarlo come chiave principale, si può fare clic sull'icona Chiave primaria (rappresentata da una piccola chiave) presente in una Barra degli strumenti . In alternativa, si può eseguire la sequenza Modifica/Chave primaria. Per verificare che l'azione sia stata eseguita, è sufficiente controllare sulla sinistra del campo: quello impostato come chiave della riga del campo. In Microsoft Access una chiave primaria può essere di tre tipi: Contatore A campo singolo Multicampo La chiave Contatore garantisce l'univocità del record , perchè viene gestita in modo completamento automatica dal programma. Un campo di tipo Contatore è un numero che inizia da uno e viene incrementato ogni volta che si crea un nuovo record. Una chiave primaria A campo singolo può essere creata su un campo che l'utente ritiene sicuramente diverso per ogni record. Un esempio di questo tipo è il codice fiscale. Una volta impostato un campo come chiave primaria, se la tabella conteneva già dati , il programma verifica che non ve ne sia alcuno con valore vuoto (in gergo informatico Null) e che non ve ne siano di duplicati. Se viene riscontrata una situazione di questo tipo viene visualizzato un messaggio di errore. Nel caso non si riesca a creare una chiave primaria con un campo, se ne possono utilizzare di combinati. Un esempio banale riferito sempre al database degli insegnanti, ma che non si deve utilizzare potrebbe essere quello della creazione di una chiave Multicampo composta da cognome più nome insieme. Una chiave di questo tipo non è da utilizzare perchè con un grande numero di record quale sarebbe degli insegnanti in una regione, anche questa definizione di chiave primaria potrebbe non garantire l'univocità dei record. Nessuno potrebbe affermare che non si troveranno mai due insegnanti che abbiano sia lo stesso cognome sia lo stesso nome! In un caso come questo poiché non si può; essere sicuri che la coppia cognome più nome dia una chiave sicuramente unica, se non si intende utilizzare un campo come il codice fiscale è preferibile impostare un campo contatore come chiave primaria. Impostare un indice Per impostare uno o anche più indici in una tabella , è necessario prima di tutto aprirla in Visualizzazione struttura. Nella parte inferiore della finestra sono mostrate le proprietà di ogni campo. Tra le proprietà elencate per ogni campo c'è anche la voce Indicizzato: è su di essa che bisogna intervenire per attivare l'indicizzazione sul campo, con la possibilità eventuale di accettare anche valori duplicati. Accanto alla voce Indicizzato, la casella di riepilogo contiene diverse voci: No Si (Duplicati ammessi) Si (Duplicati non ammessi) Per il campo definito come chiave primaria, accanto a Indicizzato appare la scritta: Sì (Duplicati non ammessi) Per i cosiddetti indici secondari, che possono essere creati su campi diversi dal campo chiave primario, accanto a Indicizzato appare la scritta: Sì (Duplicati ammessi) Per i campi sui quali non sono stati creati indici, accanto a Indicizzato appare la scritta: No Nel database di una rubrica telefonica, per esempio, l'indice principale potrebbe essere creato su un campo di tipo Contatore, mentre se ne potrebbe creare uno secondario su Cognome e un altro su Città, per avere la possibilità di visualizzare o stampare i nominativi in ordine dell'uno a dell'altro campo, secondo le necessità di chi consulta il database. Per impostare un indice sul campo Cognome, la sequenza operativa è: 1. Visualizzare la tabella in modalità struttura. 2. Fare clic sulla riga del campo Cognome. 3. Fare clic sulla casella di riepilogo accanto all'attributo Indicizzato. 4. Fare clic sul pulsante con la freccia in giù. 5. Selezionare la voce Sì (Duplicati ammessi). Chiudendo la Visualizzazione struttura, il programma creerà il nuovo indice e lo aggiornerà in occasione di ogni modifica apportata sui dati contenuti nella tabella e relativi al campo Cognome. Una volta creati almeno due indici (uno primario e uno secondario), rimanendo sempre in Visualizzazione struttura, nella Barra degli strumenti risulterà attiva l' icona Indici. Facendo clic su di essa, Microsoft Access apre una finestra di dialogo per operare sugli indici della tabella. Vengono visualizzati quelli che sono stati attivati e se ne possono creare di nuovi, aggiungendoli alle righe già presenti. All'interno della finestra di dialogo, ogni riga è composta da tre campi. Nel campo Nome indice si scrive la descrizione del tipo di indice. In Nome campo si può fare clic per vedere l'elenco di tutti i campi sui quali si può costruire il nuovo indice in un elenco a discesa; per scegliere un certo campo, è sufficiente fare clic sulla voce che lo descrive. Nella colonna a destra, infine, viene visualizzato il criterio di ordinamento che l'utente sceglie per l'indice corrente. Normalmente è Crescente, nel senso che le scritte vengono riportate in ordine dalla lettera "A" alla lettera "Z" e i numeri da "0" a "9". Se, invece, si seleziona il criterio di ordinamento Decrescente, l'ordinamento avviene nel senso opposto. Impostare una tabella Le impostazioni di una tabella riguardano i suoi attributi e i campi che ne costituiscono i record . Nel caso della tabella, si tratta di fissare una serie di parametri legati in buona parte al sue aspetto estetico o al suo formato. Poiché si lavora in modalità foglio dati , la visualizzazione è simile a una grande tabella di un foglio elettronico , composta da righe e colonne. Il riquadro formato dalla loro intersezione (che è il campo) contiene dati che sono visualizzati con un particolare carattere. Il carattere con il quale mostrare i dati nei campi può essere scelto dall'utente. Si possono stabilire sia il font che il programma deve utilizzare, sia le altre proprietà che riguardano i caratteri: le dimensioni, il grassetto, il corsivo, il sottolineato e il colore. I campi che contengono i dati sono elementi rettangolari racchiusi da una griglia a due dimensioni. Normalmente sono visibili sia le righe orizzontali, sia quelle verticali, a formare cornici intorno ai campi; l'utente può scegliere se debbano essere presenti oppure no. Nel caso in cui risultino presenti, se ne possono definire i colori; si possono definire i colori dello sfondo di ogni cella. Le righe e le colonne della tabella non hanno una dimensione fissa, pertanto possono variare ed essere impostate secondo le necessità o il piacere dell'utente. Le colonne possono anche essere spostate, cambiando il posto nella sequenza dei campi. L'operazione può essere effettuata con il drag and drop mediante mouse. Anche l'elemento campo ha numerosi attributi. A parte il nome e il tipo, che lo definiscono, la dimensione è sicuramente l'attributo principale. E' fondamentale impostarlo in modo corretto per avere un database efficiente e di rapida consultazione. Di un campo si può stabilire un ambito di validità. Si può fissare, per esempio, che siano accettabili solo dati che rientrano in una certa fascia di valori. Per cercare di ridurre al minimo gli errori che può commettere chi immette dati nei campi, si possono definire alcune maschere di input. E' come se si presentasse all'utente una scheda con dei punti precisi in cui scrivere i dati e con i valori possibili già predisposti. Se in un campo di devono poter inserire solo numeri, per esempio il codice di avviamento postale di una città, con un'apposita maschera di input si può guidare l'utente evitando la possibilità di inserire lettere dell'alfabeto. Assegnare un valore predefinito al campo significa fare in modo che, creando un nuovo record, quel campo contenga già un dato specificato dall'utente, valido nella maggioranza delle volte. Anche questo è un attributo facilmente impostabile. A parte i tre attributi fondamentali, quasi tutti gli altri non sono strettamente essenziali per poter lavorare nella tabella, ma il loro corretto impiego migliora la funzionalità del database. Permettono di ridurre il più possibile gli eventuali errori di immissione dati e, il tempo dedicato al loro controllo e alla loro correzione. Modificare gli attributi di una tabella Gli attributi di una tabella riguardano in massima parte l'aspetto con il quale si presenta nella finestra di lavoro. Per poterli verificare ed, eventualmente, modificare, è necessario prima aprire la tabella operando nel modo seguente: 1. Aprire il database . 2. Sulla sinistra nella finestra di gestione del database, fare clic sul pulsante Tabelle. 3. Fare doppio clic sulla tabella da aprire. Per intervenire sugli attributi della tabella si può utilizzare la Barra dei menu. L'elemento sul quale fare clic è Formato e nel menu a discesa che viene visualizzato sono presenti diverse possibilità di impostazione. Le principali voci elencate sono: Carattere Foglio dati Altezza righe Larghezza colonne Rinomina colonna Nascondi colonne Scopri colonne Blocca colonne Sblocca tutte le colonne Facendo clic su Carattere, viene aperta la finestra di dialogo omonima, nella quale si può scegliere il font con il quale il programma deve visualizzare i dati nei campi del foglio dati, si possono modificare le dimensioni in punti e gli attributi come il grassetto, il corsivo, il sottolineato e il colore dei caratteri. Un clic su Foglio Dati dati provoca l'apertura della finestra di dialogo nella quale si possono modificare: L'effetto della cella (piatta, in rilievo o incassata) La visualizzazione della griglia (verticale e orizzontale) Il colore dello sfondo della cella Il colore delle linee della griglia Lo stile dei vari tipi di linee del foglio dati (continua, tratteggiata,ecc.) Variare l'altezza delle righe e la larghezza delle colonne può rendere meglio leggibile il contenuto dei campi. Facendo clic su una delle due voci Altezza righe... e Larghezza colonne..., si apre una piccola finestra di dialogo che permette di scrivere il valore in punti della dimensione da impostare. Nel caso della larghezza delle colonne, si può fare clic sul pulsante Adatta, cosicché il programma varierà automaticamente la larghezza di ogni colonna, adattandola a quella della lunghezza del campo di dimensioni maggiori. Per adattare rapidamente la larghezza di una certa colonna a quella del campo di dimensioni maggiori, si porta il puntatore del mouse in alto nel foglio dati, dove si trovano le descrizioni dei campi, in corrispondenza della lineetta di separazione tra quella colonna e la successiva: il puntatore assumerà l'aspetto di una linea verticale con due frecce laterali; fare doppio clic e la colonna modificherà la sua larghezza immediatamente. La scelta Rinomina colonna fa entrare il programma in modalità Modifica sul titolo posto in cima alla colonna. A quel punto si può correggere la scritta, per rinominarla. Le altre scelte della voce Formato riguardano la possibilità di nascondere o scoprire alcune delle colonne del foglio dati. La prima scelta renderebbe invisibile la colonna selezionata, pur essendo presente. Con la seconda si può chiedere di vedere nuovamente una o più colonne nascoste in precedenza. L'attivazione è possibile anche facendo clic conn il tasto destro del mouse quando il puntatore è in un punto qualsiasi della finestra con la tabella e, quindi, facendo clic sulla voce nel menu contestuale. Con Blocca colonne e Sblocca tutte le colonne, infine, si gestisce l'attivazione del congelamento della colonna selezionata sulla sinistra del foglio dati. La colonna bloccata rimane sempre fissa a sinistra, ma la posizione del campo non varia nella struttura della tabella . E' un attributo che permette di continuare a vedere il campo bloccato quando ci si sposta con il cursore verso destra, per visualizzare i campi che non riescono a entrare nella finestra di lavoro. Si possono anche bloccare più colonne insieme. Modificare gli attributi dei campi I primi attributi o proprietà di un campo sono il nome e il tipo. A essi si aggiunge la descrizione, che, invece di essere un attributo operativo in senso stretto, viene utilizzata per aggiungere documentazione a una tabella . Avere una descrizione dettagliata di cosa sia un certo campo e di notizie che lo riguardano può essere importante se sarà necessario intervenire successivamente sulla tabella per modificarla. In un database che contiene i dati di una rubrica è semplice comprendere il significato dei campi come Cognome, Nome e Telefono. A distanza di tempo e in un database di grandi dimensioni, invece, potrebbe essere più difficile ricordare perchè sia stato inserito il singolo campo e come si intendesse utilizzarlo. Questa difficoltà può essere ancora maggiore se sul database deve intervenire una persona diversa da quella che l'aveva creato. Poter leggere informazioni dettagliate sul campo di una tabella è un sistema che facilita il lavoro di chi deve agire su di essa. Le altre proprietà comprendono aspetti di tipo più strettamente operativo. Per controllate i valori delle proprietà e poterle modificare, è necessario essere nella vista Struttura di una tabella . E' la stessa che viene visualizzata durante la creazione della tabella in Visualizzazione struttura. Per attivarla, bisogna selezionare la tabella nella finestra del database e fare clic sul pulsante Struttura, posto sotto la barra del titolo. Se, invece, la tabella è aperta in modalità foglio dati, è sufficiente fare clic sul pulsante Visualizza struttura, oppure eseguire la sequenza Visualizza/Visualizzazione struttura. Le proprietà di un campo vengono visualizzate nella metà inferiore della finestra, in un gruppo accessibile tramite la linguetta Generale. Sono differenti per campi di tipo diverso, anche se molte di esse sono in comune. Alcune come Dimensione campo hanno validità solo per campi la cui lunghezza può essere variata dall'utente. Per esempio, appare nei campi di tipo Testo e di tipo Numerico, ma non in quelli del tipo Sì/No e Data. Il valore della proprietà della dimensione è indicativo di quanti byte occuperà in maniera fissa quel campo nel record , sia nel caso venga riempito di dati, sia nel caso rimanga vuoto. Altre proprietà sono ugualmente in comune, ma hanno un ambito di validità specifico per ogni campo. Un gruppo di attributi in comune per i tipi di campi più diffusi è;: Formato Maschera di input Etichetta Valore predefinito Valido se Messaggio di errore Richiesto Il Formato di un campo è il modo con il quale viene mostrato il dato in esso contenuto. Per esempio, un numero può essere visualizzato con un numero fisso di decimali, con il segno di percentuale oppure con il segno della valuta accanto, se è un importo in denaro. Per modificarlo, occorre fare clic sul pulsante con la freccia in giù accanto all'attributo. Nella finestra di riepilogo si può scegliere il formato tra quelli predefiniti nel programma oppure impostarne uno personalizzato. La proprietà Maschera di input permette di definire il modo con cui un dato viene immesso nel campo. Può essere utilizzata solo per campi di tipo Testo e Data. Un codice fiscale, per esempio, è un dato di tipo strutturato: i primi sei caratteri sono lettere, perchè ricavate da cognome e nome, mentre i cinque successivi sono due cifre, un carattere e altre due cifre , perchè rappresentativi di anno, mese e girno di nascita. Se si lasciasse un campo codice fiscale semplicemente di tipo Testo, si potrebbero avere facilmente dati immessi in modo non corretto. Attivando l'attributo Maschera di input in modo da guidare l'utente, si riducono quanto meno gli errori di posizione dei dati immessi. Una Maschera di input è costituita da caratteri letterali e da caratteri speciali che determinano il tipo di valore che è possibile immettere nello spazio in quella posizione. Nell'esempio del codice fiscale, la "L" viene interpretata come una qualsiasi lettera dalla A alla Z, la cui immissione è necessaria, mentre lo "0" viene interpretato come una qualsisai cifra da 0 a 9, la cui immissione è necessaria. Il trattino finale rappresenta il carattere che verrà visualizzato al posto degli spazi nella maschera di input. Anche per impostare o modificare una maschera di input è necessario fare clic sul pulsante con la freccia in giù accanto alla casella di riepilogo. Oltre ai formati predefiniti, c'è la possibilità di realizzarne di nuovi con creazioni guidate da programma. Quando si crea una maschera con la quale immettere e interrogare dati più comodamente rispetto alla modalità foglio dati, un campo viene affiancato da una scritta che ne definisce il contenuto, che prende il nome di Etichetta e può essere associata al campo quale suo attributo. Per esempio, il campo Cellulare potrebbe avere un'etichetta maggiormente descrittiva del tipo "Numero del telefono cellulare". Nel caso di generazione automatica della maschera video, il programma utilizza la scritta inclusa nella casella dell'attributo Etichetta per affiancarla alla casella di testo nella finestra di lavoro. Per creare un'Etichetta, è sufficiente inserire la descrizione direttamente nella casella di testo dell'attributo. Per modificarla, fare clic nella stessa casella e correggerne il contenuto. Il Valore predefinito viene proposto automaticamente dal programma in fase di creazione del record. Per esempio, si supponga che il campo Città si riferisca a un archivio che conterrà per la maggior parte nomi di aziende o di persone residenti a Roma: converrà mettere come valore predefinito del campo Città proprio la stringa "Roma", in modo che l'utente lo trovi già scritto al momento di inserire il dati la prima volta in un nuovo record. Ovviamente, se non dovesse andare bene è sempre possibile modificare il contenuto del campo scrivendo il nome di un'altra città. Anche per modificare l'attributo Valore predefinito, è sufficiente scriverne il valore direttamente nella casella di testo accanto alla scritta omonima. L'attributo Valido se permette di impostare le condizioni di validità del dato immesso. Per esempio, si potrebbe stabilire che la data di nascita degli alunni che stanno frequentando una scuola elementare non può essere antecedente a quindici anni nè inferiore a quattro, rispetto alla data odierna. Per impostare l'attributo, prima si fa clic nella casella di testo e poi sul pulsante accanto alla casella di riepilogo, che riporta tre puntini. Subito dopo si apre la finestra di dialogo Generatore di espressioni, utilizzabile in modalità guida dal programma per costruire l'espressione di validazione del campo. Il Messaggio di errore è il testo che compare nel caso ci sia un errore nell'immissione dei dati nel campo e sostituisce il testo standard che visualizzerebbe il programma. Per scriverlo, è sufficiente fare clic nella casella e digitare il testo con la tastiera. L'attributo Richiesto controlla che il campo abbia o meno un contenuto. Se è attivato (è sufficiente fare clic sul pulsante con la freccia in basso accanto alla casella di riepilogo dell'attributo), il programma visualizza un errore quando non viene immesso alcun dato nel campo. Aggiornare un database Prima di aggiornare un database , è importante dargli una consistenza, ossia riempirlo di contenuti. I contenuti sono i dati che, record dopo record, vengono immessi nelle tabelle . Tornando all'esempio di un database con i dati dei cittadini di un comune, non si può fare a meno di pensare che debba essere sicuramente aggiornato nel tempo per poter fornire informazioni sempre valide. Un tipo di aggiornamento, per esempio, è quello che avviene aggiungendo nuovi record, quando arrivano altre persone nel comune o vengono registrati bambini appena nati. Anche togliere un record può essere necessario. Nel database del comune magari non accade e se un cittadino si trasferisce o viene a mancare, è comunque utile tenere i suoi dati memorizzati in archivi, detti Storici e che possono servire per ottenere informazioni che si riferiscono a ciòche è avvenuto in passato. Una cancellazione di un record è necessaria invece quando questo risulta inutile o completamente sbagliato. Teoricamente, in alternativa alla cancellazione completa di un record se ne potrebbe eseguire una di tutti i dati registrati nei suoi campi . In questo caso rimarrebbe un record vuoto che è possibile riempire con dati diversi. Se, per ipotesi, si cambiassero completamente i dati contenuti in tutti i campi di un record con altri, si otterrebbe di fatto una cancellazione del record precedente a favore della sua sostituzione con un altro totalmente diverso. Quest'operazione però è pericolosa, perchè, se ci fosse un archivio che contiene il riferimento al codice di quel record, una consultazione successiva produrrebbe risultati sbagliati, facendo riferimento ai nuovi dati invece che a quelli originali. Un esempio potrebbe essere quello del record di una società cliente che ha effettuato una serie di acquisti da un'azienda. Supponendo che la società chiuda l'attività, sarebbe sbagliato sostituire i suoi dati a favore di quelli di un nuovo cliente perchè, nel caso venisse interrogata la tabella delle vendite dell'azienda (che contiene il codice del record nel quale si sono sostituiti i dati), risulterebbe che il cliente appena inserito avrebbe già fatto una serie di acquisti effettuati invece dalla società precedente. Nel caso si decidesse di cambiare completamente i dati di un record sostituendoli con quelli di un altro, è importante verificare che il record non sia mai stato utilizzato in qualche elaborazione fino a quel momento. Un database viene aggiornato mediante la modifica dei suoi dati. Quello che accade solitamente è la modifica di un singolo campo e può avvenire perchè ci si accorge che il dato da cambiare è sbagliato o incompleto. E' una fase importante, nella quale si rende il contenuto informativo del database adeguato alla situazione reale esistente. Se non si intervenisse sul contenuto dei campi quando risulta necessario, le serie di archivi che costituiscono il database diventerebbe un grosso contenitore di dati inutilizzabili ai fini della ricerca di informazioni. Modificare dati in una tabella La modifica dei dati viene eseguita portandosi in un record della tabella e poi correggendone i singoli campi. Passando a un altro record oppure chiudendo la tabella, i dati vengono aggiornati sul file memorizzato nel disco. Per portarsi su un record si possono utilizzare i pulsanti di navigazione, posti nella parte inferiore della finestra che contiene il foglio dati . Si può andare al primo record, all'ultimo oppure spostarsi da quello corrente al successivo o al precedente, fino a che il cursore non lampeggia in un campo del quale interessa modificare i dati. Un altro modo per agire sui dati di un record, è quello di fare clic in uno dei suoi campi . Se il record non è visibile, lo si potrebbe visualizzare mediante la barra di scorrimento verticale. Portando il pulsante rettangolare in corrispondenza della zona dov'è il record, si può fare clic su un campo specifico. Come riuscire a cambiare un dato dipende dal tipo di dato stesso. Un campo di tipo Contatore non può essere modificato dall'utente. E' il programma che lo genera all'atto della creazione di un nuovo record, incrementando il precedente valore di uno. Il tipo di Testo è quello di utilizzo più generale. In un campo di questo tipo si può digitare qualsiasi scritta che comprenda lettere, numeri, simboli di interpunzione e spazi. Per modificare un campo di tipo Testo, è sufficiente fare clic sul campo e utilizzare la tastiera per scrivere, spostarsi con i tasti di direzione a destra e sinistra, cancellare e riscrivere. Per modificare un campo di tipo Memo è sufficiente fare clic sul campo e cancellare o correggere le scritte già presenti utilizzando la tastiera come in un programma di gestione testi. La modifica di un campo Si/No viene eseguita con un clic del mouse. Nel campo, Microsoft Access presenta un piccolo quadro che rappresenta una casella di selezione. Facendo clic una sola volta, appare il segno di spunta, che corrisponde alla risposta Si. Facendo di nuovo clic, il segno di spunta scompare per indicare il valore No. Definito un campo di tipo Numero, la sua modifica avviene in modo piuttosto semplice: è sufficiente fare clic nel campo e digitare le cifre del valore che si intende inserire. Nel caso non fossero dello stesso tipo di quello previsto nel campo, il programma visualizzerebbe un messaggio di errore. Il tipo Data ha un suo formato specifico definito dall'utente in fase di creazione o di modifica della struttura della tabella . Un certo giorno dell'anno, infatti, potrebbe essere scritto in più modi, per esempio: 25-5-2000 25-mag-2000 25/05/00 Ognuno dei modi elencati è lecito, se letto sul video o su carta. La modifica avviene seguendo la maschera di input specificata per il campo. E' il programma a guidare l'utente nell'immissione, in modo che non possano verificarsi ambiguità. Per i campi il cui tipo è Oggetto OLE , l'inserimento o la modifica vengono eseguiti con la seguente sequenza Inserisci/Oggetto. Viene visualizzata una finestra di dialogo nella quale è possibile scegliere se creare un nuovo oggetto o leggerlo da un file sul disco. Tipicamente, l'oggetto da inserire nel campo è già memorizzato, per cui lo si sceglierà selezionandolo dal file system che compare facendo clic sul pulsante Sfoglia. Una volta confermato il file che è stato selezionato, sarà sufficiente fare clic sul pulsante OK per avere l'immagine, il file musicale o l'oggetto multimediale nel record corrente. Cancellare dati in una tabella Guardando una stampa estratta da un database , ci si può accorgere di dati completamente sbagliati in uno o più campi . Questi dati possono essere modificati con valori corretti, oppure, possono essere cancellati, nel caso in cui i nuovi valori non siano disponibili. Per la cancellazione, così come per la modifica, l'operazione da eseguire dipende dal tipo di dato contenuto nel campo. Come si vedrà, però, l'operazione può essere generalizzata per quasi tutti i campi. Una volta aperta la tabella in modalità foglio dati , ci si porta sul record nel quale cancellare i dati, spostandosi con il mouse oppure con i pulsanti di navigazione in basso nella finestra. Per quello che riguarda i campi di tipo Testo, la cancellazione può avvenire facendo clic e poi eliminando tutti i caratteri del campo con il tasto Backspace oppure Canc. Il campo, però, potrebbe essere piuttosto lungo, per cui, per ottenere lo stesso risultato più velocemente, si può agire selezionando tutta la scritta con la tecnica del drag and drop e poi premendo il tasto Canc. La selezione dell'intero contenuto di un campo, in Microsoft Access avviene molto più rapidamente con questa sequenza operativa: 1. Portare il puntatore del mouse all'inizio del campo, poco a destra della linea del bordo di sinistra. 2. Verificare che il puntatore sia diventato una grossa croce e fare clic. L'intero campo viene visualizzato in modalità inversa, con le scritte bianche su sfondo nero. A questo punto, premendo il tasto Canc il contenuto del campo verrà cancellato. In alternativa alla pressione sul tasto Canc, è possibile: 1. Fare clic su Modifica, nella Barra dei menu. 2. Fare clic su Elimina. La cancellazione del campo eseguita in questo modo vale pressochè con tutti i tipi di dati. Il tipo Contatore, però, non può essere eliminato, perchè viene gestito automaticamente dal programma. Se lo si seleziona e si tenta di cancellarlo, il programma indica il tentativo come sbaglio: evidenzierà l'errore con un suono e, contemporaneamente, nella barra di stato apparirà il messaggio: Impossibile modificare. Controllo associato al campo Contatore 'NomeCampo'. Anche nel caso del campo di tipo Sì/No non è possibile cancellare il contenuto,, perchè renderebbe vuoto il contenuto di campo. I dati logici Sì e No, invece, sono entrambi valori e in alternativa l'uno all'altro. Non può esserci un contenuto nullo del campo, altrimenti i valori possibili sarebbero tre e non più due. Se per cancellazione di un campo logico si intendesse togliere il valore Sì dal campo, allora sarebbe sufficiente fare clic nella casella di selezione dove appare il segno di spunta per eliminarlo. Aggiungere record a un database Per inserire nuovi dati nella tabella , è necessario portare il puntatore in corrispondenza di un nuovo record . Occorre avere prima aperto la tabella in modalità foglio dati. L'aggiunta di un nuovo record può essere eseguita in modi diversi. E' possibile, per esempio: 1. Fare clic su Inserisci, nella Barra dei menu. 2. Fare clic su Nuovo record. Un altro modo per portarsi nella posizione si un nuovo record è quello di eseguire le operazioni seguenti: 1. Fare clic su Record, nella Barra dei menu. 2. Fare clic su Immissione dati. Un ulteriore metodo è quello di sfruttare una delle icone presenti in una Barra degli strumenti . Fare clic sull'icona Nuovo record provoca la creazione di un nuovo record esattamente come per la sequenza Inserisci\Nuovo record. Al termine di una qualsiasi delle tre sequenze operative descritte, il cursore comincerà a lampeggiare in corrispondenza del primo record vuoto, e si potranno cominciare a immettere i dati un campo dopo l'altro. In alternativa alla Barra dei menu o all'utilizzo dell'icona, si possono sfruttare i pulsanti di navigazione visualizzati in basso nella finestra di lavoro. Dopo aver aperto la tabella, è necessario individuare tra i pulsanti in basso quello con la freccia verso destra che punta a un asterisco (*). Fare clic sul pulsante provoca lo spostamento del cursore sul primo campo di un nuovo record della tabella, ossia l'aggiunta di un nuovo record. Si può ottenere lo stesso risultato anche agendo con il mouse. Si può portare il puntatore sulla barra di scorrimento verticale e prendendo il pulsante rettangolare che indica la posizione del primo record mostrato in quel momento, lo si può trascinare verso il basso. Mentre lo si trascina, in Microsoft Access appare un rettangolo giallo che notifica quale sia il numero del record che si sta visualizzando e quale sia il numero totale di record della tabella. Una volta che il pulsante rettangolare è stato portato in fondo alla tabella, si può fare clic direttamente nel primo campo del nuovo record, indicato con un asterisco sul pulsante alla sinistra della riga; a questo punto, ci si trova su un nuovo record. Cancellare record in un database La cancellazione di un record elimina i dati dalla tabella e riduce lo spazio occupato sul disco. Eseguire la cancellazione di un record è un'operazione che deve essere svolta con una certa attenzione, sia perchè il record potrebbe essere richiamato da un'altra tabella, sia perchè è un'azione che non è possibile annullare. Nella modifica di un campo, infatti, se ci si sbaglia e si cancella un dato, si può tornare indietro chiedendo al programma di annullare l'ultima operazione eseguita, facendo clic sull'icona Annulla (quella con la freccia che ruota all'indietro verso sinistra), o facendo clic su Modifica/Annulla, o premendo la combinazione rapida di tasti Ctrl+Z. Al termine di una delle tre operazioni, il dato cancellato riappare immediatamente. Se, invece, si chiede di cancellare un record, non c'è la possibilità di tornare indietro. Questo viene segnalato esplicitamente dal programma in un'apposita finestra, visualizzata nel momento in cui si chiede la cancellazione. Per poter cancellare un record, occorre prima selezionarlo. Dopo aver aperto la tabella in modalità foglio dati , si può selezionare un record nel seguente modo: 1. Portando il puntatore del mouse sul pulsante alla sinistra del record: assumerà l'aspetto di una piccola freccia nera che punta verso destra. 2. Facendo clic con il mouse. Il programma visualizzerà il record con colori invertiti, ovvero scritte bianche su fondo nero, per mostrare la selezione. A questo punto per chiedere la sua cancellazione è possibile premere il tasto Canc. In alternativa è possibile: Fare clic su Modifica nella Barra dei menu. Fare clic su Elimina. Un altro modo per chiedere la cancellazione di un record è: Fare clic con il tasto destro del mouse sul record selezionato. Appare il menu contestuale: fare clic su Elimina record. Subito dopo appare la finestra nella quale il programma avvisa che si sta per eliminare un record e ne chiede la conferma. Per confermare la cancellazione, è necessario fare clic sul pulsante Sì. Per rinunciare, occorre fare clic sul pulsante con la scritta No. Si possono anche cancellare più record contemporaneamente. La sequenza operativa è del tutto simile a quella descritta in precedenza; la differenza sostanziale è che bisogna selezionare tutti i record da eliminare e poi chiederne la cancellazione. Perchè si possano cancellare più record insieme, essi devono essere consecutivi. La selezione di un gruppo di record avviene con la seguente sequenza operativa: 1. Portare il puntatore del mouse sul pulsante a sinistra del primo record da cancellare. 2. Premere il tasto sinistro del mouse. 3. Tenendolo premuto, spostare il mouse portando il puntatore verso il basso (oppure verso l'alto). I record sui quali passa il puntatore verranno selezionati e mostrati con colori invertiti. Per chiedere la cancellazione dopo la selezione è sufficiente premere il tasto Canc. Il programma farà scomparire le righe selezionate e mostrerà la finestra nella quale chiede la conferma della cancellazione, perchè l'azione non è annullabile. Anche in questo caso, si farà clic sul pulsante Sì per eseguire l'operazione, oppure su quello No per rinunciare. Utilizzo di maschere In questo capitolo si apprenderà il concetto di maschera, le modalità per crearla e per inserirvi i dati. Inoltre, verranno spiegate le operazioni per modificare una maschera, come si definiscono le formattazioni del testo, come si cambia il colore di sfondo, come si imposta un'immagine o un file grafico e come possono essere disposti gli oggetti nella maschera. Creare una maschera I dati di un database possono essere gestiti in tanti modi diversi. Una volta creata una tabella, per inserire e modificare i dati, la si può aprire in modalità foglio dati . Questa è una modalità di lavoro, di immediato utilizzo, che permette di operare direttamente con l'immissione e l'aggiornamento dei dati della tabella, senza preoccuparsi di altro dopo la sua creazione. Per utilizzare un foglio dati, però, è necessario spostarsi tra i campi mediante tastiera (frecce direzionali, PgSu, PgGiù) oppure mouse. Se i campi sono molti, oppure ve ne sono alcuni di grandi dimensioni, per lavorare con gli ultimi campi del record è necessario spostarsi in orizzontale sulla destra all'interno della finestra di lavoro. Per aiutare l'utente a lavorare con i dati in un modo più agevole, vengono utilizzate le maschere. Una Maschera è una finestra progettata e realizzata per avere interamente a video i dati di uno o più record, in modo che siano mostrati con più chiarezza rispetto alla loro visualizzazione da foglio dati. Le maschere di Access sono simili ai comuni moduli che si devono compilare per richiedere un documento: ad ogni campo corrisponde un'etichetta ed è previsto uno spazio utilizzabile per l'inserimento delle informazioni. La peculiarità di questo strumento, tuttavia consiste nel fatto che i campi di una maschera possono essere prelevati da più tabelle diverse. Nel database sulla gestione clienti, per esempio, attraverso una maschera si può creare un record contenente le informazioni relative agli acquisti effettuati da ogni cliente. In questo modo attraverso la maschera è possibile visualizzare in un unico record quali e quanti prodotti sono stati acquistati da ogni cliente, associando le informaziomni provenienti da due tabelle differenti (Ordini - Dettagli ordini). Le maschere, inoltre, permettono di visualizzare le informazioni secondo diverse modalità grafiche e aggiungere immagini, note o commenti ai campi. Il punto di partenza consiste nello scegliere qual'è la tabella a cui associare la maschera, quindi si procede alla sua costruzione. In un programma di gestione database le maschere possono essere create manualmente dall’utente o automaticamente dal programma stesso. In Microsoft Access la creazione manuale di una maschera è indicata come Visualizzazione Struttura. In Visualizzazione Struttura di una maschera si lavora con strumenti molto simili a un programma di grafica: in pratica, si tratta di disegnare il layout della finestra nella quale si lavorerà con i record della tabella visualizzata. Si scelgono gli oggetti da mettere in una zona piana di forma rettangolare (quella che corrisponde alla finestra) e li si posiziona. Gli oggetti possono essere casella di testo , caselle di selezione, pulsanti di azione e altri che fanno normalmente parte delle finestre in Windows; quel che è importante è che siano in relazione ai campi di una delle tabelle del database. Per inserire un oggetto in una finestra, occorre prima sceglierlo tra una serie di componenti disponibili. L’operazione viene eseguita selezionando con un clic del mouse; successivamente si utilizza la tecnica del drag and drop per inserirlo, mediante questa procedura: 1. Si porta il mouse in uno dei vertici dello spazio rettangolare che occuperà nella finestra. 2. Tenendo il tasto sinistro premuto, si sposta il mouse fino a raggiungere il vertice opposto. 3. Lasciando il tasto sinistro del mouse, l’oggetto apparirà nella finestra. Per allineare correttamente gli oggetti, in orizzontale o in verticale, il programma visualizza una griglia di punti. Ciascuno di essi può essere aumentato o rimpicciolito di dimensioni e spostato in qualsiasi punto dello spazio disponibile. Alla fine viene dato un nome alla maschera, in modo tale che, quando ve ne saranno diverse, l’utente possa scegliere quella più utile. Le maschere che il programma di gestione database può creare automaticamente sono di diverse tipologie. In Microsoft Access vengono chiamate Creazioni guidate e permettono di creare quattro tipi di maschere: A colonne Tabulare Foglio dati Giustificato Corrispondono a quattro tipi di formato diversi, da scegliere liberamente assecondando il proprio gusto estetico. Il tipo A colonne è quello più simile a una scheda di cartoncino: riporta tutti i campi in colonna, con accanto la descrizione. Se non è stata specificata nelle proprietà del campo (mediante l’attributo Etichetta), la descrizione è quella del nome del campo ripreso dalla tabella. Nel caso in cui i campi siano troppi per entrare in una sola colonna della finestra, il programma li riporta su più colonne affiancate. Il tipo di maschera Tabulare visualizza tutti i record in un'unica finestra, sotto forma di tabella; nella prima riga in alto viene riportata la descrizione di ogni campo e nelle righe sottostanti sono mostrati i valori a essa corrispondenti. Se i campi non riescono a entrare tutti nella maschera, le barre di scorrimento generate automaticamente dal programma permettono di scorrerla agevolmente. La maschera di tipo Foglio dati crea una finestra identica a quella del foglio dati sul quale si può lavorare. La differenza è che, essendo una maschera, può essere modificata. Se si fa clic sul pulsante Struttura (che equivale alla sequenza Visualizza/Struttura) si può intervenire sul formato della maschera generata. La maschera Giustificato produce una vista dei dati del record allineando i campi in orizzontale. In altre parole, i campi vengono mostrati in una sequenza a partire da sinistra verso destra e, raggiunto il bordo della maschera, continuando sulla riga successiva. Ogni campo appare con la descrizione sopra e il valore sotto. Le diverse righe che compongono il record vengono dimensionate in modo da risultare tutte di pari larghezza complessiva, apparendo giustificate come un testo allineato su entrambi i lati della pagina. Creare una semplice maschera Il modo più semplice per creare una maschera è quello di eseguire una creazione guidata dal programma. La sequenza operativa inizia con: 1. Clic sul pulsante Maschere 2. Doppio clic sull' icona Crea una maschera mediante una creazione guidata. Viene visualizzata la finestra di dialogo Creazione guidata Maschera. Come in tutte le creazioni guidate (in inglese: wizard ), si tratta di scegliere tra le varie proposte in una serie di finestre mostrate in sequenza. La finestra include i pulsanti: Avanti, per confermare le scelte e passare alla finestra successiva. Indietro, per intervenire sulle scelte già fatte. Annulla, per rinunciare all'operazione e uscire dalla creazione guidata. Fine, per completare immediatamente la creazione guidata in atto, accettando tutte le scelte predefinite dal programma. Per poter proseguire, nella prima finestra è necessario indicare la tabella alla quale associare la maschera: vengono elencate tutte quelle che fanno parte del database, insieme con le query (le interrogazioni) in una casella di riepilogo posta in alto sulla sinistra. Dopo aver scelto la tabella, in un riquadro in basso viene visualizzato l'elenco di campi che compongono ogni record . Si può decidere di portare solo una parte di essi nella maschera o tutti indistintamente. L'operazione più semplice è quella di portare tutti i campi della tabella nella maschera, facendo clic sul pulsante con i due segni di maggiore (>>). I nomi dei campi scompariranno dal riquadro Campi disponibili a sinistra, per passare in quello di destra Campi selezionati. Se si volesse utilizzare la maschera, a questo punto sarebbe sufficiente fare clic sul pulsante Fine. Il programma le attribuirebbe lo stesso nome della tabella, il layout A colonne, lo stile grafico utilizzato in precedenza e aprirebbe la maschera per poter lavorare immediatamente nei dati della tabella. In qualsiasi momento si potrà selezionare la maschera e aprirla in visualizzazione struttura per modificarla. Se però si vuole ottenere una maschera personalizzata, è possibile intervenire nelle scelte presentate in ogni finestra della creazione guidata. Per esempio, per portare un solo campo all'interno della maschera occorre selezionarlo e fare clic sul pulsante che ha solo un segno di maggiore (>). In questo modo la creazione guidata inserirà nella maschera i campi in base alla sequenza con la quale l'utente li ha inseriti e non a quella presente nella struttura della tabella . Nel caso si intendessero portare tutti i campi meno uno o due, conviene prima trasferirli tutti e poi selezionare nel riquadro Campi selezionati quello che non interessa avere nella maschera e riportarlo indietro facendo clic sul pulsante con il simbolo di minore (<). Una volta effettuata la scelta della tabella e dei campi da trasferire nella maschera, si deve fare clic sul pulsante Avanti. Viene visualizzata la finestra di dialogo successiva, nella quale scegliere il layout , o formato della maschera, tra uno dei quattro tipi previsti in Access: A colonne Tabulare Foglio dati Giustificato Facendo clic nuovamente sul pulsante Avanti, si arriva nella finestra dove impostare lo stile grafico dello sfondo e dei tipi di carattere da utilizzare. Conviene verificare nella finestra di anteprima l'aspetto che verrà reso a video, per individuare quello adeguato alle proprie esigenze. Un ulteriore clic su Avanti porta all'ultima finestra di dialogo, dove eseguire due importanti operazioni. La prima consiste nello scrivere in una casella di testo il titolo della maschera: questo è il nome con il quale verrà mostrata insieme con le altre nel riquadro della finestra di lavoro del database, quando si preme il pulsante Maschere. Si tratta anche del nome che verrà utilizzato per la visualizzazione nella Barra del titolo all'apertura della finestra della maschera. La seconda operazione riguarda la scelta tra aprire la maschera per poter lavorare immediatamente nei dati della tabella oppure aprirla in modalità modifica struttura. Quest'ultima permette di intervenire per modificarne l'aspetto creato automaticamente dal programma. Una casella di selezione nella finestra di dialogo finale chiede se l'utente intende attivare la guida in linea sull'utilizzo delle maschere. Se la si seleziona, compare la finestra nella quale si spiega che una maschera è uno strumento completo per lavorare su una tabella. La finestra visualizza le icone da sfruttare per funzioni avanzate, quali, per esempio: ordinare, filtrare e trovare record, controllare l'ortografia dei dati contenuti e stampare la maschera. Inserire i dati in un database utilizzando semplici maschere Per inserire dati in una tabella tramite una maschera , una volta aperto il database la prima operazione da fare è, ovviamente, aprire la maschera stessa. In Microsoft Access, la sequenza operativa da eseguire è: 1. Fare clic sul pulsante Maschere. 2. Fare doppio clic sull' icona con il nome della maschera con la quale si intende lavorare per aprire la relativa finestra. La maschera si presenta come una normale finestra Windows che è possibile spostare sul video, ingrandire o rimpicciolire facendo clic sui soliti pulsanti in alto a destra della Barra del titolo. All'interno della finestra sono visibili i campi della tabella inseriti in fase di creazione; il record visualizzato è il primo e anche il cursore lampeggia all'interno del primo campo. Se si intende modificare un campo di un certo record, lo si può visualizzare spostandosi con i pulsanti di navigazione posti nella parte inferiore della maschera. Ci sono i pulsanti per portarsi sul primo record, sull'ultimo, su quello successivo o su quello precedente. Per portarsi su un record specifico, se ne può scrivere il numero direttamente nella casella di testo presente tra i pulsanti e quindi premere il tasto Invio. Utilizzando la tastiera, si può premere il tasto PgSu per spostarsi sul record precedente e PgGiù per spostarsi su quello che segue. Quale che sia il metodo scelto per spostarsi, il cursore si posiziona sempre sul primo campo del record visualizzato nella maschera. Per inserire un nuovo record, invece, si può fare clic sul pulsante Nuovo record (che reca una freccia rivolta verso destra, con un asterisco accanto) e la maschera mostrerà tutti i campi vuoti. Dopo aver aggiunto il valore in un certo campo, per spostarsi in quello successivo si può agire in modi diversi: Il tasto Invio La freccia direzionale in giù Il tabulatore Per spostarsi al campo precedente, si può premere: La freccia direzionale in su Il tasto Shift insieme con il tasto tabulatore In quale modo immettere il valore in un campo dipende dal tipo di dato. Per inserire dati in un campo di tipo Testo o Numerico, per esempio, è sufficiente scrivere direttamente nella casella di testo; questo vale anche per i campi di tipo Memo e i campi Data, ma in quest'ultimo caso sarà sufficiente rispettare i punti dove scrivere il giorno, il mese e l'anno. Se il campo è di tipo Si/No, la maschera lo presenta come una casella di selezione, in cui fare clic per attivarla o disattivarla. Un campo di tipo immagine (o, più in generale, un Oggetto OLE ) può essere riempito utilizzando la sequenza dei comandi Copia e Incolla. Si parte con il visualizzare l'immagine di una finestra di Windows oppure la sua icona in Esplora risorse o in una cartella. Facendo clic sul tasto destro del mouse mentre il puntatore è sull'oggetto da copiare, compare il menu contestuale, da cui scegliere Copia. Successivamente, si porta il puntatore nella casella della maschera dove deve essere visualizzata l'immagine, si fa clic con il tasto destro del mouse e si fa clic sulla voce Incolla. A questo punto il file con l'immagine si trova nel campo del record visualizzato; la stessa sequenza può essere utilizzata per inserire un file di suoni, un filmato o un altro oggetto multimediale . Una volta terminato l'inserimento dei dati nei campi, il record viene aggiornato spostandosi su un record diverso della stessa tabella. Modificare una maschera Una maschera non corrisponde sempre alle funzionalità richieste dall'utente o al suo gusto estetico, per cui, è possibile modificarla in qualsiasi momento. Se ne può cambiare semplicemente il nome o intervenire sulla sua struttura. Ogni componente nell'area nella finestra è un oggetto, con determinate proprietà . Le modifiche possono riguardare: La posizione (per esempio, lo spostamento di un campo da un punto ad all'altro della finestra). Il contenuto (per esempio, la modifica di una descrizione nella videata). Le dimensioni (per esempio, la variazione delle dimensioni di una casella di testo ). La forma (per esempio, il tipo di carattere utilizzato). Il layout (per esempio, l'estetica della finestra). L'ultima voce, legata alla modifica dell'estetica, potrebbe apparire di secondaria importanza rispetto alla gestione dei dati del database . Invece, inserire i dati in una pagina gradevole alla vista rende più piacevole il lavoro e minore la fatica. Quando si crea manualmente la maschera in modalità struttura, ogni oggetto viene inserito con una tecnica che comprende la selezione del tipo di oggetto e poi il suo posizionamento nello spazio rettangolare della finestra, per mezzo del drag and drop . Al termine dell'inserimento, il computer mostra otto piccoli quadrati attorno al riquadro di selezione, di cui quattro nei vertici e quattro al centro dei lati. I piccoli quadrati vengono chiamati manigliette e sono utilizzati per variare le dimensioni dell'oggetto selezionato. Se si porta il puntatore su una delle manigliette, la si prende e la si trascina verso l'esterno dell'oggetto, le dimensioni di quest'ultimo aumentano di un valore proporzionale allo spostamento. Nello stesso modo, si possono ingrandire (o rimpicciolire) le zone rettangolari destinate alle descrizioni che affiancano i campi, per poter avere caratteri più grandi e quindi più leggibili. Una maschera accompagna l'inserimento e la modifica dei dati di un record , per cui rendere i campi distinti tra loro aiuta la leggibilità. L'insieme dei campi e delle scritte nella finestra può essere raggruppato sotto una grande intestazione che faccia da titolo; i campi possono essere raccolti anche per gruppi omogenei. Separandoli per tipologia, i titoli guiderebbero gli occhi dell'operatore nell'immissione dei dati. Per ciò che consente la formazione del testo, una maschera include titoli, descrizioni dei campi e caselle di vario genere: compaiono quindi diverse scritte, ognuna con le proprie caratteristiche. Si possono modificare le caratteristiche dei vari oggetti intervenendo sul font , sulle dimensioni, sugli attributi come grassetto, corsivo, sottolineato e infine sul colore. Le scritte possono inoltre essere allineate a sinistra, al centro e a destra dello spazio destinato. Variando le dimensioni della casella che le contiene, si può disporre il testo su più righe oppure lasciarlo su una sola. Il colore di sfondo riguarda sia la maschera, sia gli oggetti da inserire nella finestra: è possibile assegnare un colore a ogni elemento, indipendentemente dagli altri. Lo sfondo può assumere un numero notevole di tinte o essere trasparente. Se a essere trasparente è lo sfondo di un oggetto, sotto la scritta o il contenuto della casella comparirà il colore di sfondo della maschera. Un'altra possibilità di modifica di una maschera è legata alla manipolazione degli oggetti per trasferirli da una zona all'altra del finestra, utile per raggrupparli in gruppi omogenei o per assegnare loro un formato particolare. Poichè in una maschera si trovano anche oggetti come le finestre a discesa, che si aprono verso il basso, alcune volte può essere utile lasciare un po' di spazio sotto di esse, per evitare di coprire altri campi. Definire la formattazione del testo Per variare la formattazione del testo di una maschera è necessario prima di tutto aprirla in modalità struttura. Nella finestra database: 1. Si fa clic sul pulsante Maschere. 2. Si seleziona la maschera nella quale si intende lavorare. 3. Si fa clic sul pulsante Struttura. A questo punto, nella finestra appaiono una serie di scritte. Parte di esse sono titoli; altre sono quelle che compaiono accanto (oppure sopra) a un campo e ne descrivono il contenuto. I dati contenuti nei campi sono testi all'interno delle caselle e anche su di essi è possibile intervenire per applicare opzioni di formattazione. Per poter impostare le proprietà di un testo, è necessario prima selezionare e poi agire. In una maschera di un database, però, ciò che deve essere selezionato è l'oggetto che è stato inserito e non la scritta stessa. In una maschera di un database, una scritta è parte integrante dell'oggetto inserito in una zona rettangolare. L'oggetto ha una serie di proprietà : la formattazione del testo viene applicata selezionando interamente l'oggetto e quindi agendo su una o più delle sue proprietà, incluse quelle relative al testo quali dimensioni, colore, allineamento e così via. Il fatto che le opzioni di formattazione del testo si applichino all'oggetto che lo contiene significa che due parti di una scritta presente in un campo non possono avere attributi diversi. Per esempio, non si può ottenere una parte della scritta con un font e l'altra con un font diverso. La sequenza di operazioni da eseguire in Microsoft Access per variare uno degli attributi dei caratteri di una scritta inserita come titolo nella maschera è: 1. Fare clic sull'oggetto che contiene la scritta. 2. Fare clic sull' icona della Barra degli strumenti Formattazione (maschera/report) che corrisponde all'attributo da modificare. La Barra degli strumenti Formattazione si riferisce sia a maschera sia a report, perchè può essere utilizzata per entrambi gli strumenti del database. Le icone presenti permettono di intervenire su: Font carattere Dimensione carattere Grassetto Corsivo Sottolineato Allineamento scritta Per cambiare font e dimensione si lavora mediante le caselle di riepilogo che hanno accanto un pulsante con la freccia rivolta verso il basso. Nella casella del font appare il nome della famiglia di caratteri in cui è scritto il testo. Facendo clic sul pulsante, si apre la finestra a discesa che contiene i nomi degli altri font disponibili; per apportare una modifica è sufficiente selezionare un nome e il programma procederà alla sostituzione immediata. In Microsoft Access 2000 il nome del tipo di carattere viene visualizzato per mezzo del carattere stesso: in questo modo è molto semplice decidere gli eventuali cambiamenti. La modifica della dimensione avviene con le stesse modalità. Nella finestra a discesa vengono elencate tutte le dimensioni che i caratteri possono assumere, espresse in numero di punti tipografici . L'intervallo di dimensioni disponibile è molto ampio e, solitamente, comprende valori compresi tra 8 e 72 punti. L'attivazione o la disattivazione di uno degli attributi grassetto, corsivo e sottolineato avviene facendo clic sull'omonima icona, che funziona come interruttore: la prima vota il pulsante rimane "abbassato" e l'attributo viene impostato; il clic successivo lo disattiva, e il pulsante ritorna "sollevato". Anche per l'allineamento della scritta, si agisce con un clic sull'omonima icona/pulsante. Questa volta però le tre icone sono reciprocamente esclusive. Per esempio, facendo clic su Allinea a sinistra, la scritta viene allineata sulla sinistra della casella e l'icona appare come premuta. Se si fa clic su Centra, la scritta viene centrata rispetto i bordi laterali, l'icona Centra appare premuta e quella Allinea a sinistra ritorna all'aspetto normale. Sul testo si può agire anche con modalità di tipo diverso dall'utilizzo delle icone della Barra degli strumenti Formattazione. E' stato detto che l'elemento casella presente nella maschera è un oggetto autonomo del quale fa parte anche il testo contenuto. Essendo un oggetto, ha proprietà sulle quali è possibile intervenire. Per visualizzare ed, eventualmente, modificare una qualsiasi delle proprietà di un oggetto in una maschera, in Microsoft Access la sequenza operativa da eseguire è: 1. Fare clic con il tasto destro del mouse sull'oggetto. 2. Fare clic sull'ultima voce in basso, Proprietà. Viene visualizzata una finestra che contiene una serie di pagine, alle quali si può accedere facendo clic sulle linguette poste in alto. La prima di esse è Formato e contiene un grande numero di proprietà elencate in una tabella, accanto alla loro descrizione. Se lo si desidera, si può modificare la formattazione del testo agendo sulla singola riga delle proprietà. Facendo clic su una voce, la si può cambiare immettendone direttamente il nuovo valore tramite tastiera. In alternativa, il programma offre la possibilità di fare clic su un pulsante laterale, che provoca l'apertura di una finestra a discesa nella quale sono elencati i valori da assegnare alla proprietà. E' sufficiente selezionare quello desiderato per sostituirlo al valore della proprietà corrente. Gli attributi accessibili tramite la Barra Formattazione sono solo alcuni tra quelli cui si può accedere dalla finestra Proprietà, che li riporta tutti. Cambiare il colore di sfondo Font , dimensione e allineamento sono solo parte degli attributi che è possibile modificare. Ve ne sono alcuni che riguardano il colore con il quale vengono visualizzate le scritte e altri elementi della maschera , per esempio il bordo o gli sfondi. Il colore di una casella può essere scelto tra le tonalità che il programma mette a disposizione. Un'alternativa è quella di lasciare lo sfondo trasparente, ossia vedere nello sfondo della casella il colore di quello impostato per l'intera area della maschera. Per verificarne i colori di alcuni degli elementi della maschera o modificarli, si parte sempre dall'aprire la maschera in modalità struttura. Quando appare la finestra della maschera con tutti i componenti da selezionare, si può lavorare sulla singola casella oppure sull'intera maschera. Se si fa clic su una casella, nella Barra degli strumenti Formattazione si possono utilizzare le icone : Colore carattere/primo piano Colore riempimento/sfo ndo Colore linea/bordo Spessore linea/bordo Aspetto della casella L'icona Colore carattere/primo piano reca una "A" sopra una lineetta colorata, con accanto un piccolo pulsante con la freccia rivolta verso il basso. Facendo clic sull'icona, si assegna al testo il colore della lineetta. Se si preferisce un altro colore, occorre fare clic sul piccolo pulsante accanto all'icona: si apre una finestra che permette di scegliere tra una serie di piccoli quadrati colorati quello da attribuire, semplicemente con un clic. Il testo nella casella diventerà di quel colore e la lineetta sotto la lettera "A" cambierà di conseguenza. Le altre due icone Colore riempimento/sfondo e Colore linea/bordo funzionano in maniera analoga: presentano un simbolo grafico disegnato su una lineetta colorata. Il colore della lineetta è quello predefinito, ma naturalmente può essere modificato facendo clic sul piccolo pulsante accanto all'icona e aprendo la finestra con la tabella dei colori disponibili. L'icona Colore riempimento/sfondo imposta il colore dello sfondo della casella selezionata, mentre quella Colore linea/sfondo definisce la tonalità della linea che le fa da cornice. Se si deve modificare lo sfondo di più caselle all'interno della stessa maschera, si può evitare la sequenza selezione della singola casella e assegnazione del colore di sfondo facendo clic sull'icona. Si possono selezionare contemporaneamente più caselle poi applicare il colore a tutte. Lo spessore del bordo in una casella viene assegnato mediante l'icona Spessore linea/bordo. Anche in questo caso, come quello citato in precedenza, si può utilizzare la tecnica che prevede un clic sul piccolo pulsante accanto all'icona per accedere ai diversi spessori a disposizione. L'icona Aspetto della casella, poi, assegna una forma di tipo lineare oppure tridimensionale, in base alla scelta operata dall'utente. In Microsoft Access gli aspetti disponibili sono: Piatto In rilievo Incassato Inciso Ombreggiato Sottolineato Importare un'immagine o un file grafico Se un campo del record è definito come Oggetto OLE , può essere importante stabilirne le dimensioni se si tratta di un'immagine oppure di un altro tipo di file, per esempio un disegno o un grafico . Quando viene creata la maschera , la casella associata al campo è in un punto preciso e occupa una zona di spazio rettangolare. Facendo clic su di essa, vengono visualizzate le otto manigliette mediante le quali agire, con il drag and drop , per ridimensionarla. E' fondamentale conoscere le dimensioni massime dei file grafici che saranno inseriti nel campo, perchè se quelle della casella associata non riuscissero a comprendere quelle dell'immagine, quest'ultima non sarebbe visualizzata correttamente. Come si agisce per inserire un'immagine in un campo di un record? Il presupposto necessario è che, nella creazione della tabella , sia stato assegnato al campo il tipo di dati Oggetto OLE. Creando la maschera che si riferisce al record della tabella, al suo interno si inserirà una casella corrispondente al campo. L'inserimento dell'immagine può essere eseguito con una sequenza di comandi, che in Microsoft Access è la seguente: 1. 2. 3. 4. 5. 6. 7. Aprire il database. Fare clic sul pulsante Maschera. Fare doppio clic sull'icona della maschera. Selezionare il campo. Fare clic su Inserisci, nella Barra dei menu. Fare clic su Oggetto. Nella finestra di dialogo che viene visualizzata, fare clic su Crea da file. La finestra di dialogo mostra una casella con la scritta File, nella quale scrivere il percorso e il nome del file che contiene l'oggetto (in questo caso l'immagine) da inserire nel campo. Se non si desidera scrivere il nome o non si ricorda con precisione dove è stato memorizzato il file, si può fare clic sul pulsante Sfoglia: verrà aperta una finestra nella quale il programma visualizza il file system , con i cinque pulsanti di navigazione Cronologia, Documenti, Desktop, Predefiniti e Cartelle Web. Scelta la cartella, una volta selezionato il nome relativo si può confermare sul pulsante OK; un ulteriore clic sul pulsante OK della finestra di dialogo Inserisci oggetto fa sì che l'immagine venga inserita nel campo. Per inserire un'immagine all'interno della casella, è possibile servirsi anche della copia di comandi Copia e Incolla. Per esempio, se si ipotizza di avere i file delle immagini da inserire memorizzati in una particolare cartella del file system, bisogna visualizzare il contenuto della cartella nella quale sono memorizzati i file con le immagini (per esempio, con Esplora risorse), fare clic con il tasto destro del mouse sull'icona del file che contiene l'immagine e fare clic sulla voce Copia nel menu contestuale. Per poter procedere, è necessario passare nella finestra dove è visualizzata la maschera. Giunti a visualizzare la casella del campo che conterrà l'immagine, bisogna fare clic con il tasto destro del mouse sulla casella, nel menu contestuale, fare clic su Incolla. Modificare la disposizione degli oggetti nella maschera Casella di testo , pulsanti di azione, titoli descrittivi del contenuto di una zona e altri componenti ancora rendono la maschera un elemento decisamente affollato. Ogni oggetto ha proprie caratteristiche, tutte raggruppate nelle proprietà . Tra gli attributi ci sono quelli che riguardano le sue caratteristiche estetiche e quelli che si riferiscono alle sue prerogative fisiche, come la collocazione e le dimensioni. La disposizione di un oggetto nella maschera può a sua volta riguardare sia la disposizione fisica, sia quella logica. La prima si riferisce al punto dove sono posizionati i singoli oggetti nell'area che fa da sfondo alla maschera. Quella logica si riferisce invece all'ordine in base al quale si incontra la casella nella sequenza dei vari oggetti. Per quello che riguarda il posizionamento fisico degli oggetti nella maschera, è sempre possibile spostarli uno rispetto all'altro se il layout complessivo non soddisfa le proprie esigenze estetiche; spostare un oggetto rispetto a un altro può essere utile anche per motivi funzionali. Per esempio, si potrebbe desiderare di avere i due campi Cognome e Nome affiancati in orizzontale e non disposti uno sopra l'altro. Per spostare un campo in una posizione diversa da quella corrente, si utilizza il mouse. Con esso, si può prendere l'oggetto e trasferirlo in un'altra zona della maschera, mediante il drag and drop . Per modificare la disposizione di un oggetto nella maschera, è sufficiente: 1. Aprire la maschera in modalità struttura. 2. Portare il puntatore del mouse su di esso e premere il tasto sinistro. 3. Tenendolo premuto, trascinare l'oggetto fino alla nuova destinazione. Prima di modificare la disposizione logica di un oggetto della maschera, occorre fare una piccola premessa: quando si crea automaticamente una maschera oppure lo si fa manualmente, ci si aspetta sempre che i campi vengano riportati nell'ordine che hanno nel record . Questo significa che ogni volta ci si sposta da un campo a un altro, con la freccia direzionale in basso oppure con il tasto tabulatore, si pensa istintivamente che il puntatore si porti nel campo immediatamente successivo in ordine di sequenza. Non è però detto che debba essere così: per modificare la sequenza con la quale i campi vengono raggiunti uno dopo l'altro mediante tabulatore, in Microsoft Access la procedura operativa da seguire è: 1. Aprire la maschera in modalità struttura. 2. Fare clic con il tasto destro del mouse in un punto qualsiasi all'interno della maschera. 3. Nel menu contestuale, fare clic su Ordine di tabulazione. Verrà visualizzata la finestra di dialogo dove riorganizzare la sequenza nella quale vengono visitati i campi quando si preme il tasto tabulatore. Se l'utente lo desidera, può selezionare uno o più righi, portando il puntatore del mouse sulla sinistra del rigo e facendo clic; a questo punto potrà trascinarli in un'altra posizione tenendo premuto il tasto sinistro. Può capitare anche che, giocando con gli spostamenti, i campi diventino talmente confusi che non si riesca più a venire a capo della situazione. In questo caso il programma offre un aiuto sotto forma del pulsante Ordinamento automatico: facendo clic su di esso, si imposta automaticamente come sequenza di tabulazione quella che va da sinistra verso destra e dall'alto verso il basso. Alla fine è sufficiente fare clic sul pulsante OK per confermare la nuova disposizione degli oggetti. Reperire informazioni In questo capitolo si apprenderà come si accede a un database esistente, come trovare un record in base a criteri assegnati, come creare delle query e salvarle, come si applicano i filtri alle query e come si rimuovono. Inoltre, si apprenderanno le modalità per perfezionare un'interrogazione, come si aggiungono e come si eliminano i campi alle query. Operazioni di base Consultando i dati di un database ci si potrebbe trovare nella condizione di non riuscire a ottenere nel modo carretto l'informazione che serve. Un database viene creato progettando in maniera adeguata le tabelle di cui è composto. Ognuna di esse è strutturata in record , i cui campi hanno dimensioni ottimizzate per contenere i dati; per renderne più semplice l'immissione o la modifica, vengono create maschere . Il database dei cittadini di un comune sarebbe simile a un grosso contenitore. I record potrebbero contenere tutti i dati delle persone che vivono in quel luogo, dal punto di vista anagrafico. Se per stampare un certificato di residenza, si dovesse aprire una maschera e scorrere i record uno dopo l'altro, i database non avrebbero probabilmente il successo e la diffusione che hanno. L'importanza di un database nella gestione dei dati risiede in buona parte nella facilità di cercare, trovare e presentare le informazioni che occorrono a uno o più utenti. Nell'esempio del database degli abitanti di un comune, questo significa poter accedere alle informazioni sui cittadini residenti, stampare certificati di famiglia e visualizzare le liste delle persone che godono del diritto di voto. I dati contenuti nel database diventano informazioni che ogni impiegato deve poter estrarre nel modo più semplice possibile, seguendo differenti criteri di selezione. Per estrarre informazioni da un database si utilizzando delle query , ossia procedure di interrogazione. Normalmente, le query forniscono le informazioni prodotte sotto forma di foglio dati. Per visualizzare le informazioni prodotte da una query si possono anche utilizzare le maschere. Per stamparle, si possono sfruttare i report ossia procedure con le quali le informazioni estratte vengono organizzate per essere riprodotte sotto forma di righe su carta e, volendo, anche a video. Per creare una query, sono diverse le domande da porsi. Per esempio, occorre avere chiaro: Qual è l'obiettivo per il quale creare la query. Da quale tabella si desiderano le informazioni. Quali campo del record è utile visualizzare. Se ci sono tabelle, correlate a quella principale, da cui leggere dati. In quale ordine devono essere poste le informazioni. Quali sono i criteri di selezione da applicare. Una query è uno strumento di interrogazione dati potente e versatile. Però, si può creare una query valida solo dopo aver definito una serie di aspetti che ne indirizzino correttamente il lavoro di realizzazione. In primo luogo, non è detto che si debba creare una sola query per ogni tabella. Da una stessa tabella possono essere create quante query si vogliono, ognuna con un proprio obiettivo. Si supponga di effettuare delle interrogazioni sul database dei cittadini di un comune, per esempio, chiedendo di visualizzare i dati per la stampa di un certificato di nascita; le informazioni che vengono riprodotte sono il cognome, il nome, il luogo e la data di nascita della persona per cui è stato richiesto, anche se nella tabella anagrafica sono contenuti molti altri campi. Se si deve controllare il numero di vaccinazioni, le notizie visualizzate riguarderanno il tipo e la data in cui sono state eseguite. Dato che sulla stessa tabella possono essere effettuate più interrogazioni per avere informazioni di natura diversa, evidentemente nei risultati compariranno solo parte dei dati di un record e solo parte dei record di una tabella. In particolare, ci sono solo i campi che l'utente ha scelto di visualizzare, in relazione all'obiettivo della query; analogamente, ci sono solo i record che soddisfano un dato criterio di selezione, che, nel caso del database del comune, è ottenere il contenuto dei campi cognome e nome uguale ai dati del richiedente del certificato. Il risultato di una query viene chiamato RecordSet . Un RecordSet non è una tabella, ma una particolare vista di una porzione dei dati in essa contenuti. Per maggiore precisione, una query può anche offrire risultati desunti da più tabelle in relazione tra loro. In opportune condizioni, i dati visualizzati dal RecordSet possono anche essere modificati, aggiornando, così, i campi delle tabelle dai quali sono stati letti. I tipi di query disponibili in Microsoft Access, che comunque in questo modulo non verranno approfonditi, sono: Query di selezione Query con parametri Query a campi incrociati Query di comando Query SQL Una Query di selezione è quella più comunemente utilizzata, perchè permette di leggere dati da una o più tabelle e presentare i risultati sotto forma di un foglio dati. Consente anche di ottenere valori calcolati con quelli dei campi letti dall'interrogazione. Nel foglio dati nel quale viene visualizzato il RecordSet, è possibile anche modificare i dati per aggiornare le tabelle di partenza. Spesso, per ottenere le informazioni da un'interrogazione, è necessario chiedere tutti i record nei quali si trovano dati che vanno "da..." "a...". Con la Query con parametri, il programma visualizza una finestra di dialogo nella quale chiede all'utente di inserire i valori necessari per fare i confronti. Per esempio, si potrebbe chiedere di stampare (o di visualizzare) tutti i cittadini di un comune il cui cognome abbia l'iniziale compresa tra due lettere dell'alfabeto. Una Query a campi incrociati è utile per recuperare valori complessivi, calcolati a partire da altri presenti in un campo di una tabella, raggruppandoli sotto una doppia intestazione, presente in due zone in alto e a sinistra del foglio dati. Serve per effettuare valutazioni come quelle che si possono desumere dalla visualizzazione di una tabella pivot, in un foglio elettronico come Microsoft Excel. La Query di comando permette di eseguire modifiche su più record di una tabella contemporaneamente: le operazioni possibili riguardano la cancellazione, l'aggiornamento e l'aggiunta di nuovi record, fino alla creazione di una nuova tabella. Le Query SQL (da Structured Query Language) vengono utilizzate da chi conosce l'SQL, un linguaggio standard per l'interrogazione dei database. La creazione di una query avviene per gradi e con una sequenza di operazioni che possono essere sia manuali, sia guidate dal programma. Le basi di partenza sono l'accesso al database e la definizione dei criteri di selezione e di ordinamento dei risultati. Accedere a un database esistente Per reperire informazioni in un database , la prima operazione da eseguire è l’accesso alle tabelle che ne fanno parte. Quando si lancia in esecuzione Microsoft Access, si apre la finestra di dialogo che chiede a quale database accedere. Scegliendo il nome tra quelli elencati nel riquadro in basso della finestra di dialogo e confermandolo, il programma legge il file dal disco e lo porta in memoria centrale. Per permettere all’utente di lavorare, si apre una finestra che contiene gli strumenti a disposizione, che riguardano la gestione di Tabelle, Maschere , Query , Report , Pagine Web , Macro , Moduli. Per la gestione delle query, è necessario fare clic sul pulsante Query, che viene visualizzato in una colonna sulla sinistra della finestra degli strumenti. Una premessa fondamentale all’attività di costruzione di una query è che debba essere stata creata almeno una tabella; in caso contrario non è possibile stabilire su quali dati debba operare. Inizialmente, nel riquadro di destra compaiono solo due elementi: Crea query in visualizzazione struttura Crea una query mediante una creazione guidata Nel primo caso, l’utente deve creare manualmente la query e imporre le condizioni di selezione e i criteri di ordinamento che desidera, operazione che può essere svolta con facilità dopo aver fatto un po’ di pratica. Con la creazione guidata, è il programma ad aiutare l’utente nella costruzione della query, attraverso una serie di finestre di dialogo. All’interno di ciascuna di esse, l’utente può fare scelte e inserire informazioni necessarie per completare il lavoro. Trovare un record sulla base di criteri assegnati Se si cerca un’informazione, significa che si stanno prendendo dei record da un gruppo molto più ampio. La scelta di uno rispetto a un altro viene eseguita sulla base di precisi criteri. Quelli maggiormente utilizzati possono riguardare: Caratteri Date Numeri Per esempio, si può chiedere di disporre di tutti i record in cui un campo cognome inizi con la lettera "M", di tutti quelli che contengono le fatture emesse da una data a un’altra oppure di tutte le persone che abbiano più di due figli. E’ possibile anche poter combinare i diversi criteri, per avere un risultato mirato all’obiettivo per il quale si sta creando la query . Quando si lavora con una query in mobilità struttura, per ogni campo esistono due voci che possono accettare criteri stabili dall’utente. Nelle caselle possono essere inseriti operatori booleani (o logici) che permettono operazioni di confronto tra il valore del campo e quello inserito dall’utente. Gli operatori sono quelli classici utilizzati nei programmi; di seguito ne vengono elencati alcuni tra i più noti, presenti in Microsoft Access: Segno Significato < Minore di > Maggiore di = Uguale a Per esempio, in un campo Cognome si potrebbe scrivere: <"M" Questo provocherebbe la visualizzazione di un foglio dati che include solo i record che, nel campo in esame, hanno l’iniziale minore della lettera "M". Se invece si scrivesse un valore, senza aggiungere un operatore logico, la query produrrebbe come risultato tutti i record che contengono esattamente quel valore e non altri. Per esempio, se in un campo data si scrivesse: 04/03/1955 il foglio dati visualizzerebbe tutti i record che hanno quella data. Se non fosse memorizzata in alcun campo della tabella, il foglio dati risulterebbe vuoto; se quella data fosse registrata in un solo record, l’esecuzione della query mostrerebbe unicamente quello che la contiene. La sintassi delle query prevede che i valori dei criteri rispettino determinate regole: le virgolette che racchiudono un campo alfanumerico sono importanti, per esempio, per far capire che si tratta di caratteri e non altri tipi di dati . Per evitare di trovare errori nelle query a causa di dimenticanze, è il programma stesso a correggere automaticamente le scritte che iniziano con caratteri inserite nei criteri, aggiungendovi le virgolette all’inizio e alla fine. Analogamente, nel caso di criteri che comprendono campi di tipo Data, il programma aggiunge prima e dopo il valore dei caratteri cancelletto (#), come vuole la sintassi delle query. Per esempio, la data precedente assumerebbe la forma: #04/03/1955# I campi di tipo numerico, invece, vengono lasciati senza simboli aggiunti, in quanto non sono possibili ambiguità. Creare una semplice query Un modo semplice per creare una query in Microsoft Access è quello di servirsi di una creazione guidata: dopo aver aperto il database , è necessario fare clic sul pulsante Query nella finestra degli strumenti, per visualizzarle i due comandi nel riquadro di destra. Facendo clic sulla voce, Crea una query mediante una creazione guidata compare la finestra di dialogo che chiede due informazioni: Da quale tabella si intendono prendere i dati da selezionare. Quali campi di questa tabella si desidera visualizzare. Le operazioni possono essere eseguite piuttosto velocemente: è sufficiente fare clic sul pulsante con la freccia rivolta verso il basso, posta accanto alla casella di riepilogo con i nomi delle tabelle e delle query esistenti. Una volta aperta la finestra a discesa corrispondente, si scorre la lista delle tabelle, utilizzando eventualmente la piccola barra di scorrimento verticale; effettuata la scelta con un clic sul nome, nel riquadro in basso sulla sinistra il programma visualizza l’elenco di tutti i campi che ne compongono il record . Supponendo che la tabella dei dati degli impiegati di un’azienda, se ne vedrebbe il codice identificativo, il cognome, il nome, l’indirizzo, la città, la data di nascita e così via. Per inserire tutti i dati nella query, è sufficiente fare clic sul pulsante al centro con il doppio simbolo di maggiore (>>): tutti i campi mostrati a sinistra passerebbero nel riquadro di destra. Facendo clic sul pulsante Avanti, si arriverebbe alla finestra di dialogo conclusiva, dalla quale sarebbe possibile dare un nome alla query (sostituendolo a quello generico che il programma assegna in automatico) e quindi fare clic sul pulsante Fine per completarla. Si potrebbero desiderare solo alcuni campi del record di una tabella. Per esempio, con quella degli impiegati sarebbe possibile creare un foglio dati di riferimento per una sorta di rubrica telefonica interna. La scelta dei campi, quindi potrebbe suggerire di includere nella query solo: Cognome Nome Città Numero di telefono Creare una query con criteri multipli Al centro della finestra di dialogo finale della creazione guidata di una query si trovano due pulsanti di controllo, le cui etichette recitano: Aprire la query per visualizzare le informazioni Modificare la struttura della query La prima voce risulta attivata per defult, quindi un clic su Fine mostra immediatamente il risultato del lavoro. La voce Modifica la struttura della query può essere selezionata per passare alla modalità struttura della query appena creata. Questa modalità di visualizzazione è utile per sfruttare la possibilità di aggiungere criteri di scelta e di ordinamento dei record. Ogni campo inserito compare in una colonna che, dall’alto verso il basso, comprende le seguenti voci: Campo Tabella Ordinamento Mostra Criteri Oppure La prima e la seconda voce fanno riferimento al nome del campo e alla tabella cui appartiene. Attivando la casella della voce Ordinamento, i risultati della query vengono visualizzati nel foglio dati in base all’ordine dei valori del campo in esame. L’ordinamento può essere: Crescente o Decrescente. Accanto alla casella Ordinamento viene visualizzato un pulsante con freccia rivolta verso il basso. Con un clic si apre una finestra a discesa, al cui interno sono elencati i due valori possibili per l’ordinamento e la scritta (Non ordinato). Facendo clic su Crescente, i dati seguono l’ordine del campo della colonna dal minore al maggiore: se il campo contiene caratteri , verrà seguito l’ordine della "A" alla "Z". Scegliendo Decrescente, i record verrebbero disposti nell’ordine opposto. Se invece si facesse clic sulla voce (Non ordinato), non si attribuirebbe alcun criterio di ordinamento al campo della colonna. La casella di selezione Mostra viene applicata per visualizzare il campo nel foglio dati risultante dalla query. Disattivare la selezione è utile per disporre di campi su cui avere un criterio di selezione oppure per effettuare calcoli, senza mostrarne il contenuto. Nei campi Criteri e Oppure si possono inserire più criteri di selezione dei record della query, combinandoli tra loro. Si utilizzano gli operatori di confronto logici (maggiore di, minore di, uguale a, diverso da e loro combinazioni) insieme con gli operatori che attivano le funzioni booleane AND e OR. Per avere un aiuto dal programma, si può fare clic con il mouse in una dalle caselle e poi selezionare il pulsante Genera dalla Barra degli strumenti Struttura Query. Viene attivato il generatore di espressioni di Microsoft Access. Se i criteri di selezione vengono inseriti su uno stesso rigo per più campi, il programma esegue un AND tra i criteri, ossia seleziona i record che li soddisfano tutti contemporaneamente (se ce ne sono). Se invece i criteri sono posti su rughe diverse, il programma esegue un OR, selezionando i record che ne soddisfano almeno uno. Inserendo criteri di selezione in può colonne, insieme con criteri di ordinamento, la query estrae i record che rispettano i criteri imposti, visualizzandoli nell’ordine richiesto. Salvare una query Una volta completato il lavoro di creazione di una query , il programma può aprirla immediatamente e mostrare il risultato dell’interrogazione. Nella rappresentazione foglio dati , viene visualizzata una tabella con le righe che contengono i record selezionati sulla base dei criteri immessi e le colonne con i campi scelti in fase di creazione. Si può scorrere il foglio dati in su e in giù, mediante mouse o con tastiera (tramite i tasti direzionali PgSu e PgGiù). Poichè nella parte inferiore della finestra della query compare la barra che permette di navigare tra le righe visualizzate, è possibile muoversi tra i record anche per mezzo dei pulsanti di navigazione (primo record, ultimo, precedente, successivo). Spostandosi tra le righe, si possono anche modificare e aggiornare i dati nella tabella di appartenenza. Terminata la consultazione, è possibile assegnare un nome alla query, salvandola come componente integrante del database. In Microsoft Access, quando si crea una query con la creazione guidata, nella parte superiore dell’ultima finestra di dialogo viene visualizzata la casella di testo Scegliere il nome da assegnare alla query; il programma propone una descrizione standard, composta dal nome della tabella alla quale fa riferimento la query e dalla scritta Query. Per assegnare un nome significativo dei risultati che si otterranno, è sufficiente digitarlo nella casella di testo e Access lo memorizzerà nel database, insieme con quelli delle altre query. Se si crea una query in visualizzazione struttura, completato l’inserimento dei campi e dei vari criteri di scelta e ordinamento si fa clic sul pulsante di chiusura della finestra: a questo punto il programma chiede se si intendono salvare le modifiche alla struttura della query. Le risposte possibili sono tre: Sì No Annulla Se si sceglie Annulla si rimanda l’operazione di salvataggio e si torna a lavorare in visualizzazione struttura. Se si risponde No, si rinuncia alle modifiche apportate alla query e la si chiude senza salvare nulla. Rispondendo Sì, il programma visualizza una piccola finestra che include una casella di testo, dove viene proposto un nome standard, Query1. Il numero naturalmente cresce se si creano più query senza assegnare loro un nome specifico. Digitando il nome della query e fatto clic sul pulsante di conferma OK, essa viene salvato con un nome che la rende facilmente individuabile: sarà sufficiente fare doppio clic su quest’ultimo per poterla lanciare in esecuzione. Applicare filtri a una query Una query ha la funzione di estrarre dati da un database . Se esso è grande, con la query viene visualizzato un numero inferiore di record , che sono in questo modo leggibili con maggiore facilità. Se si fa riferimento al database di dipendenti citato in precedenza, in cui l’estrazione era riferita semplicemente ai quattro campi Cognome, Nome, Città e Numero di telefono, non viene ridotto il numero di record, ma quello dei campi visualizzati. Se si necessita del numero di telefono di un dipendente, di cui non si ricorda il cognome ma si sa che abita in una certa città, occorre comunque scorrere l’archivio. Una soluzione possibile è quella di applicare un filtro a una query. Il filtro è una funzione che provoca la visualizzazione dei soli record di un foglio dati che corrispondono a un certo requisito. E' un po’ come attribuire un criterio di scelta, ma con la possibilità di farlo in qualsiasi momento e senza intervenire sulla struttura della query. Per applicare un filtro a una query, infatti, è necessario lavorare in visualizzazione foglio dati. Supponendo di voler visualizzare tutti i record di una tabella di prodotti raggruppati in categorie merceologiche, in Microsoft Access la sequenza operativa sarebbe: 1. 2. 3. 4. Aprire il database Fare clic sul pulsante Query nella finestra degli strumenti del database. Fare doppio clic sul nome della query "Elenco alfabetico prodotti". Fare clic sul campo Categoria, in corrispondenza del nome della categoria (per esempio "Condimenti") sulla quale si intende impostare il filtro. 5. Fare clic su Record, nella Barra dei menu. 6. Selezionare Filtro. 7. Fare clic su Filtro in base a selezione. Subito dopo, il foglio dati mostrerà solo le righe del campo Categoria che contengono Condimenti. In questo modo si ottiene l’evidente vantaggio di visualizzare solo il tipo di prodotti che interessa, evitando un lunghissimo elenco di righe; sarà più facile cercare o modificare un record e, soprattutto, non è stato necessario intervenire sulla struttura della query. Rimuovere filtri ad una query E’ possibile anche applicare a una query un secondo filtro, o anche un terzo e così via, ma in realtà questa operazione potrebbe essere utile solo in particolari occasioni. In Microsoft Access, sono disponibili vari tipi di filtri. Oltre a Filtro in base a selezione si trova, per esempio, il Filtro in base a maschera . Per applicare il filtro in base a maschera alla query, la sequenza operativa è Record/Filtro/Filtro in base a maschera. Il foglio dati diventa un’unica riga. Ogni campo di questa riga può essere attivato facendo clic sulla casella; sulla destra viene visualizzato un pulsante con freccia rivolta verso il basso, che permette di accedere a una finestra a discesa nella quale sono riepilogati tutti, e solo per una volta, i valori presenti in quel campo. La selezione funziona anche combinando le scelte dei diversi campi. Si ipotizzi di lavorare, per esempio, con fogli dati risultante dalla query dell’elenco dei prodotti alimentari citata in precedenza, e di aver attivato Filtro in base a maschera. Facendo clic nella casella corrispondente a Categoria, verrebbero visualizzate tutte quelle disponibili nell’elenco dei record : per esempio, potrebbero essere dieci diverse su un totale di cento record. Si potrebbe allora selezionare la categoria "Condimenti" e, chiedendo al programma di avviare la ricerca, il foglio dati mostrerebbe solo i record che appartengono a quella categoria. Alla condizione precedente potrebbe essere aggiunta anche la selezione del nome di un certo fornitore. Chiedendo di applicare i filtri selezionati, questa volta il foglio dati visualizzerebbe solo le righe dei prodotti della categoria "Condimenti" acquistati dal fornitore indicato. Una volta applicate le condizioni sui campi, per applicare il filtro, occorre: 1. Fare clic su Filtro, nella Barra dei menu. 2. Fare clic su Applica filtro/ordina. Una volta applicati uno o più filtri su un RecordSet estratto con una query, si potrebbe desiderare di ripristinare la situazione di partenza. Per rimuovere i filtri, in Microsoft Access la procedura da eseguire, mentre si sa sta visualizzando la query, è: 1. Fare clic su Record, nella Barra dei menu. 2. Nel menu a discesa selezionare Rimuovi filtro/ordina. Il programma visualizzerà il foglio dati di partenza della query. Perfezionare una interrogazione Dopo aver costruito una query , lanciandola in esecuzione si ottiene un foglio di lavoro con i record che soddisfano i criteri di scelta impostati dall’utente. Il RecordSet ottenuto rispecchia esattamente gli obiettivi per i quali è stata creata la query. Ma può capitare che ci si accorga che la query non è completamente soddisfacente. Potrebbe servire aggiungere altri campi oltre a quelli già inseriti, per avere la possibilità di consultare altre informazioni. Al contrario, ci si potrebbe accorgere che uno o più campi presenti nel RecordSet non sono utili per quel tipo i interrogazione. Per fare un esempio, si può richiamare ancora una volta la tabella degli impiegati, dalla quale sono stati selezionati i campi: Cognome Nome Città Numero di telefono Le informazioni estratte dalla tabella sono servite per avere una semplice rubrica, al fine di rintracciare un impiegato telefonando a casa. Nell’era appena iniziata della telefonia mobile, tuttavia, è più semplice rintracciare una persona sul cellulare, piuttosto che chiamare il numero fisso del telefono dell’abitazione. Dunque può essere utile inserire il campo "Telefono cellulare" nella query. Occorre, perfezionare l’interrogazione, intervenendo per modificare la query già esistente. Le operazioni possono riguardare: Aggiunta di un campo Cancellazione di un campo Aggiunta di un ulteriore criterio di selezione Modifica di un criterio di selezione esistente Sostituzione di un criterio di ordinamento Le attivita di modifica devono essere eseguite in seguito all’apertura della query in visualizzazione struttura. Aggiungere campi a una query Per aggiungere campi a una query , occorre visualizzarla in modalità struttura. La finestra della query aperta è divisa orizzontalmente in due metà. Nella metà superiore vengono visualizzate le tabelle dalle quali sono stati presi i campi inseriti nella query. In quella inferiore viene visualizzata una griglia di righe e colonne del database. Dall’alto verso il basso, le righe contengono prima il nome e la tabella di appartenenza del campo, quindi le caselle nelle quali impostare altre proprietà . L’aggiunta di un campo è un’operazione eseguibile mediante il mouse. Si supponga di avere una query con tre soli campi: Prodotti Nome categoria Sospesi Volendo aggiungere anche il campo Prezzo unitario, l’azione viene eseguita tramite drag and drop : 1. Portare il puntatore sul campo da aggiungere alla query (in questo caso: Prezzo unitario), e premere il pulsante sinistro del mouse 2. Tenendo premuto il pulsante sinistro, trascinare la scritta con il nome del campo verso la prima colonna libera della query. 3. Giunti con il puntatore sopra la prima casella in alto della colonna libera, lasciare il tasto sinistro. Durante il trascinamento, il puntatore assume l’aspetto di un piccolo rettangolo tridimensionale, simile a una casella di testo . Il campo aggiunto riempie la colonna nella quale è stato trascinato con il movimento del mouse. Tornando alla visualizzazione del foglio dati , esso diventa il campo visualizzato sulla destra in fondo a ogni riga. Più precisamente, apparirà nella casella successiva all’ultima che compariva nella query, prima della modifica. Supponendo che si intenda inserire un nuovo campo Nome, in una query con Cognome, Città e Telefono, la nuova posizione dovrebbe essere quella di una casella tra il primo e il secondo campo. Per aggiungere un nuovo campo in posizione intermedia tra quelli esistenti, è sufficiente trascinarne il nome in corrispondenza della casella che deve spostarsi verso destra. Nell’esempio dell’inserimento del campo Nome, si prenderà la scritta Nome con il puntatore dal riquadro dei campi della tabella in alto e la si trascinerà sulla colonna del campo Città. Questa si sposterà verso destra di una posizione, insieme con quelle dei campi successivi. La nuova sequenza di campi (e, quindi, di caselle nella riga del foglio dati) diventerà Cognome, Nome, Città e Telefono. Eliminare campi da una query L’altra possibilità di miglior utilizzo di una query è quella di eliminare un campo esistente. Non è detto, infatti, che tutti i campi inseriti in una query in seguito risultino effettivamente utili. Se ci si accorgesse che la visualizzazione dei risultati potrebbe mostrare un campo superfluo, le soluzioni alternative possibili sono due: Nasconderlo Eliminarlo In entrambi i casi è necessario agire in modalità struttura della query, perchè si tratta di intervenire su un aspetto sostanziale del risultato da visualizzare. La prima soluzione, ossia quella di nascondere la visualizzazione del campo, corrisponde a disattivare la proprietà Mostra. L’operazione viene eseguita facendo clic sulla casella di selezione che appare sotto la casella Ordinamento, nella colonna del campo specifico. Questo, tuttavia, offre una soluzione apparente, perchè anche se il campo non viene visualizzato è comunque presente nel RecordSet, rendendo più complessa la query, più lungo il tempo occorrente per avere il risultato della sua elaborazione e una maggiore occupazione di memoria complessiva. Nascondere un campo di una query è utile se quel campo serve per altre funzioni, come per esempio l’applicazione di un criterio di selezione, l’utilizzo quale campo per l’ordinamento o l’esecuzione di un calcolo sul valore che contiene. Una soluzione per togliere un campo che non serve è la sua eliminazione. In fondo, togliere un campo da una query non provoca una perdita di dati , ma solo la mancanza della sua elaborazione nell’interrogare una tabella . Una query, infatti, non è una tabella che contiene dati, ma una serie di comandi che ne eseguono l’estrazione da una o più tabelle del database . Per di più, l’eliminazione di un campo di una query non è un’azione irreversibile e se ci si accorge che quel campo era utile, si può sempre aggiungerlo nuovamente, in un momento successivo. Per eliminare uno o più campi da una query, è necessario visualizzare la struttura della Query. La finestra della struttura della query è divisa in due zone orizzontali. Nella metà inferiore sono visualizzate le colonne dei campi inseriti nella query. Per eliminare un campo, occorre prima selezionarlo con la sequenza operativa che segue: 1. Portare il puntatore sulla sottile barra grigia posta sul nome del campo da eliminare: il puntatore assumerà l’aspetto di una piccola freccia nera e spessa con la punta rivolta verso il basso. 2. Premere il pulsante sinistro del mouse: l’intera colonna risulterà selezionata. A questo punto, non resta che eliminare il campo. L’operazione può essere eseguita premendo il tasto Canc da tastiera o eseguendo la sequenza Modifica/Elimina colonne dalla Barra dei menu. Il risultato ottenuto è l’eliminazione del campo. Analoga azione può essere eseguita su più campi contemporaneamente. Dopo aver selezionato il primo, è possibile selezionare un gruppo di campi consecutivi, facendo clic sulla barra grigia posta sull’ultimo nome della serie, mentre si tiene premuto il tasto Shift. Quando risulteranno tutti selezionati, è sufficiente premere il tasto Canc oppure eseguire la sequenza Modifica/Elimina colonne, per eliminarli dalla query. Ricercare, selezionare e ordinare Un database progettato, realizzato e completato dei dati è pronto per essere finalmente utilizzato. Tuttavia, per ottenere informazioni occorre prima cercarle individuando, i record che rispettano un dato criterio. Potrebbe trattarsi di record che hanno un campo alfanumerico contenente un certo nome, un campo data contenente una data che rientra in uno specifico intervallo oppure un campo numerico il cui valore è minore o maggiore di un valore numerico specificato dall’utente. Per esempio, nel caso del database dei cittadini di un comune, si possono interrogare gli stessi dati anagrafici per conoscere: Quale sia la residenza di una persona. Se la persona è sposata oppure no. Quale sia la sua data di nascita, per emettere un eventuale certificato. Se abbia superato i diciotto anni, per entrare nelle liste degli elettori del comune. Come si può notare, per ogni elaborazione vengono estratti i record che soddisfano le condizioni imposte all’interno della procedura. Nel caso di un certificato di residenza, vengono stampate le informazioni estratte dal record composto dai campi cognome e nome con i dati che coincidono con quelli forniti da chi ha richiesto il certificato. Nel caso dell’estrazione di record delle persone che abbiano più di diciotto anni di età, invece, si tratta di trovare quelli che hanno il campo Data di nascita, il cui contenuto è una data inferiore di almeno diciotto anni rispetto a quella di riferimento. Per ottenere i risultati desiderati, la ricerca in un database deve essere pianificata correttamente. Ricercare, selezionare e ordinare dati sulla base di criteri assegnati Per ottenere informazioni con una query , è importante definire correttamente i criteri di selezione dei record e impostare l’ordinamento con il quale si desidera avere i dati estratti. La ricerca dei record che rispettano i criteri impostati si verifica quando si esegue la query. Se i dati nella tabella vengono aggiornati, lanciando successivamente la stessa query, il RecordSet estratto e visualizzato nel foglio dati contiene già i nuovi dati. Il RecordSet di una query di selezione è il risultato di un’elaborazione con la quale si verificano i criteri inseriti dall’utente in maniera definitiva e riscontrabili nella visualizzazione struttura della query. Se si volessero estrarre informazioni sulla base di criteri assegnati di volta in volta, allora occorrerebbe utilizzare una query parametrizzata. In breve, si tratta di immettere la domanda che il programma dovrà porre all’utente nella casella Criteri del campo da parametrizzare. Perchè sia riconosciuta come sintassi, è necessario che la stringa di testo compaia tra parentesi quadre e con il segno di due punti (:) alla fine. Per esempio, in una query che contenga i nomi e la categoria di appartenenza di prodotti alimentari, si potrebbe voler visualizzare quelli di una certa categoria. Invece di modificare ogni volta la struttura della query, è possibile fare in modo che sia il programma a chiedere quale categoria di prodotti mostrare. In Microsoft Access, la sequenza operativa è la seguente: 1. Visualizzare la Struttura della Query. 2. Fare clic sulla casella Criteri del campo da parametrizzare (nell’esempio: NomeCategoria). 3. Digitare la scritta, completa delle parentesi quadre: [Categoria:]. Per lanciare la query in esecuzione, la prima volta è sufficiente passare direttamente alla modalità Visualizza, che si ottiene facendo clic sull’ icona omonima nella Barra degli strumenti oppure tramite la sequenza Visualizza/Visualizzazione foglio dati. Il programma aprirà una piccola finestra di dialogo, suddivisa in tre zone: in alto la domanda rivolta all’utente, al centro la casella di testo nella quale si deve immettere il valore sul quale effettuare la selezione e in basso i due pulsanti OK e Annulla. Nell’esempio della query sui prodotti, nella casella di testo sotto la domanda Categoria si potrebbe scrivere Bevande e poi fare clic su OK per lanciare la query. Il risultato sarebbe un elenco dei prodotti che appartengono alla categoria indicata dall’utente. Il grande vantaggio di questo tipo di query è la possibilità di cambiare il valore del criterio, semplicemente lanciandola in esecuzione. Ricercare, selezionare e ordinare dati mediante comuni operatori logici Nella realtà del lavoro quotidiano su un database , non sempre è sufficiente chiedere al programma informazioni relative a record nei quali un certo campo ha un dato valore. Parametrizzando la ricerca, nella rubrica estratta dal database degli impiegati si potrebbe per esempio cercare il record della persona che ha un certo cognome. Non è detto, però, che questo soddisfi le necessità operative. Si potrebbe decidere di cercare i record delle persone le cui iniziali vanno da una certa lettera a un’altra, scelte dall’utente nel momento in cui lancia la query . Questo darebbe una maggiore flessibilità a chi deve chiedere informazioni, senza costringerlo a sapere e digitare esattamente il cognome di una certa persona. Volendo generalizzare l’esempio, si potrebbe pensare di chiedere anche la visualizzazione dei dati degli impiegati che abbiano la data di nascita inferiore a un certo anno, per limitare il numero di record estratti. Nell’esempio che segue si chiede al programma di attivare la ricerca seguendo alcuni criteri: L’iniziale MAGGIORE o UGUALE a una certa lettera L’iniziale MINORE o UGUALE a un’altra lettera La data di nascita MINORE di una certa data? I termini in maiuscolo indicano alcuni operatori logici, che permettono di attivare i criteri sulla base dei quali il programma deve selezionare i record che li soddisfano. Per realizzare l’esempio descritto, dopo aver aperto il database e successivamente la query in modalità struttura, in Microsoft Access la sequenza operativa è la seguente: 1. Nella casella Criteri del campo Cognome scrivere la stringa: >=[Cognomi che iniziano da:] And <=[Cognomi fino a:]. 2. Nella casella Criteri del campo DataNascita scrivere la stringa: <[Data minore del:]. Passando alla modalità Visualizza foglio dati e ogni volta che si lancerà in esecuzione la query, il programma mostrerà tre finestre di dialogo. Nella prima chiederà da quale lettera (o cognome) si intende iniziare, nella seconda la lettera finale e nella terza la data rispetto alla quale quella di nascita dell’impiegato deve essere inferiore. Dopo la terza conferma sul pulsante OK, la query produrrà un foglio dati che rispetterà esattamente tutte le condizioni imposte dall’utente. Naturalmente è a cura di chi interroga il database scrivere valori che siano congruenti. Se si indicassero come lettera iniziale "L" e come lettera finale "B", ovviamente la query darebbe come risultato un RecordSet vuoto. Gli operatori logici disponibili in Microsoft Access sono: Operatore Significato < Minore di <= Minore o uguale a > Maggiore di >= Maggiore o uguale a = Uguale a <> Diverso da Not Non uguale a Rendiconti In questo capitolo si conoscerà il concetto di report, come si genera e come si effettuano i raggruppamenti in una particolare sequenza. Inoltre, verranno spiegate le modalità per modificare un report, per personalizzare intestazione e piè di pagina e come si raggruppano i dati di un report. Generare rapporti Di solito, si decide di creare e gestire i dati di un database per poter disporre, in qualsiasi momento, di informazioni aggiornate. Spesso si ha esigenza di visualizzare un elenco lungo, con informazioni dettagliate sulle quali effettuare valutazioni. Fanno parte di questo gruppo: L'elenco dei cittadini di un comune che rientrano nelle liste elettorali. L'elenco delle fatture dei prodotti acquistati da un certo fornitore. L'elenco delle fatture di vendita in un preciso arco temporale, suddivise per area geografica e per responsabile delle vendite. Nei database, gli elenchi di informazioni, prodotti per essere stampati, vengono chiamati Report, che in italiano si potrebbe tradurre con rapporti. I report permettono di organizzare in modo logico le informazioni estrapolate dal database, da una o più tabelle o query, e impaginarle secondo un modello grafico, così da ottenere pagine semplici e piacevoli da consultare. In genere, un gruppo nutrito di informazioni omogenee, estratte da un database, viene solitamente riportato sotto forma di elenco, ossia una lista di notizie disposte in righe e con i campi riportati ordinatamente uno sull'altro. Per avere una stampa che sia utile, le informazioni devono rispettare criteri di selezione ben precisi ed essere ordinate secondo la logica richiesta del tabulato. Per le stampe che elencano dati numerici di tipo contabile (rendiconti), non è sufficiente avere solo una lista di campi uno sopra l'altro, ma è importante anche leggere dopo un certo numero di righe un totale riferito a valori numerici. Una stampa prodotta da un programma di gestione database non sarebbe molto funzionale, se l'utente fosse costretto a sommare a mano i valori di un campo per averne i totali. Questi totali possono essere anche parziali, senza comunque escludere il totale generale alla fine. I parziali generati in un report vengono chiamati subtotali . Nei database, i report possono essere presentati sia a video, sia su carta. Consultare un report a video è più veloce e permette di risparmiare il tempo necessario alla stampante per produrre i fogli. Una stampa, per di più realizzata in più copie, è tuttavia indispensabile se le informazioni devono essere consultate da più persone contemporaneamente, per esempio durante una riunione per la valutazione dei dati contabili. I report , possono essere generati dall'utente direttamente o attraverso una creazione guidata da programma. I tipi di rapporti disponibili sono principalmente di due tipi: A colonne Tabellari Un report a colonne elenca i campi del record in colonne: sulla sinistra vengono riportati i nomi dei campi e sulla destra il loro valore. Un report tabellare inserisce i nomi dei campi in alto sulla prima riga e, nelle righe sottostanti, in corrispondenza di ogni nome, i valori dei campi. E' possibile generare più tipi di report, anche se riferiti alla stessa tabella del database, proprio come accade per le query. I diversi report vengono realizzati secondo gli obbiettivi ai quali sono destinati; spesso vengono sfruttate proprio le query già esistenti per creare report e in questo caso si riproducono le informazioni estratte in base ai criteri impostati nella query. La generazione di un report viene eseguita, come al solito, dopo aver aperto il database e visualizzandone la finestra degli strumenti. In Microsoft Access si può fare clic sul pulsante Report presente nella colonna a sinistra della finestra. Nel riquadro di destra compaiono le due icone utili per la creazione di un nuovo report: Crea un report in visualizzazione struttura Crea un report mediante una creazione guidata Nel primo caso si lavora direttamente con la struttura del report. Con la creazione guidata, così come per maschere e query, si effettuano una serie d scelte e si riempiono alcune casella di testo all'interno di finestre di dialogo consecutive: giunti all'ultima, è sufficiente digitare un nome e fare clic sul pulsante Fine per ritrovarsi un report completo e pronto per essere utilizzato. Presentare i dati (sul video o in stampa) in particolare sequenza Dopo aver aperto il database , per creare un report con una creazione guidata le operazioni da eseguire sono: 1. Fare clic sul pulsante Report, nella finestra degli strumenti del database. 2. Fare doppio clic su Crea un report mediante una Creazione guidata. All'interno della prima finestra di dialogo, sulla sinistra si trova una casella di riepilogo in cui scegliere la tabella (o la query ) dalla quale selezionare i campi da inserire nel report. Se si desidera creare un report degli impiegati che includa i campi Cognome, Nome, Data di nascita e Citta, si selezioneranno uno dopo l'altro questi campi dal riquadro di sinistra e li si porterà nel report, facendo clic sul pulsante con il segno di maggiore(>). Dopo aver confermato facendo clic sul pulsante Avanti, compare la seconda finestra di dialogo: in essa il programma chiede se si intendono aggiungere livelli di gruppo al report, ossia raggruppare i record secondo uno dei campi presenti. In riferimento alla tabella degli impiegati, si può chiedere per esempio di raggrupparli per città. Nella successiva finestra di dialogo viene chiesto quale ordine si desidera utilizzare per i record del report. Nel caso del report degli impiegati, può essere sufficiente ordinarli in ordine crescente di cognome. Dopo aver confermato sul pulsante Avanti, si giunge alla finestra dove può essere scelto il layout della pagina, ovvero la disposizione dei campi nella pagina, e l'orientamento della pagina. Lo stile dei caratteri delle diverse zone di testo viene scelto all'interno della finestra di dialogo che segue. Esistono differenze, per esempio, tra titolo della pagina, descrizione dei gruppi e dati di dettaglio. Nell'ultima finestra di dialogo è sufficiente scrivere il nome da assegnare al report e confermare sul pulsante Fine. Il risultato del lavoro di impostazione compare immediatamente a video e, in questo modo, l'utente può vedere quello che ha creato per valutare se corrisponde alle aspettative e agli obbiettivi prefissati. Modificare un rapporto Succede spesso che, dando un'occhiata all'anteprima di stampa, ci si accorga che qualcosa non va: un campo deve essere tolto, un altro dovrebbe essere aggiunto, il layout della pagina non è soddisfacente. La soluzione a questo punto è modificare il report. Per intervenire sulla struttura del report , in Microsoft Access la sequenza operativa è: 1. Aprire il database . 2. Fare clic sul pulsante Report. 3. Selezionare il nome del report da modificare. 4. Fare clic sull' icona Struttura. Appare una finestra molto simile a quella della struttura di una maschera : un'area di sfondo rettangolare, sulla quale sono messi una serie di oggetti. Alcuni sono caselle che contengono scritte, come i titoli e le descrizioni dei campi, altri sono oggetti che rappresentano i campi selezionati dalla tabella e inseriti nel report. Intervenire sulla struttura di un report può dare origine ad azioni di diverso tipo. Per togliere un campo, o un'etichetta di un campo, una sequenza operativa è: 1. Fare clic sull'oggetto. 2. Premere il tasto Canc oppure fare clic su Modifica\Elimina. Spostare un oggetto è un'operazione che si esegue premendolo e trascinandolo, mediante mouse, nella sua nuova destinazione; la sequenza operativa comporta l'utilizzo della tipica azione del drag and drop . Se le dimensioni dell'oggetto non soddisfano, è possibile ridimensionarlo operando con questo metodo: 1. Fare clic sull'oggetto, per fare comparire otto manigliette attorno al riquadro di selezione. 2. Portare il puntatore del mouse su una delle manigliette: in questo modo la sua forma cambierà in quella di una doppia freccia. 3. In base al tipo di modifica che si intende fare (ingrandire o rimpicciolire l'area coperta dall'oggetto), trascinare la maniglietta verso l'esterno o verso l'interno del riquadro di selezione. Per inserire un oggetto, è necessario prima visualizzare una particolare barra degli strumenti , chiamata Casella degli strumenti: essa contiene le icone relative agli oggetti disponibili nel programma, come le etichette e le casella di testo che corrispondono ai campi di una tabella. Un modo per rendere visibile la Casella degli strumenti è quello di eseguire la sequenza: 1. Clic su Visualizza, nella Barra dei menu. 2. Clic sulla voce Casella degli strumenti. L'inserimento di una nuova etichetta nel report, ossia una scritta con funzioni descrittive come per esempio un titolo, si ottiene attraverso questa procedura: 1. Fare clic sull'icona Etichetta, nella Casella degli strumenti. 2. Portare il puntatore nel vertice superiore sinistro della zona rettangolare dove verrà inserita l'etichetta e premere il tasto sinistro del mouse. 3. Trascinare il puntatore fino al vertice inferiore destro dell'etichetta, tenendo il tasto sinistro premuto e lasciare il tasto sinistro. 4. Digitare il testo, che apparirà all'interno della zona rettangolare appena creata e fare clic in un qualsiasi punto della finestra esterno all'area dell'etichetta. Per inserire nel report un nuovo campo della tabella occorre fare clic sull'icona Casella di testo. Dopo aver inserito l'area della casella nella finestra della struttura del report, non bisogna immettere il testo, ma si deve associare quella casella a un campo della tabella. Quest'ultima operazione viene eseguita facendo clic con il tasto destro del mouse sull'oggetto, quindi selezionando la voce Proprietà nel menu contestuale. Viene visualizzata una finestra fluttuante divisa in due colonne, delle quali quella a sinistra contiene un elenco delle descrizioni di ogni proprietà, mentre a destra compaiono le caselle con i relativi valori. Mediante la finestra Proprietà è possibile accedere alla modifica di tutte le proprietà di un qualsiasi oggetto presente nel report. Per esempio, per associare un campo della tabella alla casella, si seleziona la linguetta Dati e si sceglie nella casella accanto a Origine controllo il campo che interessa; se invece si volessero modificare il colore, la dimensione o il tipo del carattere (questo vale anche per la scritta di un'etichetta), sarebbe sufficiente selezionare la casella corrispondente e scegliere il valore appropriato. Creare e personalizzare intestazioni e piè di pagina Non si deve dimenticare che un report , normalmente, viene creato per ottenere una stampa su carta di un elenco di dati : le informazioni prodotte possono servire per una consultazione agevole. Nella stampa di un documento prodotto da un programma di gestione testi, spesso vengono riportate notizie da ripetere nella parte superiore o nell'ultima riga in basso della pagina: intestazioni e piè di pagina. In Microsoft Access ci sono tre diversi tipi di coppie intestazione / piè di pagina : Intestazione e piè di pagina del report Intestazione e piè di pagina del gruppo Intestazione e piè di pagina della pagina Le intestazioni e piè di pagina relative al report vengono stampate solo all'inizio della prima pagina e alla fine dell'ultima. Nel piè di pagina del report possono essere riportati, per esempio, i totali generali di operazioni eseguite su campi . Le intestazioni e piè di pagina relative al gruppo fanno riferimento ai livelli di raggruppamento dei record decisi nella creazione di un report; possono essere inserite oppure no, la scelta spetta all'utente. Le intestazioni e piè di pagina della pagina sono simili a quelle di un qualsiasi documento e vengono riprodotte su tutte le pagine del report; al loro interno, i dati vengono gestiti automaticamente dal programma. Anche un report di un database prevede queste zone particolari. Nell'intestazione e nel piè di pagina non ci sono solo scritte che documentano la stampa, ma solitamente anche campi calcolati in fase di generazione del report. L'esempio classico è quello del numero di pagina, aggiunto per sapere esattamente dove ci si trova: accanto al numero della pagina corrente, spesso viene indicato anche il numero totale delle pagine, in una forma che può; essere, per esempio: Pagina 3 di 14 Questa forma è molto utile per capire con chiarezza quale pagina si stia leggendo, riferita al numero complessivo di quelle del report. Un altro importante campo calcolato, nel senso di valutato solo al momento della generazione del report, è la data di stampa, che il programma estrapola dalla data di sistema: è di grande aiuto per distinguere due stampe tra loro, o per sapere a quale situazione si sta facendo riferimento quando si consulta una stampa a distanza di tempo. Intestazione e piè di pagina vengono sempre inserite in coppia. Se si desidera disporre soltanto di una delle sue sezioni, è necessario nascondere quella che non interessa oppure ridurne l'altezza a zero nella visualizzazione della struttura del report. Per inserirle, se nel report non compaiono, la sequenza operativa è: 1. Fare clic con il tasto destro del mouse in un punto qualsiasi della pagina in visualizzazione struttura. 2. Fare clic su una delle due voci Intestazione/piè di pagina riferito a Pagina oppure a Report, nel menu contestuale che appare. Nella finestra verranno visualizzate le due sezioni richieste, insieme con la parte del corpo del report. L'inserimento delle proprietà e la modifica di una scritta oppure di un campo avvengono esattamente come per l'inserimento di etichette e di campi descritti nel paragrafo precedente. Per inserire la data di stampa, oppure il numero della pagina, si fa clic su Inserisci, nella Barra dei menu, quindi si sceglie una delle due voci. Nella finestra di dialogo che compare, si decidono Formato, Posizione (intestazione o piè di pagina) e Allineamento (se si intende riprodurre il campo a sinistra, al centro oppure a destra della sezione). Una volta effettuate le diverse scelte, sarà sufficiente fare clic sul pulsante OK per avere i campi ainseriti nel report nel punto e nella zona richiesti. Raggruppare i dati di un rapporto Spesso, chi legge un report che contiene dati numerici ha la necessità di vedere sia totali parziali, sia totali generali dei valori riportati nelle pagine. Da un elenco di fatture ordinate per clienti e per data di emissione, per esempio, il responsabile delle vendite di un'azienda potrebbe voler conoscere il totale degli acquisti di ogni cliente per ogni mese dell'anno, quello di tutti gli acquisti di ogni cliente e infine le vendite totali dell'azienda. Un altro esempio può essere quello dell'inventario dei prodotti presenti nei diversi depositi di un'azienda, ordinato per categoria merceologica: un rigo dopo l'altro viene stampato il valore complessivo della giacenza (quantità per prezzo unitario) per ogni prodotto e, alla fine della stampa dei prodotti, il totale per l'intera categoria. Nell'ultima pagina del report, infine, si potrebbero includere i totali generali per tutti i prodotti dell'inventario. In entrambi gli esempi proposti si è richiamato il concetto di raggruppamento dei record . Durante la creazione guidata di un report, infatti, viene chiesto se si intendono inserire livelli di gruppo per i record: questo consente di avere una stampa di tipo gerarchico, con gruppi di record annidati uno dentro l'altro in relazione alle necessità dell'utente. E' grazie al raggruppamento di record che è possibile ottenere subtotali di valori numerici per ogni gruppo; sommando i subtotali si ottengono i totali generali. Per avere subtotali e totali, in Microsoft Access si utilizzano gli spazi dei piè di pagina di gruppo: questo significa che il report deve essere stato creato con livelli di raggruppamento di record. Nel caso in cui il piè di pagina di un gruppo non fosse visualizzato, occore aprire il report in visualizzazione struttura ed eseguire la seguente sequenza: 1. Fare clic su Visualizza, nella Barra dei menu. 2. Fare clic su Ordinamento e raggruppamento. Viene mostrata una finestra di dialogo divisa in due metà orizzontali. La metà superiore elenca in sequenza i campi per i quali sono stati definiti i raggruppamenti e il loro ordine, se crescente o decrescente. Nella metà inferiore sono presenti due colonne: in quella di sinistra compaiono i nomi delle proprietà del raggruppamento, in quella di destra il relativo valore. Per visualizzare il piè di pagina, è necessario assegnare alla proprietà Piè di pagina (gruppo) il valore Sì. Per inserire subtotali e totali in un report, prima di tutto occorrono i totali presenti in ogni record, per arrivare a quello riferito ai record del gruppo. Le operazioni da eseguire, dopo aver aperto il report in visualizzazione struttura, sono: 1. Fare clic in un punto all'interno della sezione corpo del report. 2. In Casella degli strumenti selezionare casella di testo . 3. Inserire la casella di testo nel corpo, mediante drag and drop . 4. Fare clic con il tasto destro del mouse sulla casella appena creata. 5. Fare clic su Proprietà, nel menu contestuale. 6. Associare la casella di testo al campo sul quale si desidera ottenere la somma. 7. Impostare la proprietà Somma parziale al valore Su gruppo, per azzerare la somma all'inizio di un nuovo gruppo; al valore Su tutto, invece, per avere un totale che cresce sempre, fino alla fine del report. Completate queste operazioni, è possibile ottenere i subtotali di gruppo alla fine di ogni gruppo, i totali generali alla fine del report oppure entrambi: è necessario ripetere l'inserimento di caselle di testo nel piè di pagina del gruppo, in quello del report o di entrambi, in base a quello che si desidera avere. Si deve infine associare la proprietà Origine controllo della casella con il nome della casella di testo impostata per eseguire il totale parziale su un certo campo.