none
Log de acesso. MS Access RRS feed

  • Pergunta

  • Bom dia/tarde

     

    Estou desenvolvendo um gerenciador de informações para meu dept, e necessito criar um log de acesso.

    Estou usando o seguinte código para usar com info de LOG de acesso:

     

    -------------------------------------------------------------------------------------------------------------------------------

    Option Compare Database

    Option Explicit
    Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, _
                                                    nSize As Long) As Long

    Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _
                                                            (ByVal lpBuffer As String, _
                                                            nSize As Long) As Long


    Sub Get_Computer_Name()
    Dim a1 As String

       a1 = Now
      
        'determina a máquina que está acessando
        Dim Comp_Name_B As String * 255
        Dim Comp_Name As String
        GetComputerName Comp_Name_B, Len(Comp_Name_B)
       
        Comp_Name = Left(Comp_Name_B, InStr(Comp_Name_B, Chr(0)))
           
        'determina  quem está logando
        Dim lpBuff As String * 25
        Dim ret As Long, UserName As String
        ret = GetUserName(lpBuff, 25)
        UserName = Left(lpBuff, InStr(lpBuff, Chr(0)) - 1)

    End Sub
    -------------------------------------------------------------------------------------------------------------------------------

     

    Porém, preciso colocar as informações das variaveis em uma tabela, mas não sei como posso fazer isso.

    Grato.

     

     

    terça-feira, 15 de julho de 2008 15:46

Respostas

  • Olá..

    No RS.Fields("")  você precisa por entre as aspas o nome do campo...´Para os outros campos é só fazer o mesmo ponha entre o addnew e  o update..

    Code Snippet

    Sub GravaLog()
        Dim RS As Recordset
        Set RS = CurrentDb.OpenRecordset("Tabela")
        RS.AddNew
        RS.Fields("") = Comp_Name_B 
        RS.Update

    End Sub

     

     

     

    terça-feira, 15 de julho de 2008 19:22
  • No Access 2000 e no XP o código acima não vai funcionar da maneira esperada. Declare o Recordset assim:

     

    Dim rst As DAO.Recordset

     

    E no menu Ferramentas > Referências do módulo assinale a biblioteca Microsoft DAO 3.6.

     

     

    quarta-feira, 16 de julho de 2008 00:06
    Moderador
  • Ok. Muito obrigado.....


    Ajudou muito.
    quarta-feira, 16 de julho de 2008 02:01

Todas as Respostas

  • Olá..

    No RS.Fields("")  você precisa por entre as aspas o nome do campo...´Para os outros campos é só fazer o mesmo ponha entre o addnew e  o update..

    Code Snippet

    Sub GravaLog()
        Dim RS As Recordset
        Set RS = CurrentDb.OpenRecordset("Tabela")
        RS.AddNew
        RS.Fields("") = Comp_Name_B 
        RS.Update

    End Sub

     

     

     

    terça-feira, 15 de julho de 2008 19:22
  • No Access 2000 e no XP o código acima não vai funcionar da maneira esperada. Declare o Recordset assim:

     

    Dim rst As DAO.Recordset

     

    E no menu Ferramentas > Referências do módulo assinale a biblioteca Microsoft DAO 3.6.

     

     

    quarta-feira, 16 de julho de 2008 00:06
    Moderador
  • Ok. Muito obrigado.....


    Ajudou muito.
    quarta-feira, 16 de julho de 2008 02:01