> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# サンプル 3. Step 8: InvoiceNumber 要素を使用した請求書番号 field の記述

> FlexiLayout Studio サンプル 3 の Step 8: Character String 要素、ファジー文字数、およびリレーション制約を使用して請求書番号 field を記述します。

請求書番号 field は名前の右側にあり、同じ高さに配置されています。テスト画像を解析すると、一部の画像では番号が正しく認識されていないことがわかります。そのため、アルファベットは制限しません。代わりに、検索領域を制限し、string の長さを 3～20 文字に制限します。

InvoiceNumber 要素を作成するには、次の手順を実行します。

1. **InvoiceHeader** 要素で、型 [Character String](/ja/flexi-capture/fls/template/character-chain) の要素を作成し、**InvoiceNumber** という名前を付けます。

   <Tip>
     要素と、field **InvoiceNumber** に対応するブロックの名前は同じである必要はありませんが、FlexiLayout で作業する際は同じ名前にしておくと便利です。
   </Tip>

2. Character String タブをクリックします。

3. Percentage of non-alphabet characters を 100% に設定します。これは、文字に制限がないことを意味します。

4. Character count field で、次のファジー区間を指定します: `{-1, 3, 20, INF}`。これにより、string の文字数が制限されます。想定される値の範囲は 3～20 です。この範囲外の仮説にはペナルティが適用されます。

5. Relations タブをクリックします。

6. **InvoiceNumber** は名前 **kwInvoiceNumber** のキーワードの右側にのみ配置され、かつ名前 **kwInvoiceNumber** の右境界から 550 ドット以内にしか存在しないため、次の search constraints を設定します:

   * 要素 **kwInvoiceNumber** の Right of、Offset = 0
   * 要素 **kwInvoiceNumber** の Left of、Offset = -550、Reference boundary = Right

   <Note>
     Offset 値は試行錯誤しながら選択します。
   </Note>

7. **InvoiceNumber** は常に名前 **kwInvoiceNumber** のキーワードと同じ高さにあるため、次の search constraints を設定します:

   * 要素 **kwInvoiceNumber** の Above、Offset = -10、Reference boundary = Bottom
   * 要素 **kwInvoiceNumber** の Below、Offset = -10、Reference boundary = Top

   <Frame>
     <img src="https://mintcdn.com/abbyy/8aWHPAJyzWmTqglX/images/flexi-capture/fls/tutorial3_8.png?fit=max&auto=format&n=8aWHPAJyzWmTqglX&q=85&s=bafbe00ed0dea10c34560751a7759ee6" alt="ABBYY FlexiLayout Studio の SearchElements.InvoiceHeader.InvoiceNumber ダイアログ ボックスの Properties にある Relations タブのスクリーンショット。kwInvoiceNumber 要素に対する RightOf、LeftOf、Below、Above のリレーションが表示されています。" width="431" height="455" data-path="images/flexi-capture/fls/tutorial3_8.png" />
   </Frame>

8. テスト画像に対して FlexiLayout のマッチングを実行し、該当するすべての画像でプログラムが要素を正常に検出することを確認します。

9. **InvoiceNumber** ブロックの位置を記述するには、その Properties をクリックして Source element オプションを選択し、次に <img src="https://mintcdn.com/abbyy/fmgRWFNHKYN2MLSg/images/flexi-capture/fls/Browse_Button.gif?s=3673db30dda4a3293aec716853588b55" alt="参照ボタン" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="21" height="20" data-path="images/flexi-capture/fls/Browse_Button.gif" /> をクリックして、ソース要素として **InvoiceNumber** 要素を選択します。
