aktuator
Goto Top

Erkennen ob Eingabe über Barcodescanner oder Tastatur kommt

Hallo,

haben eine Accessdatenbank am laufen für Artikelverwaltung und nutzen seit kurzem USB Barcodescanner um Artikel einzuscannen.
Wird der Scanner genutzt, werden die Daten in das Feld eingetragen in dem der Cursor steht, was aber nicht immer korrekt sein muss.

Deshalb wäre es jetzt gut, wenn man erkennen könnte, ob die Eingabe über den Scanner erfolgt ist. Dadurch kann dann wiederum gesteuert werden, dass der Cursor zuerst in das richtige Feld springt und die Eingabe richtig zugeordnet wird.

Hat jemand eine Idee wie man das erkennen kann?

Gruß
Aktuator

Content-ID: 282805

Url: https://administrator.de/contentid/282805

Ausgedruckt am: 25.11.2024 um 17:11 Uhr

broecker
broecker 14.09.2015 aktualisiert um 09:34:43 Uhr
Goto Top
bei vielen Barcodescannern kann man einstellen, daß vor (und auch nach) dem eigentlichen Code eine fixe Zeichenkette übertragen werden soll. Gedacht ist das für LF und CR, aber eine eindeutige "schwierige" Sequenz wie "JeTzT-BaR-CoDe:" würde die Unterscheidbarkeit sicherstellen, sicherheitskritisch ist das ganze ja nicht.
HG
Mark
wiesi200
wiesi200 14.09.2015 um 10:00:11 Uhr
Goto Top
Hallo,

ich fang die Daten vom Barcodescanner eigentlich immer über COM Port ab.
Die meisten USB Scanner können den auch emulieren.
Aktuator
Aktuator 14.09.2015 um 10:26:24 Uhr
Goto Top
@Mark,
vielen Dank! Diese Idee hatte ich auch schon, scheitert aber leider daran, dass ich ca. 40 Felder auf dem Formular habe und ich dann jedem Feld beibringen müsste den Input auf diese Zeichenkette zu prüfen.

@wiesi2000
und wie prüfst Du das? Nach sowas suche ich im Prinzip. Pseudocode:
{
wenn eingabe von COM Schnittstelle ODER von USBPort1 DANN
{
springe in Feldxyz
}
}
colinardo
colinardo 14.09.2015 aktualisiert um 10:51:00 Uhr
Goto Top
Hallo Aktuator,
Diese Idee hatte ich auch schon, scheitert aber leider daran, dass ich ca. 40 Felder auf dem Formular habe und ich dann jedem Feld beibringen müsste den Input auf diese Zeichenkette zu prüfen.
du kannst in den Eigenschaften des Formulars die Eigenschaft Tastenvorschau auf Ja festlegen dann werden Tastendrücke für das Formular vor den Events aller anderen Steuerelemente verarbeitet. Dann kannst du z.B. in dem Event Bei Taste (Form_KeyPress) des Fornulars, diese abfragen und darauf reagieren z.B. SetFocus auf das entsprechende Feld.

Sicherer wäre es aber direkt über die Abfrage des COM-Ports, wie @wiesi200 schon erwähnt hat.

Grüße Uwe
wiesi200
wiesi200 14.09.2015 um 10:48:12 Uhr
Goto Top
Mit Access Programmierung hab ich jetzt nicht viel am Hut aber im Endeffekt mach ich's so. Hauptsächlich arbeite ich auch mit mobilen Geräten.

bei Öffenen des Programm's öffne ich auch den COM Port
und sobal's ein Data Recieve Event gibt führ ich das aus was ich normal über das Zielfeld mache. Das können je nach Situation unterschiedliche Sachen sein

Sprich ich springe jetzt nicht in das Feld.
colinardo
colinardo 30.12.2015 um 20:13:16 Uhr
Goto Top
Wenns das dann war, den Beitrag bitte noch auf gelöst setzen. Merci.

Guten Rutsch.