Valore stringa con visibilità globale

di il
8 risposte

Valore stringa con visibilità globale

Nel mio DB, per motivi di privacy, in più punti ho inserito la richiesta di una password.
All'uscita del box di input, devo confrontare la pwd inserita con quella segreta.
Quella segreta è "pippo", ma ogni volta che la devo modificare devo andarla a cercare in tutti i codici delle mie maschere.
So bene che la si potrebbe inserire come variabile pubblica nel Modulo1, ma anche se l'ho dichiarata con:
Public act_PWD as string (è OK)
il comando successivo
Set act_PWD = "pippo" non l'accetta. Anche F1 di Access non mi è stato di grande aiuto.

Posso avere un aiutino sull'argomento?
grazie antonio Cuomo.

8 Risposte

  • Re: Valore stringa con visibilità globale

    Probabilmente il settaggio lo devi fare all'interno della maschera di avvio del tuo programma. Oppure, per semplificare, fai una funzione che richiama la box di input e nei vari punti in cui appunto vuoi il controllo della password richiami questa nuova funzione anzichè richiamare la input box.
  • Re: Valore stringa con visibilità globale

    Prova senza il "Set"
  • Re: Valore stringa con visibilità globale

    Non sono grosso amante di soluzioni patch e quando posso (almeno inizialmente), cerco di evitarle.

    Come nei moduli delle maschere, io penso che anche nel modulo "principale" sia possibile fare assegnazioni di tipo public, estese cioè a tutto il database e perciò ho scritto:
    ----------------------------------
    Option Compare Database

    Public Password As String
    Public act_PWD As String
    act_PWD = "pippo"
    ----------------------------------

    Public Function bla_bla_bla
    ...
    End Function

    Public Function bla_bla_bla
    ...
    End Function

    Il tutto mi viene regolarmente salvato ma in RUN mi dà errore dicendo: non è consentito (fare assegnazioni) fuori da una routine.
    Purtroppo anche togliendo "Set", Angelo.

    Io penso che il sistema ci sarà ! ?
    ciao a tutti.
    antonio
  • Re: Valore stringa con visibilità globale

    Se la pwd la conservi nel testo (metodo poco consigliato) puoi scrivere

    Public Const act_PWD As String = "pippo"
  • Re: Valore stringa con visibilità globale

    Non sono grosso amante di soluzioni patch
    Predisporre una funzione che richiami al suo interno la Input Box non è una "patch" : in futuro potresti voler salvare la password in una tabella del database (magari crittografata) e in quel momento avrai un unico punto dove andare ad inserire la tua SELECT...
  • Re: Valore stringa con visibilità globale

    Io ho fatto così e sembrerebbe funzionare:

    In un modulo ho scritto:
    Public act_PWD As String

    nell'evento load della prima maschera aperta nel db ho scritto
    act_PWD = "PIPPO"

    nell'evento click di un pulsante di un altra maschera, richiamata dalla prima, ho scritto:
    msgbox(act_PWD)

    e mi esce "PIPPO"
  • Re: Valore stringa con visibilità globale

    Mio caro candaluar, non te la prendere per quello che scrivo, è solo frutto della mia incompetenza.
    Ora ho capito quello che vuoi dirmi, ma sono incapace di scrivere "cosa" (con tutte quelle paroline strane) e in più quelle parentesi, e poi il "dpve" sarebbe il successivo scoglio.
    Forse più in là e con altre conoscenze, prenderei in considerazione i tuoi suggerimenti.

    Per ora mi ha funzionato la tesi di oregon, ma ringrazio ugualmente tutti. Siete proprio cari.
    ciao a tutti.
  • Re: Valore stringa con visibilità globale

    Tranquillo, mica me l'ero presa: volevo solo sottolineare che la mia soluzione benchè sembrasse una pezza era in realtà una buona pratica di programmazione.
    e poi il "dpve" sarebbe il successivo scoglio
    il "dpve" è uno scoglio per tutti; infatti mi ci è voluta mezz'ora abbondante per capire che volevi dire "dove" (figurati che ho fatto anche una ricerca con google!!! )
    Buon lavoro!
Devi accedere o registrarti per scrivere nel forum
8 risposte