Newsgroup: it.comp.appl.access
Titolo: utenti, msgbox

ciao a tutto il ng,
questo è il mio problema:
ho già impostato un controllo sui singoli valori nella maschera sull'evento
modifica e ora stavo
cercando di impostare un controllo sull'evento delete abbinato alle utenze
ma mi sono bloccato...
Vorrei che se l'utente è quello che ha inserito il valore, venga
visualizzata la prima parte della procedura, se l'utente è diverso
la seconda parte...
la procedura delete funziona però anche con l'utente non autorizzato...
grazie
Private Sub Form_Delete(Cancel As Integer)
If Me.UTENTE = CurrentUser Or CurrentUser = "amm_tiziano" Then
    If MsgBox("Attenzione stai eliminando un record della maschera!",
vbYesNo) = vbNo Then
    Cancel = True
    End If
Else
    If MsgBox("Questo record non è stato registrato da te." & Chr(13) & "Non
hai le autorizzazioni necessarie per modificarlo.", vbYesNo) = vbNo Then
    Cancel = True
    End If
Me.Undo
End If
End Sub
ciao Tiziano

 ha scritto nel messaggio
news:cJWo8.88158$%g7.28...@twister2.libero.it...

Devi cambiare l'Else  da così:
Else
If MsgBox("Questo record non è stato registrato da te." & Chr(13)     & "Non
hai le autorizzazioni necessarie per modificarlo.", vbYesNo)     = vbNo Then
    Cancel = True
End If
Me.Undo
End If
a così:
Else
    MsgBox("Questo record non è stato registrato da te." & Chr(13) &
"Non hai le autorizzazioni necessarie per modificarlo.")
     Cancel = True
End if
Ciao Roberto - Syd

Ciao Roberto grazie...
ora funziona!
Ciao Tiziano

ciao devo chiederti un utima cosa...
queste procedure sono nelle form ma ripeterle per tutti i comandi diventa
imposssibile...
cosģ ho creato delle function per eliminare il problema di avere tutto il
codice
nella maschera ma non funziona, sulla proprietą imposto il valore e non
viene ricosciuto,
ho provato genrando un'espressione riesco a vederla perņ non vuole
funzionare,
ho riprovato impostando sull'evento modifica
call change() ipotetico nome della funzione ma nulla...
grazie mille
tiziano
If Me.UTENTE = CurrentUser Or CurrentUser = "amm_tiziano" Then
Else
MsgBox ("Questo record non č stato registrato da te." & Chr(13) & "Non hai
le autorizzazioni necessarie per modificarlo.")
Me.Undo
End If
Private Sub Form_Delete(Cancel As Integer)
If Me.UTENTE = CurrentUser Or CurrentUser = "amm_tiziano" Then
    If MsgBox("Attenzione stai eliminando un record della maschera!",
vbYesNo) = vbNo Then
    Cancel = True
    End If
Else
    MsgBox ("Questo record non č stato registrato da te." & Chr(13) & "Non
hai le autorizzazioni necessarie per modificarlo.")
    Cancel = True



Se nella funzione hai un riferimento ad un controllo che sta sul form del
tipo me.utente è logico che se chiami la funzione da un form dove non esiste
il controllo di nome utente non può funzionare se mi mandi la funzione posso
essere più preciso.
Ciao Roberto - Syd


ciao ecco la funzione e grazie
Private Sub TDF_M_LUNG_MAX_Change()
If Me.UTENTE = CurrentUser Or CurrentUser = "amm_tiziano" Then
Else
MsgBox ("Questo record non č stato registrato da te." & Chr(13) & "Non hai
le autorizzazioni necessarie per modificarlo.")
Me.Undo
End If
End Sub
ho provato a farla diventare una funzione cambiando il Private Sub in
function ma non sembra funzionare


Intanto se la vuoi utilizzare da tutte le form la devi aver scritta in un
modulo, poi deve essere di tipo public e infine devi avere una casella di
testo che si chiama UTENTE su tutte le form da dove chiami la funzione
oppure passi il nome utente come parametro.
 Private Sub TDF_M_LUNG_MAX_Change(sNomeUtente as String)
 If sNomeUtente = CurrentUser Or CurrentUser = "amm_tiziano" Then
 Else
 MsgBox ("Questo record non è stato registrato da te." & Chr(13) & "Non hai
le autorizzazioni necessarie per modificarlo.")
 Me.Undo
 End If
 End Sub
Ciao Roberto - Syd