MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


3 participantes

    [Resolvido]Contar acessos de usuario ao BD !

    waraujo
    waraujo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 04/02/2010

    [Resolvido]Contar acessos de usuario ao BD ! Empty [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  waraujo 27/6/2010, 04:21

    Bom se vcs puderem me ajudar ficarei grato...
    Seguinte tenho uma instrução onde pego o usuario da rede, data e hora, com isso inseri o registro em uma tabela.

    Private Sub Form_Open(Cancel As Integer)
    CurrentDb.Execute "DELETE * FROM tabregistrodt WHERE usuario = """ & WindowsUserName & """"
    CurrentDb.Execute "INSERT INTO tabregistrodt (usuario, datahora) VALUES (""" & WindowsUserName & """, #" & Now & "#)"
    End Sub

    Este código pega o Usuario Data e hora e insere um registro na Tabela tabregistrodt.
    caso o usuario abra mais de uma vez o banco ele substitui a data com isso o registro não se repete, até ai perfeito é isto mesmo blz......
    Ai vem, minha Pergunta, ja tentei por aqui e não consegui, queria que quando tivesse uma nova data ele fizesse um novo registro, tipo
    a pessoa entro na data do dia 26/06/2010 as 16:37, fica registrado, caso ela acesse o BD no mesmo dia mantem da forma como está, agora se passar o dia e ela accessar novamente então se adiciona um novo registro, com a nova data 27/06/2010 as ??:??, e assim por diante, sera que isto é possivel?

    Agradeço aos amigos do Forum !!!!!!!!!!!!!
    Ass. Wellington
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  criquio 27/6/2010, 13:19

    Substitua a linha do DELETE por uma condição que verifique o campo data do último registro. Se for igual à atual, não faz nada, se for menor que a atual, ele registra. Como você está usando a data e hora em um campo só, use um DatePart para pegar só a data. Veja se consegue fazer isso, caso não consiga, fala que tentamos ajudar.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    waraujo
    waraujo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 04/02/2010

    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  waraujo 27/6/2010, 14:08

    Ok criquio, ja deletei a linha DELETE, mas ai ele não funfa direito, elo adiciona a linha mas não atualiza caso o usuario volte acessar o banco, ou seja preciso pegar o ultimo registro daquela data por aquele usuario.
    Agora estou com Dificuldade de criar esta linha que verifica o registro existente caso seja diferente ele adiciona, com relação a data eu Preciso da Hora tambem, mas se precisar eu formato o campo para data apreviada, sera que consegui explicar direito.
    A linha de raciocinio é esta mesmo, mas não estou conseguindo criar esta função !
    Me corrija se estiver errado, eu não tenho que adicionar esta função de verificar junto com esta linha que eu já tenho pronta, pois caso o usuario entre novamente na mesma data, ele deleta a ultimo acesso e inclui o novo com novo horario e data, agora se for data diferente ele inclui um novo registro......

    Valeu Amigo Aguardando !!!!!!!!
    avatar
    Convidado
    Convidado


    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  Convidado 28/6/2010, 11:12

    Bom dia Waraujo,

    Tenta o seguinte:

    Private Sub Form_Open(Cancel As Integer)
    CurrentDb.Execute "DELETE * FROM tabregistrodt WHERE usuario = """ & WindowsUserName & """ And tabregistrodt.datahora = Now"
    CurrentDb.Execute "INSERT INTO tabregistrodt (usuario, datahora) VALUES (""" & WindowsUserName & """, #" & Now & "#)"
    End Sub

    NIvaldo.
    waraujo
    waraujo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 04/02/2010

    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  waraujo 28/6/2010, 18:25

    Valeu Galera é Bonito de Ver todo Mundo Ajudando !!!!! Valeu!!!!
    Grande e Sabio nivaldo não Fiz o teste ainda do seu exemplo, mas vou fazer e posto o resultado..

    Agora Grande Mestre JPaulo, usei seu codigo e deu Erro 13 na Linha.
    Tipos imcopativeis

    y = Format(DLookup("datahora", "tabregistrodt", "usuario = '" & x & "'"), "dd-mm-yyyy")

    Não esta a funfar, sera que eu estou a fazer algo de errado ?
    engraçado que se clicar em Fim no Depurador ele Abre o Form, mas não insere nada !
    agora se Clicar em Depurar mostra erro na Linha como indicado acima !!!!!
    O que sera que pode estar acontecendo...Só lembrando coloque a Função no Evento ao carregar..

    Private Sub Form_Load()
    'By JPaulo ® Maximo Access
    Dim x As String
    Dim y As Date
    x = Environ("UserName")
    y = Format(DLookup("datahora", "tabregistrodt", "usuario = '" & x & "'"), "dd-mm-yyyy")

    If Nz(DCount("[usuario]", "tabregistrodt", "[usuario]= '" & x & "' AND CVDate(Int([datahora])) = Date()")) > 0 Then

    CurrentDb.Execute "DELETE * FROM tabregistrodt WHERE usuario = '" & Environ("USERNAME") & "'"
    CurrentDb.Execute "INSERT INTO tabregistrodt (usuario, datahora) VALUES ('" & Environ("USERNAME") & "', #" & Now & "#)"
    Else
    CurrentDb.Execute "INSERT INTO tabregistrodt (usuario, datahora) VALUES ('" & Environ("USERNAME") & "', #" & Now & "#)"
    End If

    Me.KeyPreview = True
    Me.selectposto.Value = ""
    Me.csr1.Value = ""

    End Sub

    Como Informação tem Form. ( com Sub-Form ), esta Função esta no Form principal
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  JPaulo 28/6/2010, 19:12

    Recriei uma tabela nessas caracteristicas e tudo está a funfar.

    Se preferir, coloque em site publico um pequeno exemplo do seu banco, para analisarmos.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new Instruções SQL como utilizar...
    waraujo
    waraujo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 04/02/2010

    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  waraujo 29/6/2010, 00:36

    Grande JPaulo, não sei o que esta a contecer. Bom coloquei uma Parte do Banco para Baixar, mas não liga na modelagem pois fiz tudo rapidinho, desculpa pela demora Ok.....

    http://www.esnips.com/doc/2e0f5283-4b65-4572-97cf-510423240f7c/Para-Transporte

    Ao amigo Nivaldo Fiz um Teste por aqui, mas Nivaldo na verdade o Seu codigo insere um novo registro independe da data, não bem isto que eu queria, mas muito obrigado seria uma alternativa kkkk, Valeu amigão.
    avatar
    Convidado
    Convidado


    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  Convidado 29/6/2010, 01:08

    Olá Waraujo,

    Enquanto isso, dá uma olhada nesse exemplo na sala de repositórios:

    http://maximoaccess.forumeiros.com/repositorio-de-exemplos-ms-access-f7/quem-introduziu-quem-alterou-t213.htm

    Nivaldo.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  JPaulo 29/6/2010, 10:01

    Veja o simples;

    http://dl.dropbox.com/u/771097/Para%20Transporte_OLD.rar

    Eu não gosto de utilizar uma função igual à sua para ir buscar o user do windows.

    Com apenas uma linha e sem função complexa o vba já faz isso, Environ("UserName"), Environ já é uma função interna.




    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new Instruções SQL como utilizar...
    waraujo
    waraujo
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 61
    Registrado : 04/02/2010

    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  waraujo 30/6/2010, 01:55

    Caso Encerrado!!!!!!!!!!!!!!!!!
    Jpaulo sem Palavras, so tenho a dizer muito obrigado, esta funfando direitinho.....
    Mas me tira uma Dúvida no caso vc só retirou a linha.
    y = Format(DLookup("datahora", "tabregistrodt", "usuario = '" & x & "'"), "dd-mm-yyyy")
    Vejo que esta linha não era necessaria....

    Sobre Buscar o Usuario este codigo peguei com vc em um Outro momento, mas estou vendo que cada dia agente se supreende, esta Função Environ("UserName"), não necessita de nada somente isso, kkkkk muito Bom vou passar a usar esta agora pois ocupa menos espaço...

    Bom Vamos lá para uma outra pessoa com a mesma Dúvida ai esta a Solução:

    Private Sub Form_Load()
    'By JPaulo ® Maximo Access
    Dim x As String

    'On Error Resume Next
    x = Environ("UserName")

    If Nz(DCount("[usuario]", "tabregistrodt", "[usuario]= '" & x & "' AND CVDate(Int([datahora])) = Date()")) > 0 Then

    CurrentDb.Execute "DELETE * FROM tabregistrodt WHERE usuario = '" & Environ("UserName") & "' AND CVDate(Int([datahora])) = Date()"
    CurrentDb.Execute "INSERT INTO tabregistrodt (usuario, datahora) VALUES ('" & Environ("UserName") & "', #" & Now & "#)"
    Else
    CurrentDb.Execute "INSERT INTO tabregistrodt (usuario, datahora) VALUES ('" & Environ("UserName") & "', #" & Now & "#)"
    End If
    End Sub
    '-------------------------Fim------------------------------------
    Grande Amigo JPaulo fico muito agradecido pela paciencia e compreenção em ajudar as pessoas aqui. Valeu Amigo...
    A mais Uma Coisinha de nada rsrsrsrs !!!!!!!
    Peguei um Exemplo seu no banco de Exemplos com o nome de " CalendarioLaboral "
    mas este exemplo esta com algum Problema e não consigo achar pois ele é bem avançado para mim, e eu estava estudando o exemplo, gostaria de saber se vc tem o exemplo mas sem o erro que esta acontecenndo...
    caso vc não tenha o BD eu tenho e posso postar se For o caso ?
    Mas isto é outra coisa só estou aproveitando a Escrita do Tópico para te perguntar.... Valeu...
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  JPaulo 30/6/2010, 09:16

    Bom dia amigo,

    Vamos por partes;

    A linha a que você se refere, era um teste que fiz inicialmente, depois esqueci de deletar, no ultimo exemplo já está enxuto.

    Quanto às suas palavras de carinho, agradeço a você, pois os fóruns existem para ajuda simultanea, por incrivel que pareça tambem estamos sempre a aprender.

    Quanto ao exemplo do calendario laboral, o exemplo que tenho não é meu, apenas o traduzi e aparentemente não apresenta erros.

    http://dl.dropbox.com/u/771097/CalendarioLaboral.rar



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Contar acessos de usuario ao BD ! Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Contar acessos de usuario ao BD ! Empty Re: [Resolvido]Contar acessos de usuario ao BD !

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 08:29