4 tabelle e maschera

di il
8 risposte

4 tabelle e maschera

Ho quattro Tab
A,B,C,D
A 1 a M con B
B 1 a M con C
C 1 a M con D
Quando le Tbl sono 3, ad esempio A,B,C creo una Maschera A con sottomaschera B e pesco con casella combinata l'id di A
Nel caso in cui sono 4 (A,B,C,D), la Tbl A (prima) e la Tbl D (ultima) non hanno proprio niente in comune e quindi come si fa. Se poi le Tbl sono la A,B,C,D,E,F e cosi via dove ogni tabella è collegata alla successiva con relazione una a molti il problema diventa "generale". Penso quindi che esista una regola teorica "generale", quantomeno di approccio.
Esiste per davvero una siffatta regola?

8 Risposte

  • Re: 4 tabelle e maschera

    Cosa devi fare...?
    La gestione di Tabelle con relazione Gerarchica si fa in un'altro modo... ma non so se sia il tuo caso.

    L'esempio che ti faccio è di un Ricettario(so che è banale l'esempio e potresti sentirti offeso, ma attenzione ai concetti...)

    Una ricetta è fatta da Molti elementi... ma a sua volta un elemento che compone la ricetta potrebbe essere a sua volta una ricetta...
    Si distinguono di fatto prodotti FINITI, SEMILAVORATI e MATERIE PRIME.
    
    (1)Torta di Mele
         (2) Pasta Frolla
              (3) Farina
              (3) Uova
              (3) Burro
              (3) ecc...
              
         (2)Crema Pasticcera
              (3) Uova
              (3) Vaniglia
              (3) ecc...
         (2)Mele 
    Il Numero prima dell'elemento è il LIVELLO di Profondità o il Livello Gerarchico.
    Come vedi l'esempio banale offre spunti interessanti, e se tu dovessi fare una gestione di questo tipo con Tabelle 1-M in modalità Standard saresti in difficoltà oppure dovresti prevedere N livelli complicando la vita...!

    Il tutto invece si gestisce con 2 Tabelle

    1° Tabelle Elementi(nella quale inseriamo il TIPO[FINITO/PRIMO/SEMILAVORATO] ed i dati specifici dell'elemento)
    2° Tabella Relazione Elemento Padre - Elemento Figlio

    La 2° come elemento Figlio ha il legame sempre con la 1° Tabella che viene referenziata 2 volte...

    Se non ti piacciono le ricette, peccato, puoi spostare l'applicazione su una gestione di Magazzino di una Fabbrica di Componentim in cui si ha un Elemento finito e componenti che possono essere assemblati e far parte di molti elementi finiti...

    Concetto abbastanza complesso nella media... termino quì di cucinare...!
  • Re: 4 tabelle e maschera

    "potresti sentirti offeso" - Per Nulla, anzi
    Da una veloce lettura mi rendo conto che è complicato - e, non credo proprio sia il mio caso - (figurati, immaginavo che il problema si risolvesse con una serie di query nidificate che oltretutto non so neanche se esistono)
    L'esempio della torta è chiarissimo ed è tale da farmi intuire "l'approccio". Un po come dire "Relazione Elemento Padre - Elemento Figlio e figli dei figli e dei figli ancora e cosi via)
    Allo stato, non ho ancora la capacità di utilizzare al meglio, le poche conoscenze che ho di access - (procedo spesso per tentativi e a volte ci azzecco)
    La questione sul "LIVELLO di Profondità o il Livello Gerarchico" è però "interessante".

    "Cosa devi fare...?" - Ho realizzato uno Scadenzario costituito da 3 tbl (funzionante). Volevo tentare una ulteriore normalizzazione per cui le tre tbl sarebbero diventate 4 (Relazioni di tipo gerarchico).
    E' probabile (sicuramente) che l'errore sia all'origine (di impostazione/progettazione). Non l'ho ancora capito.
    Posterò, più in la, le tbl e le relazioni per avere un vostro aiuto.
    Grazie x la spiegazione
  • Re: 4 tabelle e maschera

    zonevinc ha scritto:


    Ho quattro Tab
    A,B,C,D
    A 1 a M con B
    B 1 a M con C
    C 1 a M con D
    Quando le Tbl sono 3, ad esempio A,B,C creo una Maschera A con sottomaschera B e pesco con casella combinata l'id di A
    Nel caso in cui sono 4 (A,B,C,D), la Tbl A (prima) e la Tbl D (ultima) non hanno proprio niente in comune e quindi come si fa. Se poi le Tbl sono la A,B,C,D,E,F e cosi via dove ogni tabella è collegata alla successiva con relazione una a molti il problema diventa "generale". Penso quindi che esista una regola teorica "generale", quantomeno di approccio.
    Esiste per davvero una siffatta regola?
    Io non darei per scontato come punto di partenza l'esempio delle ricette di cucina o i lavorati/semilavorati/prodotti finiti.
    E se avessimo una gerarchia del tipo Continenti/Stati/Regioni/Province/Comuni?
    Se siamo di fronte agli esempi citati da @Alex, quel ragionamento non fa una grinza. Ma il caso che ho citato io ha una gerarchia ben definita (o ben definibile nel senso che se non sai a quale Continente attribuire l'Armenia o la Turchia, lo decidi tu arbitrariamente...)
    Sempre aggrappandomi al mio esempio penso che puoi gestire il problema

    zonevinc ha scritto:


    Nel caso in cui sono 4 (A,B,C,D), la Tbl A (prima) e la Tbl D (ultima) non hanno proprio niente in comune e quindi come si fa
    in vari modi:
    1) La casella combinata di D deve portarsi appresso tutte le informazioni che stanno in tutte le tabelle a monte (lo stesso vale per C e B)
    2) A me ad esempio capita di gestire le zone geografiche che citavo prima in 2 modi:
    1. Se ricordo direttamente il Comune digito quello
    2. Se non ricordo il Comune e ho bisogno di arrivarci passo passo, mi servo del meccanismo "caselle combinate a cascata".

    Secondo me la regola teorica che stai cercando non c'è (oppure io non l'ho capita)...per me resta l'analisi caso per caso.
  • Re: 4 tabelle e maschera

    OsvaldoLaviosa ha scritto:


    ...
    Io non darei per scontato come punto di partenza l'esempio delle ricette di cucina o i lavorati/semilavorati/prodotti finiti.
    E se avessimo una gerarchia del tipo Continenti/Stati/Regioni/Province/Comuni?
    Se siamo di fronte agli esempi citati da @Alex, quel ragionamento non fa una grinza. Ma il caso che ho citato io ha una gerarchia ben definita (o ben definibile nel senso che se non sai a quale Continente attribuire l'Armenia o la Turchia, lo decidi tu arbitrariamente...)
    Sempre aggrappandomi al mio esempio penso che puoi gestire il problema....
    Rispondo solo affinchè chi legge non abbia a travisare concetti corretti con concetti errati.

    Non cambia nulla.
    Un sistema Gerarchico è Gerarchico a prescindere e la definizione di gerarchia è proprio l'oggetto della valutazione.
    Non sono da confondere le gerarchie degli Items con gli attributi, ma per questo serve aver compreso chiaramente di cosa si parla....
    Sicchè il fatto tu ritenga non applicabile una gerarchia tra Galassie, Sistemi solari, Pianeti, Continenti, Stati, regioni, Province, Comuni, Vie, Condomini... è decisamente solo un tuo limite, ti assicuro superabile.
  • Re: 4 tabelle e maschera

    OsvaldoLaviosa ha scritto:


    il caso che ho citato io ha una gerarchia ben definita (Continenti/Stai/Regioni/Province/Comuni)

    @Alex ha scritto:


    il fatto tu ritenga non applicabile una gerarchia tra Galassie, Sistemi solari, Pianeti, Continenti, Stati, regioni, Province, Comuni, Vie, Condomini... è decisamente solo un tuo limite
    Temo che ci siamo fraintesi e credo di aver detto esattamente il contrario.
  • Re: 4 tabelle e maschera

    @Alex ha scritto:


    Cosa devi fare...?


    Il tutto invece si gestisce con 2 Tabelle

    1° Tabelle Elementi(nella quale inseriamo il TIPO[FINITO/PRIMO/SEMILAVORATO] ed i dati specifici dell'elemento)
    2° Tabella Relazione Elemento Padre - Elemento Figlio

    La 2° come elemento Figlio ha il legame sempre con la 1° Tabella che viene referenziata 2 volte...
    Concetto abbastanza complesso nella media... termino quì di cucinare...!

    Buongiorno, mi scuso in anticipo per la domanda forse banale: in Access esiste il concetto di Occorrenza delle tabelle? come faccio, cioè, e referenziare 2 volte una tabella?
    E nel referenziare più volte una tabella, posso dargli delle condizoni (prendi solo i dati derivanti da.. eccetera...)?
    angelo
  • Re: 4 tabelle e maschera

    Se nel Diagramma Relazionale(EPR) di Access aggiungi 2 volte la stessa Tabella... ottieni la possibilità di effettuare una SELF-REFERENCING.
    Nel caso di gerarchia, la 1° la usi per il Legame PADRE e la 2° per il Legame Figlio.
    Non hai modo, nè serve, fare altro in quanto così facendo l'unico dato condiviso è la PK della tabella che diventa FK nella lato Dettaglio.

    In questo Link è spiegato molto bene il concetto:


    Questo è più tecnico ma chiaro...


    Ovviamente è chiaro che se la Gerarchia è rigida che un Figlio può appartenere solo ed esclusivamente ad 1 Padre, di tabelle ne basta 1... in autoreferenza su se stessa...!
    
    IdElemento
    IdElementoPadre
    Nome
    Cognome
    ecc..
    In questo modo facendo una Selfrecerencing della Tabella su se stessa la dove un elemento della Tab ha un Padre deve essere un Elemento a sua volta.

    Ne consegue che se un Elemento NON ha Padri è un Elemento Primo o Solo un Padre...
  • Re: 4 tabelle e maschera

    @Alex ha scritto:


    Se nel Diagramma Relazionale(EPR) di Access aggiungi 2 volte la stessa Tabella... ottieni la possibilità di effettuare una SELF-REFERENCING.
    -......
    Grazie mille.
    angelo
Devi accedere o registrarti per scrivere nel forum
8 risposte