DENSO BHT-M80端末制御モジュールの機能一覧

 

 

Biz/Browser HTと外部サービスを連携する機能「ExternalService」クラスを用いて使用することができるメソッドの一覧です。
サービスの使い方については、Biz/Browser HTのExternalServiceクラスのリファレンスも参照してください。

※正しく動作させるためには、端末のOSバージョンを最新にする必要があります。

 

本モジュールとリファレンスについて

メーカ

対応モジュール

対応機種

サービスID値

バージョン

Biz/Browserの対応バージョン

デンソーウェーブ

BHTv2版

(Android 13以降のバージョンに対応)

Xnavis X-N10
Xnavis X-N15
BHT-M60
BHT-M70
BHT-M80

jp.co.opst.biz.util.poweruptool.densoBHTM80poweruptool/.MainService

v1.2.0

v1.2.6以上

BHTv1版

(Android 13より前のバージョンに対応)

BHT-M60
BHT-M70
BHT-M80

jp.co.opst.biz.util.poweruptool.densoBHTM80poweruptool/.MainService

v1.1.0

v1.2.6以上

※掲載されている会社名や製品名は、一般に各社の商標または登録商標です。

 

使用例

/* 本端末制御モジュール専用サービスID(本サービスにおいて固定値) */
String SERVICE_ID = "jp.co.opst.biz.util.poweruptool.densoBHTM80poweruptool/.MainService";
/* メソッド名称 */
String METHOD_NAME = "playBuzzer";

ExternalService sv{
	Function OnBoundStateChanged(e){
		if(e.state == "Bound"){
			//.Messagebox("サービスと接続しました");
		}
	}
}
Button btn1{
	Function OnTouch(e){
		^.sv.bind(^.SERVICE_ID);
	}
}

Button btn2{
	Function OnTouch(e){
		^.sv.invoke(^.METHOD_NAME, 7, 2000);
	}
}

 

目次

 

メソッド名 概要
startScanBarcode バーコードの読み取り処理を行い、読み込んだバーコードのデータおよび種別を返します。
startScanBarcodeContinuous 連続スキャンを開始します。
stopScanBarcode 連続スキャンを終了します。
setOCREnable 各スキャン時にOCR機能を有効にするかどうかを変更し、スキャナを再初期化します。
setOCRSettingsFile OCRの設定ファイルを読み込んで設定をロードします。
setBarcodeEnabled 指定したバーコードを読み取り対象にするかどうかを指定します。
isBarcodeEnabled 指定したバーコードが読み取り対象かどうかを取得します。
setUserDefineKey 端末のハードウェアキーに、別のキーコードを設定します。
getUserDefineKey 端末のハードウェアキーに割り当てられているキーコードを取得します。
systemShutdown 端末の電源をオフにします。
systemReboot 端末の電源を再起動します。
ReadBarcodeイベント 連続スキャンでバーコードを読み取ったときに発生します。

 

startScanBarcodeメソッド

説明

バーコードの読み取り処理を行い、読み込んだバーコードのデータおよび種別を返します。

バーコードの読み取りに成功するかタイムアウト時間が経過するまでスキャンを行います。

スキャンが終了し、このメソッドが結果を返すまで処理は戻りません。

 

OCR読み取りが有効である場合、本メソッドで開始したスキャンでOCR文字列も読み取ることができます。

 

呼出形式

var res = extsv.invoke("startScanBarcode", timeoutMs);

 

戻り値

以下の3つの要素を持つ連想配列のArrayオブジェクト

 

integer		type	バーコードの種類
String		data	バーコードのデータの文字列表現
String		rawdata	バーコードのデータの生データ(バイト列)をBase64エンコードした文字列(※)

※Biz/BrowserのBase64Decoderクラスを用いてBase64デコードすることでバイナリデータを復元することができます。
 読み込むバーコードに日本語の文字を含む場合や、バイナリデータを含む場合に使用できます。

 

バーコードの種類はそれぞれ下記に対応しています。

 

その他のシンボルを有効にしたい場合は、setBarcodeEnabledメソッドを使用するか、下記のように設定を行ってください。

1.端末の設定アプリ「ScanSetting」のシンボル設定から個別に有効化してください。

2.端末の設定アプリ「ScanSetting」の「この設定を優先する」をチェックしてください。

 

引数

integer timeoutMs

スキャンのタイムアウト時間[msec]。0以下の値を設定するとデフォルトの時間だけ待機します。
デフォルトのタイムアウト時間は7秒です。

 

使用例

var res = extsv.Invoke("startScanBarcode", 3000);
//.MessageBox("データ:" + res[0]["data"] + "/種類:" + Str(res[0]["type"]) + "/生データ:" + Base64Decoder.Convert(res[0]["rawdata"]));
	

 

startScanBarcodeContinuousメソッド

説明

連続スキャンを開始します。

バーコードを読み取ると、ExternalServiceオブジェクトからReadBarcodeイベントが発生します。

読み取ったバーコードのデータはReadBarcodeイベントから取得することができます。

連続スキャンを停止する場合は、stopScanBarcodeメソッドを呼び出します。

 

OCR読み取りが有効である場合、本メソッドで開始したスキャンでOCR文字列も読み取ることができます。

 

呼出形式

extsv.invoke("startScanBarcodeContinuous", sameInterval);

 

戻り値

なし

 

引数

integer sameInterval

同一バーコードの二度読み防止時間を、100ミリ秒単位で指定します。
1以上を設定すると、同一のバーコードを設定した時間が経過するまで読み取りません。
0以下を設定すると、同一バーコードは異なるバーコードを読み取るまで読み取りません。

※同じバーコードが読み取り範囲内にある場合、読み取り範囲外に出るまでは読み取られません。

 

使用例

ExternalService exs{
	Function OnReadBarcode(e){
		^.Label1.value = e.type + " : " + e.data ;
	}
}
Button Button51 {
    X = 199;
    Y = 333;
    Width = 80;
    Height = 54;
    Title = "スキャン開始";

    Function OnTouch( e ) {
        ^.exs.Invoke("startScanBarcodeContinuous", 3);
    }
}
		

 

stopScanBarcodeメソッド

説明

連続スキャンを終了します。

 

呼出形式

extsv.invoke("stopScanBarcode");

 

戻り値

なし

 

引数

なし

 

setOCREnableメソッド

説明

各スキャン時にOCR機能を有効にするかどうかを変更し、スキャナを再初期化します。

OCRライセンスが有効でない場合など、再初期化に失敗した場合は例外が発生します。

 

呼出形式

extsv.invoke("setOCREnable", enabled);

 

戻り値

なし

 

引数

boolean enabled

OCR設定を有効にするかどうか。trueなら有効にし、それ以外の場合は無効にします。

 

 

setOCRSettingsFileメソッド

説明

OCRの設定ファイルを読み込んで設定をロードします。

ファイルが存在しないときや、ロードに失敗したときは例外が発生します。

※OCR設定は端末付属のアプリ「BHT OCR」を用いて設定し、エクスポートできます。

 

呼出形式

extsv.invoke("setOCRSettingsFile", filepath);

 

戻り値

なし

 

引数

String filepath

設定ファイルのファイルパスを、外部ストレージからの相対パスで記載します。(例: ocr_settings.zip)

 

 

setBarcodeEnabledメソッド

説明

指定したバーコードを読み取り対象にするかどうかを指定します。

※すべてのバーコードシンボルを同時に無効化することはできません。

 

呼出形式

var res = extsv.invoke("setBarcodeEnabled", type, enabled);

 

戻り値

成功した場合はtrueを、失敗した場合はfalseを返します。

 

引数

integer type

設定を行うバーコードの種類を指定します。

バーコードの種類はそれぞれ下記に対応しています。

バーコードの種類
1EAN-13(JAN-13) (※1)
2EAN-8(JAN-8)
3UPC-E
5AZTEC
7iQR(※2)
8STF(Standard 2 of 5)
9ITF(InterLeaved 2 of 5)
11CODE-128(※3)
12CODE-93
13CODE-39
14CODABAR(NW-7)
17QR/MicroQR
18GS1 DataBar
21GS1 Composite CC-A/B/C
23GS1-128 (※4)
24MaxiCode
25PDF417/MicroPDF
26Data Matrix
28OCR

 

※1 "UPC-A"は"1"と識別されます。設定の切り替えは"EAN-13(JAN-13)"を変更してください。

※2 Xnavis X-N10/15は非対応です。

※3 "ISBT-128"は"CODE-128(11)"と識別されます。設定の切り替えは"CODE-128(11)"を変更してください。

※4 設定の切り替えは"CODE-128"を変更してください。

 

本機能の設定を動作へ反映させるために、端末の設定アプリ「ScanSetting」の「この設定を優先する」のチェックを外す必要があります。

 

 

boolean enabled

読み取りを行う場合はtrueを、読み取りを行わない場合はfalseを指定します。

 

isBarcodeEnabledメソッド

説明

指定したバーコードが読み取り対象かどうかを取得します。

 

呼出形式

var res = extsv.invoke("isBarcodeEnabled", type);

 

戻り値

読み取り対象である場合はtrueを、読み取り対象ではない場合はfalseを返します。

 

引数

integer type

設定を取得するバーコードの種類を指定します。

バーコードの種類はそれぞれ下記に対応しています。

 

setUserDefineKeyメソッド

説明

端末のハードウェアキーに、別のキーコードを設定します。

 

呼出形式

var res = extsv.invoke("setUserDefineKey", sourceKeyCode, destKeyCode);

 

戻り値

成功した場合はtrueを、失敗した場合はfalseを返します。

 

引数

integer sourceKeyCode

変換元ハードウェアキーのキーコードを指定します。

DENSO端末制御モジュールでは下記の値が使用可能です。

 

対応キー
701M1キー
702M2キー
703M3キー
※BHT-M60/M70/M80のみ
704M4キー
※BHT-M60/M70/M80のみ
705LTキー(左トリガーボタン)
706RTキー(右トリガーボタン)
707CTキー(中央トリガーボタン)
※[SCAN]キー(BHT-M60/M70のみ)

 

 

integer destKeyCode

変換先ハードウェアキーのキーコードを指定します。

キーコードはAndroid標準のキーコード(KeyEventクラス)の値の他、下記のキーコードを指定することができます。

キーコード機能
0割り当てなし
502バーコード読み取り

 

 

 

getUserDefineKeyメソッド

説明

端末のハードウェアキーに割り当てられているキーコードを取得します。

 

呼出形式

var res = extsv.invoke("getUserDefineKey", sourceKeyCode);

 

戻り値

割り当てられている変換先ハードウェアキーのキーコードを返します。

 

引数

integer sourceKeyCode

変換元ハードウェアキーのキーコードを指定します。
キーコードについては、setUserDefineKeyメソッドのsourceKeyCode引数で使用可能な値を参照してください。

 

 

systemShutdownメソッド

説明

端末の電源をオフにします。
なお、呼び出したBiz/Browserは強制的に終了します。

 

呼出形式

extsv.invoke("systemShutdown");

 

戻り値

なし

 

引数

なし

 

 

systemRebootメソッド

説明

端末の電源を再起動します。
なお、呼び出したBiz/Browserは強制的に終了します。

 

呼出形式

extsv.invoke("systemReboot");

 

戻り値

なし

 

引数

なし

 

 

ReadBarcodeイベント

説明

連続スキャンでバーコードを読み取ったときに発生します。また、本モジュールの接続中、トリガーボタン押下(端末標準スキャン)によってバーコードを読み取ったときにも発生します。

 

Eventオブジェクトには以下の子オブジェクトが付加されています。

名前

説明

integer

type

バーコード種別

String

data

バーコードのデータの文字列表現

String

rawdata

バーコードのデータの生データ(バイト列)をBase64エンコードした文字列(※)

※Biz/BrowserのBase64Decoderクラスを用いてBase64デコードすることでバイナリデータを復元することができます。
 読み込むバーコードに日本語の文字を含む場合や、バイナリデータを含む場合に使用できます。