Foros del Web » Programando para Internet » PHP »

lector de codigo barra

Estas en el tema de lector de codigo barra en el foro de PHP en Foros del Web. Estoy desarrollando un sistema de control de asistencia en php y necesito saber como manipular los resultados enviados por el lector de codigo de barras ...
  #1 (permalink)  
Antiguo 26/04/2005, 12:07
 
Fecha de Ingreso: abril-2005
Mensajes: 3
Antigüedad: 12 años, 8 meses
Puntos: 0
Pregunta lector de codigo barra

Estoy desarrollando un sistema de control de asistencia en php y necesito saber como manipular los resultados enviados por el lector de codigo de barras
o si no se puede, que debo hacer para poder tomar los valores enviados por el lector de codigo de barras o si debe ejecutar una rutina de otro lenguaje.
  #2 (permalink)  
Antiguo 26/04/2005, 16:41
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Un lector de código de barras ... (por lo menos los de "pistola" que conozco) al fin y al cambo generan el código como si de "pulsaciones" de teclado fuesen + un código de "enter" (intro chr(13)) al final ..

Por ende . .así lo tendrás que controlar vía javscript por ejemplo .. poniendo el foco en el elmento de tu formulario que corresponda al iniciar tu página y al detectar ese "intro" .. volver a poner el foco en dicho campo para continuar a la espera de otro "código" por el dispositivo lector ..

En definitiva .. estudia como se comporta tu "lector de código de barras" particular que uses .. pero en general suelen comportarse así. Por lo demás .. PHP no interviene para nada en este asunto .. (consulta para más detalles en el foro de javascript)

Un saludo,
  #3 (permalink)  
Antiguo 26/04/2005, 18:23
 
Fecha de Ingreso: enero-2002
Mensajes: 20
Antigüedad: 15 años, 10 meses
Puntos: 0
Vayamos por partes:

yo casi he terminado un control de asistencia pero para tarjetas con bandas magneticas (para el caso es lo mismo), bueno, la parte de fichaje esta terminada hace tiempo ahora estoy con la parte de gestion y preparando la instalacion del hardware.

Efectivamente, como dice Cluster, la pistola lectora, hace un input de teclado. Para que esto te quede mas claro, abre el bloc de notas del sistema y hazlo trabajar para saber que codigos mete en el teclado.

Una vez tengas esto claro, tienes que hacer una pagina con un formulario donde el input "text", este permanentemente enfocado pase lo que pase y "OnChange" haga el enter o envio. Ademas, en el body "OnLoad", cargo una rutina javascript que cuando el input se desenfoca, cuenta 10 segundos y vuelve a enfocarlo.

El resto se trabaja con php y MySQL.

En mi caso, hemos habilitado un hueco en una puerta donde hemos instalado una pantalla tactil para las incidencias y ademas, he creado un teclado en pantalla (javascript) para cuando olvidas la tarjeta en casa.

Una vez tienes la identificacion del trabajador, lo guardas en una tabla (MySQL), cuyo nombre (en mi caso) coincide con la fecha del dia, junto con la hora del fichaje y la incidencia (puede ser que la salida sea por motivos laborales). Cada dia, tienes que controlar que nadie se fue ayer sin fichar la salida (los fichajes han de ser pares) y avisar al responsable de personal. Al cabo de la semana, los lunes, haces un recuento de las horas que ha trabajado cada uno comparandolo con las horas que debe trabajar y que esten dentro de los horarios permitidos (v.g. en mi empresa, de 15:15 a 16:00 no cuenta la jornada, si permaneces en el centro, el sistema te ficha la salida a las 15:15 y la entrada a las 16:00) y elaborar los informes necesarios (en mi empresa hay distintos tipos de jornadas laborales). Otra cosa a tener en cuenta es el poder listar los trabajadores que se encuentran en cada momento dentro de la empresa para los controles instantaneos (hay mucho listillo que sale "un momento" sin fichar) y cuando esta un trabajador de permiso, vacaciones o baja. Consultas via web (con identificacion) de los jefes de departamento y de los trabajadores para ver el "saldo" horario, los primeros de su departamento y los segundos los propios.

Para la suma y resta de horas y minutos, yo he optado por las funciones "Addtime" y "Timediff" de MySQL, van de escandalo y no hay que hacer conversiones raras.

En mi caso, hay mas detalles, pero esto depende de la legislacion a la que te tengas que acojer y sobre todo, lo que te dicte el servicio de personal (amen de lo que quieras "flipar").

Bueno, sobre esto podria escribir una conferencia (creo que se ha notado). Estoy muy orgulloso de este trabajo y en mi empresa estan impacientes por que termine la fase beta y empezar a fondo. Yo estoy deseando ver los recuentos semanales (150 trabajadores diarios con 2 entradas y 2 salidas=600 marcajes diarios = 3000 semanales).

¡¡ Ah !!, no olvides la planificacion de salvaguardia diaria para caso de desastre.

Salu2
__________________
Antes morir que perder la vida.

Eco Espacios Estudio de Arquitectura e Ingeniería.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:18.