Barcode-Objekt (iScript) #
Das Barcode-Objekt wird automatisch bei Eingang eines Barcodes über die serielle Schnittstelle erzeugt und steht innerhalb des VBScript-Codes der OnScan.VBS Ereignisbehandlungsroutine zur Verfügung. Voraussetzung hierfür ist die Software-Option “Serielle Barcodelesegeräte”.
Eigenschaften #
property RawData: string read
Rohdaten, wie sie vom Scanner kommen inkl. aller Meta-Daten, wie Präfix oder Suffix
property Data: string readonly
ohne Prefix, Postfix, AIM
property Quantity: Integer readonly
Eine ganzzahlige Mengenangabe, falls der Barcode-Scnner dies unterstützt
property AIM: string read
AIM Code+Modifier, aber ohne eckige Klammer “]”
property AIMSymbology: string read
AIM nur Code (Buchstabe)
property AIMModifier: string read
AIM nur Modifier (Ziffer)
property SymbologyName: string read
Anzeigename der Symbologie zum Beispiel “Code 128”
property Prefix: string read
Prefix/Postfix, falls vorhanden
property Postfix: string readonly
Prefix/Postfix, falls vorhanden
property IsHandled: Boolean readonly
prüft, ob “Handled” aufgerufen wurde
property Action: string read/write
was soll gemacht werden - momentan ‘NAVIGATE’, ‘INSERT’, ‘PASTEORINSERT’
property ActionData: string read/write
property ScanTime: DateTime readonly
Genauer Zeitpunkt des Scans.
property AcknowledgeText: string read/write
property StampingAddress: string readonly
Bei einigen Funkscannern wird hier die eindeutige Adresse des Scanners abgelegt, der den Scan ausgelöst hat
property Acknowledged: Boolean readonly
property HasDisplay: Boolean readonly
Methoden #
procedure Acknowledge
Bestätigt dem Barcodelesegerät den eingescannten Barcode, falls dies vom Gerät gefordert bzw. unterstützt wird. Hierbei wird der über AcknowledgeText hinterlegte Text an das Gerät übergeben. Dieser Text kann auch Steuercodes zum Auslösen eines Piep-Tons oder zum Aktivieren einer farbigen LED enthalten. Nähere Informationen entnehmen Sie der Dokumentation des jeweiligen Scanners.
procedure SendMessage( Msg: string)
Sendet einen Text an das Gerät, welches diesen Barcode eingescannt hatte - falls dies vom Gerät unterstützt wird.
procedure Handled
Wenn im OnScan-Ereignis bereits eine Behandlung durchgeführt wurde, muss “Handled” aufgerufen werden, um EULANDA mitzuteilen, das keine weitere Verarbeitung erfolgen soll.
Methoden zum Zugriff auf die Application Identifier (AI) #
Datamatrix oder auch Code 128 nach dem GS1-Standard können verschiedene Informationen gleichzeitig enthalten - Zum Beispiel Seriennummer und Haltbarkeitsdatum. Die einzelnen Daten werden hierbei über sog. Application Identifier (Anwendungs-Identifikatoren) gekennzeichnet. Diese AIs sind von der GS1-Organisation festgelegt. Z.B. wird mit “01” die GTIN (ehem. EAN) und mit “10” eine Chargennummer eingeleitet.
function AiIndex(aAI: string): Integer
Index eines bestimmten AIs bzw. -1, falls dieses nicht vorhanden ist
function HasAI(aAI: string): Boolean
AI vorhanden?
function AiValue(aAI: string): Variant;
Wert eines AIs (Float,string oder Datum) oder NULL, falls nicht gefunden
function AI(Index: Variant): Variant;
Das AI als Options. Index kann Integer oder String sein
function AiCount: Integer;
Anzahl der vorhandenen AIs
Globale barcoderelevante Methoden #
function Client.CreateObject("LASTBARCODE"): Barcode
gibt das Barcode-Objekt des zuletzt gescannten Codes zurück oder löst einen Fehler aus, falls noch kein Code gescannt wurde
procedure ellib.internlib.HandleBarcode(BarcodeFragment: string)
Simulation eines Barcode-Leseereignisses. Als Fragment muss der komplette Code angegeben werden - inkl. eventuell hinterlegter Präfixe, Suffixe
function ellib.BarcodeSendMessage(StampingAddress,Msg: string): Boolean
Falls das Lesegerät die Anzeige von Mitteilungen unterstützt, kann an das Gerät ein Text gesendet werden. Hierfür ist die Funkadresse des Scanners notwendig.
function ellib.BarcodeBroadcast(Msg: string): Boolean
Falls das Lesegerät die Anzeige von Mitteilungen unterstützt, kann an alle angeschlossenen Geräte ein Rundruf abgegeben werden
function ellib.InitBarcode(Options: string): Boolean
Öffnet die serielle Schnittstelle. Falls Options nicht angegeben wird, werden die in der Registry hinterlegten Standardoptionen verwendet.
Beispiel: ellib.InitBarcode "port=COM4"
procedure ellib.FinitBarcode
schließt die serielle Schnittstelle
Debuggen #
Wenn EULANDA mit dem Parameter -debugconsole
gestartet wird, werden sämtliche Barcode-Ereignisse im Konsolenfenster ausgegeben.
Beispielausgabe #
[BARCODE] RawData 00000017066B@]d2è90AT001↔25009E310120000001↔11090131240PRODUCT_CODE↔37500
[BARCODE] AddressStamping 00000017066B
[BARCODE] AIM d2 (Datamatrix)
[BARCODE] Data è90AT001↔25009E310120000001↔11090131240PRODUCT_CODE↔37500
[BARCODE] ParseAI: 90 AT001
[BARCODE] ParseAI: 250 09E310120000001
[BARCODE] ParseAI: 11 31.01.2009
[BARCODE] ParseAI: 240 PRODUCT_CODE
[BARCODE] ParseAI: 37 500
Verfügbare COM-Ports #
Eine Liste der verfügbaren seriellen Anschlüsse kann über den Befehl ellib.AvailableComPorts
ermittelt werden.
Beispiel im iScript-Editor
ellib.ShowMessage ellib.AvailableComPorts