Tabelle condizionate - selezione condizionata

di il
6 risposte

Tabelle condizionate - selezione condizionata

Buongiorno a tutti,
avrei bisogno di creare campi la cui selezione dipende dal campo precedente.

Premetto che provengo da FILEMAKER sul quale ho sviluppato diversi dB. Per motivi legati all'utilizzatore finale, ora devo sviluppare un dB in Access (un dB molto semplice per ora) che riguarda gli studenti che vanno in una certa associazione e prendere libri in prestito. Quindi sto cercando di capire alcune funzioni di filemaker come si sviluppano in ambiente Access. Passo subito alla domanda.
Date 2 o più tabelle correlate, come si fa in Access a far si che la scelta delle tabelle successive sia condizionata dalle tabelle precedenti?
Passo subito a fare qualche esempio. Nella mia tabella tblStudenti ho i campi Città, Scuola, Classe e i campi Regione_residenza, Provincia_residenza e Comune_residenza. Questi dati però provengono da tabelle correlate.
Avendo altre due tabelle tblClassi (popolata all'occorrenza con i dati della città, le scuole di quella città, e le classi di quella scuola) e tblComune (popolate già dai record relativi a tutti i comuni di italia, provincia e regione, tabella peraltra disponibile sul sito dell'ISTAT) ho bisogno:
selezionata la regione di residenza, nel campo provincia posso scegliere solo una delle provincie di quella regione; selezionata la provincia solo uno dei comuni di quella regione. Se dopo aver inserito i dati, vado a modificare ad esempio la regione, con filemaker avevo uno script che "onModify" mi impostava a NULL tutti i campi successivi evitando così associazioni errate.
D'altro canto, una volta scelta la città della scuola, posso scegliere solo le scuole di quella città e di conseguenza una volta scelta la scuola, solo le classi presenti in quella scuola.
Ovviamente l'esempio didattico potevo farlo anche con MARCA AUTO, MODELLO, CILINDRATA.
Chiedo scusa se sono staro prolisso ma volevo essere il più chiaro possibile. E chiedo scusa anticipatamente se le domande sono ingenue.
Ringrazio fin d'ora chi mi vorrà aiutare, indicandomi anche qualche tutorial o sito internet (anche in inglese).
Vi saluto molto cordialmente
angelo

6 Risposte

  • Re: Tabelle condizionate - selezione condizionata

    Prova a vedere se questo esempio ti chiarisce le idee... pare anche abbastanza in linea con la tua richiesta.
    **
  • Re: Tabelle condizionate - selezione condizionata

    @Alex ha scritto:


    Prova a vedere se questo esempio ti chiarisce le idee... pare anche abbastanza in linea con la tua richiesta.
    **
    E' proprio quello che mi serve. Ma non ho la più pallida idea di come tu lo abbia realizzato e quindi come poterlo replicare in Access per le mie esigenze. Su filemaker si andava a lavorare sulle relazioni multiple e liste filtrate. Qui non so come muovermi.
    Grazie lo stesso
    angelo
  • Re: Tabelle condizionate - selezione condizionata

    Beh che tu debba studiare mi pare il minimo... hai la fortuna di avere un esempio da sezionare e studiare a fondo... vedrai che non è difficile.
    Di come facevi con filemaker credo conti a pochissimo... dal momento che ora vuoi usare Access devi studiare Access.
  • Re: Tabelle condizionate - selezione condizionata

    @Alex ha scritto:


    Beh che tu debba studiare mi pare il minimo... hai la fortuna di avere un esempio da sezionare e studiare a fondo... vedrai che non è difficile.
    Di come facevi con filemaker credo conti a pochissimo... dal momento che ora vuoi usare Access devi studiare Access.

    Gentilissimo e pazientissimo Alex, sto seguendo un (lunghissimo) tutorial su YouTube, ma si perdono in dettagli per me inutili e ridondanti. Potresti fornirmi qualche keyword per cercare su google quello che mi serve? Con "conditional relationship" e "related table" ho trovato ben poco ahimè....
    Sto provando anche a vivisezionare il tuo esempio; ma temo di aver capito che bisogna mettere mano al codice. O sbaglio? Lo so che non ti può fregar di meno di FM ma lì era tutto object oriented e gli Script che si usano sono molto human friendly.
    Abbi pietà di me.
    con stima
    angelo
  • Re: Tabelle condizionate - selezione condizionata

    Guarda che per fare 2 ComboBox definite in Cascata, ovvero in cui la 2° dipende dalla selezione della 1° serve solo 1 istruzione di codice che forza l'aggiornamento della query sulla seconda combo in seguito alla selezione della 1°...
    Mi pare una cosa anche ovvia...!
    Ti basta controllare le istruzioni SQL delle 2 ComboBox e vedere che su AfterUpdate della 1° viene forzato il Requery della 2°...
    Il predicato SQL della 2° ha un Patrametro che preleva il valore dalla Combo(1)...

    Mi pare non serva molto.
    Per la parte DB invece che sia SQLServer o JET o FM non può e non deve cambiare nulla.

    P.S. anche Access è OOP anche se con qualche limite relativo ma è così.
  • Re: Tabelle condizionate - selezione condizionata

    @Alex ha scritto:


    Guarda che per fare 2 ComboBox definite in Cascata, ovvero in cui la 2° dipende dalla selezione della 1° serve solo 1 istruzione di codice che forza l'aggiornamento della query sulla seconda combo in seguito alla selezione della 1°...
    Mi pare una cosa anche ovvia...!
    Ti basta controllare le istruzioni SQL delle 2 ComboBox e vedere che su AfterUpdate della 1° viene forzato il Requery della 2°...
    Il predicato SQL della 2° ha un Patrametro che preleva il valore dalla Combo(1)...

    Mi pare non serva molto.
    Per la parte DB invece che sia SQLServer o JET o FM non può e non deve cambiare nulla.

    P.S. anche Access è OOP anche se con qualche limite relativo ma è così.
    Ah.. Ecco.. Era l'AfterUpdate che mi mancava. Ora è chiaro ! È' lo stesso principio di FM nel quale il tutto avviene al di fuori dell'SQL. Grazie. Non mi resta che fare un po' di reverse engineering sul tuo esempio. Mi metto subito al lavoro.
    Grazie di cuore.

    Angelo
Devi accedere o registrarti per scrivere nel forum
6 risposte