Pulsante di comando in maschera continua

di il
5 risposte

Pulsante di comando in maschera continua

Ciao a tutti.
Penso di essere completamente rimbecillito perché non riesco a risolvere il seguente problema, che penso sia banale.
Ho una maschera in cui è inserita una sottomaschera continua, la maschera principale raccoglie dei dati di progetto (codice, descrizione, numero progetto ...). La sottomaschera raccoglie le attività di progetto filtrate con una query.
Maschera e sottomaschera sono fra loro collegate da un campo, infatti la sottomaschera filtra correttamente i dati mostrandomi solo quelli del progetto che si sta analizzando.
La sottomaschera è davvero banale, riporta la descrizione dell'attività e un pulsante con il quale, cliccandolo, il seguente codice dovrebbe cambiare 2 valori di una tabella, il codice è il seguente:

Private Sub cmdChiudi_Click()
CurrentDb.Execute "UPDATE PROG_Tbl_output_prog SET chiuso = true WHERE [id_elenco_out] = " & Me.ctlIDAtt
CurrentDb.Execute "UPDATE PROG_Tbl_output_prog SET data_eff = date() WHERE [id_elenco_out] = " & Me.ctlIDAtt
EndSub
dove:
  • PROG_Tbl_output_prog: è la tabella che contiene i dati, filtrati da una query che alimenta la sottomaschera;
  • chiuso: è un campo tipo "Sì/No";
  • id_elenco_out: è il campo chiave della stessa tabella;
  • Me.ctlIDAtt: è un controllo della sottomaschera che raccoglie il dato univoco della tabella.
Se apro la sottomaschera da sola (fuori quindi dal contesto della maschera) e clicco sul pulsante, i dati vengono aggiornati come da codice soprastante, quando la sottomaschera è aperta nella maschera principale, cliccando sul pulsante, semplicemente non succede nulla, il codice non viene eseguito. Ho anche provato a mettere una msgbox e un debug.print per vedere se veniva eseguito qualcosa.
Il pulsante è abilitato, solo che se clicco non fa nulla.
Sono certo sia qualcosa di banale, ma non riesco a capire cosa.

Grazie in anticipo.

5 Risposte

  • Re: Pulsante di comando in maschera continua

    oierpa ha scritto:


    ... non riesco a risolvere il seguente problema, che penso sia banale.
    Sono pigrissimo e non ho voglia di costruire un esempio ad hoc. Potresti postare una versione ridotta all'osso del tuo database, con il minimo indispensabile e senza ovviamente informazioni "reali", che presenti il problema?
    Per mettere a disposizione il file devi appoggiarti ad un servizio di file sharing esterno, tipo dropbox, gdrive, onedrive... quello che preferisci, purché non ci sia da registrarsi (quest'ultima è una mia richiesta specifica, altri potrebbero agire diversamente)
  • Re: Pulsante di comando in maschera continua

    Non è risolutivo del tuo problema ... ma il tuo codice
    Private Sub cmdChiudi_Click()
    CurrentDb.Execute "UPDATE PROG_Tbl_output_prog SET chiuso = true WHERE [id_elenco_out] = " & Me.ctlIDAtt
    CurrentDb.Execute "UPDATE PROG_Tbl_output_prog SET data_eff = date() WHERE [id_elenco_out] = " & Me.ctlIDAtt
    EndSub
    
    ha varie cose migliorabili:
  • Re: Pulsante di comando in maschera continua

    Eccomi!
    Il file è disponibile qui:
    https://drive.google.com/drive/folders/1D73o305ojPfVrXaa28ohACur624uuQZp?usp=sharing

    Non ho pulito il DB di origine perché è troppo complicato, ne ho creato uno da zero da un template che uso di solito e così funziona (cliccando sui pulsanti vengono eseguiti i comandi). Ho anche inserito una sola riga di comando come suggeriva muttley005.

    Ora ho le idee più confuse di prima, perché so che è una stupidata, ma non ho idea di come trovare la soluzione.
    Grazie in anticipo.
  • Re: Pulsante di comando in maschera continua

    Scusa ma se quello che hai postato funziona che utilità ha per noi?
  • Re: Pulsante di comando in maschera continua

    Ciao a tutti.
    Ho trovato, colpa mia (ovviamente) ...
    Ho trovato il problema, era un blocco specifico che avevo messo, non ricordo quando, suCorrente, quindi non poteva funzionare.

    Prima di iniziare avevo controllato che le sottomaschere e le schede fossero tutte abilitate, ma quello mi era sfuggito. Nel DB sto facendo diversi aggiornamenti ed ero certo di aver rimosso tutte le righe in cui disabilitavo sottomaschere, schede ...

    Grazie comunque, se non avessi costruito il DB da postare per Phil probabilmente non me ne sarei accorto.
Devi accedere o registrarti per scrivere nel forum
5 risposte