Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117

    [VS 2010] - Distinguere l'input da tastiera da quello dello scanner di codici a barre

    Ciao a tutti!
    Sto sviluppando un applicazione che utilizzerà uno scanner di codici a barre!

    Il problema è il solito che si riscontra utilizzando queste periferiche di input (da quanto ho letto in giro) ovvero che essendo lo scanner impostato su emulazione tastiera (visto che non ho trovato ne librerie ne guide su come comunicare via codice con la periferica in giro) è un problema non avere una netta distinzione tra il momento in cui l'utente utilizza la pistolina o sta effettivamente usando la tastiera!

    Ho letto in questo topic

    http://forum.html.it/forum/showthrea...eadid=1530257&

    che l'ideale è calcolare l'intervallo tra una pressione e l'altra dei caratteri (visto che lo scanner sarà sempre e comunque più veloce di un essere umano) e mi sembra un'escamotage accettabile!

    Il problema è che incollando il codice della classe nel mio progetto di prova mi da una sfilza di errori incredibile...

    (io ho inserito una nuova classe al progetto e incollato il codice)

    Non son molto pratica di classi quindi volevo sapere se c'è un modo particolare per inserire/usare quel codice o (ancora meglio) se dalla scrittura di quel topic è stata inserita qualche funzione speciale/particolare per l'utilizzo degli scanner di codici a barre!

    Grazie a tutti!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    758
    Ciao.
    Normalmente gli scanner di codici a barre permettono, impostando qualche opzione di configurazione, di anteporre e/o posporre alcuni caratteri alla stringa corrispondente al codice a barre. Questo può essere un modo per riconoscere l'origine della lettura.

  3. #3
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da Veronica80 Visualizza il messaggio
    Il problema è il solito che si riscontra utilizzando queste periferiche di input /cut/ è un problema non avere una netta distinzione tra il momento in cui l'utente utilizza la pistolina o sta effettivamente usando la tastiera!
    Onestamente non mi risulta, anzi è esattamente il contrario.
    L'emulazione è fatta apposta, e non è un caso che la maggior pare di modelli usi l'interfaccia USB.

    Perché mai dovrebbe essere un problema?

    L'emulazione di tastiera serve per determinate azioni,in cui l'operatore viene agevolato dal fatto che può leggere, ed inserire in un form, una serie di barcode a ripetizione senza toccare altro.

    Se non è quello che ti serve, allora devi riconfigurare il lettore, ma in tal caso se il lettore è USB, dovresti installare/configurare affinché possa essere utilizzato come porta COM, sulla quale però poi devi fare lo scan continuo per acquisire i dati, con tutti i problemi di sviluppo che ne derivano.

  4. #4
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    Gibra il problema è che usando lo scanner in emulazione tastiera (perchè nell'altra modalità nemmeno ci provo!!) si può verificare "confusione" tra l'utilizzo dello scanner e quello della tastiera!

    Per esempio: Il modello che uso io dopo aver "digitato" il codice emula la pressione del tasto "INVIO", io capisco che ha finito da questo e vado ad inserire il prodotto! Se però (per sbaglio o meno) l'utente preme invio ovviamente il software (non facendo distinzione tra tastiera e scanner) va ad inserire di nuovo il prodotto (ma vuoto non essendoci codice)....

    Spero di essermi spiegata un po meglio!

    Nel link che ho postato c'è una soluzione a questo problema solo che non so perchè da me non funziona....da 10000 errori

    Ps: si il lettore è USB ed ho un manuale pieno di codici a barre che servono per configurarlo in automatico! Se serve posso mandare sia il manuale in pdf che il nome del modello in pvt (visto che non so se posso far "pubblicità" al modello qui)!

    CIAO

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    106
    forse non ho capito bene il problema, ma non puoi fare dei controlli prima di inserire il prodotto?

    ad esempio che la text non sia vuota e che la lunghezza dei caratteri inseriti sia corretta o che sia numerico (se non è un code 128)

  6. #6
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    Vorrei evitare di usare una textbox, mi serve qualcosa di rapido per l'utente e star fissi a selezionare la text è un po scomodo!
    Sto mettendo tutti i key_Press impostando gli handle su tutti i controlli del form!
    Però siccome quando si inserisce l'oggetto vanno inserite anche varie caratteristiche (tipo il nome dell'oggetto ) ho necessità di poter usare la tastiera in modo normale senza aver paura che mi partano inserimenti.

    Ripeto......: Nel link che ho postato ci sarebbe la soluzione al mio problema....solo che non funge...

  7. #7
    Ciao, la metodologia usata con quel codice, secondo me, non è la strada più sicura da adottare.
    Quello che ti stanno dicendo gli altri è di trovare un'altro tipo di soluzione per risolvere la tua problematica (più elegante e funzionale)

    Quote Originariamente inviata da Veronica80 Visualizza il messaggio
    Gibra il problema è che usando lo scanner in emulazione tastiera (perchè nell'altra modalità nemmeno ci provo!!) si può verificare "confusione" tra l'utilizzo dello scanner e quello della tastiera!

    Per esempio: Il modello che uso io dopo aver "digitato" il codice emula la pressione del tasto "INVIO", io capisco che ha finito da questo e vado ad inserire il prodotto! Se però (per sbaglio o meno) l'utente preme invio ovviamente il software (non facendo distinzione tra tastiera e scanner) va ad inserire di nuovo il prodotto (ma vuoto non essendoci codice)....
    Per l'esempio che hai fatto, come già ti è stato suggerito, anche se l'utente preme invio senza inserire il codice, sei tu che, prima di procedere, devi verificare il codice sia corretto, altrimenti non lo fai proseguire...
    Jupynet

  8. #8
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    Ok...ma non ho idea di come fare a capire quando se ciò che è stato digitato è frutto della tastiera o dello scanner :/

    io popolo una variabile col codice (utilizzando l'evento key_press su tutti i controlli e prendendo come "termine della digitazione" la pressione di ENTER) e si che il key_press avvenga x digitazione da tastiera o da scansione del lettore questo avviene
    ho capito cosa mi state suggerendo ma non riesco a capire il modo in cui ottenerlo...

  9. #9
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da Veronica80 Visualizza il messaggio
    Gibra il problema è che usando lo scanner in emulazione tastiera (perchè nell'altra modalità nemmeno ci provo!!) si può verificare "confusione" tra l'utilizzo dello scanner e quello della tastiera!

    Per esempio: Il modello che uso io dopo aver "digitato" il codice emula la pressione del tasto "INVIO", io capisco che ha finito da questo e vado ad inserire il prodotto! Se però (per sbaglio o meno) l'utente preme invio ovviamente il software (non facendo distinzione tra tastiera e scanner) va ad inserire di nuovo il prodotto (ma vuoto non essendoci codice)....
    Ma questo non c'entra proprio nulla!

    Scusa, non è un problema di 'chi' inserisce, ma dello sviluppatore (TU) che deve prevedere delle verifiche dovute.
    L'errore che fai è nel permettere di inserire un codice vuoto!

    Non so che cosa stai sviluppando, ma di sicuro non ho mai visto programmi che lasciano inserire campi vuoti, a meno che ciò non sia previsto, ovvero non sono campi 'obbligatori'.

    Nelle mie routine, oltre alla verifica di validazione del dato inserito, ho sempre una routine VerificaCampi() che mi controlla se i campi obbligatori sono stati inseriti che chiamo prima della routine di registrazione.

  10. #10
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,117
    GiBra come al solito non riesco a spiegarmi!
    anche io verifico sempre che non sia vuoto il
    campo...però ti faccio un esempio:

    io sparo il codice con lo scanner scatenando l'evento key_press a prescindere da dove sia il focus e il software gestisce la variabile (che non sia vuota ecc) e fa l'inserimento (tutto ok funziona). Se però per caso nello stesso form (per un qualsiasi motivo) utente immette una serie di caratteri la variabile codice verrà valorizzata da questa digitazione (visto che si scatena di nuovo l'evento key_press) e io non ho modo di sapere se quello è un codice (digitato dallo scanner) o delle digitazioni (anche accidentali) fatte dall'utente da tastiera!

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.