Maschere Access per la Gestione dei Libri

Dopo aver creato la struttura del database per la gestione dei libri, passiamo alla gestione dei dati attraverso le form di Access.

Questo articolo fa parte del corso su Access. Puoi trovare la guida completa e tutte le lezioni qui: https://informatica.rgpsoft.it/corso-access

Nella prima parte di questo tutorial, facente parte del corso su Access, abbiamo visto come progettare le tabelle necessarie per realizzare un piccolo gestionale di libreria. In questo articolo passiamo allo step successivo: la creazione delle maschere (form), lo strumento con cui l’utente finale interagirà con i dati.

Le maschere sono fondamentali perché rappresentano la “facciata” del database: chi utilizza l’applicazione spesso non conosce Access né le logiche relazionali, quindi la nostra interfaccia deve essere semplice, intuitiva e guidata. Un buon form evita errori, limita le scelte non valide e permette di lavorare in modo naturale, senza conoscere le tabelle sottostanti.

Prima maschera: gestione delle tipologie

Come sempre, si parte dalle entità più semplici. La maschera delle tipologie può essere creata rapidamente con la Creazione guidata maschera, includendo solo il campo Descrizione. È un form essenziale, ma sarà utile in seguito come maschera di supporto.

Maschera delle categorie con casella combinata

Dopo le tipologie passiamo alle categorie, che nel nostro modello rappresentano una sotto-classificazione dei materiali.

Anche qui possiamo usare la creazione guidata, ma con una differenza importante: dobbiamo inserire una casella combinata (combo box) che mostri l’elenco delle tipologie provenienti dall’apposita tabella. Access mette a disposizione un wizard che permette di:

  • selezionare i valori da un’altra tabella
  • visualizzare la descrizione
  • salvare nella tabella categorie l’ID univoco della tipologia

È un’operazione semplice e molto comune nei database relazionali.

Limitare l’inserimento ai soli valori esistenti

Ora vogliamo migliorare l’esperienza dell’utente:

  • l’utente deve poter scegliere solo tra i valori esistenti
  • se vuole modificarli o aggiungerne di nuovi, deve poter aprire la maschera delle tipologie con un doppio click sulla combo box

Per ottenere questo servono tre interventi in VBA:

1. Evento Doppio click sulla casella combinata

Apriamo la maschera delle tipologie come finestra modale, così l’utente può modificare l’elenco senza perdere il contesto.

2. Gestione dell’evento NotInList

Se l’utente tenta di digitare un valore non presente, intercettiamo l’evento e blocchiamo l’inserimento, invitandolo a usare la maschera dedicata.

3. Caricamento del valore selezionato

Quando la maschera delle tipologie si apre, vogliamo che mostri subito la tipologia attualmente selezionata nella combo box. Questo si gestisce nell’evento OnLoad.

4. Restituzione del valore aggiornato

All’uscita dalla maschera delle tipologie (evento Unload) salviamo l’ID selezionato nel registro di sistema e lo ricarichiamo nella combo box della maschera categorie.

Questa tecnica è stata descritta in dettaglio in un altro articolo dedicato alle finestre modali in Access, ed è perfetta per questo scenario.

Codice di esempio

Ho messo a disposizione il sorgente aperto dell’esempio completo, così potete analizzare nel dettaglio tutti gli eventi e le procedure utilizzate.

E nel prossimo articolo…

Nella prossima lezione del tutorial studieremo il linguaggio SQL, utile per filtrare, aggiungere o eliminare i dati direttamente con le query.

Nota sul progetto LibAccess

Poiché solo una parte dei lettori è realmente interessata a studiare la costruzione di un gestionale completo in Access, ho deciso di proseguire il progetto autonomamente in modo più diretto: invece di spiegare ogni singolo passaggio, realizzerò l’applicazione completa e pronta all’uso. In questo modo potete cercare di capire i passaggi principali e magari aggiornarlo. Se avete bisogno di spiegazioni potete fare domande nei commenti.

<< Lezione PrecedenteLezione Successiva >>

Vuoi continuare il percorso? Torna alla guida generale del corso su Access: https://informatica.rgpsoft.it/corso-access

Giampaolo Rossi
Giampaolo Rossi

Sviluppatore di software gestionale da oltre 28 anni.

Articoli: 324

Un commento

  1. In molti mi hanno richiesto, tramite posta elettronica, di mettere in download il programma finito. Ora devo dire che il principio su cui si basano queste lezioni è insegnare a programmare in VBA con Access e non fare applicativi gratuiti per le librerie o altri… ci mancherebbe… per questo, a meno di un interesse di molti… termino qui questo tutorial.

I commenti sono chiusi.

Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.