文字のサイズ
標準
デカ字

バーコード講座 バーコードの規格と読み取りノウアウが学べるサイト

0120-764-636

  1. ホーム > 
  2. バーコードの基本 > 
  3. CODE128とGS1-128

CODE128とGS1-128


CODE128

CODE128は、1981年コンピュータアイデンティックス社(アメリカ)によって開発されたバーコードです。
このCODE128は、アスキーコード128文字(数字、アルファベット大文字/小文字、記号、制御コード)全てを
バーコード化することができます。
つまり、コンピュータのキーボードから打てる文字(漢字、ひらがな、カタカナ以外)を全て表すことができるため、
コンピュータと非常に相性のよいバーコードであるといえます。

CODE128の構成

基本構成は以下の通りです。

CODE128の構成

  • ・バーのサイズは4段階に分かれています。
  • ・3本のバーと3本のスペースで1文字を表します(計6本)。
  • ・スタートキャラクタは、“CODE-A”“CODE-B”“CODE-C”の3種類があり、どれを使うかによりそれ以後表すことができる文字が異なります(こちらのキャラクタ構成表を参照。例えば、CODE-Aを使用した場合は、CODE-A列に書かれている文字を表すことができる)。

CODE128の構成

  • ・CODE-Cを使うと、1つのバーパターンで2桁の数字を表すことができるので、非常に情報密度が高くなります。
  • ・コードセットキャラクタ(CODE-A,CODE-B,CODE-C)を使うと、スタートキャラクタがCODE-Aであっても、途中からCODE-B列の文字またはCODE-C列の文字に変更することができます。
  • ・“SHIFT”は、SHIFTが登場した次の1文字のみを次の列(A→B、B→C、C→A)の文字に変更できます(コンピュータのSHIFTキーと同じようなもの)。
  • ・チェックデジットとしては、「モジュラス103」が使用されます。

CODE128の特徴

  • ・アスキーコード128文字を全てバーコード化できます([ESC][STX][ETX][CR][LF]などの制御コードもコード化できる)。
  • ・スタートキャラクタがCODE-Cの場合は、1つのバーパターンで2桁の数字を表すことができるので、非常に効率のよいバー構成になります。桁数が12桁以上の場合は、ITFよりも小さなサイズにすることができます。
  • ・バーのサイズが4種類あるので、使用するプリンタに高い印字精度が必要です。
    つまり、ドットインパクトプリンタ、FA用インクジェットプリンタ、段ボールへのフレキソ印刷には向きません。

CODE128の使われ方

CODE128は、スタートコードにCODE-Cを使うことで、数字だけなら、非常に高密度のバーコードを作ることができます。
このCODE128の特性を生かし、製品の製造日、賞味期限、重量、寸法、ロット番号、出荷先、請求先など
様々な情報をバーコード化したもの(GS1-128)が、現在様々な業界で活用され始めています。

代表的なものに、以下の業界があります。
チェーンストア、百貨店協会
医療材料業界
コンビニエンスストア業界
食肉業界
GS1-128については、こちらで詳しく解説します。


キャラクタ構成について

数値 CODE
A
CODE
B
CODE
C
バーのパターン 数値 CODE
A
CODE
B
CODE
C
バーのパターン
0 SP SP 00 54 V V 54
1 ! ! 01 55 W W 55
2 " " 02 56 X X 56
3 # # 03 57 Y Y 57
4 $ $ 04 58 Z Z 58
5 % % 05 59 [ [ 59
6 & & 06 60 \ \ 60
7 ' ' 07 61 ] ] 61
8 ( ( 08 62 ^ ^ 62
9 ) ) 09 63 _ _ 63
10 10 64 NUL 64
11 + + 11 65 SOH a 65
12 , , 12 66 STX b 66
13 - - 13 67 ETX c 67
14 . . 14 68 EOT d 68
15 / / 15 69 ENQ e 69
16 0 0 16 70 ACK f 70
17 1 1 17 71 BEL g 71
18 2 2 18 72 BS h 72
19 3 3 19 73 HT i 73
20 4 4 20 74 LF j 74
21 5 5 21 75 VT k 75
22 6 6 22 76 FF l 76
23 7 7 23 77 CR m 77
24 8 8 24 78 SO n 78
25 9 9 25 79 SI o 79
26 26 80 DLE p 80
27 ; ; 27 81 DC1 q 81
28 < < 28 82 DC2 r 82
29 = = 29 83 DC3 s 83
30 > > 30 84 DC4 t 84
31 ? ? 31 85 NAK u 85
32 @ @ 32 86 SYN v 86
33 A A 33 87 ETB w 87
34 B B 34 88 CAN x 88
35 C C 35 89 EM y 89
36 D D 36 90 SUB z 90
37 E E 37 91 ESC { 91
38 F F 38 92 FS 92
39 G G 39 93 GS } 93
40 H H 40 94 RS 94
41 I I 41 95 US DEL 95
42 J J 42 96 FNC 3 FNC 3 96
43 K K 43 97 FNC 2 FNC 2 97
44 L L 44 98 SHIFT SHIFT 98
45 M M 45 99 CODE C CODE C 99
46 N N 46 100 CODE B FNC 4 CODE B
47 O O 47 101 FNC 4 CODE A CODE A
48 P P 48 102 FNC 1 FNC 1 FNC 1
49 Q Q 49 103 START(CODE A)
50 R R 50 104 START(CODE B)
51 S S 51 105 START(CODE C)
52 T T 52      
53 U U 53   STOP
数値 CODE
A
CODE
B
CODE
C
バーのパターン
0 SP SP 00
1 ! ! 01
2 " " 02
3 # # 03
4 $ $ 04
5 % % 05
6 & & 06
7 ' ' 07
8 ( ( 08
9 ) ) 09
10 10
11 + + 11
12 , , 12
13 - - 13
14 . . 14
15 / / 15
16 0 0 16
17 1 1 17
18 2 2 18
19 3 3 19
20 4 4 20
21 5 5 21
22 6 6 22
23 7 7 23
24 8 8 24
25 9 9 25
26 26
27 ; ; 27
28 < < 28
29 = = 29
30 > > 30
31 ? ? 31
32 @ @ 32
33 A A 33
34 B B 34
35 C C 35
36 D D 36
37 E E 37
38 F F 38
39 G G 39
40 H H 40
41 I I 41
42 J J 42
43 K K 43
44 L L 44
45 M M 45
46 N N 46
47 O O 47
48 P P 48
49 Q Q 49
50 R R 50
51 S S 51
52 T T 52
53 U U 53
数値 CODE
A
CODE
B
CODE
C
バーのパターン
54 V V 54
55 W W 55
56 X X 56
57 Y Y 57
58 Z Z 58
59 [ [ 59
60 \ \ 60
61 ] ] 61
62 ^ ^ 62
63 _ _ 63
64 NUL 64
65 SOH a 65
66 STX b 66
67 ETX c 67
68 EOT d 68
69 ENQ e 69
70 ACK f 70
71 BEL g 71
72 BS h 72
73 HT i 73
74 LF j 74
75 VT k 75
76 FF l 76
77 CR m 77
78 SO n 78
79 SI o 79
80 DLE p 80
81 DC1 q 81
82 DC2 r 82
83 DC3 s 83
84 DC4 t 84
85 NAK u 85
86 SYN v 86
87 ETB w 87
88 CAN x 88
89 EM y 89
90 SUB z 90
91 ESC { 91
92 FS 92
93 GS } 93
94 RS 94
95 US DEL 95
96 FNC 3 FNC 3 96
97 FNC 2 FNC 2 97
98 SHIFT SHIFT 98
99 CODE C CODE C 99
100 CODE B FNC 4 CODE B
101 FNC 4 CODE A CODE A
102 FNC 1 FNC 1 FNC 1
103 START(CODE A)
104 START(CODE B)
105 START(CODE C)
     
  STOP

GS1-128

GS1-128とは

現在普及しているJANコードや物流用商品コード(ITF)の情報に加え、物流情報や商取引情報など様々な情報を表示するためのバーコードです。

具体的にGS1-128で表すことのできる情報は、

梱包番号
重量、体積、容積
ロットナンバー
請求先企業コード

入り数
製造日、品質保持期限などの日付
ロケーションナンバー(出荷先)
顧客発注番号

などがあります。

この中から必要な情報のみを使用してバーコードラベルの形にし、様々なアプリケーションで活用されています。

例えば、ED(I 企業間で電子的に情報をやり取りするしくみのこと)を利用しオンラインで受発注をおこなったり、食品の賞味期限の管理、薬品の薬効期限の管理をおこなったり、入庫検品業務を簡素化したり、荷物の出荷先ごとの仕分をしたりと様々な利用方法があります(下のラベルはある食品メーカーの利用例です)。

GS1-128

GS1-128制定の背景

JANコードや物流用商品コード(ITF)は、商品そのもの(及び何個入りか)を表示するバーコードですので、
製造年月日、梱包番号、品質保証日、発注番号などのデータは表現できません。
かといってCODE39などを使い、これらのデータをバーコードで表示することはできても、
データの定義・データの桁数などがバラバラでは取り引き企業間でデータ交換を行なうことはできません。
GS1-128は、データの項目、桁数及びバーコードの種類を標準化し
全世界で共通利用できるようにするためのバーコード規格として制定されたのです。

GS1-128の構成

GS1-128の基本構成は以下のようになります。

  • ・バーコードはCODE128を使用します。
  • ・重量、賞味期限など表したい情報を区別するために、「アプリケーション識別子(AI)」を付け、その後にデータが続く構成になっています。複数の情報を表す場合は、それらのデータを連結します。

GS1-128

  • ※アプリケーション識別子は( )で囲まれていますが、これは表示上の見易さのために入っているだけで、バーコードデータには含まれていません。

上記の例では、アプリケーション識別子「01」の後に出荷するコンテナ(段ボール箱などの最小梱包単位)を識別するための14桁のコード(GTIN)が付加され、アプリケーション識別子「15」の後に品質保持期限(消費期限や薬効期限など)95年8月27日の情報が付加されています。最後にアプリケーション識別子「30」の後に納品数量3個の情報が付加されています。
上記以外にもアプリケーション識別子は100種類ほどあり、表現したい情報を使用者側が選んで、バーコード化することになります。

GS1-128は、固定した情報を表現するのではなく、使用者側が必要な情報を選んで使用します。このため、GS1-128を各企業間で共通で使用するためには、業界単位、企業グループ単位などでどのような情報をバーコード化するかの規定を事前に作っておく必要があるのです。

  • ・GS1-128は、通常のCODE128と区別するため、スタートコード(CODE-A~C)のすぐ後に[FNC1]( ファンクション1)を付加するように決まっています。
  • ・アプリケーション識別子の後に続くデータの桁数が可変長である場合にも、データの区切りを表すため、[FNC1]が付加されます。

GS1-128

  • ・JANコードや物流用商品コード(ITF)に詳細情報を付加するコードとして使用します。

このように、アプリケーション識別子及び商品関連データや企業間取り引きデータなどをCODE128を使い表現したものをGS1-128といいます。
つまり、GS1-128とは各種のデータを表現するアプリケーションの規格といえます。CODE128は単にバーコード自身の規格ですので、両者の違いはアプリケーションを表現しているかどうかということになります。 GS1-128はバーコードの構成としてはCODE128ですので、CODE128が読めるバーコードリーダなら読み取り可能です。

アプリケーション識別子(AI)

アプリケーション識別子の分類

アプリケーション識別子は100種類ほどあり、大きく分類すると以下のようになります。それぞれのアプリケーション識別子の後に続くデータはあらかじめデータの桁数が決まっているもの(シリアル・シッピング・コンテナ・コード、年月日、計量単位)と桁数が不定のもの(ロット番号、シリアル番号、数量、発注番号)があります。

分類 AI データ項目 内容
梱包識別 00 シリアル・シッピング・
コンテナ・コード
(SSCC)
物流・出荷単位の個別識別に使用するシリアル番号。
商品管理 01、02 グローバル・トレード・
アイテム・ナンバー
(GTIN)
商品識別コード、または、物流単位(パレット等)
の中に収納された、最大梱包レベルの
取引単位(ケースなど)の商品識別コード
11~17 年月日 商品に関する日付(製造年月日、包装年月日、有効期限日など)
10 バッチ/ロット番号 メーカーが設定する記号番号
(バッチ番号、ロット番号、加工処理番号等)
20 リニューアル商品番号
規格変更番号
GTINを変更する必要はないが、メーカー内部での
バージョン管理のために区別するための識別番号
21 シリアル番号 メーカーが設定した連続番号
計量表示 310~369 計量単位 計量商品(食品、鮮魚)のダンボールに重量、
容量、体積を表示する場合
業務管理 400 顧客発注番号 顧客の発注番号
401 積荷番号(GINC) 積荷番号、運送委託番号
410~415 グローバル・ロケーション・
ナンバー(GLN)
納品先コード、請求先コード、支払先コードなど
420 あて先の郵便番号 郵便番号を各国で定められたフォーマットで表示
421 ISO国コード
および郵便番号
郵便番号の前に3桁のISO国コードを表示
90~99 企業間、企業内データ 企業間で合意したデータ
企業内部で使用するデータ
  • ※アプリケーション識別子の詳細、およびその他のアプリケーション識別子は、(財)流通システム開発センター発行の「GS1アプリケーション識別子(AI)リスト」をご確認ください。

代表的なアプリケーション識別子

アプリケーション識別子 内容 データの桁数
00 シリアル・シッピング・コンテナ・コード(SSCC) 数字18桁

「00」は、段ボール、パレットなど輸送単位に対して梱包シリアル番号を意味付ける識別子です。つまり、出荷単位ごとに異なる番号となります。
データは18桁で以下のような構成になります。

梱包タイプ 1桁
JAN企業コード(GS1企業コード)+ 物流単位ごとの識別番号 16桁
チェックデジット(モジュラス10/3ウェイト) 1桁

「梱包タイプ」については、以下のようになります。

梱包タイプ
0 ケースまたはカートン
1 パレット
(ケース、カートンよりも大きいもの)
2 コンテナ(パレットより大きいもの)
3 上記以外の包装タイプ
4 内部規定による(社内用途)
5 取り引き企業間の相互規定による
6~9 使用禁止

梱包タイプ

アプリケーション識別子 内容 データの桁数
01 グローバル・トレード・ アイテム・ナンバー(GTIN) 数字14桁
02

「01」は、基本的に物流用商品コード(ITF)と同じ構成となります。梱包された商品のJANコードと商品の数量を表す梱包インジケータから構成されます。

梱包インジケータ 1桁
JAN企業コード 12桁
チェックデジット(モジュラス10/3ウェイト) 1桁

「梱包インジケータ」については、以下のようになります。

梱包インジケータ
0 商品を混載した段ボールである場合
1~8 単一商品段ボールで各入り数が同一である場合1 ~ 8までの範囲で設定。1を設定する場合が多い
9 単一商品段ボールで各入り数が異なる場合

一般的には、商品自身を表示するコード(GTIN-14)と重量、容量、年月日などのデータを併せて表示したい場合に使用します。

梱包インジケータ

アプリケーション識別子 内容 フォーマット
10 バッチ番号、またはロット番号 英数字20文字以内

「10」は、製品のバッチ番号、ロット番号を表示するアプリケーション識別子です。英数字20文字以内(可変長)とします。

アプリケーション識別子 内容 データの桁数
11 製造年月日(YYMMDD) 数字6桁
12 支払期限日(YYMMDD) 数字6桁
13 包装年月日(YYMMDD) 数字6桁
15 品質保持期限日(YYMMDD) 数字6桁
17 有効期限日(YYMMDD) 数字6桁

様々な日付に関するデータを表示します。品質保持期限については、例えば食品の「賞味期限」、薬の「薬効期限」など、管理上重要なデータを表示することができます。日付を表示しない場合は、DDの値を“00”として表示します。

アプリケーション識別子 内容 データの桁数
400 顧客発注番号 英数字30桁以内
401 積荷番号(GINC) 英数字30桁以内

顧客の発注番号や積荷の管理番号を表示するアプリケーション識別子です。

アプリケーション識別子 内容 データの桁数
410 出荷先(納品先)コード 数字13桁
411 請求先コード 数字13桁
412 商品仕入先企業コード 数字13桁
413 荷受人が決める最終納品場所コード 数字13桁
414 ロケーションコード 数字13桁
415 支払先(請求書発行者)コード 数字13桁

410 ~ 415は、グローバル・ロケーション・ナンバー(GLN)を表示するアプリケーション識別子です。 GLNはEDI(企業間電子データ交換)等に利用できる国際標準の事業所コードです。

アプリケーション識別子 内容 データの桁数
420 あて先の郵便番号 英数字20桁以内
421 あて先の郵便番号の前に3桁のISO国コードを
付加したもの
数字3桁+
英数字9桁以内

420、421は郵便番号を活用して表示されたデータを表示するアプリケーション識別子です。

AI“420”と郵便番号(22071)で国内の送り先所在地を表示し、宅配貨物に利用している例。

  • 印刷用PDFを見る(バーコードの基本)
  • 印刷用PDFを見る(2次元コードの基本)近日公開
  • お問い合わせ/お困りごと相談
バーコード資料館はこちら

お問い合わせはお気軽に!

バーコード関連のご質問はこちら