- ABBYY FlexiCaptureの導入
- プログラムのインストールと実行
- ABBYY FlexiCaptureアーキテクチャ
-
プログラム設定
- ABBYY FlexiCapture設定
- マルチテナンシー
- プロジェクトの作成
-
文書定義
- 修正済み文書定義の作成
- 半構造化文書の文書定義の作成
- 自動データ抽出が不要な文書の文書定義の作成
- 文書セット
- 文書定義フィールド
- 文書定義ウィザード
- 文書定義の編集および発行
- 文書定義の作成
- 文書定義プロパティ
- 文書定義セクションのプロパティ
- ルールの確認
- 設定のエクスポート
- 文書ウィンドウでのデータ表示の設定
- 文書定義のテスト
- 文書定義のローカライズ
- 分類
- フィールド抽出トレーニング
- 設定されたプロジェクトの操作
-
インボイス用のABBYY FlexiCapture
- インボイス用のABBYY FlexiCapture の機能
- インボイスをキャプチャする方法
- インボイスキャプチャプロジェクトを設定する方法
- 仕様
- Capturing receipts
- Capturing purchase orders
- Using NLP to process unstructured documents
- ABBYY FlexiCapture インターフェイス
-
付録
-
ABBYY FlexiCapture でのスクリプトの使用
- .Net 言語で書かれるスクリプトの仕様
- 外部アセンブリ
- オブジェクトモデル
-
処理ステージのカスタマイズのためのスクリプト
- スクリプトの種類
-
オブジェクト
- IActionResult
- IAssemblingError
- IAssemblingErrors
- IBatch
- IBatchCheckResults
- IBatchItem
- IBatchItems
- IBatchTypeClassifier
- IBatchTypeClassifierResult
- IBinarizationParams
- IBoxedBoolean
- ICharacterParams
- ICharactersParams
- ICheckmarkGroupValue
- ICheckmarkValue
- IDataSet
- IDataSetQuery
- IDataSetRecord
- IDocument
- IDocuments
- IDocumentExportResults
- IDocumentsExportResults
- IDocumentDefinitionInfo
- IDocumentDefinitionInfoArray
- IEditablePictureObject
- IExportFieldsToRedact
- IExportImageSavingOptions
- IField
- IFieldRegion
- IFieldRegions
- IFields
- IFlexiCaptureTools
- ILocalContrastParams
- IMatchedSectionInfo
- IMatchingInfo
- IPage
- IPageClassificationResult
- IPages
- IPictureObject
- IPictureObjectsInfo
- IPrincipal
- IPrincipals
- IProcessingCallback
- IProject
- IProperties
- IProperty
- IPropertyModificationInfo
- IRecordCheckResult
- IRecordset
- IRect
- IRects
- IRoutingRuleResult
- IRuleContext
- IRuleError
- IRuleErrors
- IRuleTag
- IRuleTags
- IScriptBinaryAttributes
- IScriptDefinitionContext
- ISectionDefinitionInfo
- ISectionDefinitionInfoArray
- IShadowsHighlightsParams
- IStageInfo
- IUserAttachment
- IUserAttachments
- IUserSessionInfo
- IValue
- IVARIANTArray
- TAssemlingErrorType
- TBatchItemType
- TColorToFilter
- TExportFieldType
- TExportType
- TImageCompressionType
- TPageClassificationType
- TPdfAVersion
- TPdfDocumentInfoType
- TPdfTextSearchAreaType
- TPrincipalType
- TProcessingPriority
- TPropertyType
- TRuleErrorType
- TStateType
- サンプルスクリプト
- 認識言語の内部名
-
インターフェイスイベントの処理スクリプト
- イベントハンドラ
-
オブジェクト
- IBoolean
- IBoxedFieldControl
- IDocumentEditor
- IDocumentItem
- IDocumentItems
- IDocumentsCollection
- IDocumentsWindow
- IDrawContext
- IErrorControl
- IErrorControls
- IErrorsWindow
- IFieldControl
- IFieldRegionControl
- IFieldRegionControls
- IFormWindow
- IImageWindow
- IMainMenu
- IMainWindow
- IMenu
- IMenuItem
- IPageControl
- IPageItem
- IPageItems
- IPagesCollection
- IPoint
- ISelection
- IShellRational
- IShellRect
- IShellRects
- ITaskWindow
- ITextEditor
- IToolbar
- IToolbarButton
- IToolbars
- TCommandBarType
- TCommandID
- TDockingType
- TDocumentState
- TErrorType
- TSelectionType
- TTaskWindowMode
- TTextSize
- TUserRole
- TWorkWindowType
- ウェブ検証ステーションのユーザースクリプト
- 機械による読み取りが可能なフォームの作成
- ホットキー
- 追加オプション
- 処理サーバーコマンドの説明
- FlexiCaptureバックアップ
- ABBYY FlexiCapture サンプルプロジェクト
- サポートされる認識言語
- Supported classifier languages
- 正しい文字レンダリングのためのフォント
- サポートされるテキストタイプ
- サポートされるバーコードタイプ
- 対応している入力形式
- PDF ファイルの処理
- 出力ファイル形式
- 日付形式
- 正規表現で使用されるアルファベット
- 特許
- サードパーティ技術
- 用語集
- テクニカル サポート
- ABBYY FlexiCapture の購入方法
- エンドユーザー使用許諾契約(EULA)
-
ABBYY FlexiCapture でのスクリプトの使用
メインフィールドの検出
この記事では、インボイスのメインフィールドがどのように検出され、キャプチャされるかについて説明します。
プログラムは、文書定義設定に従ってインボイスのコンテンツを事前認識して処理を開始します:
- 事前認識モード(非常に高速/高速/バランス保持/徹底的に)は、事前認識のスピード、および結果として取得されるテキストレイヤーの品質を決定します。事前認識モードを指定するには、文書定義エディタで文書定義 →文書定義プロパティ...→認識)。
- 事前認識言語とは、事前認識で使用される言語のことです。事前認識言語を指定するには、文書定義エディタで文書定義→文書定義プロパティ...→文書定義設定をクリックしてから編集が国と言語グループにあるのでクリックし、目的の言語を選択します。
インボイスが事前認識されると、プログラムはフィールドをキャプチャし始めます。
請求書のフィールドを検出してキャプチャするには、つぎのプログラムを使用することができます:
両方の方法について以下で説明するとともに、アレゴリズムをご紹介します。このアレゴリズムは、これらの両方の方法を使用して得られた結果を組み合わせるか、最良の結果を選択するものです。
FlexiLayoutの使用
部署とベンダー
プログラムがインボイスで部署とベンダーを検出すると、以下が取得されます:
- 対応する部署レコードの識別子(BusinessUnitsデータセット
- 対応するベンダーレコードの識別子(Vendorsデータセット
プログラムは、以下を使用してベンダー(または部署)を検出します:
- 以下のレコードフィールド:データセット:IBAN、VATID、国内 VATID、名前、通り、都市名、ZIP
- 文書定義の設定:IBAN、VATID、国内 VATID の各フォーマット、および各に対応するキーワード
なお、BusinessUnitsとVendorsデータセットの列、そしてその使い方について、詳細はこちら→BusinessUnits データセットの列とVendors データセットの列。
会社検出アルゴリズム
- 固有の会社 ID の検索
会社を固有のものとして識別するフィールド:
- VAT ID
- 国内 VATID
- IBAN
ABBYY FlexiCapture for Invoicesはまず、上記のフィールドに基いて、データセットのインボイスにマッチする会社を検索します。この検索を正しく機能させるためには、データセットにある会社レコードの対応列が入力済みであり、その値が画像に存在することが必要です。
フォーマット:VATID,国内 VATID、そしてIBANは、文書定義のプロパティで正規表現を使って指定できます。(文書定義 →文書定義プロパティ... → 文書定義設定クリックしたら、国と言語で編集をクリックして、国リストで目的の国を選択し、編集を選択し、そしてフォーマットタブを選択)。キーワードはキーワードタブの同じダイアログボックスで指定できます。
これらのフィールドが検出されるようにするため、プログラムは完全にマッチするものを画像で検索しなければなりません。ユーザーは、拡張正規表現を使ってプログラムに自由裁量を与え、発生する可能性がある認識エラーを考慮に入れることができます(詳細→拡張正規表現)。
検出された VATID 値、国内 VATID 値、IBAN フィールド値は、その後正規化されます:
- 文字はすべて大文字に変更され、
- スペースと以下の文字は削除されます:。,,,—,/,\。
もしフォーマットタブでフィールド値のプレフィックスの指定に正規表現が使用されている場合、認識されたプレフィックスは、同じタブで指定されている最初のプレフィックスに置き換えられます。
たとえば、識別子DE12345はOE12345と認識される可能性がありますが、正規化によって、OEが正しいDEに置き換えられます。
プログラムは、画像で検出された VATID、国内VATID、IBANフィールドを使ってデータセットでクエリを実行します。データセットから受け取った VATID 列、国内VATID 列、IBAN 列の値は、画像で検出されたフィールドの値として同じ方法で正規化されます。次に、データセットからの値は画像の値とマッチングされ(ファジーマッチングを採用)、不一致の数がカウントされます。
以下の場合は、データセットの会社レコードが画像の会社と確実にマッチしていると見なされます:
- レコードの識別子のうち、少なくとも 2 つが画像で検出されたものと同一で、不一致が 1 つしかない
または - レコードの 3 つの識別子(VATID、国内 VATID、IBAN)がすべて画像で検出されたものと同一で、不一致が 2 つ未満である
信頼できるマッチが見つかった場合、検索は停止します。
見つからなかった場合、プログラムはデータセットから取得したレコードを仮定として使用し、会社の名前と住所を検索します。
- 会社の名前と住所の検索
会社の名前と住所を検索する際、プログラムはデータセットから取得したレコードを仮定として使用します。
固有の ID を検索する場合、プログラムは空ではないレコードのセットをデータセットから取得し、このレコードのセットが使用されます。
プログラムがレコードのセットを使用して会社名や住所を見つけられない場合、またはこのレコードのセットが空の場合:
- VATID、国内 VATID、IBANフィールドが画像で検出されなかった
または - データセット内でマッチするレコードの VATID、国内 VATID、IBAN 列に値がない
プログラムは、ページのテキスト全体を使ってデータセットでクエリを実行します。その結果、ページのテキストに最もマッチする会社レコードが返され、仮定として使用されます。
プログラムは、仮定として使用される各レコードから、住所の名前フィールド、通り、ZIP、都市名の構成要素を画像で検索します。
- プログラムは、名前フィールドと通りフィールドの両方を 1 つの文字列として検索して 25% のエラーを許容するか、個別の語として検索します(後者の場合は画像での語句の重なりも考慮されます)。
- プログラムは、ZIP と都市名が同じ行に位置するものと仮定し、ZIP と都市名フィールドを 1 つの構成要素として検索します。
検出された名前、通り、ZIP、都市名の各フィールドの値はデータセットのレコードの値と比較され、不一致の数がカウントされます。
画像と最もマッチするデータセットレコードは、以下のように決定されます:
- 固有の識別子(VATID、国内 VATID、IBAN)に加え、名前フィールドと少なくとも 1 つの住所構成要素(通りまたは ZIP と都市名の組み合わせなど)が画像のテキストと一致し、不一致が 4 つ未満の場合、このレコードは確実性が高い一致であると見なされます。
- 固有の識別子(VATID、国内VATID、IBAN)に加え、すべての住所構成要素が画像のテキストとマッチするものの、名前フィールドが画像のテキストとマッチしない場合、このレコードは確実性が低いマッチであると見なされます。
- データセットに固有の識別子(VATID、国内VATID、IBAN)がない場合、または画像でそれらが検出されなかった場合、不一致の合計が 8 つ未満であれば、プログラムは一致する名前と少なくとも 1 つの住所構成要素(通りまたは ZIP と都市名の組み合わせなど)のレコードを確実性が高い一致として選択します。
それ以外の場合、画像で検出された値にマッチするフィールドの数が最も多いレコードは確実性が低いマッチであると見なされます。
ベンダーおよび部署の検出結果
インボイスでベンダーや部署を検出した場合の主な結果:
- まず、Vendorsデータセット
- 次にBusinessUnitsデータセット
注:もし、Vendorsデータセットが、IDを指定するかどうかはBusinessUnitId(参照:Vendors データセットの列」を参照)、BusinessUnitId に対応する Id がベンダー検出の結果に含まれるようになります。
部署の検出は信頼できないこともあります。そのような場合は、文書の登録パラメータfc_Predefined:InvoiceIsVendorSuspicious(fc_Predefined:InvoiceIsBusinessUnitSuspicious)がtrueに設定されます。
検出結果として、以下のフィールドの領域がベンダーや部署が見つかることがあります:
ベンダー:
- 名前
- VAT ID
- NationalVATID
- IBAN
- その他住所
- 郵便番号
- 市
部署:
- 名前
- VAT ID
- その他住所
- 郵便番号
- 市
これらの領域の場所を画像で調査することで、プログラムが画像のどの場所でベンダーと部署グループのフィールドを検出したかが正確にわかります。両フィールドは、ベンダーと部署を検出できるよう有効になっています。
注:IBANフィールドがベンダーデータセットに値がない場合、IBANフィールドは、そのキーワードとフォーマットに基づき、他の銀行詳細キャプチャメカニズムによって検索できます。これはベンダーの検出後に実行されます。
注:フィールド領域の検索は、トレーニングや追加 FlexiLayout を適用することで変更できます(「インボイスの追加フィールドのキャプチャ」を参照)。これはベンダーや部署の検出には影響しませんが、文書定義とインボイスの照会後、これらのグループにあるフィールド領域の場所に影響することがあります。
ベンダーや部署の検出結果の重要な点は、対応する国に関する情報が、データセットで見つかったレコードの CountryCode フィールドから取得されることです。この情報はその後、キーワードや税率の選択、およびその他のインボイスフィールドのキャプチャに使用されます。インボイスの検証ルールを開始する条件としても使用されます。
プログラムによるベンダーや部署の検出を変更する方法
データセットにあるベンダーや部署のレコードがインボイス画像から抽出されたテキストにマッチすればするほど、プログラムによるベンダーや部署の検出精度も高くなります。
まず、インボイスの会社検索に使用されるデータセット列に対応する外部データベースのデータを識別する必要があります。外部データベースとデータセットは、適切に接続されていることが必要です(ベンダーや部署のデータベースの接続)。
同一の会社がベンダーリストと部署リストに存在する場合、インボイスに VATID がない場合であっても、各データセット内のレコードに同じ VATID を指定する必要があります。これによって、プログラムがベンダーや部署を不正確に検出するのを防ぐことができます。
画像のフィールド値で考えられる差異を補完するためには、以下を使用します:
- データセット列の正規化(詳細→データセットの値の正規化),
- 複数の値を持つデータセット列(データセットの複数の値を持つ列)。
抽出された値とともに事前定義のベンダー値や部署値の使用
インボイスの発行元に基づいて、インボイスの会社の仕入先または部署を事前できます(スキャンオペレータの名前や、メッセージ送信者のメールアドレス)。
ユーザーは、自動検出前にベンダーや部署を明示的に指定しておくことができます。
そのためには、文書登録パラメータの値fc_Predefined:InvoicePredefinedVendorId(fc_Predefined:InvoicePredefinedBusinessUnitId)を、ID(ID)のエントリーのVendorsまたはBusinessUnitsデータセットに存在するかどうかチェックします。
これを実行しても、ベンダーや部署の自動検出が機能しなくなることはありません。この操作によって、事前定義されたベンダーや部署に加え、信頼値(事前定義された値と画像から抽出された値のマッチの程度)のほか、ベンダーグループや部署グループからのフィールド領域も取得できます。
インボイスヘッダーのフィールドのグループ
InvoiceNumber、InvoiceDate
インボイスヘッダーには InvoiceNumber フィールドと InvoiceDate フィールドが含まれています。
これらのフィールドは、文書定義の言語プロパティで指定されたキーワードを使って検出されます。最初にベンダーや部署が検出され、それぞれの国情報が提供されます。国によって言語が決定されます(国に対応する言語は文書定義で指定されています)。フィールド検索用キーワードのセットは、ベンダーや部署の国から取得されます。
プログラムがフィールドの領域を探す方法を変更できます。キーワードを編集する(キーワード)かトレーニングを使用してください(トレーニング)。
文書がインボイスであることをプログラムが検出する方法
ABBYY FlexiCaptureそのドキュメントがインボイスかどうかは、FlexiLayout の採用時に決定されます。
以下に挙げた条件によって、文書がインボイスであることが示されます。これら条件すべてにマッチする必要はありませんが、どの条件もある程度の比重を占めます。
- InvoiceNumber フィールドと InvoiceDate フィールドが検出された。
- InvoiceIdentifiers からのキーワード検索されたエレメントが検出されます(参照→キーワード)。
- 文書でベンダーや部署が検出されました。
CreditNoreKeyword エレメントからのキーワードが画像で検出されたり、文書にマイナスの合計金額がある場合、文書は貸方表として識別される可能性があります。
フィールドの金額グループ
ABBYY FlexiCapture for Invoicesは、インボイスから以下のフィールドをキャプチャします:
フィールド | インボイス処理(Au-NZ) インボイス処理(US) インボイス処理(CA) インボイス処理(EU) インボイス処理(JP) |
インボイス処理(ES) |
インボイスの合計金額(合計)とインボイスの通貨(通貨) | はい | はい |
税:
|
はい | はい |
|
いいえ | はい |
追加税(AdditionalCosts) | はい | はい |
文書定義からの情報は、合計や税率の検索で使用されます:
- ベンダーの国の支払税率( 国のプロパティの税率タブで指定できます。詳しくはこちら→国と言語の設定)
- 税率のキーワード(原語のプロパティのキーワードタブで指定できます。またこちらも参照してください→キーワード)。
プログラムは、画像で税率を 2 つまで検索しようとします。インボイスに 2 つ以上の税率がある場合、追加フィールドを作成して手動でデータフォームに記入できます。
プログラムはキーワードを使ってTotalTaxとTotalNettoフィールドを検出します。これらのキーワードは、その使い方に応じて国や言語のプロパティで指定できます(詳細→国と言語の設定)。キーワードの詳細はこちら→キーワード。
合計フィールドには2 つのキーワードがあり、それぞれカテゴリーが異なります(見つかった要素カテゴリーについてはこちら→キーワード):
- AmountTotalHighConfidenceLabels:合計フィールドの付近にのみ発生するキーワード(「支払金額」など)です。
- AmountTotalLowConfidenceLabels:合計フィールドの付近でもその他のフィールドでも発生する可能性があるキーワードです。たとえば「合計」というキーワードは、合計フィールド付近に表示されますが、インボイスに記載された全項目の総重量が含まれているフィールドにも発生することもあります。
ヒント。これら 2 つのカテゴリーのどちらをキーワードに追加すればいいか不明な場合は:AmountTotalHighConfidenceLabels。キーワードによってプログラムが別のフィールドを合計フィールドと識別してしまう場合は、AmountTotalLowConfidenceLabels。
キーワードに加えて、プログラムは合計フィールドを検出しようとすると次の項目を探します:合計フィールドで指定された値によって異なります:
- 画像の同じ行や列で 2~3 回発生する数字。そのような数字は、税が指定されていないインボイスでは合計である可能性があります。
- 同じ列にある数字の上部にあり、その合計である数字。
- 文書の最後にある(絶対値で)最大の数字。
プログラムは、通貨フィールドを検索します。これは合計フィールドが検出されたときのみです。文書定義にある国のプロパティからのキーワードが使用されます。
画像で検出されなかった金額グループからのフィールドは、自動で計算されます。例外:合計フィールド。このフィールドは画像で検出される必要があります。
プログラムが金額フィールドから情報を正しく検出できない場合は、検証を必要とするマークが合計フィールドに付けられます。
プログラムが高い確信を持って合計と通貨フィールドを検出できなかった場合や、どちらのフィールドも検出できなかった場合は、トレーニングを使って抽出データの質を改善できます。
フィールドの発注グループ
ABBYY FlexiCapture for Invoicesは、すべての発注番号と対応する合計をインボイスから抽出できます。
この機能は既定で無効にされています(詳細:発注書のマッチング)。
発注番号を抽出するためには、発注番号と思われる数字とその合計があるデータセットが必要です(PurchaseOrders データセットの列)。
発注フィールドは、以下を使用して抽出できます:
- 正規表現
- 発注番号と思われる項目を含んでいるデータセット(PurchaseOrders データセットの列)。
発注番号と思われる項目を持つデータセットが使用されると、ABBYY FlexiCapture for Invoicesはこのデータセットからの番号を画像で検索します。データベースに保存する発注番号数はなるべく少なくすることが得策です。それにはいくつかの方法があります:
- 次のVendorId列を使用します:データセット。この場合、プログラムはインボイスのベンダーからの発注番号のみを使用します。
- 既に届いたインボイスに関する発注書をフィルターし、インボイスがまだデータセットに届いていない発注書の番号のみ追加します。
プログラムは、検出された発注番号に対応する合計金額をデータベースで検索します。
また、インボイスの明細項目にあるものも含め、画像で発注番号をすべて検索します。
発注は通常、購買者の ERP システムによって生成されます。そのため、特定の部署に発行されるインボイスは類似する傾向にあります。これらは通常、正規表現を用いて表現できます。
発注番号用の正規表現がある場合、プログラムは画像で表現を満たす番号をすべて検出します。正規表現は、以下のタグを使用して XML 設定ファイルで指定できます:
.<InvoiceSettings> ... <OrderNumber> <Value> <RegularExpression></RegularExpression> </Value> </OrderNumber> </InvoiceSettings>
XML構成ファイルについて詳しくはこちら→XML ファイルでのインボイス処理設定の編集。
フィールドの明細項目グループ
ABBYY FlexiCapture for Invoicesは、画像からインボイス明細項目を抽出できます。
インボイス明細項目の抽出は、既定で無効になっています(追加フィールド)。
プログラムが自動検出するフィールドのリストはこちら→キャプチャされたフィールド。
ABBYY FlexiCapture for Invoicesは最初に、画像でテーブルを検索します。検索中は、文書定義プロパティで各言語で指定されている列タイトルのキーワードを使用します。インボイス明細項目列のキーワードは、項目の分類(インボイスの各明細項目の種類決定)にも使用されます。
プログラムはその後、検出された列の情報と数式を使って、インボイス表にあるインボイス明細項目を検出します。
最後に、列のフィールド用にインボイス明細項目を検索します。
トレーニングを使えば、明細項目の自動抽出の品質を改善できます。
ニューラルネットワークの使用
ニューラルネットワークにみられるおもだった長所のひとつは、自己学習能力です。ニューラルネットワークは、入力データのあいだに存在する複雑な依存関係を検出し、有益なものを複数件、一般化することが可能です。
プログラムには、つぎのフィールドをキャプチャするために使用できる2つのニューラルネットワークが含まれています。
- InvoiceNumber
- InvoiceDate
- 合計
- ベンダー\名前
- ベンダー\住所
- 部署\名称
- 部署\所在地
- 発注書\発注書番号
- 明細項目:
- 発注書番号
- 発注日
- 役職
- 商品コード
- 摘要
- 数量
- 測定単位
- 単価
- 正味金額合計
- 付加価値税率
最高の精度を得るために、このプログラムではFlexiLayoutとニューラルネットワークの両方を使って、請求書フィールドをキャプチャします。プログラムがニューラルネットワークを使って抽出できなかったフィールドについては、FlexiLayoutで抽出します。ニューラルネットワークとFlexiLayoutの両方でフィールドを抽出できる場合、プログラムは、両方の方法で得られた結果を、データ処理能力を駆使して組み合わせます。結果の組み合わせ方は、フィールドによって異なります(詳しくは「フィールド検出結果の組み合わせ」を参照してください)。
ニューラルネットワークの無効化
デフォルトでは、ニューラルネットワークは、文書フィールドをキャプチャする2番めの方法として使用されます。請求書プロジェクト内で請求書以外の文書を処理する必要がある場合、ニューラルネットワークを無効にする必要に迫られる場合があります。これは、ニューラルネットワークが、請求書フィールドをキャプチャするように特別にトレーニングされており、他のタイプの文書ではうまく機能しないことがあるためです。
明細項目グループのニューラルネットワークを無効にするには、つぎのとおりにしてください:
- 文書定義エディタを開きます。
- つぎをクリックしてください:文書定義プロパティ...→文書定義設定→追加フィールドと機能。
- オプションを高度な請求書の明細行無効にしてください。
請求書ヘッダー、ベンダー、部署、発注書グループのニューラルネットワークを無効にするには、つぎのとおりにしてください:
- 文書定義エディタを開きます。
- つぎをクリックしてください:文書定義プロパティ...→文書定義設定→追加フィールドと機能。
- オプションを高度な請求書ヘッダーフィールド無効にしてください。
フィールド検出結果の組み合わせ
プログラムがフィールド検出結果を組み合わせる方法、または最良の結果を選択する方法は、フィールドによって異なります。原則として、それぞれのニューラルネットワークで得られた結果が優先されます。データセットにもとづく検索と、特定の顧客の文書向けに作成された正規表現を使用した検索は、例外として、このルールの適用を受けません。
請求書ヘッダーフィールドグループ
ニューラルネットワークによって取得された結果は、つぎのフィールドでは常に優先されます。
- 請求書番号
- 請求日
- 合計
部署とベンダー
データセットが選択されている場合、デフォルトでは、部署とベンダーはデータセットにもとづいて検出されます。
また、データセットに対応する記録がない場合、ニューラルネットワークを使用してつぎのフィールドが検出される場合があります。
- 名前
- 付加価値税登録番号(オーストラリア企業納税登録番号)
- 住所
データセットが選択されていない場合は、ニューラルネットワークのみが使用されます。
発注書フィールドグループ
データセットまたは正規表現によって値が検出されない場合にかぎって、ニューラルネットワークが使用されます。
明細項目
明細項目フィールドの場合、ニューラルネットワークで得られた結果が優先されます。ニューラルネットワークが明細項目の表全体を検出した場合、この表がそれ以降の処理に使用されます。それ以外の場合、プログラムはFlexiLayoutによって検出された明細項目を使用します。
ニューラルネットワークでは、各明細項目の「摘要」や「正味金額合計」のフィールドしか検出しなかった場合、FlexiLayoutによって検出されたフィールドで補完されます。
14.01.2021 14:17:22