Boa tarde,
baixei um bd de exemplo de ponto de funcionários, mas está armazenando a data no formato americano (mm/dd/yy) algúem me ajuda
a corrigir isso?
Trata-se de um BD de marcação de ponto de funcionários.
O código abaixo é chamado no click do botão
Dim sql As String
Dim rst As Recordset
sql = "SELECT * FROM funcionario WHERE cd=" & Me.txt_rf.Value
Set rst = CurrentDb.OpenRecordset(sql)
If IsNull(DLookup("[cd]", "funcionario", "[cd]=" & Me!txt_rf)) Then
MsgBox "Registro não encontrado !", vbOKOnly + vbCritical, "Atenção"
Me.txt_rf.Value = ""
DoCmd.CancelEvent
Else
Me.txt_aviso.Visible = True
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = rst!nm_funcionario
Me.foto.Visible = True
Me.foto = rst!foto
End If
If MsgBox("CLICK EM OK OU TECLE ENTER PARA CONFIRMAR!", vbOKCancel, "REGISTRAR PONTO") = vbOK Then
If IsNull(DLookup("[entrada1]", "controle_ponto", "[cd]=" & Me!txt_rf & " and pontodata=#" & Date & "#")) Then
DoCmd.SetWarnings False 'desativa a exibição de mensagens do sistema
DoCmd.RunSQL "INSERT INTO controle_ponto (cd,entrada1,pontodata) select " & Me.txt_rf & ",#" & Time & "#,#" & Date & "#"
DoCmd.SetWarnings True 'ativa a exibição de menssagens do sistema
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
ElseIf IsNull(DLookup("[saida1]", "controle_ponto", "[cd]=" & Me!txt_rf & " and pontodata=#" & Date & "#")) Then
DoCmd.SetWarnings False 'desativa a exibição de mensagens do sistema
DoCmd.RunSQL "UPDATE controle_ponto set saida1=#" & Time & "# where cd= " & Me.txt_rf & " and pontodata=#" & Date & "#"
DoCmd.SetWarnings True 'ativa a exibição de menssagens do sistema
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
ElseIf IsNull(DLookup("entrada2", "controle_ponto", "cd=" & Me!txt_rf & " and pontodata=#" & Date & "#")) Then
DoCmd.SetWarnings False 'desativa a exibição de mensagens do sistema
DoCmd.RunSQL "UPDATE controle_ponto set entrada2= #" & Time & "# where cd= " & Me.txt_rf & " and pontodata=#" & Date & "#"
DoCmd.SetWarnings True 'ativa a exibição de mensagens do sistema
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
ElseIf IsNull(DLookup("saida2", "controle_ponto", "cd=" & Me!txt_rf & " and pontodata=#" & Date & "#")) Then
DoCmd.SetWarnings False 'desativa a exibição de mensagens do sistema
DoCmd.RunSQL "UPDATE controle_ponto set saida2= #" & Time & "# where cd= " & Me.txt_rf & " and pontodata=#" & Date & "#"
DoCmd.SetWarnings True 'ativa a exibição de menssagens do sistema
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
End If
Else
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
Exit Sub
End If
Set rst = Nothing
End Sub
baixei um bd de exemplo de ponto de funcionários, mas está armazenando a data no formato americano (mm/dd/yy) algúem me ajuda
a corrigir isso?
Trata-se de um BD de marcação de ponto de funcionários.
O código abaixo é chamado no click do botão
Dim sql As String
Dim rst As Recordset
sql = "SELECT * FROM funcionario WHERE cd=" & Me.txt_rf.Value
Set rst = CurrentDb.OpenRecordset(sql)
If IsNull(DLookup("[cd]", "funcionario", "[cd]=" & Me!txt_rf)) Then
MsgBox "Registro não encontrado !", vbOKOnly + vbCritical, "Atenção"
Me.txt_rf.Value = ""
DoCmd.CancelEvent
Else
Me.txt_aviso.Visible = True
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = rst!nm_funcionario
Me.foto.Visible = True
Me.foto = rst!foto
End If
If MsgBox("CLICK EM OK OU TECLE ENTER PARA CONFIRMAR!", vbOKCancel, "REGISTRAR PONTO") = vbOK Then
If IsNull(DLookup("[entrada1]", "controle_ponto", "[cd]=" & Me!txt_rf & " and pontodata=#" & Date & "#")) Then
DoCmd.SetWarnings False 'desativa a exibição de mensagens do sistema
DoCmd.RunSQL "INSERT INTO controle_ponto (cd,entrada1,pontodata) select " & Me.txt_rf & ",#" & Time & "#,#" & Date & "#"
DoCmd.SetWarnings True 'ativa a exibição de menssagens do sistema
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
ElseIf IsNull(DLookup("[saida1]", "controle_ponto", "[cd]=" & Me!txt_rf & " and pontodata=#" & Date & "#")) Then
DoCmd.SetWarnings False 'desativa a exibição de mensagens do sistema
DoCmd.RunSQL "UPDATE controle_ponto set saida1=#" & Time & "# where cd= " & Me.txt_rf & " and pontodata=#" & Date & "#"
DoCmd.SetWarnings True 'ativa a exibição de menssagens do sistema
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
ElseIf IsNull(DLookup("entrada2", "controle_ponto", "cd=" & Me!txt_rf & " and pontodata=#" & Date & "#")) Then
DoCmd.SetWarnings False 'desativa a exibição de mensagens do sistema
DoCmd.RunSQL "UPDATE controle_ponto set entrada2= #" & Time & "# where cd= " & Me.txt_rf & " and pontodata=#" & Date & "#"
DoCmd.SetWarnings True 'ativa a exibição de mensagens do sistema
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
ElseIf IsNull(DLookup("saida2", "controle_ponto", "cd=" & Me!txt_rf & " and pontodata=#" & Date & "#")) Then
DoCmd.SetWarnings False 'desativa a exibição de mensagens do sistema
DoCmd.RunSQL "UPDATE controle_ponto set saida2= #" & Time & "# where cd= " & Me.txt_rf & " and pontodata=#" & Date & "#"
DoCmd.SetWarnings True 'ativa a exibição de menssagens do sistema
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
End If
Else
Me.txt_rf.Value = Null
Me.txt_aviso.Visible = False
Me.txt_aviso.BorderStyle = 0
Me.txt_aviso.Caption = ""
Me.foto.Visible = False
Me.foto = ""
Exit Sub
End If
Set rst = Nothing
End Sub