バーコードリーダーのエイポック
バーコードリーダー,QRコードリーダーの販売会社
用語
専門用語の基礎知識。
JANコードの詳細
バーコード「JAN」の解説です。
例図

JAN-13の例図
読み方
- JAN:ジャン
- JAN-13:ジャンジュウサン
- JAN-8:ジャンハチ
- EAN:イアン
概要
JANはJapanArticleNumberの略称です。一次元バーコードのひとつ。小売業の商品流通コードの統一を目的に1978年にJISX0501に制定されました。現在はISO/IEC15420で規定されています。アメリカの流通コードUPC-A(12桁)を元に規格化され、ヨーロッパの流通コードEAN(13桁)と互換します。通称で「商品コード」や「POSバーコード」などとも呼ばれていますが、バーコードの規格名称は「JAN」です。
特徴
キャラクタ
0~9の数字キャラクタのみを表示可能。
コード分類
- マルチレベルとは
- マルチレベルとは1つのキャラクタが複数の幅のバーとスペースで構成されていることです。
- 連続コードとは
- 連続コードとは複数のキャラクタの間に区切り(キャラクタ間ギャップ)が無くキャラクタ同士が連なっているバーコードシンボルです。
キャラクタの構成
1つのデータキャラクタは7モジュールで構成されています。データキャラクタとはスタートキャラクタ、ストップキャラクタ、センターバーを除いた、数字をあらわすキャラクタです。
全キャラクタのモジュール構成
スタートキャラクタとストップキャラクタは3モジュール(101)。センターバーは5モジュール(01010)です。1つの数字をあらわす1データキャラクタは、2本のバーと2本のスペースで構成されています。黒バー(バー)は1~4本のモジュールで構成され、白バー(スペース)も1~4本のモジュールで構成されています。1キャラクタのモジュール構成は規格によって規定されています。
図:JAN-13の拡大図。モジュールの説明
表 JANのデータキャラクタにおけるモジュール構成とパリティ

チェックデジット(チェックキャラクタ)
必要。計算方法はモジュラス10ウェイト3。
桁数(キャラクタ数)
- JAN-13:商品番号などをあらすデータ部は12桁で、チェックデジットは1桁。合計13桁。
- JAN-8:データ部は7桁で、チェックデジットは1桁。合計8桁。
寸法
図:JAN-13の標準寸法
1モジュールの標準寸法(幅)は0.33mm。全体の幅は余白を含めるとおよそ3.73cmです。0.8倍~2倍の寸法が認められています。
標準の高さは22.86mmです。、0.8倍~2倍の縮小と拡大ができます。
目視文字
JANの目視文字はOCR-Bフォントが使用されます。目視文字とはバーコードの下に表示されているバーコードのキャラクタを表示した文字です。ヒューマン・リーダブルと呼ばれることもあります。
JANを作成するときの注意
バーコード作成ソフトウェアなどでJANを作成するときは次のことに注意します。
チェックデジットに注意
13桁目はチェックデジットです。チェックデジットは1~12桁目のキャラクタを計算した上で算出される値のため、13桁目に任意の数値を割り振ることはできません。インストアコード(店舗内や社内用など限られたアプリケーションでの使用目的)では1~12桁目が任意の値として使用できます。
1桁目に注意
1桁目を"0"(ゼロ)にすると、バーコードの構成上、バーコードリーダーはJANではなくアメリカの流通コードUPC-A(12桁のバーコード)として識別します。バーコードリーダーにUPC-Aに関する設定が必要な場合があります。
もう少し詳しく
JANの1桁目はバーとスペースで表示されていない
JANのバーとスペースは13桁の数字を表示していません。目視文字の数字での2桁目~13桁目が黒バーと白バーとして表示されており、日本の商品コードでの1桁目"4"は黒バーと白バーに含まれていません。すなわち実際にバーとスペースで表示されたデータキャラクタは1桁目の"4"を除いた12桁です。
プリフィックス・キャラクタ
目視文字の1桁目はプリフィックス・キャラクタと呼び、2桁目から7桁目のキャラクタ(センターバーから左側のデータキャラクタ6桁分)の「パリティ」の組み合わせによって規定されています。バーコードリーダーでJANを読み取って1桁目("4"など)が出力される理由は、バーコードリーダーが読み取り時にパリティの組み合わせを解析してプリフィックス・キャラクタを1桁目に付加して出力しているためです。
資料 プリフィクスキャラクタとパリティの組み合わせ
パリティとは"0"と"1"であらわす二進数で、電気通信分野などでエラーチェックなどに使用される技法です。JANのモジュールはパリティ・ビットとしての役割があります。1キャラクタを構成する7モジュールのうちバー(黒)の部分を"1"とし、スペース(白)の部分を"0"とします。
たとえば7モジュールのうち3(奇数)モジュールがバー(黒)となっている場合、そのキャラクタは"奇数パリティ(Odd)"です。4(偶数)モジュールがバーとなっている場合、そのキャラクタは"偶数パリティ(Even)"です。
例
1桁目のキャラクタを"4"とするためには、スタートキャラクタに続くデータキャラクタからセンターバーの前までの6キャラクタのパリティを「奇数、偶数、奇、奇数、偶数、偶数」としなければなりません。つまり、2桁目のキャラクタは奇数パリティ、3桁目のキャラクタは偶数パリティ、4桁目のキャラクタは奇数パリティ、5桁目のキャラクタは奇数パリティ、6桁目のキャラクタは偶数パリティ、7桁目のキャラクタは偶数パリティとします。バーコードリーダーは2桁目から7桁目が前述のパリティの並び方であることから、1桁目(プリフィックス・キャラクタ)を"4"だと判別しています。
1桁目が"0"のJAN-13は「UPC」。バーコードリーダーが13桁ではなく12桁で出力する場合
社内用コードなどで1桁目を"0"としたJANが利用されています。バーコードリーダーによっては13桁ではなく1桁目の"0"を出力せず12桁で出力する場合があり、これがしばしば混乱の元になります。
JAN-13で1桁目(プリフィックス・キャラクタ)を"0"とするためには、スタートキャラクタに続くデータキャラクタからセンターバーの前までの6キャラクタのパリティが全て奇数パリティでなければなりません。これはUPC-Aの偶奇パリティの組み合わせと同一であり、バーコードリーダーはその偶奇パリティからUPC-Aと判別します。バーコードリーダーがUPC-Aを12桁で出力する設定となっている場合は、1桁目が"0"のJANを読み取ると12桁で出力します。逆にバーコードリーダーが1桁目が"0"のJANを読み取るとき、1桁目の"0"もあわせて13桁で出力している場合はUPC-Aの先頭に"0"を付加して13桁で出力するように設定されています。
1桁目が"0"のJAN-13を13桁で出力するには
13桁で出力させる場合は、UPC-Aに関する設定を行います。設定名称は製品により異なりますが、たいていは「UPC-Aの先頭"0"を出力し13桁で出力する」などと記載されています。