Creare una maschera che contiene una sottomaschera (una maschera uno-a-molti)

Quando si lavora con dati relazionali in cui i dati correlati sono memorizzati in tabelle separate, si rende spesso necessario visualizzare i dati di più tabelle o query nella stessa maschera. Si supponga, ad esempio, che si desideri visualizzare i dati relativi ai clienti e che allo stesso tempo si desideri visualizzare anche i dati relativi agli ordini dei clienti. A tale scopo, è possibile utilizzare le sottomaschere e i numerosi strumenti disponibili in Microsoft Office Access 2007 che consentono di creare rapidamente le sottomaschere.

Per saperne di più


Informazioni sulle sottomaschere

Una sottomaschera è una maschera che viene inserita in un'altra maschera. La maschera primaria è denominata maschera principale e la maschera al suo interno è denominata sottomaschera. Una combinazione maschera/sottomaschera viene talvolta definita come maschera gerarchica, maschera master/dettaglio o maschera principale/secondaria.

Le sottomaschere sono particolarmente utili per visualizzare i dati di tabelle o query caratterizzate da una relazione  uno-a-molti (relazione uno-a-molti: Associazione fra due tabelle in cui il valore della chiave primaria di ogni record della tabella primaria corrisponde al valore del campo o dei campi corrispondenti di molti record nella tabella collegata.). È ad esempio possibile creare una maschera contenente una sottomaschera per visualizzare i dati delle tabelle Categorie e Prodotti. I dati della tabella Categorie rappresentano il lato "uno" della relazione e i dati della tabella Prodotti rappresentano il lato "molti", poiché per ogni categoria possono esistere più prodotti.

Maschera contenente una sottomaschera

Callout 1 Nella maschera principale vengono visualizzati i dati relativi al lato "uno" della relazione.
Callout 2 Nella sottomaschera vengono visualizzati i dati relativi al lato "molti" della relazione.

La maschera principale e la sottomaschera in questo tipo di maschera sono collegate in modo che nella sottomaschera vengano visualizzati solo i record che sono correlati al record corrente nella maschera principale. Ad esempio, quando nella maschera principale viene visualizzata la categoria Bevande, nella sottomaschera vengono visualizzati solo i prodotti inclusi nella categoria Bevande. Se la maschera e la sottomaschera fossero collegate, nella sottomaschera verrebbero visualizzati tutti prodotti, non solo quelli inclusi nella categoria Bevande.

Nella tabella seguente vengono riportate le definizioni di alcuni termini associati alle sottomaschere. Se si utilizzano le procedure illustrate in questo articolo, la maggior parte dei dettagli verrà gestita automaticamente da Access. È tuttavia utile conoscere il modo in cui tali dettagli vengono gestiti nel caso sia necessario apportare modifiche successivamente.

Termine Definizione
Controllo Sottomaschera Controllo che incorpora una maschera in un'altra maschera. Si consideri il controllo Sottomaschera come una "visualizzazione" di un altro oggetto del database, che si tratti di un'altra maschera, di una tabella o di una query. Il controllo Sottomaschera implementa le proprietà che consentono di collegare i dati visualizzati nel controllo ai dati della maschera principale.
Proprietà Oggetto origine Proprietà del controllo Sottomaschera che determina quale oggetto viene visualizzato nel controllo.
Foglio dati Tipo di visualizzazione in cui i dati sono disposti in righe e colonne, in modo analogo a un foglio di calcolo. Il controllo Sottomaschera visualizza un foglio dati quando l'oggetto origine corrispondente è una tabella o una query oppure quando l'oggetto origine corrispondente è una maschera la cui proprietà Visualizzazione predefinita è impostata su Foglio dati. In questi casi, la sottomaschera viene talvolta definita foglio dati anziché sottomaschera.
Proprietà Collega campi secondari Proprietà del controllo Sottomaschera che specifica il campo o i campi della sottomaschera che consentono di collegare la sottomaschera alla maschera principale.
Proprietà Collega campi master Proprietà del controllo Sottomaschera che specifica il campo o i campi della maschera principale con cui collegare la maschera principale alla sottomaschera.

Per ottenere i migliori risultati, è innanzitutto necessario stabilire tutte le relazioni. In questo modo verranno creati automaticamente i collegamenti tra le sottomaschere e le maschere principali. Per visualizzare, aggiungere o modificare le relazioni tra le tabelle del database, fare clic su Relazioni nel gruppo Analizza della scheda Strumenti avanzati. Per ulteriori informazioni sulla creazione di relazioni, fare clic sui collegamenti disponibili nella sezione Vedere anche.

Quando l'oggetto origine di un controllo Sottomaschera è una maschera, il controllo Sottomaschera contiene i campi che vengono posizionati nella maschera ed è possibile visualizzarlo come maschera singola, maschera continua (maschera continua: Maschera che visualizza più di un record sullo schermo nella visualizzazione Maschera.) o foglio dati. Uno dei vantaggi che derivano dal basare una sottomaschera su un oggetto maschera consiste nella possibilità di aggiungere campi calcolati alla sottomaschera, ad esempio [Quantità] * [Prezzo unitario].

È inoltre possibile inserire un foglio dati in una maschera creando un controllo Sottomaschera il cui oggetto origine è costituito da una tabella o da una query. Un foglio dati non è personalizzabile come una maschera. Non è ad esempio possibile aggiungere un campo calcolato a un foglio dati. È invece possibile creare una sottomaschera basata su una maschera contenente un campo calcolato e quindi impostare la proprietà Visualizzazione predefinita di tale maschera su Foglio dati. In questo modo si otterrà un tipo di foglio dati della sottomaschera contenente un campo calcolato.

Torna all'inizio Torna all'inizio

Creare una maschera contenente una sottomaschera utilizzando la Creazione guidata Maschera

Questa procedura consente di creare una nuova combinazione di maschera e sottomaschera utilizzando la Creazione guidata Maschera.

  1. Nel gruppo Maschere della scheda Crea fare clic su Altre maschere e quindi su Creazione guidata Maschera Icona del pulsante.Icona del pulsante

MostraSe la procedura guidata non viene avviata

La causa potrebbe essere l'esecuzione di Access in modalità sandbox senza che nel computer sia installato Microsoft Jet 4.0 SP8 o versione successiva. Per ottenere funzionalità complete di Access quando è attiva la modalità sandbox è necessario disporre di Jet 4.0 SP8 o versione successiva.

Per ulteriori informazioni sull'installazione dell'aggiornamento di Jet, vedere l'articolo Informazioni su Microsoft Jet 4.0 SP8 o versione successiva nel sito Web Office Online.

Per ulteriori informazioni sulla modalità sandbox, vedere l'articolo Informazioni sulla modalità sandbox di Expression Service di Microsoft Jet nel sito Web Office Online.

  1. Nell'elenco a discesa Tabelle/query nella prima pagina della procedura guidata selezionare una tabella o una query. Per creare una maschera Categorie per questo esempio che consenta di visualizzare i prodotti di ogni categoria in una sottomaschera, selezionare Tabella: Categorie, ovvero il lato "uno" della relazione uno-a-molti.

 Nota   L'ordine in cui le tabelle o le query vengono selezionate è irrilevante.

  1. Fare doppio clic sui campi della tabella o della query che si desidera includere.
  2. Nell'elenco a discesa Tabelle/query nella stessa pagina della procedura guidata selezionare un'altra tabella o query. Per questo esempio, selezionare la tabella Prodotti, ovvero il lato "molti" della relazione uno-a-molti.
  3. Fare doppio clic sui campi della tabella o della query che si desidera includere.
  4. Se le relazioni sono state impostate in modo corretto prima di avviare la procedura guidata, quando si fa clic su Avanti verrà chiesto di scegliere come visualizzare i dati,  ovvero in base a quale tabella o query. Per creare la maschera Categorie per questo esempio, fare clic su In base a Categorie. Verrà visualizzato un piccolo diagramma della maschera. La casella nella parte inferiore della maschera rappresenta la sottomaschera.
  5. Nella parte inferiore della pagina della creazione guidata, selezionare l'opzione Maschera con sottomaschere e quindi fare clic su Avanti.
  6. Nella pagina Scegliere il layout da applicare alla sottomaschera della creazione guidata, fare clic su Tabulare o Foglio dati, in base al layout desiderato per la sottomaschera. Entrambi gli stili di layout suddividono i dati della sottomaschera in righe e colonne, ma il layout tabulare può essere personalizzato. A una sottomaschera tabulare è possibile aggiungere colori, grafica e altri elementi di formattazione, mentre un foglio dati è più compatto, come la visualizzazione Foglio dati di una tabella. Dopo aver eseguito la scelta, fare clic su Avanti.
  7. Nella pagina Scegliere lo stile da utilizzare della creazione guidata, selezionare uno stile di formattazione per la maschera. Se nella pagina precedente è stato scelto Tabulare, lo stile di formattazione scelto sarà applicato anche alla sottomaschera. Dopo aver eseguito la scelta, fare clic su Avanti.
  8. Nell'ultima pagina della creazione guidata, immettere i titoli che si desidera assegnare alle maschere. Le maschere vengono denominate da Access in base ai titoli immessi, mentre l'etichetta delle sottomaschere viene assegnata in base al titolo specificato per la sottomaschera.

Nella stessa pagina specificare se aprire la maschera nella visualizzazione Maschera, in modo da poter visualizzare o immettere le informazioni, o nella visualizzazione Struttura, in modo da poterne modificare la struttura. Al termine, fare clic su Fine.

Verranno create automaticamente due maschere,  una per la maschera principale contenente il controllo Sottomaschera e una per la sottomaschera stessa.

Torna all'inizio Torna all'inizio

Creare una sottomaschera trascinando una maschera in un'altra

Utilizzare questo processo se si dispone di due maschere esistenti e si desidera utilizzare una maschera come sottomaschera nell'altra maschera.

  1. In visualizzazione Struttura aprire la maschera che si desidera utilizzare come maschera principale.
  2. Se nel gruppo Controlli della scheda Struttura lo strumento Usa creazioni guidate Controllo non è selezionato, fare clic su di esso per selezionarlo.

Icona del pulsante

  1. Trascinare una maschera dal riquadro di spostamento nella maschera principale.

Alla maschera principale viene automaticamente aggiunto un controllo Sottomaschera e il controllo viene associato alla maschera trascinata dal riquadro di spostamento. Access tenta inoltre di collegare la sottomaschera alla maschera principale, in base alle relazioni definite nel database. Se non è possibile determinare le modalità per collegare la sottomaschera alla maschera principale, le proprietà Collega campi secondari e Collega campi master del controllo Sottomaschera vengono lasciate vuote e dovranno essere impostate manualmente procedendo come segue:

  1. Fare clic con il pulsante destro del mouse sulla maschera principale nel riquadro di spostamento e quindi scegliere Visualizzazione StrutturaIcona del pulsante.
  2. Fare clic una volta sul controllo Sottomaschera per selezionarlo
  3. Se la finestra delle proprietà non è già visualizzata, premere F4 per visualizzarla.
  4. Nella scheda Dati della finestra delle proprietà fare clic su Icona del pulsante accanto alla casella della proprietà Collega campi secondari.

Verrà visualizzata la finestra di dialogo Collegamento campi sottomaschera.

  1. Negli elenchi a discesa Campi master e Campi secondari selezionare i campi con cui si desidera collegare le maschere. In caso di dubbi sui campi da utilizzare, fare clic su Suggerisci per fare in modo che i campi di collegamento vengano determinati automaticamente. Al termine, fare clic su OK.

Se il campo che si desidera utilizzare per collegare le maschere non è visualizzato, potrebbe essere necessario modificare l'origine record della maschera principale o della maschera secondaria in modo da garantire che contenga il campo di collegamento. Ad esempio, se la maschera si basa su una query, verificare che il campo di collegamento sia presente nei risultati della query.

  1. Salvare la maschera principale e passare alla visualizzazione Maschera e quindi verificare che il funzionamento della maschera sia come previsto.

Aprire una sottomaschera in una nuova finestra in visualizzazione Struttura

Se si desidera apportare modifiche alla struttura di una sottomaschera mentre si utilizza la maschera principale corrispondente in visualizzazione Struttura, è possibile aprire la sottomaschera in una finestra separata:

  1. Fare clic sulla sottomaschera per selezionarla.
  2. Nel gruppo Strumenti della scheda Struttura fare clic suSottomaschera in nuova finestra Icona del pulsante.Icona del pulsante

Torna all'inizio Torna all'inizio

Creare una maschera contenente due sottomaschere

Questa procedura consente di creare una maschera e due sottomaschere con le caratteristiche seguenti:

  • La maschera principale ha una relazione uno-a-molti con la prima sottomaschera.
  • La prima sottomaschera ha una relazione uno-a-molti con la seconda sottomaschera.
  • La maschera principale contiene entrambi i controlli Sottomaschera.

Creare la maschera

  1. Nel gruppo Maschere della scheda Crea fare clic su Altre maschere e quindi su Creazione guidata Maschera Icona del pulsante.Icona del pulsante

MostraSe la procedura guidata non viene avviata

La causa potrebbe essere l'esecuzione di Access in modalità sandbox senza che nel computer sia installato Microsoft Jet 4.0 SP8 o versione successiva. Per ottenere funzionalità complete di Access quando è attiva la modalità sandbox è necessario disporre di Jet 4.0 SP8 o versione successiva.

Per ulteriori informazioni sull'installazione dell'aggiornamento di Jet, vedere l'articolo Informazioni su Microsoft Jet 4.0 SP8 o versione successiva nel sito Web Office Online.

Per ulteriori informazioni sulla modalità sandbox, vedere l'articolo Informazioni sulla modalità sandbox di Expression Service di Microsoft Jet nel sito Web Office Online.

  1. Nell'elenco a discesa Tabelle/query nella prima pagina della procedura guidata selezionare la tabella o query per la maschera principale. Si supponga, ad esempio, che si desideri creare una maschera Clienti con due sottomaschere, ovvero una sottomaschera Ordini e una sottomaschera Dettagli ordini. A tale scopo, selezionare la tabella Clienti, ovvero il lato "uno" della prima relazione uno-a-molti.

 Nota   L'ordine in cui le tabelle o le query vengono selezionate è irrilevante.

  1. Fare doppio clic sui campi della tabella o della query che si desidera includere.
  2. Nell'elenco a discesa Tabelle/query disponibile nella stessa pagina della procedura guidata selezionare la tabella o la query per la prima sottomaschera. Per questo esempio, fare clic sulla tabella Ordini, ovvero il lato "molti" della prima relazione uno-a-molti, e quindi fare doppio clic sui campi della tabella o della query che si desidera includere.
  3. Nell'elenco a discesa Tabelle/query disponibile nella stessa pagina della procedura guidata selezionare la tabella o la query per la seconda sottomaschera. Per questo esempio, selezionare la tabella Dettagli ordini, ovvero il lato "molti" della seconda relazione uno-a-molti, e quindi fare doppio clic sui campi della tabella o della query che si desidera includere.
  4. Se le relazioni sono state impostate in modo corretto prima dell'avvio della procedura guidata, quando si fa clic su Avanti verrà chiesto di scegliere come visualizzare i dati, ovvero in base a quale tabella o query. Per creare la maschera Clienti per questo esempio, fare clic su In base a Clienti.
  5. Selezionare l'opzione Maschera con sottomaschere.
  6. Seguire le istruzioni visualizzate nelle altre pagine della procedura guidata. Dopo aver fatto clic su Fine, verrà creata automaticamente una maschera principale contenente due controlli Sottomaschera e verranno inoltre creati altri due oggetti maschera, uno per ogni sottomaschera.

Torna all'inizio Torna all'inizio

Creare una maschera contenente sottomaschere nidificate

Questa procedura consente di creare una maschera e due sottomaschere con le caratteristiche seguenti:

  • La maschera principale ha una relazione uno-a-molti con la prima sottomaschera.
  • La prima sottomaschera ha una relazione uno-a-molti con la seconda sottomaschera.
  • La prima sottomaschera contiene la seconda sottomaschera.
  1. Creare una maschera che contiene una sottomaschera. Per ulteriori informazioni, vedere la sezione Creare una maschera che contiene una sottomaschera utilizzando la Creazione guidata Maschera.
  2. Aprire la maschera principale in visualizzazione Struttura.
  3. Fare clic sulla sottomaschera per selezionarla.
  4. Nel gruppo Strumenti della scheda Struttura fare clic suSottomaschera in nuova finestra Icona del pulsante.Icona del pulsante

La sottomaschera verrà visualizzata in una nuova finestra.

  1. Trascinare una maschera, una tabella o una query dal riquadro di spostamento nella sottomaschera. Verranno create automaticamente un'altra sottomaschera all'interno della prima sottomaschera e una maschera per la sottomaschera.

Nella sottomaschera verrà aggiunto automaticamente un controllo Sottomaschera e il controllo verrà associato alla maschera che è stata trascinata dal riquadro di spostamento. Verrà inoltre effettuato automaticamente un tentativo di collegare le sottomaschere, in base alle relazioni che sono state definite nel database. Se Access non è in grado di determinare la modalità di collegamento delle sottomaschere, le proprietà Collega campi secondari e Collega campi master del controllo Sottomaschera verranno lasciate vuote e sarà pertanto necessario impostarle manualmente eseguendo le operazioni seguenti:

  1. Fare clic una volta sul controllo Sottomaschera per selezionarlo.
  2. Se la finestra delle proprietà non è già visualizzata, premere F4 per aprirla.
  3. Nella scheda Dati della finestra delle proprietà fare clic sul pulsante Icona del pulsante accanto alla casella della proprietà Collega campi secondari.

Verrà visualizzata la finestra di dialogo Collegamento campi sottomaschera.

  1. Negli elenchi a discesa Campi master e Campi secondari, selezionare i campi che si desidera collegare alle maschere. In caso di dubbi, fare clic su Suggerisci per determinare in automatico i campi di collegamento. Al termine, fare clic su OK.

Se il campo che si desidera utilizzare per collegare le maschere non è visualizzato, potrebbe essere necessario modificare l'origine record della maschera master o della maschera secondaria per verificare che il campo di collegamento sia incluso. Ad esempio, se la maschera si basa su una query, è consigliabile verificare che il campo di collegamento sia presente nei risultati della query.

  1. Salvare le maschere, passare alla visualizzazione Maschera e quindi verificare che il funzionamento della maschera sia quello previsto.

Torna all'inizio Torna all'inizio

 
 
Si applica a:
Access 2007