Control acceso de personas mediante Access
Publicado por edudeprado (7 intervenciones) el 29/07/2016 21:21:36
Buenas. Después de leer y probar varias de las respuestas, me sigue sin funcionar, por ello creo este nuevo tema.
En su momento hice una base de datos de socios (evento deportivo) con su correspondiente código de barras con la intención de poder controlar el acceso de los mismos al recinto. Como es lógico un socio = un acceso. Los datos se introducen mediante el típico lector de códigos.
Aunque será mas complejo, en principio me interesa comprobar tras escanear un código si ha sido escaneado antes, y para ello tengo:
- Tabla: T_ACCESOS ---> Campos: ID_ACCESO (Autonum), CODIGO_BARRAS, FECHA.
- Formulario: F_ACCESOS (Vinculado con la tabla) ---> Cuadros de Texto (Independiente): ESCANEOS -- Campos: CODIGO_BARRAS y FECHA (Automática).
El código de barras es del tipo: *1020170125* (12 caracteres, incluidos asteríscos). Aunque no lo comento, la intención es extraer posteriormente del mismo distintos fragmentos para posteriores cálculos y estadística, aunque esto ya está solucionado.
La intención es escanear mediante pistola de códigos el código de barras al cuadro de texto del formulario "ESCANEOS" quedando guardado en la variable (STRING) de nombre VAR_CODIGO. Antes de poder volcar los datos sobre la tabla y generar un nuevo registro, quiero comprobar si ese código ha sido escaneado previamente. (Se trata de evitar pasar dos veces el mismo carnet de socio).
El formulario F_ACCESOS tiene como origen de los datos la tabla T_ACCESOS, y tras cada escaneo de un nuevo código (con éxito, no repetido), carga un nuevo registro automáticamente para agilizar la tarea.
Podría incluir la opción "evitar" duplicados, pero esto me mostraría el típico mensaje y ralentizaría la lectura de códigos. Por ello había pensado en almacenar el código escaneado en una variable y compararlo con todos los códigos introducidos y almacenados en la tabla hasta el momento:
- Si NO EXISTE: Almacenar la información de la vaiable en un nuevo registro, mostrando la pantalla en verde para inmediatamente después permitir la introducción de un nuevo código en un nuevo registro.
- Si EXISTE: No grabar ningun tipo de información, mostrar la pantalla en rojo, y permitir la introducción de un nuevo código.
He probado la función "DLOOKUP", pero me da error de sintaxis, pero sin utilizar variables o campos independientes, vinculados directamente a la tabla.
Estoy bastante perdido en este apartado. Gracias.
En su momento hice una base de datos de socios (evento deportivo) con su correspondiente código de barras con la intención de poder controlar el acceso de los mismos al recinto. Como es lógico un socio = un acceso. Los datos se introducen mediante el típico lector de códigos.
Aunque será mas complejo, en principio me interesa comprobar tras escanear un código si ha sido escaneado antes, y para ello tengo:
- Tabla: T_ACCESOS ---> Campos: ID_ACCESO (Autonum), CODIGO_BARRAS, FECHA.
- Formulario: F_ACCESOS (Vinculado con la tabla) ---> Cuadros de Texto (Independiente): ESCANEOS -- Campos: CODIGO_BARRAS y FECHA (Automática).
El código de barras es del tipo: *1020170125* (12 caracteres, incluidos asteríscos). Aunque no lo comento, la intención es extraer posteriormente del mismo distintos fragmentos para posteriores cálculos y estadística, aunque esto ya está solucionado.
La intención es escanear mediante pistola de códigos el código de barras al cuadro de texto del formulario "ESCANEOS" quedando guardado en la variable (STRING) de nombre VAR_CODIGO. Antes de poder volcar los datos sobre la tabla y generar un nuevo registro, quiero comprobar si ese código ha sido escaneado previamente. (Se trata de evitar pasar dos veces el mismo carnet de socio).
El formulario F_ACCESOS tiene como origen de los datos la tabla T_ACCESOS, y tras cada escaneo de un nuevo código (con éxito, no repetido), carga un nuevo registro automáticamente para agilizar la tarea.
Podría incluir la opción "evitar" duplicados, pero esto me mostraría el típico mensaje y ralentizaría la lectura de códigos. Por ello había pensado en almacenar el código escaneado en una variable y compararlo con todos los códigos introducidos y almacenados en la tabla hasta el momento:
- Si NO EXISTE: Almacenar la información de la vaiable en un nuevo registro, mostrando la pantalla en verde para inmediatamente después permitir la introducción de un nuevo código en un nuevo registro.
- Si EXISTE: No grabar ningun tipo de información, mostrar la pantalla en rojo, y permitir la introducción de un nuevo código.
He probado la función "DLOOKUP", pero me da error de sintaxis, pero sin utilizar variables o campos independientes, vinculados directamente a la tabla.
Estoy bastante perdido en este apartado. Gracias.
Valora esta pregunta
0