30/03/2024 - A.TIRANNA ha scritto:
Riguardo al requery della sottomaschera era già nel codice fin dall'inizio.
Ciao, buongiorno…
quando vuoi ritornare a rivedere tutto nella subform, come se fosse la prima volta che apri la form e subform, devi ripristinare la situazione iniziale (di inizializzazione), dove potrai nuovamente selezionare per anno e per mese.
In tal caso si dovrà:
- eliminare (ripulire) tutti i filtri della subform
- sia quelli impostati nelle singole colonne della subform
- sia quelli impostati e provenienti dalla form
- quando hai ripulito/eliminato tutti i filtri nel recordset della subform, allora:
- eseguire la requery della subform
- reimpostare i due filtri della form per la subform (se necessario)
Con questi due semplici passaggi si ritorna ad avere la visualizzazione della subform (come da situazione iniziale) che terrà conto solo dei due filtri passati dalla form alla subform. (quindi come se fosse la prima volta che si apre la form con la sua subform)
Se non riesci ad ottenere tale risultato, sarà necessario capire se il codice fa qualcosa che non deve fare. Mettere sotto debug il processo e cercare di capire se esistono eventi in altre parti di codice che interfferiscono.
30/03/2024 - A.TIRANNA ha scritto:
Nessuno di voi ha mai avuto un problema simile? Ma credo di aver capito che nemmeno una situazione come quella descritta da me sia stata utilizzata. Sottomaschera in visualizzazione foglio dati (di cui vengono utilizzati i filtri campo) inserita in una maschera principale a schede a cui non è collegata da dati in comune.
Quello che hai realizzato è un processo comune e diffuso. Nulla di strano avere una Form che non avendo un prorpio recordset, comanda e filtra una SubForm. Non c'è nulla di anomalo rispetto ad una SubForm collegata (sincronizzata) al recordset di una Form con le relative chiavi.
Quindi… o hai qualche processo che interferisce nel refresh della subform nel momento in cui vengono ripuliti i suio filtri, oppure non vengono correttamente ripuliti i sudetti filtri e le requery e refresh non produco l'effetto desiderato.
Questa è l'unica analisi per diagnosticare il problema che riscontri… pertanto le cose da fare sono molto semplici:
- verificare se i filtri applicati nelle colonne della subform vengono ripuliti/inizializzati a dovere
- verificare che non intervangano altre parti di codice che interferiscono in questo flusso di lavoro
Se una lettura del codice non è sufficiente a capire dove si annida il problema, allora eseguire e seguire passo passo il flusso del codice interessato a tali funzioni. Verificare con il debug i valori dei filtri della subform, come vengono inizializzati, quali eventi e se esistono eventi che si verificano nel processo, ecc.eccc… Non c'è molto altro o cose particolari da fare. ;-)
Buon lavoro e auguri di buone feste
Ciaooo ;-)