Conferma query di comando su runtime Con VBA

di il
6 risposte

Conferma query di comando su runtime Con VBA

Salve a tutti ho creato un database con office 2010, un BE allocato su un server e dei FE per l'utilizzo dei vari utenti. Il problema è che in un pc non è installato office ed ho ovviato con un runtime 365. Funziona tutto a parte che, nel pc dove dove è installato il runtime, ad ogni avvio di una query, compaiono i classici messaggi di conferma query nonostante abbia disabilitato, nella sezione “opzioni-impostazioni client-modifica”, la conferma delle modifiche record, eliminazione documenti e query di comando. Ho provato ad ovviare al problema inserendo un codice VBA all'apertura della maschera menù, il tutto funziona sui pc dove è installato office tranne in quello dove utilizza il runtime e i messaggi continuano a comparire. Sto sbagliando qualcosa o ho scritto un codice sbagliato? 

Ringrazio anticipatamente e vi mostro di seguito il codice che ho utilizzato:

Private Sub Form_Open(Cancel As Integer)
Application.SetOption "Confirm Record Changes", False
Application.SetOption "Confirm Document Deletions", False
Application.SetOption "Confirm Action Queries", False
End sub

6 Risposte

  • Re: Conferma query di comando su runtime Con VBA

    Innanzitutto quelle impostazioni non si gestiscono così… in quanto non impattano sulla sessione corrente ma sulla successiva, quindi tecnicamente errato l'utilizzo.

    Di fatto se poi usi un ACCDE va impostato chiuso riaperto e compilato oppure si deve fare con un processo esterno…

    Seconda cosa le query come le esegui…?

    Ci sono metodi che evitano i Warnings oppure si sopprimono prima e si ripristinano dopo… ad esempio Execute metodo dell'oggetto database…. Peraltro transazionale.

  • Re: Conferma query di comando su runtime Con VBA

    Grazie per la risposta @Alex, quel comando è sull'evento di apertura maschera menù, scelta nelle opzioni applicazione, però, seguendo i tuoi consigli, potrei inserire il comando contrario associato al pulsante1 “Chiudi App” del database in modo da ripristinare le opzioni, di seguito il codice che ho pensato:

    Private Sub Comando1_Click()
    Application.SetOption "Confirm Record Changes", False
    Application.SetOption "Confirm Document Deletions", False
    Application.SetOption "Confirm Action Queries", False
    DoCmd.Quit
    End sub
  • Re: Conferma query di comando su runtime Con VBA

    Non sono sicuro tu abbia capito bene i consigli… quel codice non va eseguito 2 volte, o N volte, va eseguito SOLO 1 volta, priuma della compilazione in ACCDE o MDE, poi basta… modivo per il quale credo tu abbia frainteso il suo funzionamento…

  • Re: Conferma query di comando su runtime Con VBA

    Acc… allora effettivamente ho frainteso, scusami, a questo punto sono un po' in difficoltà, io pensavo che eseguendolo all'apertura bastasse, effettivamente, così, si esegue ogni volta che apri il database, come posso fare? Grazie ancora per i consigli.

  • Re: Conferma query di comando su runtime Con VBA

    Serve avere un po di logica quando si sviluppa e non andare a testa bassa…!

    Quindi le proprietà dell'applicativo si crea una Funzione che le modifica, si modificano se e quando serve, nel tuo caso PRIMA di Compilare in ACCDE, tuttavia fossi in te quelle modifice non le farei primo perchè non servono, secondo perchè se devi fare DEBUG o capire se c'èà qualche cosa di anomalo non lo puoi fare…!

    Ti ho spiegato che le Queries di tipo Actions si lanciano in modo differente, se tu optassi per usare il metodo  Execute come suggerito questa pippa non serve.

  • Re: Conferma query di comando su runtime Con VBA

    Ok, grazie per il consiglio, sempre molto utile, opterò per il metodo Execute come mi hai suggerito, ora ci lavoro subito.

Devi accedere o registrarti per scrivere nel forum
6 risposte