Troppi ID in tabella/maschera

di il
2 risposte

Troppi ID in tabella/maschera

Ciao. ho un problema che le mie capacità non risolvono (sono all'inizio della comprensione di access 2007). Ho una tabella clienti e una tabella acquisti; la prima ha IDcliente, cognome, ecc ecc; la seconda ha IDacquisto, data, oggetto, valore e IDcliente. Ho creato la relazione uno-a-molti, mascheraCLIENTI e sotto-mascheraACQUISTI, ma in maschera CLIENTI ho diversi record uguali: ad es. (dati inventati) il sig. Rossi Mario ha acquistato una vite e poi un cacciavite.
io ho 2 record: RECORD1: (maschera) ID8 Mario Rossi (sottomaschera) 01/01/2001 vite €0,10 - 01/02/2001 cacciavite €7,00
RECORD2 successivo: (maschera) ID8 Mario Rossi (sottomaschera) 01/01/2001 vite €0,10 - 01/02/2001 cacciavite €7,00
UGUALI!!!! e questo si ripete 4 o 5 o 6 volte se il cliente ha fatto 4 o 5 o 6 acquisti. Credo dipenda dal fatto che in tabella ACQUISTI ho IDacquisto diversi (ID55 - ID56), date (01/01/2001 - 01/02/2001), oggetti (vite - cacciavite) e valori (0,10 - 7,00) differenti, ma IDcliente uguale (ID8 - ID8). Che casino!, ci capite?
Cosa vorrei? Una maschera -non ripetuta- per ogni cliente con sottomaschera di tutti i suoi acquisti.
Sicuramente potrete aiutarmi, scusate il casino ma non sono pratico neanche per i forum.
Grazie e un saluto a tutti.

2 Risposte

  • Re: Troppi ID in tabella/maschera

    Se la maschera principale è basata sui dati del cliente (IDcliente, cognome, ecc.) in relazione 1-M con la tabella acquisti (IDacquisto, data, oggetto, valore, IDcliente) ove questi ultimi sono presentati in una sotto-maschera, stabilito il campo chiave comune (IDcliente) in master e secondario, automaticamente avrai i dati correttamente correlati: solo su i due livelli delle tabelle interessate (clienti - acquisti).
    Qualora si abbiano più acquisti nel tempo, per lo stesso cliente, e si vogliano identificare le varie acquisizioni vi deve essere un identificativo che contraddistingua ciò in tal caso, magari, rivedere la soluzione adottata ad esempio con una maschera per i dati del cliente, una sotto-maschera per i dati di quando effettuato l'acquisto (che potrebbe essere i dati di intestazione fattura, con numero, data, ecc)) ed infine una sotto-sotto-maschera con i specifici oggetti acquisiti (in relazione con la precedente, in modo da avere tre tabelle e relativi livelli di gerarchia).
    Da tenere presente che qualora il campo IDacqusto sia una chiave primaria univoca i dati saranno visti singolarmente; mentre se i duplicati sono ammessi si avranno valori plurimi.
    La soluzione è quindi legata alla struttura implementata.
    Ti consiglio di rivedere le informazioni di carattere generale, come:
    https://support.microsoft.com/it-it/office/creare-una-maschera-che-contiene-una-sottomaschera-una-maschera-uno-a-molti-ddf3822f-8aba-49cb-831a-1e74d6f5f06b
    https://www.youtube.com/watch?v=YRqAMlPlH6
  • Re: Troppi ID in tabella/maschera

    Intanto 1000 grazie, Willy. leggerò molto bene quanto scrivi (sono un niubbo) e quanto ai link. avevo già visto il video e un ripasso non fa male.
Devi accedere o registrarti per scrivere nel forum
2 risposte