Aggiornamento sottomaschera

di il
10 risposte

Aggiornamento sottomaschera

Nel mio database access ho creato una maschera (Funz RelDir), con una casella combinata (Modello) che in seguito alla scelta dovrebbe aggiornare una sottomaschera (Modelli), poiché ha come origine un filtro come query in cui un campo ha come criterio il valore della suddetta casella combinata.

Ho provato con l'evento dopo aggiornamento :

Forms![Funz RelDir].[Modelli].Form.Requery

e con 

Me.Modelli.Form.Requery

ma non succede nulla.

10 Risposte

  • Re: Aggiornamento sottomaschera

    Fai vedere SQL della query.

  • Re: Aggiornamento sottomaschera

    16/04/2024 - Stifone ha scritto:


    Fai vedere SQL della query.

    SELECT Modelli.IDMod, Modelli.Tipico, Modelli.IDDipMod, *
    FROM Modelli
    WHERE (((Modelli.IDMod)=[Maschere]![Funz RelDir]![Modello]));
    
  • Re: Aggiornamento sottomaschera

    Non devi fare il requery. Devi ricorrere al metodo filter applicato alla sottomaschera.

  • Re: Aggiornamento sottomaschera

    Mostra anche SQL dell'Origine record della casella combinata Modello, perchè le righe di codice che hai scritto nel primo post dovrebbero entrambe funzionare anche se sarebbe preferibile ricorrere al metodo filter.

  • Re: Aggiornamento sottomaschera

    E poi quel predicato SQL come lo usi? Se ricorri al metodo requery senza aver portato un' aggiornamento alla query, non cambierà nulla.

  • Re: Aggiornamento sottomaschera

    Nel requery lo prende da “WHERE (((Modelli.IDMod)=[Maschere]![Funz RelDir]![Modello]));”, naturalmente sempre che la casella combinata si chiami Modello e che venga restituito l'IDMod.

    Un consiglio, sarebbe bene chiamare i controlli con il nome del campo preceduto da un suffisso tipo cboIDMod in modo che da codice si capisce al volo che cosa si sta facendo.

  • Re: Aggiornamento sottomaschera

    16/04/2024 - Azucarea ha scritto:


    Nel mio database access ho creato una maschera (Funz RelDir), con una casella combinata (Modello) che in seguito alla scelta dovrebbe aggiornare una sottomaschera (Modelli), poiché ha come origine un filtro come query in cui un campo ha come criterio il valore della suddetta casella combinata.

    Sperando di aver capito il problema, prova a leggere qui

    Casella combinata Trova un record nella maschera basato sul valore selezionato nella casella combinata.docx

  • Re: Aggiornamento sottomaschera

    17/04/2024 - Stifone ha scritto:


    Mostra anche SQL dell'Origine record della casella combinata Modello, perchè le righe di codice che hai scritto nel primo post dovrebbero entrambe funzionare anche se sarebbe preferibile ricorrere al metodo filter.

    SELECT *
    FROM Modelli;

    colonna associata la 1^ di 2
    Ho notato che la sottomaschera viene aggiornata col con quell'evento sulla casella combinata, perché ho messo per prova una casella sulla sottomaschera collegata al valore della casella combinata, il problema è che non tiene conto di questo valore associato sulla query di origine della sottomaschera

  • Re: Aggiornamento sottomaschera

    Forse postando il file si potrà veramente capire che cosa hai realizzato e forse venirne a capo.

  • Re: Aggiornamento sottomaschera

    16/04/2024 - Azucarea ha scritto:


    SELECT Modelli.IDMod, Modelli.Tipico, Modelli.IDDipMod, * FROM Modelli WHERE (((Modelli.IDMod)=[Maschere]![Funz RelDir]![Modello]));

    scrivila così che ha lo stesso valore:

    SELECT  * 

    FROM Modelli 

    WHERE (((Modelli.IDMod)=[Maschere]![Funz RelDir]![Modello]))

    17/04/2024 - Azucarea ha scritto:


    SELECT * FROM Modelli;

    per filtrare usi la stessa fonte dati…

    la tabella da filtrare ha gli stessi campi del filtro…

    come prendere i comuni di una anagrafica clienti dal campo comune della tabella anagraficaclienti piuttosto che da una tabella comuni…

    prova a scriverla così:

    SELECT IDMod, Tipico, IDDipMod

    FROM Modelli as FiltroModelli

    tanto gli altri campi non ti servono per filtrare la prima query e almeno la tabella temporanea ha un altro nome.

    ovviamente non sapendo cosa sono tipico e iddipmod e a cosa servono…

Devi accedere o registrarti per scrivere nel forum
10 risposte