Access cuadro de texto que ingrese datos y no necesite botón para guardar.

Quisiera que me pudiera ayudar con lo siguiente:

He creado un formulario de captura de datos en la cual en el cuadro de texto se ingresan datos (series con escáner lineal) y al dar al botón guardar se guarda el dato y a su vez se ve en el subformulario de abajo.

Lo que quiero haces es lo siguiente:

Al escanear la serie, se guarde con un evento y vuelva el cursor a la caja de texto para seguir sucesivamente ya que son muchos datos y se usa una pistola escáner.

Espero me puedan ayudar para poder realizarlo sin el botón.

Muestro una imagen del formulario

Respuesta
1

Tiene que configurar el escáner para que NO avance al siguiente campo al disparar (esto se hace disparando a un código de barras que trae en el manual) y en el evento Después de Actualizar el campo hace el INSERT INTO... como le indican. Personalmente hago este proceso en mis programas POS.

El escaner solo es para que ingrese los datos al cuadro de texto, pero lo que pido es que ingrese ese dato y luego vuelva el setfocus para el siguiente ingreso.

Efectivamente suprima el retorno de línea no necesita perder el foco.

Exactamente es en el manual donde dice Set Suffix pasar el lector por el código de barras Disable suffix. Este video le ayudará, creo que es su caso.

https://www.youtube.com/watch?v=XoTyxfY3FH0&ab_channel=AplicacionesProductivasSoftware 

Si quiere envíeme la base de datos y la referencia de su escáner y le puedo explicar mejor la configueacion

A [email protected] 

1 respuesta más de otro experto

Respuesta
1

Hago constar que no tengo ni puñetera idea de como funciona un escáner, y por otro lado me "mosquea" que el cuadro de texto serie tenga origen del control. Pero por si puede darte una idea. Mira, si tengo una tabla Copia como en la imagen

Y un formulario Formulario2 con el subformulario Copia, donde puedes ver el cuadro de texto escaner( que sería el tuyo Serie). Le añado(se podría hacer con variables, va a gusto del consumidor) un cuadro de texto B que estaría oculto, pero lo dejo visible para la explicación.

Como ya te dije no sé como funciona el escaner, así que le he puesto que cunado llegue a las cuatro letras, longitus que aparece en el control B, guarde en la tabla Copia, el valor del control Escaner, de forma que

A medida que en escaner voy escribiendo algo, en B me va poniendo su longitud y cuando Escaner llega a 4, me lo pasa a la tabla y por tanto al subformulario, y vuelve todo a cero

escribo otro 

El código del evento Al cambiar del cuadro de texto Escaner es

Private Sub Escaner_Change()
B = Nz([B]) + 1
If B = 4 Then
DoCmd.RunSQL "insert into copia(escaner)values(" & Me.Escaner.Text & ")"
Me.Copia.Form.Requery
Escaner = ""
B = 0
End If
End Sub

Es necesario que en el evento Al activar el registro crees un procedimiento de evento y que te quede

Private Sub Form_Current()
Escaner.SetFocus
End Sub

Por si te sirve de algo

¿Cómo hago para colocar el código de VBA?

O si me podrías enviar un archivo para verlo, te lo agradecería. Para hacer los cambios a mi archivo.

Casi mejor, que ponerlo aquí, pues se vé mejor. Mándame un mensaje, sólo el mensaje a [email protected], y te lo mando.

Si lo haces, en el asunto del mensaje pon tu alias Juann Alex, ya que si no sé quien me escribe ni los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas