Unico elenco valori per più caselle combinate

di il
8 risposte

Unico elenco valori per più caselle combinate

Buongiorno,
ho iniziato da poco ad usare Access e vi chiedo un aiuto riguardo a una serie di relazioni che non riesco ad impostare. Non ho trovato discussioni simili tra quelle già avviate.
Ho 3 maschere (tre tabelle) ognuna delle quali contiene una casella combinata legata ad un elenco valori che modifico di volta in volta, con possibilità di scelta multipla.
Vorrei che l'elenco valori da cui seleziono i dati fosse unico per tutte e tre le caselle combinate e che la "tendina" di valori si aggiornasse automaticamente in tutte e tre le maschere ogni volta che modifico l'elenco da una casella combinata delle tre.
Come posso fare?
Grazie mille dell'aiuto.

8 Risposte

  • Re: Unico elenco valori per più caselle combinate

    Benvenuta nel forum.
    Potresti dare una descrizione completa dell'intero scenario?
    - nomi propri delle maschere (immagino omonime delle tabelle)
    - nomi dei campi che entrano in gioco
    - scopo della tua operazione

    ...scusa, rileggendo meglio, forse non devi avere 3 "Tipo origine riga: Elenco valori", ma "Tabella/query" per ogni casella combinata. Hai bisogno di una tabella con i valori che attualmente risultano nei singoli Elenco valori. Fai puntare le tue caselle combinate sulla tabella (Origine riga). Poi, se hai fatto per bene le relazioni uno-a-molti, l'aggiornamento delle liste avviene automaticamente.
  • Re: Unico elenco valori per più caselle combinate

    Grazie mille della risposta.
    Sospettavo che una soluzione potesse essere questa. Il problema è che la lista di valori che dovrei inserire nella tabella è una lista in-itinere, a cui aggiungo valori mano a mano che compilo record nelle tre maschere. MI spiego meglio:
    Le tre tabelle (maschere) si chiamano: "critica contemporanea", "critica storica" e "fonti archivistiche ". La casella combinata che appare in tutte e tre le maschere si chiama "nomi" e serve per elencare tutti i nomi di personaggi citati o dalla critica contemporanea o dalla critica storica o nelle fonti archivistiche. Questa lista di nomi io ancora non ce l'ho, la creo e la aggiorno mano a mano che incontro i nomi negli scritti. Inoltre mi serve il dato incrociato tra le tre tabelle, per es.: Da quali autori moderni è citato Pinco Palla? e da quali autori antichi? e in quali documenti? In più, considerando che si tratta di nomi di personaggi di epoca rinascimentale, spesso vengono scritti in maniere diverse: Pinco Palla può anche essere Pinco de Pallis o Pinco semplicemente. Se ho una lista di valori unica tra le tre maschere riesco ad associare il nome univoco senza fare doppioni. Ma gli aggiornamenti alla lista vorrei farli dalle tre maschere con cui lavoro, perchè altrimenti dovrei ogni volta aprire la tabella "nomi", aggiornare l'elenco, aprire ogni maschera e cercare il nome inserito nella tendina.
    Non so se mi sono spiegata, temo di no... ti ringrazio comunque per l'aiuto.
  • Re: Unico elenco valori per più caselle combinate

    VeronicaBal ha scritto:


    Le tre tabelle (maschere) si chiamano: "critica contemporanea", "critica storica" e "fonti archivistiche ".
    Il sospetto mi era venuto, ma non ho osato. Temo che le prime 2 tabelle dicano (in termini tecnici e di normalizzazione) le stesse cose. Forse anche la 3a tabella. Se 2 o più tabelle hanno gli stessi campi, devono diventare una sola. Poi si aggiunge un campo di discriminazione che stabilisce se si tratta di CriticaContemporanea o CriticaStorica.

    VeronicaBal ha scritto:


    Questa lista di nomi io ancora non ce l'ho, la creo e la aggiorno mano a mano che incontro i nomi negli scritti.
    Non è un problema. Si può lavorare anche così. Con opportuni giochi di maschere si decide di aprire la maschera di livello gerarchico superiore (madre) per inserire una nuova Persona, per poi aggiornare la maschera "figlia".

    VeronicaBal ha scritto:


    Inoltre mi serve il dato incrociato tra le tre tabelle, per es.: Da quali autori moderni è citato Pinco Palla? e da quali autori antichi? e in quali documenti?
    Questo aspetto va osservato con più calma.

    VeronicaBal ha scritto:


    In più, considerando che si tratta di nomi di personaggi di epoca rinascimentale, spesso vengono scritti in maniere diverse: Pinco Palla può anche essere Pinco de Pallis o Pinco semplicemente.
    Comprendo bene questo aspetto ed effettivamente l'aiuto sulla digitazione dei primi caratteri (quindi casella combinata) è un'ottima strategia.
  • Re: Unico elenco valori per più caselle combinate

    Nessun problema per le tabelle, le prime due possono diventare una sola. La terza invece è sostanzialmente diversa, anche se sono presenti alcuni (pochi) campi uguali (per es. appunto "nomi" oppure "luoghi"). Può rimanere separata dall'altra?
    Ho provato ad associare alla casella combinata una tabella invece che un elenco e a mettere il nome di una delle maschere alla voce "maschera di modifica voci di elenco" ma non riesco ad aggiornare l'elenco "madre" nella tabella direttamente dalla maschera. La sto facendo troppo facile?
  • Re: Unico elenco valori per più caselle combinate

    VeronicaBal ha scritto:


    La sto facendo troppo facile?
    Poco poco sì. Occorre ragionare per piccoli passi e non dire troppe cose tutte insieme. Tieni presente che noi altri utenti stiamo da quest'altra parte e non sappiamo cosa hai combinato tu da quella. Piano piano consiglio di:
    - dire di cosa parla il tuo database
    - elenca tutte le tue tabelle
    - dire tutti i nomi dei campi di ogni tabella, indicando la chiave primaria
    - le relazioni
    - poi cerchiamo di capire come meglio muoverci
  • Re: Unico elenco valori per più caselle combinate

    Immaginavo! Ok, grazie, cercherò di spiegare tutto a breve.
  • Re: Unico elenco valori per più caselle combinate

    Scusate se mi inserisco, nella discussione, la soluzione potrebbe essere una tabella con i nomi che viene riempita da una query di accodamento.

    Mi spiego meglio, quando lavori in una delle tre maschere, maschera A, hai la casella combinata con la lista dei nomi già utilizzati, come Pinco Palla, se devi inserire Pinco Palla lo scegli e basta, se il nome é nuovo tipo Paolo Bianchi, lo digiti e lo memorizzi nel campo nomeA.
    La casella combinata é riferita al campo nometutti di una tabella a parte, che chiameremo Nomi.
    La maschera B e la maschera C avranno a loro volta i campi nomeB e nomeC e la casella combinata attingerrá sempre a nometutti di Nomi.

    All'apertura di ciascuna maschera possono essere lanciate in automatico tre query di accodamento che accodamento che accodano nomeA di tabellaA, nomeB di tabellaB e nomeC di tabellaC. Per evitare ridondanza di dati può essere creata una query di cancellazione che pulisce la tabella prima degli accodamenti. Ciascuna query viene fatta in modo che Pinco Palla sia accodato una sola volta per query.

    A questo punto se chiudo la maschera A e apro la B, l'apertura avrà come evento l'accodamento e Paolo Bianchi comparirà nell'elenco dei nomi.
    Il gruppo di query può essere lanciato anche con un pulsante, se ci occorre aggiornare la lista senza chiudere e aprire alcuna maschera

    Possiamo accodare anche altri dati che visualizziamo nella casella combinata senza poi memorizzarli nel campo, tipo accanto a Pinco Palla nella tendina della casella combinata posso leggere cs oppure cc oppure fa che stanno per critica storica, critica contemporanea o fonti archivistiche.

    Io uso molto le query di cancellazione e accodamento, anche con migliaia di dati e non ho problemi. Ovviamente va disabilitata la richiesta di conferma. Nel tuo caso, una volta scritto il codice, lavoreresti passando da una maschera all'altra dimenticando che puliscono e aggiornano la tua tabella.

    Spero di essere stato utile e di aver capito il problema.
  • Re: Unico elenco valori per più caselle combinate

    Per Operator: Trovo il ragionamento troppo macchinoso/farraginoso. Io aspetterei una descrizione completa dell'intero scenario tabelle. Qualcosa mi dice che va normalizzata la struttura per poi ottimizzare il gioco delle caselle combinate e delle maschere/tabelle da aggiornare di conseguenza.
Devi accedere o registrarti per scrivere nel forum
8 risposte