ecdl5-18
modulo 5, lezione 18
giuseppe servidio su uic h.e.

Lezione 18. Creazione di un report da query, modifiche

In questa lezione impareremo a creare un report proveniente da una query, e
a stamparlo.

Si imparerà anche a modificare report già creati.

Possiamo anche sperimentare altre possibilità, ad esempio la creazione di un
report partendo da una query.

Apriamo quindi Access ed il nostro database.

Creiamo una query: ormai sappiamo farlo! Scegliamo la linguetta Query,
Nuovo, Visualizzazione struttura. Scegliamo Indirizzi dall'elenco delle
tabelle.

Nella griglia poniamo i campi Cognome, Nome e Data di nascita. Chiudiamola
senza eseguirla, ma salviamola col nome Report, per ricordarci che l'abbiamo

creata per preparare poi il report.

Torniamo alla linguetta Report, scegliamo Nuovo, poi Autocomposizione
Report.

Noteremo che è presente anche Report, la query che abbiamo appena creato.
Scegliamo quella come origine del report e poi OK. Quindi questa volta
genereremo

un report a partire dalla query.

Ricordo che la query non è un elenco di dati esistenti, come una tabella; è
invece una informazione che serve ad Access per fare al momento del lancio

una estrazione.

Quando lanceremo il report, verrà eseguita la query, e i dati estratti
verranno inseriti nel report, nel modo in cui noi desideriamo. In questo
caso vogliamo

scegliere tutti i campi della query (sono tre), quindi basterà usare il
pulsante con la doppia freccia a destra per selezionarli tutti. Premiamo poi
Avanti.

Premiamo ancora Avanti anche nella finestra successiva, perché non vogliamo
aggiungere livelli di gruppo.

Nella finestra in cui ci chiede l'ordinamento, tramite l'apertura della
casella elenco scegliamo Data di nascita. Premiamo poi Avanti perché ci va
bene

ordinamento crescente. Nella finestra del layout ci va tutto bene: il report
tabulare e l'orientamento verticale, perché questa volta ci sono pochi
campi.

Premiamo quindi ancora Avanti.

Anche lo stile aziendale, o di società, scelto per default nella finestra
successiva, ci va bene; quindi premiamo ancora Avanti.

Anche l'ultima informazione, quella del titolo, ci va bene, e quindi
premiamo ALT + F per Fine. Il report viene generato immediatamente.

E' fatto come quello che ho già descritto, con la differenza che questa
volta l'andamento è verticale. Se controlliamo la data di nascita, primo
campo nell'elenco,

vedremo che il primo record è relativo alla persona più vecchia.

Anche in questo caso potremmo stampare il report, ma potremmo anche
modificarlo. Per far questo, scegliamo il menù Visualizza e poi
Visualizzazione Struttura.

Ci compare una finestra che abbiamo già visto quando abbiamo modificato le
maschere.

Lo sfondo è quadrettato, per permettere la disposizione corretta degli
oggetti.

Gli oggetti presenti sulla finestra sono vari. Il primo è intestazione
report.

Esso contiene il titolo del nostro report, e cioè Report, esso verrà
stampato una volta sola.

Poi troviamo intestazione pagina. In essa sono presenti le intestazioni dei
campi e la riga blù che la separa dai campi veri e propri. Essa viene
stampata

ogni volta che si passa a una nuova pagina durante la stampa.

Andando avanti, la terza sezione è identificata come corpo, e contiene i
campi, o meglio lo spazio dove essi verranno scritti. Nella visualizzazione
struttura

troviamo solo il posto occupato da un record, perché questa modalità
riguarda solo la struttura e non il contenuto. Lo spazio dedicato ad ognuno
dei campi

del record è in funzione del tipo di campo definito nella tabella. Questa
sezione viene stampata tante volte quante occorrono per esaurire tutti i
dati

trattati.

La quarta parte è chiamata Piè di pagina pagina, e contiene la riga grigia
orizzontale e subito sotto, nella parte sinistra, la scritta "= NOW ()".
Essa

verrà trasformata nella data del giorno, divisa in giorno della settimana e
data per esteso, come abbiamo visto. Nella parte destra, sulla stessa riga,

troviamo la scritta "= "Pagina" & [page] & "di" & [pages]. Verrà trasformata
in pagina (questa parola è fra virgolette), poi numero della pagina
corrente,

poi di e il numero delle pagine del report. Essa viene stampata alla fine di
ogni pagina del Report.

Ancora al di sotto esiste una ulteriore sezione, denominata Piè di pagina
report ed attualmente è vuota, essa viene stampata solo alla fine
dell'intero

Report.

Proviamo a fare una modifica. Vogliamo che l'intestazione, il titolo del
nostro report diventi "rapporto di prova" invece che "Report".

Col mouse, questa modifica è facilissima. Basta selezionare l'intestazione
report, poi selezionare il contenuto, cioè Report, e scrivere ciò che si
desidera:

il campo verrà immediatamente modificato. Con la tastiera, la cosa è un po'
più complessa, ma se si seguiranno tutti i passi che indicherò, riuscira
sicuramente

anche chi usa la tastiera ad ottenere lo stesso risultato.

E' necessario per prima cosa selezionare il campo che contiene la scritta
che vogliamo modificare. Per farlo, bisogna entrare nell'elenco dei campi.
Lo

abbiamo già fatto quando abbiamo parlato delle maschere, ma lo ricordo anche
ora. Premere ALT per andare alla barra dei menù; poi CTRL+TAB per passare

alla barra degli strumenti, poi ancora la stessa combinazione di tasti per
passare alla casella degli strumenti (si potrebbe aver bisogno di premere
CTRL+TAB

nel caso si avesse la visualizzazione di più di una barra degli strumenti);
infine, premere per l'ultima volta CTRL+TAB. Adesso dovremmo trovarci
sull'elenco

campi. Possiamo tranquillamente scorrerlo con freccia su o freccia giù. In
questo elenco troveremo tutti i campi e le sezioni del report. Il titolo o
intestazione

è un'etichetta, e non è contrassegnata da un nome, come etichetta cognome,
ma da un numero, ad esempio etichetta 6. Access dà un numero progressivo
alle

etichette, e la prima che trova libera sarà quella in cui viene scritto il
contenuto della nostra intestazione. Non è detto che questa etichetta sia
contrassegnata

dal numero 1, perché potremmo aver creato altre intestazioni , ad esempio in
altre maschere o report. Sicuramente però sarà quella col valore più basso

all'interno di questo report. Analizzare bene l'elenco che si ha di fronte
e, quando l'abbiamo trovata, premere INVIO. A questo punto dovremmo aver
selezionato il

campo da modificare.

Il modo più semplice per effettuare la modifica è cancellare da destra a
sinistra tutte le lettere del campo e quindi scrivere il titolo desiderato.
In

alternativa possiamo andare nel menù Visualizza e attivare con INVIO la
scelta Proprietà. Conosciamo già molto bene questa finestra. Cercare la riga
Etichetta

e, al posto di Report, scrivere Rapporto di prova. Possiamo ora, tramite
ALT+F4, disattivare Proprietà che non serve più. Naturalmente, se
desiderassimo,

ad esempio, allargare questo campo, spostarlo o modificarlo in altre
caratteristiche definite in questa finestra, la cosa sarebbe possibile, come
già sappiamo.

Per rendere effettiva questa modifica, naturalmente, si dovrà chiudere il
report e salvare. Riapriamolo e controlliamo che ciò che abbiamo fatto sia
davvero corretto.

Proviamo ad eseguire un'altra modifica. Andiamo nel menù Visualizza e
scegliamo Visualizza struttura. Poi, dal menù Inserisci, scegliamo Data e
ora. La prima cosa

che notiamo nella finestra Data e ora è la casella, attualmente attivata,
Includi data e ora. Poi, spostandoci col TAB, troviamo tre diversi formati
di

data: il primo è quello che contiene anche il giorno della settimana, già
visto nel report; il secondo contiene giorno, mese abbreviato e anno; il
terzo

è solo numerico (giorno mese e anno), coi tre campi separati da barre.
Scegliamo quest'ultimo tipo tramite le frecce. Spostiamoci ancora con TAB e
disattiviamo

la casella Includi ora. Questo significa che l'ora non verrà inserita. Diamo
ora OK. Access ci ha creato un campo in cui è scritto: =format(date();"data

in cifre"). Questo campo si trova in alto a sinistra rispetto al report. Noi
vorremmo spostarlo a destra dell'intestazione, cioè subito dopo "rapporto

di prova" che abbiamo appena modificato. Farlo col mouse è molto semplice.
Dato che dobbiamo controllare fisicamente dove deve trovarsi la nostra data,

è necessario che noi agiamo sulle sue proprietà. Per questo si deve
selezionare il campo intestazione. Per farlo, si deve usare la procedura che
abbiamo attuato

quando abbiamo modificato l'intestazione. Poi, dovremmo attivare la scelta
Proprietà dal menù Visualizza. Dobbiamo memorizzarci la larghezza del campo.
A questo

punto si deve selezionare il campo appena creato. Tenere presente che la
data verrà definita come campo testo. Ce ne sono già due: la data e il
numero di pagina;

quindi si dovra, sempre dall'elenco campi, scegliere il campo testo che ha
il numero più alto. Nelle proprietà di quest'ultimo, si deve modificare la
distanza

dal bordo sinistro perché non si sovrapponga all'intestazione. Se, ad
esempio, la larghezza dell'intestazione è 15 cm, bisogna mettere la distanza
della

nostra data dal bordo sinistro a 15,5. Questo dovrebbe portarci ad avere
sulla stessa riga "rapporto di prova" e la data del giorno. Ora vorremmo
dare

ai due campi lo stesso formato. Esiste, nella barra degli strumenti, il
pulsante Copia formato. Per copiare il formato di un campo in un altro
bisogna

prima selezionare il campo di origine (selezionare quindi l'intestazione);
poi, dalla barra degli strumenti scegliere il pulsante Copia formato, ed
infine

selezionare il campo in cui si vuole fare la copia (selezioniamo il nostro
campo data).

Mi rendo conto che tutto questo non è facile, anche perché non avremo una
chiara visione del risultato. Il lavoro con gli altri però è la cosa più
affascinante.

Invito quindi a provare queste modifiche finché tutti non saremo riuscito a
fare ciò che ho provato ad insegnare.

G. Servidio
Torna all'indice