> For the complete documentation index, see [llms.txt](https://cimtops.gitbook.io/i-repo-scan/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cimtops.gitbook.io/i-repo-scan/matrixscan/matching.md).

# 照合について

### 照合の概要

ピッキングリストなど予め用意したデータと読み取るデータを照合し、正誤判断を行います。

照合されたバーコードのみを読み取り、正しい（照合された）バーコード上には**緑**のオーバーレイが表示されます。誤った（照合されない）バーコード上には**赤い**オーバーレイが表示され、かつビープ音が鳴ります。オーバーレイについて詳細は[オーバーレイについて](/i-repo-scan/matrixscan/how-to-use/i-reporter/overlay.md)を参照ください。

予め用意するデータは**照合データ表**に格納します。照合データ表へのデータ格納方法は以下です。

* 帳票上にクラスターに直接入力
* 自動帳票作成で設定
* カスタムマスターで設定
* ConMas Gateway経由で取得

![](/files/PxcS1dHXeSDZ0zvlCS4h)

{% hint style="info" %}
照合データ表の設定については[定義の作成、設定](/i-repo-scan/matrixscan/how-to-use/form-setting.md)を参照ください。
{% endhint %}

#### 照合の仕様

照合は照合データ表の横方向（列方向）でのAND条件で一致するデータが全てあれば、正しいと判断され、読み取られます。

:arrow\_down\_small: 照合の例（値がカンマ区切りの場合）

{% tabs %}
{% tab title="例1" %}
:arrow\_down: 分解設定内容

<img src="/files/Mn02TUBZjd0Tfggii45P" alt="" data-size="original">

:arrow\_down: 照合データ表の状態

<img src="/files/eFrQtwC5kqMYysAdp23Y" alt="" data-size="original">

この場合、**分解No1, 分解No2に (A,1), (B,2), (C,3) が含まれる値のみ**、読み取り対象となります。

:arrow\_down: 読み取るバーコードの値と読み取り結果

<table><thead><tr><th width="349">読み取るバーコードの値（カンマ区切り）</th><th>照合結果</th><th data-hidden></th></tr></thead><tbody><tr><td>A,1,a</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>B,2,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>C,3,c</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>a,1,A</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>2,B,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>C,1,A</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr></tbody></table>
{% endtab %}

{% tab title="例2" %}
:arrow\_down: 分解設定内容

![](/files/UBsFdAgUsAQ4EDYKpqjt)

:arrow\_down: 照合データ表の状態

![](/files/eFrQtwC5kqMYysAdp23Y)

この場合、**分解No1に (A), (B), (C) が含まれる値のみ**、読み取り対象となります。

:arrow\_down: 読み取るバーコードの値と読み取り結果

<table><thead><tr><th>読み取るバーコードの値（カンマ区切り）</th><th>照合結果</th><th data-hidden></th></tr></thead><tbody><tr><td>A,1,a</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>B,2,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>C,3,c</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>a,1,A</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>2,B,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>C,1,A</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr></tbody></table>
{% endtab %}

{% tab title="例3" %}
:arrow\_down: 分解設定内容

![](/files/Mn02TUBZjd0Tfggii45P)

:arrow\_down: 照合データ表の状態

![](/files/c9gVjwPJDzs8rVi898j5)

この場合、**分解No1, 分解No2に (空白または空,1), (空白または空,2), (C,3) が含まれる値のみ**、読み取り対象となります。

:arrow\_down: 読み取るバーコードの値と読み取り結果

<table><thead><tr><th>読み取るバーコードの値（カンマ区切り）</th><th>照合結果</th><th data-hidden></th></tr></thead><tbody><tr><td>(空),1,a または (空白),1,a</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能（<strong>分解No.1</strong>と<strong>No.2</strong>が重複制御の対象になっているため、いずれかが読取対象となり、もう一方は重複判定</td><td></td></tr><tr><td>(空),2,b または (空白),2,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能（<strong>分解No.1</strong>と<strong>No.2</strong>が重複制御の対象になっているため、いずれかが読取対象となり、もう一方は重複判定される）</td><td></td></tr><tr><td>C,3,c</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>(空),3,c または (空白),3,c</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>C,1,a</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>C,2,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr></tbody></table>
{% endtab %}

{% tab title="例4" %}
:arrow\_down: 分解設定内容

![](/files/UBsFdAgUsAQ4EDYKpqjt)

:arrow\_down: 照合データ表の状態

![](/files/UykJkhbt4CbtyyrL8aUV)

この場合、**分解No1に (A) が含まれる値のみ**、読み取り対象となります（行2以降の空欄は照合に使用されません）。

:arrow\_down: 読み取るバーコードの値と読み取り結果

<table><thead><tr><th>読み取るバーコードの値（カンマ区切り）</th><th>照合結果</th><th data-hidden></th></tr></thead><tbody><tr><td>A,1,a</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>A,2,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>A,3,c</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>a,1,A</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>(空),A,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr></tbody></table>
{% endtab %}

{% tab title="例5" %}
:arrow\_down: 分解設定内容

![](/files/UBsFdAgUsAQ4EDYKpqjt)

:arrow\_down: 照合データ表の状態

![](/files/p8QA8DVvwrt4QyxLlfHi)

この場合、**分解No1に (空白または空) または (B) が含まれる値のみ**、読み取り対象となります（行1の空欄は照合に使用されますが、行3の空欄は照合に使用されません）。

:arrow\_down: 読み取るバーコードの値と読み取り結果

<table><thead><tr><th>読み取るバーコードの値（カンマ区切り）</th><th>照合結果</th><th data-hidden></th></tr></thead><tbody><tr><td>B,2,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>(空白),1,a</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>(空),3,c</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>A,1,a</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr></tbody></table>
{% endtab %}
{% endtabs %}

:arrow\_down\_small: 照合の例（読み取ったデータを分解しない場合）

{% tabs %}
{% tab title="例1" %}
:arrow\_down: 分解設定なし

<div align="left"><figure><img src="/files/9oSSSRd6xeE6Hdca05cK" alt="" width="519"><figcaption></figcaption></figure></div>

&#x20; :arrow\_down: 照合データ表の状態

<div align="left"><figure><img src="/files/AkXLELoLAWkAtI2eBJSp" alt="" width="226"><figcaption></figcaption></figure></div>

この場合、**照合データ表にある値と合致するバーコード**が読み取り対象となります。

:arrow\_down: 読み取るバーコードの値と読み取り結果

<table><thead><tr><th width="349">読み取るバーコードの値</th><th>照合結果</th><th data-hidden></th></tr></thead><tbody><tr><td>A,1,a</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>B,2,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>C,3,c</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>a,1,A</td><td><span data-gb-custom-inline data-tag="emoji" data-code="2705">✅</span> 読み取り可能</td><td></td></tr><tr><td>2,B,b</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr><tr><td>C,1,A</td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f196">🆖</span> 読み取りしない</td><td></td></tr></tbody></table>
{% endtab %}
{% endtabs %}

{% hint style="info" %}
**空白 (whitespace), 空 (empty) の扱いについて**

* 照合表、読み取った値に空白が含まれる場合、それらは自動で削除されます（空白だったものが空扱いになります）。
* 文字列の前後に空白が含まれる場合は、その空白は文字列の一部として扱われます。
* 具体例は、上記例3を参照ください。
* 照合データ表が全て空の場合、照合は行わずに読み取った値が読取データ表に出力されます。
  {% endhint %}
