Newsgroup: it.comp.appl.access
Titolo: identificare l'utente

è possibile inserire un campo in automatico che registri un codice o altro
dell'utente che inserisce i dati? in modo che un domani, si possa fare una
lista dei records che ha inserito ogni utente?
se si,  illuminatemi!!  :-)(

 ha scritto nel messaggio
news:IELY6.1507$bG1....@news1.tin.it...


CED ha scritto nel messaggio ...

Queste due funzioni, che se non ricordo male le ho rilevate sul sito comune,
e quindi non sono farina del mio sacco, ti restituiscono il nome utente del
computer ed il nome del computer.
Se nella tabella che vai ad aggiornare crei tre campi:
nome utente, nome host, dataEora operazione
in sede di conferma puoi aggiungere al record i dati che ti interessano.
saluti
GB
-------------------------------------------------------
Option Compare Database
Option Explicit
Public Declare Function GetComputerName Lib "kernel32" Alias _
    "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Public Declare Function SetComputerName Lib "kernel32" Alias _
    "SetComputerNameA" (ByVal lpComputerName As String) As Long
Public Const MAX_COMPUTERNAME_LENGTH = 255
Public Const ERROR_INVALID_PARAMETER = 87
Public Function GetCompName() As String
    Dim lngRet As Long
    Dim lenStr As Long
    Dim NomeComputer As String
    NomeComputer = String(256, 0)
    lenStr = Len(NomeComputer)
    lngRet = GetComputerName(NomeComputer, lenStr)
    GetCompName = Left(NomeComputer, lenStr)
End Function
-----------------------------------------------------
Option Compare Database
Option Explicit
Declare Function GetUserName Lib "advapi32.dll" Alias _
    "GetUserNameA" (ByVal lpBuffer As String, _
    nSize As Long) As Long
Function NomeUtente()
     Dim szBuffer As String, lBuffSize As Long, RetVal As Boolean
    szBuffer = Space(20)
    lBuffSize = Len(szBuffer)
    RetVal = GetUserName(szBuffer, lBuffSize)
    If RetVal Then
       NomeUtente = UCase(Trim(Left(szBuffer, lBuffSize - 1)))
    Else
       NomeUtente = Space(20)
    End If
End Function
-------------------------------------------------------------------

 ha scritto nel messaggio
news:9h49ds$n7q$1...@lacerta.tiscalinet.it...


luigi
Ma Admin č il nome utente con cui hai avuto accesso alla rete o il current
user della security di Access ?
Le due funzioni che ti ho inviato ti restituiscono il nome utente con cui
hai avuto accesso alla rete ed il nome del computer su cui operi.
verifica.
saluti
GB

 hai ragione quello che ho scritto nel precedente Msg, l'o provato su un PC
non in rete, ma provando lo stesso su uno in rete non funziona!
adesso provo il tuo codice
... ma dove lo inserisco?  :-((
chiedo troppo per un esempio pratico?
ciao
grazie

chiedo troppo per un esempio pratico?
Hai due funzioni:
GetCompName che ti rilascia il nome Host
NomeUtente che ti rilascia il Nome utente con cui si è fatto il login.
Se lo devi inserire da maschera ti consiglio un campo txt
e nell'evento BeforeUpdate della maschera:
Me!TextNomeHost = GetCompName()
Me!TextNomeUtente = NomeUtente()
questo ti pone prima dell'aggiornamento del record i valori nella maschera e
successivamente saranno passati al record.
comunque puoi utilizzare le funzioni anche con codice o query.
saluti
GB

 > hai ragione quello che ho scritto nel precedente Msg, l'o provato su un
PC
^^^^^^
Noooooooooooooooooooooooooo.......................
Non ci credo.
--
Silvio
il sito comune di it.comp.appl.access:
http://www.sitocomune.com