Access 2013 - Doppia Maschera di selezione e inserimento

di il
12 risposte

Access 2013 - Doppia Maschera di selezione e inserimento

Buongiorno a tutti, sono nuovo di questo forum ed avrei bisogno di un aiuto; premesso che non sono espertissimo di access avrei bisogno di capire un particolare concetto di costruzione:
Ho costruito una maschera A con i vari campi che mi aggiornano o modificano una determinata tabella A.
Questa tabella A ha ormai tanti records ed avrei bisogno che mi venissero visualizzati nella parte alta della schermata della stessa maschera A nel formato di visualizzazione tipo tabella dati (cioè che vedo i singoli records come tante righe e nelle colonne i vari campi che posso scorrere con il cursore) mentre nella parte più bassa della maschera A vorrei che mi venissero rappresentati come già lo sono i vari campi (che posso anche modificare) ma riferiti al record che ho evidenziato scorrendo i records nella parte superiore.
Scorrendo dunque con il cursore i records sopra, nella parte sotto della maschera i vari campi si modificano e si aggiornano a seconda del record selezionato.
E' una impostazione abbastanza "classica" nei database ma non riesco a capire come collegare le due rappresentazioni.
Al momento ho questa maschera A che mi dispone i campi come ho deciso io per l'inserimento (che vorrei fosse la parte bassa), poi ho creato una seconda maschera B che mi fa vedere i dati in formato "tabella" con tutti i records. (che vorrei fosse la parte alta della nuova visualizzazione).
Mi manca ora il collegamento tra le due.
Sono riuscito a creare con l'evento clic del record della tabella B l'apertura della parte bassa cioè la maschera A, ma non mi fa vedere i dati del record selezionato ma si posiziona sul record standard di apertura (che è sempre l'ultimo).
Spero di non essermi espresso con troppa confusione, e ringrazio anticipatamente chi mi può aiutare.
Grazie.
Federico.

12 Risposte

  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    Probabilmente tu vuoi costruire una maschera/sottomaschera "classica". Sarebbe bene però che tu esponga chiaramente:
    - nomi veri e propri delle tue tabelle
    - nomi propri di tutti i loro campi, con indicazione della chiave primaria
    - la/le relazione/ni
    così veniamo a capo meglio di tutto il tuo progetto.
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    Perfetto Osvaldo, ero andato proprio in confusione!!!
    Ho risolto semplicemente creando una maschera nuova e con sottomaschera quella che già avevo.

    Grazie.
    Mille.
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    Mi è rimasto però ancora un piccolo problema:
    La maschera mi propone 1 solo record e nella sottomaschera tutti i relativi dati dei campi, devo dunque scorrere i records un po' alla cieca.
    Avrei bisogno invece di vedere almeno una decina di records e nella sottomaschera i dati del record che è evidenziato sopra.
    Come fare a dire alla maschera di farmi vedere più records?
    Grazie.
    Federico
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    Federico, se la SubForm e la Form hanno lo stesso RecordSource, ovviamente per quello che hai chiesto NON devi gestire i Campi Master/Secondari, altrimenti è ovvio accada quanto hai cheisto.
    Devi però sincronizzare la navigazione Form con la SubForm e viceversa... altrimenti non avrai Visualizzato/Attivo il medesimo Record.
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    Grazie Alex,
    ho capito quasi tutto, ma scusa la mia ignoranza cosa significa quando dici "NON devi gestire i Campi Master/Secondari.."
    cosa sono e cosa devo fare o non fare?
    Grazie.
    Federico.
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    femon ha scritto:


    Grazie Alex,
    ho capito quasi tutto, ma scusa la mia ignoranza cosa significa quando dici "NON devi gestire i Campi Master/Secondari.."
    cosa sono e cosa devo fare o non fare?
    Grazie.
    Federico.
    Quando inserisci SubForm si Valorizzano le proprietà "Collega Campo Master" e "Collega Campi Secondari" dell'oggetto che Contiene la SubForm.
    Devi cancellare il valore.

    Approfitta per approfondire la teoria, senza la quale dubito si possa procedere.
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    femon ha scritto:


    La maschera mi propone 1 solo record e nella sottomaschera tutti i relativi dati dei campi
    Questa è la maschera/sottomaschera "classica". Non volevi questo?

    femon ha scritto:


    Avrei bisogno invece di vedere almeno una decina di records e nella sottomaschera i dati del record che è evidenziato sopra.
    Come fare a dire alla maschera di farmi vedere più records?
    Sfugge anche a me qualcosa del suggerimento di @Alex. È importante tuttavia che deve esserci "sincronizzazione". Un codice VBA dovrebbe farlo.
    Prova la seguente via (non so se funziona). Se si costruisce con procedura guidata una maschera con 2 sottomaschere "annidate", la sotto-sottomaschera si sincronizza con la sottomaschera (che è in foglio dati) grazie a un codice VBA che Access compila automaticamente. Prova a leggere quel codice e vedi se puoi adattarlo alla tua necessità.
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    Grazie Osvaldo,
    hai capito perfettamente quello che è il mio problema.
    Ora provo il tuo suggerimento e ti farò sapere.
    Grazie ancora
    Federico.
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    OsvaldoLaviosa ha scritto:


    femon ha scritto:


    La maschera mi propone 1 solo record e nella sottomaschera tutti i relativi dati dei campi
    Questa è la maschera/sottomaschera "classica". Non volevi questo?

    femon ha scritto:


    Avrei bisogno invece di vedere almeno una decina di records e nella sottomaschera i dati del record che è evidenziato sopra.
    Come fare a dire alla maschera di farmi vedere più records?
    Sfugge anche a me qualcosa del suggerimento di @Alex. È importante tuttavia che deve esserci "sincronizzazione". Un codice VBA dovrebbe farlo.
    Prova la seguente via (non so se funziona). Se si costruisce con procedura guidata una maschera con 2 sottomaschere "annidate", la sotto-sottomaschera si sincronizza con la sottomaschera (che è in foglio dati) grazie a un codice VBA che Access compila automaticamente. Prova a leggere quel codice e vedi se puoi adattarlo alla tua necessità.
    NOn può proprio funzionare ed il motivo è quello che esponevo prima... la valorizzazione Campi Master/Secondari che, nonostante le 2 Form siano con lo stesso ORigine il tentativo di AutoComposizione le lega, e non le sincronizza ma, Scorrendo la Form, FILTRA la SubForm... e questo non deve accadere.
    QUindi NON si deve usare la Relazione Campi Master/Secondari, ma vanno lasciate SLEGATE e si deve gestire l'evento CURRENT della Form per sincronizzare la SubForm e viceversa.
    Tutto il resto non va.
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    Scusa Alex ma sono un po' in crisi/confusione...
    Sto risolvendo il problema con 2 sottomaschere "unite" da una casella di testo.
    Ho già però un problema: quando associo all'evento click della prima sottomaschera la casella di testo per dargli il valore del campo NumFam mi dà "errore di runtime 424 necessario oggetto".
    Il debug mi rimanda al codice che a me però pare corretto:

    Private Sub Form_Click()
    Form_mask.Testo5.Value = Me.NumFam
    End Sub


    evidenziandomi in giallo tutta la riga centrale.
    Preciso che:
    la maschera che contiene la casella di testo (Testo5) si chiama "mask";
    la sottomaschera dove voglio registrare il codice nell'evento click si chiama"sottomaschera Famiglie" ma che nel codice ho sostituito con Me;
    il campo della sottomaschera da ricopiare nella casella di testo si chiama NumFam;

    Dove sbaglio?
    Grazie per l'aiuto.
    Federico
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    Aggiungo un particolare:
    quando digito la prima parte del codice non mi presenta la finestrella che aiuta a scegliere l'oggetto che si sta digitando, mentre questo accade solo nella 2a parte dopo il segno di =
    Sembrerebbe che non ha ancora riconosciuto la casella di testo della maschera mask.....
  • Re: Access 2013 - Doppia Maschera di selezione e inserimento

    femon ha scritto:


    Scusa Alex ma sono un po' in crisi/confusione...
    Sto risolvendo il problema con 2 sottomaschere "unite" da una casella di testo.
    E già questo assolutamente non solo non serve, ma è sbagliato.
    PErchè le avresti collegate con una casella di Testo...?
    Perchè hai fatto 2 Sottomaschere... quando hai già una Maschera...?

    femon ha scritto:


    Ho già però un problema: quando associo all'evento click della prima sottomaschera la casella di testo per dargli il valore del campo NumFam mi dà "errore di runtime 424 necessario oggetto".
    Il debug mi rimanda al codice che a me però pare corretto:

    Private Sub Form_Click()
    Form_mask.Testo5.Value = Me.NumFam
    End Sub


    evidenziandomi in giallo tutta la riga centrale.
    Preciso che:
    la maschera che contiene la casella di testo (Testo5) si chiama "mask";
    la sottomaschera dove voglio registrare il codice nell'evento click si chiama"sottomaschera Famiglie" ma che nel codice ho sostituito con Me;
    il campo della sottomaschera da ricopiare nella casella di testo si chiama NumFam;

    Dove sbaglio?
    Grazie per l'aiuto.
    Federico
    Questa cosa per che motivo la vorresti fare...?
    Non per SINCRONIZZARE, perchè si fa in tutt'altro modo, ... quindi...?
Devi accedere o registrarti per scrivere nel forum
12 risposte