Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    lettore codice a barre da porta com

    Salve,
    ho realizzato una classe per leggere il codice a barre tramite porta com.
    Spulciando un po di qua e la funziona tutto.
    Il mio problema rimane nella fase di salvataggio del dato letto in una tabella sqlserver.
    Sfrutto gli eventi della porta seriale, nel 'evento SerialPortEvent.DATA_AVAILABLE: .
    Il problema e che il bufer di lettura è 8 bit , ma il mio codice risuta un po piu lungo....,l'evento starta piu volte fino all'esaurirsi della stringa.

    per capirci meglio volevo all'evento della lettura del codice a barre ,inserire il testo letto nella tabella ...

    Qualche personcina mi puo aiutare ..


  2. #2

    Re: lettore codice a barre da porta com

    Originariamente inviato da tomasella_denis
    Salve,
    ho realizzato una classe per leggere il codice a barre tramite porta com.
    Spulciando un po di qua e la funziona tutto.
    Il mio problema rimane nella fase di salvataggio del dato letto in una tabella sqlserver.
    Sfrutto gli eventi della porta seriale, nel 'evento SerialPortEvent.DATA_AVAILABLE: .
    Il problema e che il bufer di lettura è 8 bit , ma il mio codice risuta un po piu lungo....,l'evento starta piu volte fino all'esaurirsi della stringa.

    per capirci meglio volevo all'evento della lettura del codice a barre ,inserire il testo letto nella tabella ...

    Qualche personcina mi puo aiutare ..


    nessuno ??????

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    La problematica non è affatto chiara.
    Il problema sta nella lettura da seriale, nella lettura dallo specifico device, nella lettura della lunghezza corretta o nell'inserimento in DB?

    La cosa che mi pare strana è che tu parli di "lettura di codici a barre" da seriale. Generalmente i lettori di codici a barre sono visti dal sistema esattamente come fossero una tastiera (i lettori quelli "a pistola", infatti, vengono collegati nello stesso alloggiamente della tastiera, la PS2): sono loro che si occupano di leggere il codice barre, decodificarlo e spedirlo al PC come semplice stringa di caratteri (esattamente come se qualcuno avesse semplicemente digitato il valore del barcode sulla tastiera). Quindi, sarebbe opportuno, inizialmente, specificare bene che tipo di dispositivo usi e cosa ricevi in input.

    Altri dispositivi seriali (come ad esempio le bilance elettroniche) funzionano in modo diverso: loro sparano sulla seriale, in modo continuo, il valore da trasmettere seguito da un terminatore (ciascun dispositivo ha la sua specifica). Quindi, prendendo come esempio la bilancia, verrà inviato di continuo una stringa di zeri (ad esempio, di lunghezza 10) seguita da un terminatore finchè non viene poggiato qualcosa sul piatto. Nel momento in cui viene poggiato qualcosa sul piatto viene spedita in continuazione la lettura del peso (ad esempio, per un prodotto di 10 KG su una bilancia con precisione di grammo, verrà spedita la stringa 0000010000 in continuo). Il problema in questo caso è l'allineamento della lettura: è necessario leggere e scartare finchè non si raggiunge il terminatore, quindi continuare a leggere e memorizzare finchè non si raggiunge nuovamente il terminatore.

    Devi però specificare meglil il problema, perchè se si tratta solo di scrivere qualcosa nel DB servono altre info.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4

    lettore codice a barre sa seriale

    Grazie leleft per la tua risposta.
    Volevo segnalare che la pistola è collegata su porta com, e non è una umulatore di tastiera.
    Infatti devo leggere il buffer sulla seriale.
    Vado a leggere il buffer utilizzando l'evento (buffer ready )della classe serialport , tutto funziona,ho visto pero che il metodo read della suddetta classe restituisce un tipo byte, ed il mio codice da leggere è lungo 16 caratteri, infatti fa due giri finche il buffer è vuoto.
    Il problema è infatti su questo, pensavo di scrivere il codice letto tramite l'evento della porta su db , ma putroppo non posso a punto xche eseguo piu volte per la stessa stringa l'evento (buffer ready )....
    volevo avere delle idee alternative.
    per il carattere terminatore ho provato ma non ho trovato nulla ..
    Se magari mi puoi aiture ti posto il codice....
    fammi sapere



Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.