Visualizzare più record appartenenti ad un campo

di il
3 risposte

Visualizzare più record appartenenti ad un campo

Buonasera a tutti.
E' il mio primo post e non vorrei sbagliare già alla prima!
Mi scuso se il corpo del msg è sbagliato o irriti qualcuno...spero proprio di no.
Vi espongo il mio problemino.

Sto realizzando un database per l'azienda per cui lavoro.
Ho una tabella chiamata "Elenco Aziende" dove ci sono i campi ID (chiave primaria con duplicati non ammessi), Ragione Sociale, Indirizzo, ecc. ecc. e una tabella chiamata "Gestione Contatti Aziende" formata da tre campi Ragione Sociale, Data Contatto e Contenuto Contatto (in quest'ultima tabella non ho inserito nè ID nè una chiave primaria e la relazione che ho stabilito è tra il campo Ragione Sociale della tabella "Elenco Aziende" e il campo "Ragione Sociale" della tabella "Gestione Contatti Aziende"...vi scrivo tutto perchè in ogni momento potrebbe esserci il mio errore).
Io vorrei creare una maschera che mi permetta di scorrere l'elenco delle aziende e mi visualizzi tutte le date dei contatti e il contenuto dei contatti che la mia azienda ha avuto con l'azienda cliente.
Faccio un esempio praticissimo.

Tabella "Elenco Aziende"
ID (Chiave Primaria) :1
Ragione Sociale: Pippo SpA
ecc. ecc.

Tabella "Gestione Contatti Aziende"

Ragione Sociale: Pippo SpA Data Contatto: 01/01/2013 Contenuto Contatto: Auguri di buon anno
Ragione Sociale: Pippo SpA Data Contatto: 31/03/2013 Contenuto Contatto: Auguri di Buona Pasqua


In pratica nella maschera che vorrei realizzare vorrei veder visualizzati tutti i contatti avuti per l'azienda Pippo SpA

Ad esempio

NOME AZIENDA : Pippo SpA (ragione Sociale)

Data Contatto : 01/01/2013 Contenuto contatto : Auguri di buon anno
Data Contatto: 31/03/2013 Contenuto Contatto : Auguri di buona pasqua

Il problema è che non so quali oggetti utilizzare e se ho formattato correttamente i campi e stabilito le giuste relazioni.
Chiedo un piccolo aiuto e nel frattempo vi ringrazio per l'enorme collaborazione e disponibilità

Nicola

3 Risposte

  • Re: Visualizzare più record appartenenti ad un campo

    Sei stato abbastanza chiaro.
    Generalmente in una relazione uno-a-molti si preferisce unire il campo ID che deve apparire anche nella tabella figlia (Gestione Contatti Aziende), ma Numerico. Nel tuo caso specifico, non hai sbagliato, ti consiglio però di impostare al campo [Elenco Aziende].[Ragione Sociale] la proprietà Indicizzato: Sì (duplicati non ammessi). In questo modo rendi il campo univoco, proprio come accade per i campi ID, mentre la relazione uno-a-molti viene stabilita fra 2 campi di tipo Testo (anzichè Numerico). Ti consiglio di controllare che la relazione uno-a-molti abbia la spunta su "Applica integrità referenziale".
    Dopo aver ben fissato la relazione uno-a-molti, quello che devi costruire è una maschera/sottomaschera. Esiste una comoda procedura guidata per costruirla, leggi anche la guida in linea, che ti porterà al risultato finale di vedere in alto una Azienda per volta, in basso tutti i record Gestione Contatti che si riferiscono alla sola azienda che si vede in alto.
    In alternativa a maschera/sottomaschera esiste una versione più immediata, ma meno elegante, che consiste nel lavorare direttamente con le tabelle, mostrando il "Foglio dati secondario" e scegliendo per "Collega campi secondari" e "Collega campi master" proprio il campo [Ragione Sociale].
  • Re: Visualizzare più record appartenenti ad un campo

    Una riflessione sulle PK e FK non Numeriche da ID(Counter).

    Nell'immaginario collettivo... una PK è una PK... ma chi ha ideato gli INDICI progressivi un minimo di ragionamento lo ha fatto... non credete...?

    Ora vi siete chiesti perchè nonostante sia FUNZIONANTE usare i campi come RAGIONESOCIALE(Testo) come PK un manipolo di fisici informatici abbia pensato che gli indici Numerici fossero meglio...?

    Le ragioni sono molte, ma ve ne espongo solo 2 per semplicità.
    Un Campo testo è più INGOMBRANTE e meno ottimizzato nella Ricerca ed Indicizzazione, e già questo basterebbe...
    Usare in questo caso il campo RAGIONESOCIALE come PK e FK è assurdo...
    Se l'azienda cambia Ragione sociale... che succede...?
    Crei una NUOVA AZIENDA...?(Perdendo tutto lo storico...?)

    E' come dire che è normale cambiare la PK...!

    Il campo PK è più sacro della comunione, io sono blasfemo, e deve essere ritenuto UNIVOCO e non MODIFICABILE...!
    Per questo motivo si usano i campi TESTO a DESCRIZIONE aggiuntiva e si lasciano i campi PK(Indici Numerici) a fare lo sporco lavoro.

    Ultimo ma non ultimo, un'azienda non può avere la RAGIONE SOCIALE COME CAMPO UNIVOCO... vi è mai capitato di vedere NOMI UGUALI di aziende...?
    Come per i cristiani, esiste il C.F. per le aziende si usa la P.IVA eventualmente... come Campo UNIVOCO, che non è una PK, ma non un Testo descrittivo...

    Ognuno poi fa come meglio crede, l'importante è conoscere gli aspetti tecnici per non banalizzarli.
  • Re: Visualizzare più record appartenenti ad un campo

    Quoto Alex 100%.
Devi accedere o registrarti per scrivere nel forum
3 risposte