locked
realizar manejo de codigo de barras RRS feed

  • Pregunta

  • quisiera q me orientaran acerca del uso de codigo de barras ya q no encuentro la informacion precisa para hacerla, mi proyecto consistira en leer el codigo de barras de los productos q hay en almacen a traves de un dispositivo movil q hara una llamada a la base de datos y el mostrara la informacin del producto  
    domingo, 8 de noviembre de 2009 1:05

Respuestas

  • hola

    en principio no necesitas maenjar el keypress de un TextBox por ejemplo para controlar el input de la lectora, es el evento lostfocus el que encesitas controlar, si la lectira es la standar deberias poder configurarle el caracter final que envie por lo general es un ENTER, aunque esta configuracion puede variar se que es configurable pero depende de cada equipo, esto buscalo en el manual

    igualmente si necesitas un ejemplo la doc del msdn es muy buena

    KeyPress

    aunque ojo que hay otros eventos que por ahi tambien ayuden
    KeyDown

    KeyUp


    - con respect al la imrpesion del codigo, segun veo has instalado la fuente en el SO Windows, pero has realziado la prueba de usarla de Word ?
    o sea abre un documento .doc y seleciona la fuente del codigo de barras que has instalado y tipea directo alli, en el documento deberia escribirte como codigo de barras, sino lo puedes hacer entocnes algo esta mal instalado
    ya que esta es una fuente como cuqlwueir otra que podrias suar en cualquier documento.


    realiza esta prueba y luego comentanos


    - con respecto al DateTimePicker este control muestra un calendario, o sea no puedes cargarlo, simplemente estableces la fecha que necesites, pero no se carga con fechas, por ahi si seleccionas el radiobuton podrias setear la fecha del dia

    DateTimePicker.Value = DateTime.Now;


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 1 de diciembre de 2009 12:42

Todas las respuestas

  • hola

    lo primero que tendrias que determinar es con que notacion codigo de barras vas a trabajar.

    o sea hay varios tipos de notaciones, entre ellas la 39, la 128, etc estas dos son las mas comunes, o al menso con las que trabaje

    luego puedes usar fuentes, como ser:




    si descargas estas fuenters y la instalas en Windows, luego hasta podrias escribir en Word con estas y lo que la fuente genere poder leerlo desde tu dispositivo

    te recomiendo que veras las especificaciones de equipo que usaras y que codigos soporte, luego eleige el que creas se adapte a tus neceidades, y con las fuentes podras solucionar una buena parte del problema

    Se ademas que Crystal Reports por ejemplo también soporta códigos de barras, te lo comento por si necesitas confeccionar etiquetas, podría ser una buen opción armarlas en un reporte


    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    domingo, 8 de noviembre de 2009 1:16
  • Gracias por tu respuesta e decidido trabajar con Free Barcode Font - Code 39 pero tengo una consulta no se como tendria q programar mi software ese es principal mente mi duda no se como hacerlo o q procedimiento se tiene q hacerlo por esa parte quisiera por favor q me dieras algunas referencias te lo agradeceria
    domingo, 8 de noviembre de 2009 23:20
  • hola

    en realidad tu software no tendra grandes cambios si eso es lo que te preocupa, o sea la informacion como la mejeas sigue guadandose en la db tal como lo vienes haciendo

    solo hay dos puntos en donde por ahi debes enfocarte, cuando imprimes por ahi etiquestas o reportes en donde deben estar los codigos, de ahi el uso de las fuentes.

    y cuando lees la inf, que en realidad esto no te afectara en demasiado, ya que los dispositivos de lectura debaran en los textbox o controles de input de tu aplicacion el dato tan cual como si algfuien los ingresara a mano, o sea tu aplicacion nunca se entrara que se realizo una lectura d codigo de barras, simplemente la pareceran los datos y los procesara como si un usuario los tipeara

    por ahi si deberas tener en cuanta algunos eventos del los controeles, por ahi si la lectura desde la pistola lectora de codigos realizas eventos en el keypress bueno esto no podras hacerlos, o algun salto con tab entre controles, o sea ams que nada temas de eventos en la interfaz, que iras viendo a medida que los desarrolles segun el diseño cual es la mejor opcion

    pero por el resto no hay ninguna modificacion, o sea los codigo no se guardan en tu db, si por ejemplo tiene el codigo de producto AACF15698, este es el valor que guardas en tu db, pero cuando imprimes entonces con al fuente de code 39 escribes ese valor y solo saldran las barras para estas letras y números

    - una consulta ya tienes alguna pistola de barras o lector con el que practicar ?, siempre es bueno conseguir una asi puedes probar, asi compruebas lo que lo que te estoy contando.
    Ademas es bueno tenerla así validas que tu aplicación responde bien al input de datos.


    bueno espero haberme explicado bien, cualquier tora cosa consulta
    saludos

    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    domingo, 8 de noviembre de 2009 23:35
  • -MIRA TENGO EL PROBLEMA Q NO ME SALE EL CODIGO DE BARRARAS YA INSTALE CODE 39 ESTE ES EL TIPO DE FUENTE Q ME APARECE:IDAutomationHC39M ESCRIBO UN CODIGO Y CUANDO IMPRIMO ME SALE LAS LETRAS Y NDA MAS COMO ESCRIBI. PERO NO ME SALE NADA UN CONSEJO Q PUEDO HACER :s PLEASE
    - A TAMBIEN UNA COSITA MAS DIGAME A TRAVES DE UN RADIOBUTON PUEDO LLENAR UN DATETIMEPICKER OSEA POR EJEMPLO SI REALIZO CLICK EN EL RADIO BUTON1 ME TIENEN Q APARECER LAS FECHAS EN EL DATETIMEPICKER DE ACUERDO A LA OPCION Q HALLA MARCADO PLEASE UN CONSEJO LE AGRADERE
    martes, 17 de noviembre de 2009 18:36
  • pues quisiera q me den una referencia para programar el evento keypress de mis controles de mi formulario para q  me acepte al momento de pasar la lectora sobre el codigo de barra es q no encuentro una guia porfa!!!!
    martes, 1 de diciembre de 2009 6:43
  • hola

    en principio no necesitas maenjar el keypress de un TextBox por ejemplo para controlar el input de la lectora, es el evento lostfocus el que encesitas controlar, si la lectira es la standar deberias poder configurarle el caracter final que envie por lo general es un ENTER, aunque esta configuracion puede variar se que es configurable pero depende de cada equipo, esto buscalo en el manual

    igualmente si necesitas un ejemplo la doc del msdn es muy buena

    KeyPress

    aunque ojo que hay otros eventos que por ahi tambien ayuden
    KeyDown

    KeyUp


    - con respect al la imrpesion del codigo, segun veo has instalado la fuente en el SO Windows, pero has realziado la prueba de usarla de Word ?
    o sea abre un documento .doc y seleciona la fuente del codigo de barras que has instalado y tipea directo alli, en el documento deberia escribirte como codigo de barras, sino lo puedes hacer entocnes algo esta mal instalado
    ya que esta es una fuente como cuqlwueir otra que podrias suar en cualquier documento.


    realiza esta prueba y luego comentanos


    - con respecto al DateTimePicker este control muestra un calendario, o sea no puedes cargarlo, simplemente estableces la fecha que necesites, pero no se carga con fechas, por ahi si seleccionas el radiobuton podrias setear la fecha del dia

    DateTimePicker.Value = DateTime.Now;


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 1 de diciembre de 2009 12:42
  • mira gracis por la informacion ya pude generar el codigo de barras pero mi problema es ahora la programacion e investigado acerca del evento lostfocus y GetFocus y este es mi codigo final q e llegado:

    lo q quiero hacer aqui es cuando pase el lector de codigo sobre el codgo de barra se active los textbox q ahi pongo donde se muestra los resultados.

    private

     

    void lecturadecodigo_LostFocus(object sender, EventArgs e)

    {
    Windowservice.

    Service1 O = new Windowservice.Service1();

     

    DataSet OB = new DataSet();

    OB=O.lecturadeproducto(

    int.Parse(textBox1.Text));

    textBox2.Text = OB.Tables[0].Rows[0][0].ToString();

    textBox3.Text = OB.Tables[0].Rows[0][1].ToString();

    textBox4.Text=OB.Tables[0].Rows[0][2].ToString();

    textBox5.Text=OB.Tables[0].Rows[0][3].ToString();

    textBox6.Text=OB.Tables[0].Rows[0][4].ToString();

    textBox7.Text=OB.Tables[0].Rows[0][5].ToString();

    textBox8.Text=OB.Tables[0].Rows[0][6].ToString();

     

     

    }
    pero no se si es lo correcto por q me dicen q tengo q acer un juego entre los dos eventos lostfocus y getfocus en verda no entiendo muchpo me podria ayudar por favor se lo agradecere

    miércoles, 2 de diciembre de 2009 18:46
  • hola

    claro esa es la idea, vas a tener que jugar con los eventos.

    o sea a ver por ahi va a depender de como es la oepratoria del sistema ya que puede variar segun lo que necesitas hacer

    si la idea es que se lea un valor, se muestre en pantalla informacion, o se aregistre la lectura y solo eso, anda mas, entonces seguramente uses el lostfocus del textbox, pero cuando termina el evento vas a tener que devolverle el foco ya que necesitas prepararlo para la proxima lectura

    private void lecturadecodigo_LostFocus(object sender, EventArgs e)
    {
       // aqui procesas
      
       lecturadecodigo.Focus();
    }

    Focus


    Ahora bien, si lo que necesitas es que el usuario opere con al aplicacion aqui al tecnica de arriba no funciona, por ahi deberias permitir que libremente se use la aplicacion, y solo procesas el lostfocus cuando esta en determiando campo, pero permites tambie el ingreso manual de datos, o sea la utilizacion de la aplicacion es algo asm libre ya que necesitas el input de ciertos datos por parte del usaurio, aqui solo capturas el lost focus y cargas la infor leida del lector, pero despeus dejas que el usuario posicione el foco manualmente para una nueva lectura
    En esta alternativa no hay otra ya que necesitas interaccion por parte del usuario


    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    miércoles, 2 de diciembre de 2009 19:57
  • bueno gracias por el consejo pero mi formulario q va hacer para la lectura de codigo de barras solo va a funcionar al momento q la persona ponga el lector encima del codigo de barras se tienen q llenar tosdos los textbox de acuerdo al codigo de barras lo q yo no entiendo q tendria q configurar el formulario o tambien los textboxt porfa lo q yo e codificado es en mi formulario con lostfocus pero esto es lo q te digo si esta bien estoy con dudas :

     

    private void lecturadecodigo_LostFocus(object sender, EventArgs e)

     

    Service1 O = new Windowservice.Service1();

     

     

    DataSet OB = new DataSet();

    OB=O.lecturadeproducto(

     

    int.Parse(textBox1.Text));

    textBox2.Text = OB.Tables[0].Rows[0][0].ToString();

    textBox3.Text = OB.Tables[0].Rows[0][1].ToString();

    textBox4.Text=OB.Tables[0].Rows[0][2].ToString();

    textBox5.Text=OB.Tables[0].Rows[0][3].ToString();

    textBox6.Text=OB.Tables[0].Rows[0][4].ToString();

    textBox7.Text=OB.Tables[0].Rows[0][5].ToString();

    textBox8.Text=OB.Tables[0].Rows[0][6].ToString();

     

     

    }
     please

    {
    Windowservice.

    miércoles, 2 de diciembre de 2009 20:47