Aggiornamento caselle combinate a cascata [Risolto]

di Anonimizzato21562 il
33 risposte
Buonasera a tutti, mi sono arenato su un problema da qualche giorno e avrei bisogno di un vostro gentile aiuto per capire dove sbaglio. Premetto che questo è il mio primo database di access….
Quello che vorrei fare è, tramite Maschera, inserire una persona (tab Personale) e cercare con 3 caselle combinate a cascata (Tab Ammnistrazioni-Direzioni-Uffici che sono elementi “a catena”) l’ufficio di appartenenza e memorizzarlo nella tab personale. Una volta fatto questo, se scorro tra i vari record del personale devo poter vedere nelle caselle combinate l’amministrazione, la direzione e l’ufficio relativo ad ogni persona.
Ho provato a impostare il tutto, ma il mio problema è che quando scorro tra i vari record del personale le caselle combinate non si aggiornato con i dati corretti.
Il mio database è il seguente:

TAB AMMINISTRAZIONI
ID_AMNI
SiglaAmni
NomeAmni

TABELLA DIREZIONI GENERALI
ID_DG
Id_amni
SiglaDg
NomeDg

TABELLA UFFICI
ID_UFFICI
Id_dg
SiglaUff
NomeUFF

TABELLA PERSONALE
ID_PERSONALE
Id_ufficio
Nome
Cognome

Relazione 1-a-molti tra Tab Amministrazioni (ID_AMNI) e Tab Direzioni (id_amni)
Relazione 1-a-molti tra Tab Direzioni (ID_DG) e Tab Uffici (id_dg)
Relazione 1-a-molti tra Tab Uffici (ID_UFFICI) e Tab Personale (id_ufficio)
Per ogni relazione ho applicato l’integrità referenziale
(In pratica una Amministrazione è composta da più Direzioni e una Direzione è composta da più Uffici. Una persona fa parte di un solo ufficio e in un Ufficio possono lavorare più persone.)

Ho creato una Maschera PERSONALE SCHEDE dove all’interno ho inserito vari campi del Personale e:
    1) Caselle combinata Amministrazione (cboAmni): origine riga Tabella Amministrazione con compi raggruppati; evento dopo aggiornamento: cboDg.Requery
      2) Casella combinata Direzioni (cboDg): origine riga Query Uffici dove ho messo tutti i campi delle 3 tabelle Uffici, Direzioni e Amministrazioni; Criteri sul campo Amministrazioni_ID_Amni: [Maschere]![PERSONALE SCHEDE]![cboAmni]; evento dopo aggiornamento: CboUff.Requery
        3) Casella combinata Uffici (cboUff): origine riga stessa Query Uffici; Criteri sul campo DG_ID_DG: [Forms]![PERSONALE SCHEDE]![cboDg]; Origine Controllo: id_ufficio della tabella Personale

        Per qualche miracolo funziona la ricerca sulle 3 caselle combinate, ma poi quando vado a scorrere nella maschera i vari record del personale le info nelle caselle combinate non si aggiornano.
        Help me please!!
        Grazie
        Allegati:
        21562_cf9b956cd182b3f5d36d4a1ea279424c.jpg
        21562_cf9b956cd182b3f5d36d4a1ea279424c.jpg

        33 Risposte

        • A naso ed a quest'ora nella tab personale non vedo le chiavi esterne id_anni e ID_dg per cui le relative combo non hanno nessun origine controllo.
          Saluti
        • Buongiorno Gianni55,
          nonostante l'ora hai visto bene, ma pensavo che bastava inserire nella tab personale solo id_ufficio che si portava dietro anche le info delle Direzioni e Amministrazioni.
          Ora provo come dici tu.
          Grazie
        • Ho provato a inserire nella tab personale le chiavi esterne id_amni e id_ufficio. Nelle relative combo le ho impostate come origine di controllo.
          Tutto ok nell'inserimento dei valori, ma il problema rimane nella visualizzazione, vale a dire quando scorro nella maschera i vari record del personale nella cboAmni visualizzo i dati corretti, mentre nelle altre due, cbo_Dg e cbo_ufficio i dati non vengono visualizzati, o meglio, a volte si a volte no.
          Come posso risolvere?
          Grazie
        • Mentre nelle altre due, cbo_Dg e cbo_ufficio i dati non vengono visualizzati, o meglio, a volte si a volte no
          Cosa vuol dire a volte si a volte no?
          quando si e quando no?
          nella "Tab Personale " i dati li vedi tutti o alcuni si altri no, se è cosi quali non vedi?
          Le chiavi esterne hanno un formato Numero?
          la colonna associata nella combo è la 1,giusto?
          saluti
        • E' proprio questo che non riesco a spiegarmi. Quando visualizzo i dati del personale dalla maschera, la cbo_amni è la sola che visualizza tutti i dati corretti (la combo ha come origine riga la Tab Amministrazioni).
          Le altre 2 combo non so perchè ma non visualizzano sempre i dati (le combo hanno come origine riga la Query Uffici dove ho messo tutti i campi delle 3 tabelle Uffici, Direzioni e Amministrazioni) e non so dirti quando si e quando no. Ho solo notato che per la prima Amministrazione (inserita nella Tab Amministrazioni) riesco a vedere sia l'amministrazione che la Direzione ma non l'ufficio. Dalla 2° in poi no. Forse può dipendere dai criteri che ho messo nelle combo o le routine dopo aggiornamento?

          Per le altre domande nella Tab Personale i dati li vedo tutti, le chiavi esterne hanno formato Numero e la colonna associata nelle combo è la 1°.
        • Dopo varie prove...posso rispondere alla domanda di Gianni55 sul quando si e quando no. Premesso che le info nella combo Amni è l'unica che visualizza sempre i dati corretti, le altre 2 combo "a cascata" Dg e Ufficio sembrano dipendere dal primo record che viene visualizzato.
          Nel senso che se il primo record appartiene all'Amministrazione A, nella visualizzazione dei record successivi la combo Dg visualizza i dati solo se appartiene all'Amministrazione A, e a seguire la combo Ufficio visualizza i dati solo se appartiene all'Amministrazione A e alla Dg A, altrimenti sono entrambe vuote.
          Se infatti cambio il primo record e metto i dati di un'altra amministrazione, diciamo B, le altre 2 combo visualizzano i record solo se appartengono all'Amministrazione B.
          Questo problema si presenta solo quando vado a scorrere i vari record nella Maschera. I record nella Tab Personale sono tutti corretti.
          Da cosa può dipendere, come posso risolvere?
          Grazie
        • Scusa Ugna oggi è stata una giornataccia magari mi hai visto connesso ma sto guardando il forum solo ora.
          Allora come è sto fatto che nella Tab Personale gli id_Ammi e Id_dg ed id_Ufficio sono presenti tutte e tre, Giusto
          Nel senso che se il primo record appartiene all'Amministrazione A, nella visualizzazione dei record successivi la combo Dg visualizza i dati solo se appartiene all'Amministrazione A, e a seguire la combo Ufficio visualizza i dati solo se appartiene all'Amministrazione A e alla Dg A, altrimenti sono entrambe vuote.
          Questo è normalissimo "a cascata" vuole dire proprio questo.
          Perchè dici in tab Personale ci sono tutti e 3 id delle combo e poi in visualizzazione maschera non ci sono.
          questo accade quando inserisci un nuovo record o quando li vedi in maschera?
          Fai una prova carica un record nuovo valorizza le tre combo nella maschera
          chiudi la maschera
          apri la tabella e vedi se itre campi sono valorizzati
          riapri la maschera e vedi se quel record mostra le tre combo valorizzate
          E' una prova stupida che serve a me per capire.
          Se infatti cambio il primo record e metto i dati di un'altra amministrazione, diciamo B, le altre 2 combo visualizzano i record solo se appartengono all'Amministrazione B.
          questo è normalissimo funziona coì
          Fammi sapere.
        • Uffici, Direzioni e Amministrazioni) e non so dirti quando si e quando no. Ho solo notato che per la prima Amministrazione (inserita nella Tab Amministrazioni) riesco a vedere sia l'amministrazione che la Direzione ma non l'ufficio. Dalla 2° in poi no. Forse può dipendere dai criteri che ho messo nelle combo o le routine dopo aggiornamento?
          Quello che dici qui mi inquieta:
          ma sono queste le combo che non vedi?
          OGNI Ufficio deve avere OBBLIGATORIAMENTE una direzioneGenerale ed un'Amministrazione
          questo vuole dire a cascata.
        • Ciao Gianni55....posso solo ringraziarti per il tuo interessamento!!!
          Qualche precisazione. Le combo a cascata funzionano benissimo quando inserisco un nuovo record (visualizzazione selettiva a cascata) e nella Tab Personale gli id vengono memorizzati correttamente.
          Il problema nasce quando dalla Maschera vado a visualizzare i vari record del personale (è la stessa maschera che uso per l'inserimento dei record e che ora vado a scorrere per ogni id del personale)...è qui che le 3 combo si comportano male, anzi le 2 combo perchè quella dell'Amministrazione è ok. Ed è qui che ho notato lo strano comportamento...nel senso che quando scorro i vari record del personale, se il primo in elenco appartiene all'Amministrazione A, allora nelle combo visualizzo i dati corretti solo del personale che appartiene all'Amministrazione A.
          Faccio un esempio di quello che succede nella Maschera quando scorro i record del personale: nel record 1 del personale ho Amministrazione A, Direzione B, Ufficio C. Se il record 2 del personale appartiene all'amministrazione A, la combo Dg visualizza le info corrette (direzione A, B, C e così via) altrimenti è vuota. Se il 2° record appartiene sia all'Amministrazione A che alla Direzione B (come il primo record) allora anche la combo Ufficio visualizza i dati corretti (ufficio A, B, C ...), altrimenti è vuota.
          Ho fatto la prova che mi dicevi. Carico un nuovo record ed è tutto ok nella tabella Personale con gli id valorizzati. Riapro la Maschera e quel record inserito mostra le 3 combo valorizzate solo se appartiene alla stessa Amministrazione e alla stessa DG del primo record visualizzato nella maschera, altrimenti vedo solo l'Amministrazione.
          Mi sto letteralmente impazzendo!!!
        • Ho fatto la prova che mi dicevi. Carico un nuovo record ed è tutto ok nella tabella Personale con gli id valorizzati. Riapro la Maschera e quel record inserito mostra le 3 combo valorizzate solo se appartiene alla stessa Amministrazione e alla stessa DG del primo record visualizzato nella maschera, altrimenti vedo solo l'Amministrazione.
          Mmmh...non capisco faccio un prova io.
          Potresti postare il tuo Db senza dati sensibili e ridotto all'osso, vedi se mi puoi linkare su Dropbox
        • Riguardo l'argomento "caselle combinate a cascata", hai già letto qui?
          **
        • Grazie Osvaldo, in questi giorni ho letto molti post sul forum, anche il tuo con i 2 ottimi esempi, da cui ho preso spunto per le caselle combinate a cascata.
          Per Gianni55...non sono riuscito a linkarti su Dropbox, il database lo puoi scaricare qui https://we.tl/Mt2pPq34g
          Le combo si trovano nella Maschera "PERSONALE SCHEDE" e sono in rosso. Ho caricato qualche dato per far vedere lo strano funzionamento.
          Grazie a tutti per i preziosi consigli.
        • Ciao Gianni55,
          per prima cosa ti ringrazio molto per il tuo aiuto....e in anticipo anche per le future raccomandazioni che non fanno mai male...sopratutto a uno come me che ha tutto da imparare (ex fan di excell)!!!
          Ho scaricato il tuo file, ma non so per quale motivo ma a me continua a non funzionare . Ho visto che hai fatto delle modifiche sugli eventi delle combo, ma il problema rimane. Nel senso che nella visualizzazione nella Maschera, per Tizio (1°record) le combo visualizzano tutti i dati, per Caio (2° record) vedo solo i dati della cboAmni e le altre vuote e così uguale fino ad Andrea che facendo parte della stessa Amm ha tutte le combo valorizzate.
        Devi accedere o registrarti per scrivere nel forum
        33 risposte