- 画像上の field の配置に何らかのパターンがありますか。
- field の検出で参照要素として使用できる要素はどれですか。
- 要素の検索順序として最適なのはどれですか。 (各ステップでは、それまでに説明した要素しか参照できません。)
-
ドキュメントの中央部分には、すべての画像に共通して現れるテーブルがあることに気付くはずです。
FlexiLayout Studio では、テーブルは、区切り線または白い余白によって視覚的に区切られた行と列から成るフラグメントで構成された画像オブジェクトです。詳細については、Work with tables を参照してください。
- テーブルの上には、field のグループ (InvoiceHeader と名付けることができます) があります: Invoice Number、請求日、納品先住所。field Invoice Number はすべての画像に現れるため識別用 field として使用できますが、field 請求日 と 納品先住所 は任意です。
- テーブルの下には、field のグループ (Footer と名付けることができます) があります: TotalQuantity、TotalAmount、Country。これらの field も、すべての画像に現れるわけではありません。
- Group 型の要素を作成し、InvoiceHeader という名前を付けます。 field Invoice Number、請求日、納品先住所 は常に左上隅に配置されます。さらに、それらの順序は常に同じです: 納品先住所、Invoice Number、請求日 の順です (画像上に存在する場合)。この順序で検索します。
- field 名 Invoice Number、請求日、納品先住所 のキーワードの検索を記述するには、Static Text 型の要素を使用します。InvoiceHeader 要素には、次の要素を含める必要があります。
- Static Text 型の kwDeliveryAddress 要素。これは field 納品先住所 の名前に対応します。詳細な手順については、Step 5 を参照してください。
- Static Text 型の kwInvoiceNumber 要素。これは field Invoice Number の名前に対応します。詳細な手順については、Step 6 を参照してください。
- Static Text 型の kwDate 要素。これは field 請求日 の名前に対応します。詳細な手順については、Step 7 を参照してください。
- fields Invoice Number と 請求日 は、それぞれの名前と同じ行で、名前の右側を検索します。
InvoiceHeader 要素内に、次の要素を作成します。
- Character String 型の InvoiceNumber 要素。これは field Invoice Number に対応します。詳細な手順については、Step 8 を参照してください。
- field 請求日 を探すための Group 要素 grDate。詳細な手順については、Step 9 を参照してください。
InvoiceHeader.grDate 要素内に、次を作成します。
- Date 型の InvoiceDate 要素。画質の良い画像では、請求日 field に対応します。詳しい手順については、Step 9 を参照してください。
-
Character String 型の InvoiceDateAsString 要素。プログラムが InvoiceDate 要素を見つけられなかった場合は、請求日 field に対応します。詳しい手順については、Step 9 を参照してください。
画質の低い画像で日付を見つける方法について詳しくは、Tips and Tricks セクションを参照してください。
- 納品先住所 field は複数行にわたるため、これを検出するには Paragraph 型の要素が必要です。ただし、この要素を作成する前に、検索範囲をできるだけ限定してください。検索範囲の右境界には、White Gap 型の要素を使用します。次に、納品先住所 field の位置を示すすべての要素を Group 要素にまとめます。
- InvoiceHeader 要素内に Group 要素を作成し、grAddress という名前を付けます。詳しい手順については、Step 10 を参照してください。
