Skip to main content
ここまでで、請求書番号、請求日、Delivery Address の各field について説明しました。次に、ほかの要素を検出する順序を決めます。 Country field を検出するには、field 名と Character String 要素を使用できます。 Total Quantity field と Total Amount field を検出するには、2 つのfield に共通する名前だけでは不十分です。対応するテーブル列の名前が役立ちます。

Invoice Table field の検索を計画する

Table 要素で検出される Invoice Table field の検索準備を行います。
  1. テーブルのヘッダーを記述します。 列名は次の 2 つの方法で検出できます。
    • Column Properties ダイアログ (Table 要素の Properties ダイアログを開き、Columns タブをクリック) で、1 つ以上のキーワードを指定します。この方法は簡単ですが、柔軟性はあまり高くありません。
    • あらかじめ検出した要素を基準にして、列名の位置を特定します。この方法では、追加の要素設定を最大限に活用できます。
    事前認識精度は、最初の方法を使用するのに十分です。唯一の難点は、Quantity 列の名前が非常に短いことです。キーワード Qty は 3 文字しかないため、20% の許容誤差では実質的に誤りを許容できません。 最初の 2 列である ReferenceDesignation には最初の方法を使用し、残りの QuantityUnit PriceTotal にはあらかじめ記述した要素を使用します。これらの要素は、Total Quantity および Total Amount field を検出するためにも作成する必要があります。
  2. テーブルのフッターを記述します。 キーワードまたは補助要素を使用して記述できます。一部の画像ではフッターのキーワードがテーブルの先頭行にも出現するため、補助要素を使用して検索領域を制限します。
  3. テーブルの検索領域を記述します。 ヘッダーとフッターを記述した後、テーブルの右境界を記述します。画像のその部分には他のデータがないため、左境界を記述する必要はありません。Context では Total 列の数値と Sales 列の数値を区別できないため、最後の列である Sales の名前を使用して、右側の検索領域を制限します。
要素とその検出順序は試行錯誤で選択されており、FlexiLayout の調整中に変更できます。

補助要素を記述する

残りのfieldを記述する前に、補助要素を記述します。まず、QuantityUnit PriceTotalSales 列の名前を検出する必要があります。 テーブルヘッダーは、列名と 請求書番号請求日Delivery Address の各fieldの間にある水平の区切り線から始まります。この区切り線は、列名の検索領域を限定するのに役立ちます。Separator 要素を作成し、hsTableHeaderTop という名前を付けます。詳細については、Step 14 を参照してください。 次に、列名を自然な順序で検索します。以下の要素を含む、TableHeader という名前の Group 要素を作成します (Step 15 を参照) 。 次に、ドキュメントの下部を記述します。これには、テーブルの下側の境界を示す Total QuantityTotal Amount のfieldの共通名、およびその境界の特定に役立つキャプションが含まれます。このグループでは、Country fieldの名前要素とソース要素も記述します。 以下の要素を含む、Footer という名前の Group 要素を作成します。

残りのfieldを定義する

準備が完了し、作成順序を決めたら、すでに検出した列名とFooterを使用して、残りのfieldを定義します。
  • Total QuantityおよびTotal Amountのfield用に、TotalQuantityおよびTotalAmountという名前のCharacter String要素を2つ作成します。詳細については、Step 25を参照してください。
  • Invoice Tableのfield用に、InvoiceTableという名前のTable要素を作成します。詳細については、Step 26を参照してください。