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-Key: 282805

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

Printed on: April 25, 2024 at 21:04 o'clock

Member: broecker
broecker Sep 14, 2015 updated at 07:34:43 (UTC)
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
Member: wiesi200
wiesi200 Sep 14, 2015 at 08:00:11 (UTC)
Goto Top
Hallo,

ich fang die Daten vom Barcodescanner eigentlich immer über COM Port ab.
Die meisten USB Scanner können den auch emulieren.
Member: Aktuator
Aktuator Sep 14, 2015 at 08:26:24 (UTC)
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
}
}
Member: colinardo
colinardo Sep 14, 2015 updated at 08:51:00 (UTC)
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
Member: wiesi200
wiesi200 Sep 14, 2015 at 08:48:12 (UTC)
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.
Member: colinardo
colinardo Dec 30, 2015 at 19:13:16 (UTC)
Goto Top
Wenns das dann war, den Beitrag bitte noch auf gelöst setzen. Merci.

Guten Rutsch.