IT4206の質問

質問

1つのQRコードのデータをTABで分割入力したいです。1つのQRコードに複数のデータフィールドがあるので、フィールドごとにTAB区切りでアプリケーション(エクセルやアクセス)へ入力したいです。どのような方法で実現できますか?

QRコードとIT4206GHD

回答

新規にQRコードを作成、採用する場合

QRコードに区切り文字を入れて作成します。データフィールドの間に区切り文字を入れてQRコードを作成します。バーコードリーダーが区切り文字をTABとして出力するようにします。バーコードリーダーに設定が必要な場合があります。

データフィールドが次の3つであるとします。

  1. 会員番号(英数半角)
  2. 会員名(漢字)
  3. 住所(漢字、半角英数)
区切り文字

区切り文字は次の2通りのいずれかを使用します。

  1. ASCIIの制御文字「HT」(HEX、16進数の09)
  2. (ASCII)文字のカンマ「,」(HEX、16進数の2C)、あるいはフィールドに使用する文字と重複しないASCIIの文字
HTを区切り文字とする場合

HTをQRコード作成ソフトでエンコード(コード化)できる場合は、QRコードのフィールドデータ間にHTを入れてエンコードします。バーコードリーダー本体の設定が不要なので、この方法がもっとも簡単です。QRコードのデータ形式は次の通りです。(スペースは見やすくするために入れています)

バーコードリーダーIT4206の読み取りと動作

QRコードには日本語含んでいますので、バーコードリーダーは変換ソフトCOM-de-KEYを使用します。バーコードリーダーはがこのQRコードを読み取ると、HTはCOM-de-KEYを経由することでキーボードの「TABキー」として出力されます。したがって、アプリケーション(エクセルなど)には次のように出力されます。

バーコードリーダーのサフィックスにCR(ENTERキー)を付加する設定をしておけば、最後にENTERキーが出力され、改行して次の行の最初の列に復帰します。これで次々と読み取りを繰り返してデータ入力ができます。

カンマ , を区切り文字とする場合

前項のHTをQRコード作成ソフトでエンコード(コード化)できない場合は、カンマなどを区切り文字にします。QRコードのフィールドデータ間にカンマを入れてエンコードします。バーコードリーダー本体の設定が必要になります。データ形式は次の通りです。(スペースは見やすくするために入れています)

バーコードリーダーIT4206の読み取りと動作

QRコードには日本語含んでいますので、バーコードリーダーは変換ソフトCOM-de-KEYを使用します。次に、バーコードリーダー本体にカンマをHTにに置換する設定をします。HTは前述の通りTABキーとして出力されます。したがって、アプリケーション(エクセルなど)には次のように出力されます。

置換の設定について

この例での読み取る設定メニューは次の通りです。

  1. EnterDataFormat(第5章 5-4 データフォーマットエディタ)
  2. 0099739999E4022C09F100(巻末 プログラミングチャート から英数をこの通り読み取る)
  3. Save(巻末 プログラミングチャート)

または、USB COM ポートエミュレーションでPCから次のコマンドを送信します。

  1. SYNMCR DFMBK3 0099739999E4022C09F100.(SYN M CRは設定変更のコマンド。次にパラメータ、最後にピリオド)

詳しい説明は、ユーザーズガイドの「付録 補足説明 データフォーマットエディタ 出力例6」に例がございますので、そちらを参照してください。

既存のQRコードを使用する場合

QRコードに区切り文字がある場合
  1. 区切り文字がASCII制御文字「HT」の場合
    HTはTABとして出力されます。詳細は上記「新規にQRコードを作成、採用する場合」を参照してください。
  2. 区切り文字がカンマやスペースなどの場合
    カンマをTABに置換して出力します。詳細は上記「新規にQRコードを作成、採用する場合」を参照してください。
QRコードに区切り文字が無い場合
フィールドデータのキャラクタ数(バイト長)が固定長の場合

バーコードリーダーに、指定したデータキャラクタ数(バイト長)の後にASCII制御文字HTを出力(挿入)する設定をします。次はデータ形式です。

フィールドの例
バイト数 8バイト 16バイト 128バイト
項目名 会員番号 会員名 住所
使用文字 英数8文字 日本語(全角)、
余白は半角スペースとする
日本語(全角) 、
半角英数128文字(余白は半角スペース)
例1 A1234567 坂口孝信(続けてスペース8個) 神奈川県横浜市鶴見区鶴見中央1-32-19鶴見センタービル(続けてスペース77個)
例2 A7654321 横山龍之介(続けてスペース6個) 神奈川県横浜市鶴見区鶴見中央1-32-19鶴見センタービル(続けてスペース77個)
説明 8バイト 例1:全角文字で8バイト使用(1文字あたり2バイトx4文字)で、余りの8バイトは半角スペース8個とする。合計16バイト。
例2:全角文字で10バイト使用(1文字あたり2バイトx5文字)で、余りの6バイトは半角スペース6個とする。合計16バイト。
全角文字で44バイト使用(1文字あたり2バイトx22文字)。
半角英数で7バイト使用。残り77バイトは半角スペース77個とする。合計128バイト。*最後のフィールドのバイト数は設定に不要です
バーコードリーダーIT4206の読み取りと動作

QRコードには日本語含んでいますので、バーコードリーダーは変換ソフトCOM-de-KEYを使用します。次に、バーコードリーダー本体にHTを挿入すする設定をします。HTは前述の通りTABキーとして出力されます。したがって、アプリケーション(エクセルなど)には次のように出力されます。

データの途中にキャラクタを出力(挿入)する設定について

この例では8バイトの次にHTを出力、次の16バイトの次にHTを出力(挿入)する設定をします。この例での読み取る設定メニューは次の通りです。

  1. EnterDataFormat(第5章 5-4 データフォーマットエディタ)
  2. 0099739999F20809F21609F100(巻末 プログラミングチャート から英数をこの通り読み取る)
  3. Save(巻末 プログラミングチャート)

または、USB COM ポートエミュレーションでPCから次のコマンドを送信します。

  1. SYNMCR DFMBK3 0099739999F20809F21609F100.(SYN M CRは設定変更のコマンド。次にパラメータ、最後にピリオド)

詳しい説明は、ユーザーズガイドの「付録 補足説明 データフォーマットエディタ 出力例4」に例がございますので、そちらを参照してください。

フィールドデータのキャラクタ数(バイト長)が可変長の場合

それぞれのデータフィールドに特定のASCIIキャラクタ1文字がある場合は、その文字を検索し、1文字前に移動してHT(TAB)を出力する設定をします。データや設定が複雑になるのであまりお勧めの方法とはいえません。設定方法についてはユーザーガイドをご覧ください。

関連リンク