IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topicStart Poll

Outline · [ Standard ] · Linear+

> Entrada De Empleados, Como puedo registrar el tiempo de ....

MR.sMiLe :D
post Jan 4 2008, 05:33 AM
Post #1


Nuevo
*

Group: Members
Posts: 6
Joined: 27-November 07
Member No.: 677



Hola...............estos realizando un programa para la entrada y salida de empleados..............

El problema que tengo es que cuando entra el empleado me lo registra en la base de datos que tengo de nombre Registro, con las siguientes columnas:

- Id_registro
-Fecha
-Entrada
-Salida
-Nombre
-InOut ( bandera para validar si entro o no)
-Clave de empleado

pero cuando es la salida no encuentro la forma de que me encuentre el campo de salida para que me guarde la salida del empleado que se esta registrando de nuevo,

Les menciono que utilizo una bandera para validar si entra mi empleado o no, pero cuando los empleados checan la primera vez para entrar y la segunda vez para salir, para el segundo empleado que cheque no le guarda el valor en el campo de salida...............

Espero haberme explicado y espero que me puedan ayudar con esto que ya me quito el sueño............

Thanks
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
telemaquia
post Jun 26 2008, 08:14 PM
Post #2


Nuevo
*

Group: Members
Posts: 4
Joined: 26-June 08
Member No.: 792



Hola bueno yo hacia algo como esto espero q te sirva


'//* ADVIERTE QUE EL CODIGO (DNI) ES INCORRECTO DE ACUERDO A LOS EXISTENTES EN LA BBDD

If rs.State = 1 Then rs.Close
Set rs = cn.Execute("SELECT * FROM EMPLEADOS WHERE DNI='" & xbusca & "'")
If rs.EOF Then

' MsgBox "El Código que ha ingresado es incorrecto, por favor ingreselo nuevamente", 64
TXTdni = ""
TXTdni.SetFocus
frmCONECTAR.Show vbModal
Set rs = Nothing
Else

'//* CAPTURA LA HORA DE ENTRADA Y SALIDA

If rt.State = 1 Then rt.Close
rt.Open "SELECT HRENTRADA,HRSALIDA FROM EMPLEADOS WHERE DNI='" & xbusca & "'", cn, adOpenKeyset, adLockOptimistic
hora = rt.Fields(0)
HORASAL = rt.Fields(1)

'//* BUSCA LA CONCORDANCIA DE CODIGO (DNI)

If rc.State = 1 Then rc.Close
rc.Open "SELECT * FROM TEMPORAL WHERE DNI='" & xbusca & "'", cn, adOpenKeyset, adLockOptimistic

hring = IIf(IsNull(rc.Fields(8)), "", (rc.Fields(8)))
'//* ACTUALIZA LOS DATOS DE ACUERDO A LA HORA DE INGRESO Y SALIDA

If rc.RecordCount = 1 Then

If FormatDateTime(Time, 4) <= FormatDateTime(hora, 4) Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HRINGRESO='" & Time & "',"
sentencia = sentencia + "CONDICION='" & "TEMPRANO" & "', FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf FormatDateTime(Time, 4) > FormatDateTime(hora, 4) And FormatDateTime(Time, 4) < FormatDateTime(HORASAL, 4) Then
If hring = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HRINGRESO='" & Time & "',"
sentencia = sentencia + "CONDICION='" & "TARDE" & "', FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h1 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HR1='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h2 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HR2='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h3 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HR3='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h4 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HR4='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h5 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "ALMS='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h6 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "ALME='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h7 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HR5='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h8 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HR6='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h9 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HR7='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
ElseIf h10 = "" Then
sentencia = "UPDATE TEMPORAL SET FECHAING='" & LBLingreso & "',"
sentencia = sentencia + "HR8='" & Time & "',"
sentencia = sentencia + "FALTA=" & CHKasist & ""
sentencia = sentencia + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia)
TXTdni = ""
Else
Beep
MsgBox "Ud ha excedido el numero de salidas, por favor contáctese con la persona encargada", 64
TXTdni = ""
End If
ElseIf FormatDateTime(Time, 4) >= FormatDateTime(HORASAL, 4) Then
If Not IsNull(rc.Fields(8)) Then
sentencia2 = "UPDATE TEMPORAL SET HRSALIDA='" & Time & "'"
sentencia2 = sentencia2 + " WHERE DNI='" & xbusca & "'"
cn.Execute (sentencia2)
TXTdni = ""
Else
Beep
MsgBox "Ud no ha registrado su ingreso, por favor contáctese con la persona encargada", 64
TXTdni = ""
End If
End If


End If

End If

User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicTopic OptionsStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:
 

Lo-Fi Version Time is now: 22nd November 2008 - 03:06 AM