Page 1 of 1

Lector código de Barras.

Posted: Wed Apr 18, 2007 9:39 pm
by FiveWiDi
Hola a todos,

A ver si me pueden dar alguna idea u orientarme en resolver lo siguiente.

Debo diseñar una pantalla para capturar _ independientes mediante un lector de código de barras.
Debo leer varios códigos de barras y asociarlos a personas.

¿Cómo realizarían ustedes el cambio de campo cuando se lee un código de barras mediante un lector? ¿Cómo saltarían al siguiente campo a capturar?
Una de las maneras es pulsando Intro manualmente entre captura y captura, pero quiero evitar la accíón manual del usuario.

¿Se les ocurre como podría definir un TIMER que entre pulsación y pulsación según alguna circunstancia cambiara el foco de un control a otro?

¿Un TIMER sería la solución?

Saludos y gracias
Carlos G.

Posted: Thu Apr 19, 2007 12:09 pm
by Antonio Linares
Carlos,

Podrías usar el dato bChange del GET para controlar la longitud del texto escrito y una vez escrita la longitud completa llamar a oDlg:GoNextCtrl():

oGet1:bChange := { || If( Len( RTrim( oGet:GetText() ) ) == <n>, oDlg:GoNextCtrl( oGet1:hWnd ),) }

Lector de código de barras.

Posted: Thu Apr 19, 2007 3:17 pm
by FiveWiDi
Gracias Antonio,

más o menos por ahí estoy pensando solucionar el tema.

Lo que se me ocurre es que mediante ::bpostkey si la longitud del cBuffer es >0 Activar un Timer que al cabo de 0,x segundos se desactive y cambie de foco hacia el siguiente oGet o realice una acción concreta (añadido a una array, etc.).

De esta menera no condiciono la longitud de la lectura efectuada, ya que se captaría todo el código de barras de manera muy rápida (supongo).

De momento empezaré por ahi a ver que tal va simulando pulsaciones rápidas en un oGet.

Saludos y gracias.
Carlos G.

Posted: Thu Apr 19, 2007 4:37 pm
by pymsoft
Muchos lectores de codigos de barras agregan automaticamente ENTER, o sea, que cuando lee, va automaticamente al campo siguiente.

Saludos.

Posted: Fri Apr 20, 2007 6:35 am
by FiveWiDi
pymsoft wrote:Muchos lectores de codigos de barras agregan automaticamente ENTER, o sea, que cuando lee, va automaticamente al campo siguiente.

Saludos.
Gracias, va bien saberlo.

Ya estaba otra vez matando _ a cañonazos.

Saludos
Carlos G.