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

 

 

Biz/Browser HTと外部サービスを連携する機能「ExternalService」クラスを用いて使用することができるメソッドの一覧です。
通常、ExternalServiceクラスを用いてこれらの機能を呼び出す場合、下記のように利用します。

本機能一覧は、DENSO BHT-1700/BHT-1800端末制御モジュールv1.0.3に対応しています。

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

 

使用例

/* 本端末制御モジュール専用サービスID(本サービスにおいて固定値) */
String SERVICE_ID = "jp.co.opst.biz.util.poweruptool.densopoweruptool/.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 連続スキャンを終了します。
setUserDefineKey 端末のハードウェアキーに、別のキーコードを設定します。
getUserDefineKey 端末のハードウェアキーに割り当てられているキーコードを取得します。
systemShutdown 端末の電源をオフにします。
systemReboot 端末の電源を再起動します。
ReadBarcodeイベント 連続スキャンでバーコードを読み取ったときに発生します。

 

startScanBarcodeメソッド

説明

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

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

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

 

呼出形式

extsv.invoke("startScanBarcode", timeoutMs);

 

戻り値

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

 

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

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

 

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

バーコードの種類
1EAN-13(JAN-13) ,UPC-A (*)
2EAN-8(JAN-8) (*)
3UPC-E (*)
4UPC-A
5AZTEC
9ITF
10ISBT
11CODE-128
12CODE-93
13CODE-39
14CODABAR(NW-7)
15CODE-32
16MSI
17QR (*)
18GS1 DataBar
20CODABLOCKF
21COMPOSITE
22HANXIN
23GS1-128
24MaxiCode
25PDF417/2Dタイプ
26Data Matrix (*)
27MICRO_PDF

(*)はデフォルトで有効になっているシンボルです。

その他のシンボルを有効にしたい場合は、下記のように設定を行ってください。

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メソッドを呼び出します。

 

呼出形式

var res = 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 ) {
        var res = ^.exs.Invoke("startScanBarcodeContinuous", 3);
    }
}
		

 

stopScanBarcodeメソッド

説明

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

 

呼出形式

extsv.invoke("stopScanBarcode");

 

戻り値

なし

 

引数

なし

 

setUserDefineKeyメソッド

説明

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

 

呼出形式

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

 

戻り値

成功時はtrueを、そうで無い場合はfalseを返します。

 

引数

integer sourceKeyCode

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

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

 

対応キー
284M1キー
285M2キー
286M3キー
287M4キー
288LTキー(左トリガーボタン)
289RTキー(右トリガーボタン)
290CTキー(中央トリガーボタン)

 

 

integer destKeyCode

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

キーコードはAndroid標準のキーコード(KeyEventクラス)の値の他、対応していれば独自キーのキーコードを指定することができます。

KeyEventクラスに関する詳細な情報はAndroid Developers(Android開発者向けサイト)のリファレンスマニュアルをご参照ください。

 

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

 

対応キー
1001TRIGGER_ALLキー
1002TRIGGER_BARCODEキー
1003TRIGGER_RFIDキー

 

なお、引数に0を指定すると各ハードウェアキーのデフォルト設定に戻します。

 

 

 

getUserDefineKeyメソッド

説明

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

 

呼出形式

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

 

戻り値

成功の場合、割り当てられている変換先ハードウェアキーのキーコードを返します。
キーコードについては、setUserDefineKeyメソッドのsourceKeyCode引数で使用可能な値を参照してください。
失敗の場合、-1を返します。

 

引数

integer sourceKeyCode

変換元ハードウェアキーのキーコードを指定します。
setUserDefineKeyで使用可能な値を参照してください。

 

 

systemShutdownメソッド

説明

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

 

呼出形式

extsv.invoke("systemShutdown");

 

戻り値

なし

 

引数

なし

 

 

systemRebootメソッド

説明

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

 

呼出形式

extsv.invoke("systemReboot");

 

戻り値

なし

 

引数

なし

 

 

ReadBarcodeイベント

説明

連続スキャンでバーコードを読み取ったときに発生します。

 

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

名前

説明

String

type

バーコード種別

String

data

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

String

rawadata

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

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