ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebCenter Captureのためのスクリプトの開発
11g リリース1 (11.1.1)
E51442-01
  ドキュメント・ライブラリへ移動
ライブラリ
目次へ移動
目次

前
 
次
 

5 認識プロセッサ・スクリプトの作成

この章では、認識プロセッサ・スクリプトの作成について説明します。

認識プロセッサ・スクリプトの一般的な用途を次に示します。

認識プロセッサのイベントの一覧は、第5.2項「スクリプト設計」を参照してください。

この章の内容は、次のとおりです。

5.1 バッチ・ジョブでのイベントの処理順序

認識プロセッサのバッチ・ジョブでは、イベントは次の順序で実行されます。

  1. initialize

  2. processBatch

  3. restoreCaptureBatch (以前ドキュメント作成中にバッチが失敗した場合のみ)

  4. beginPhase

  5. extractBatchItem

  6. barcodesFoundonItem

  7. endPhase

  8. beginPhase

  9. batchItemAllValidBarcodes

  10. determineSeparatorPage

  11. batchItemValidBarcode (これはすべてのページ編成タイプのバー・コードに適用されます。これが発生するのは、バー・コード認識の最適化がオンで、かつバッチ・アイテム上にバー・コードが見つからないときのみです。)

  12. endPhase

  13. beginPhase

  14. determineDocType

  15. endPhase

  16. beginPhase

  17. beginDatabaseLookup

  18. determineIndexValues

  19. endPhase

  20. beginPhase

  21. renameOrigCaptureDocTitle

  22. createCaptureDoc

  23. endPhase

  24. beginPhase

  25. postProcess

  26. endPhase

  27. endBatchProcess

5.2 スクリプト設計

この項では、スクリプト設計で使用できるクラスについて説明します。項目は次のとおりです。

5.2.1 RecognitionJob

バー・コードのコードの定数は次のとおりです。

定数

説明

BARCODE_CODEABAR=0

Codeabar

BARCODE_CODE128=1

Code 128

BARCODE_CODE39=2

Code 39

BARCODE_CODE93=3

Code 93

BARCODE_EAN13=4

EAN-13

BARCODE_EAN8=5

EAN-8

BARCODE_INTERLEAVED25=6

Interleaved2/5

BARCODE_UCCEAN128=7

UCC/EAN 128

BARCODE_UPCA=8

UPC-A

BARCODE_UPCE=9

UPC-E

BARCODE_AIRLINE25=10

Airline(IATA) 2/5

BARCODE_CODE32=11

Code32

BARCODE_DATALOGIC25=12

Datalogic 2/5

BARCODE_INDUSTRIAL25=13

Industrial 2/5

BARCODE_ISBNADDON2=14

ISBN Addon 2

BARCODE_ISBNADDON5=15

ISBN Addon 5

BARCODE_MATRIX25=16

Matrix 2/5

BARCODE_POSTNETPLANET=17

Postnet/Planet

BARCODE_PATCHCODE=18

パッチ・コード

BARCODE_DATAMATRIX=19

データ・マトリックス

BARCODE_PDF417=20

PDF417

BARCODE_QRCODE=21

QRコード


ドキュメント編成タイプに対応する定数は次のとおりです。

定数 説明

ORGANIZE_SINGLEPAGE=0

固定のドキュメント当たりページ数に基づいてドキュメントを編成します。

ORGANIZE_SINGLEDOC=1

ドキュメント編成を実行しません。

ORGANIZE_MULTIPAGE_BARCODE=2

各ページ上の同じバー・コード値に基づいてドキュメントを編成します。

ORGANIZE_MULTIPAGE_SEP=3

セパレータ・ページに基づいてドキュメントを編成します。

ORGANIZE_MULTIPAGE_OTHER=4

階層セパレータ・ページに基づいてドキュメントを編成します。


次に示すのは、データベース参照で使用される値です。

説明

DBLOOKUP_NONE=0

データベース参照は構成されていません。

DBLOOKUP_BARCODE=1

バー・コード値を使用してデータベース参照を実行します。

DBLOOKUP_INDEXFIELD=2

索引フィールド値を使用してデータベース参照を実行します。


次に示すのは、データベース参照で複数のレコードが見つかったときに実行されるアクションです。

アクション 説明

DBMULTIPLERECORD_USEFIRST=0

データベース参照で見つかった最初のレコードを使用します。

DBMULTIPLERECORD_DONOTLINK=1

データベース参照の結果を移入しません。


次に示すのは、データベース参照で一致が見つからなかったときに実行されるアクションです。

アクション 説明

DBNOMATCH_ALLOWCOMMIT=0

データベース・レコードが見つからないときでもバッチのコミットを許可します。

DBNOMATCH_NOCOMMIT=1

一致が見つからないときはバッチのコミットを許可しません。


次に示すのは演算子です。

演算子 説明

OPERATOR_OR = 0

表紙定義ルールで使用されるOR演算子。

OPERATOR_AND = 1

表紙定義ルールで使用されるAND演算子。


次に示す値は、ドキュメント・タイプを動的に特定する方法を表します。

説明

DOCTYPE_NONE = 0

ドキュメント・タイプは動的には特定されません。

DOCTYPE_BARCODE = 1

ドキュメント・タイプはバー・コード値に基づいて動的に特定されます。

DOCTYPE_SEPARATOR = 2

ドキュメント・タイプはセパレータ・ページに基づいて動的に特定されます。


次に示すのは、1つのバー・コード定義に対して複数のバー・コード値が見つかったときに実行されるアクションです。

アクション 説明

MULTIBARCODE_USEFIRST=0

最初に見つかったバー・コード値を使用します。

MULTIBARCODE_USELAST=1

最後に見つかったバー・コード値を使用します。

MULTIBARCODE_CLEAR=2

バー・コード値を使用しません。


次のプロパティがこのクラスに適用されます。

プロパティ 説明

String workspaceName

このジョブが関連付けられているワークスペースの名前。

String workspaceID

このジョブが関連付けられているワークスペースのID。

String jobID

ジョブID。

Date lastModifiedDateTime

ジョブが最後に変更された日時。

String lastModifiedUserID

ジョブを最後に変更したユーザーのID。

String name

ジョブ名。

String description

ジョブの説明。

String scriptID

このジョブが関連付けられているスクリプトのID。

List<BarcodeDefinition> barcodes

バー・コード定義のリスト。

Boolean autoDetectBarcodes

これによって、バー・コード自動検出の有効化がオンかどうかが決まります。

Boolean validateCheckSum

これによって、オプションのチェックサムの検証がオンかどうかが決まります。

List<Integer> symbologies

認識用のバー・コードのコードのリスト。有効な値は、この項で前述したバー・コードのコードの定数で定義されている0 - 21です。

Integer batchOrganization

ドキュメント編成タイプ。有効な値は、この項で前述したドキュメント編成タイプの定数で定義されている0 - 4です。

Integer documentPageCount

ドキュメント編成タイプが"ドキュメントごとの固定ページ数"の場合、このプロパティはドキュメント当たりの最大ページ数を表します。

Integer pagesPerDoc2ReadBarcodes

ドキュメント編成タイプが"なし: ドキュメント編成を実行しない"の場合、このプロパティはドキュメント当たり何ページのバー・コードを読み取るかを表します。

Integer maxPageCountPerDoc

ドキュメント編成タイプが"各ページに同じバー・コード値"または"セパレータ・ページ"の場合、このプロパティはドキュメント当たりの最大ページ数を表します。

BarcodeDefinition multiPageDocBarcode

ドキュメント編成タイプが"各ページに同じバー・コード値"の場合、このプロパティはドキュメント区切りを特定するバー・コードを表します。

Boolean optimizeBarcodeDetection

ドキュメント編成タイプが"各ページに同じバー・コード値"の場合、このプロパティによって、バー・コード検出を最適化するかどうかが決まります。

List<SeparatorDefinition> coverPages

ドキュメント編成タイプが"セパレータ・ページ"、"階層セパレータ・ページ"、"なし: ドキュメント編成を実行しない"の場合、このプロパティがセパレータ・ページを定義するデータを保持します。階層セパレータ・ページが使用されるときは、リストに複数のセパレータ・ページ定義が含まれることもありますが、それ以外の2つのシナリオでは、このリストに含まれるセパレータ・ページ定義は1つのみです。

Integer multiBarcodeValuesOption

1つのドキュメント内でバー・コードの値が複数見つかった場合に実行されるアクション。有効な値は、定数として定義されている0-2です。

Integer dynamicDocType

動的ドキュメント・プロファイルの特定方法のオプション。有効な値は、定数として定義されている0-2です。

String defaultDocTypeID

デフォルトのドキュメント・プロファイルのID。

BarcodeDefinition docTypeBarCode

ドキュメント・プロファイルがバー・コードを使用して動的に特定されるとき、このプロパティは、選択されたバー・コードを表します。

List<DocumentDefinition> docTypeMappings

ドキュメント・プロファイルがバー・コードを使用して動的に特定されるとき、このマッピングは、ドキュメント・プロファイルとバー・コード値のマッピングを表します。

List<RecognitionJobField> jobFields

フィールド・マッピング情報。

Integer dblookupUsing

データベース参照で使用される値のタイプ。有効な値は、定数として定義されている0-2です。

BarcodeDefinition dblookupBarcodeField

これは、データベース参照のために選択されるバー・コード定義です。

String dblookupIndexDefID

これは、データベース参照のために選択されるメタデータ・フィールドIDです。

String dblookupProfile

データベース参照プロファイルID。

String dblookupSearchField

データベース参照検索フィールドID。

Integer dblookupMultipleRecordAction

データベース参照時に複数のレコードが見つかったときに実行されるアクション。有効な値は、定数として定義されている0-1です。

Integer dblookupNoMatchAction

データベース参照時にレコードが見つからなかったときに実行されるアクション。有効な値は、定数として定義されている0-1です。

String renamePrefix

後処理の設定の一部です。システム・エラーがないとき、これが名前を変更するためのバッチ接頭辞となります(必要な場合)。

String renameEmail

後処理の設定の一部です。システム・エラーがないとき、これが名前の変更のメール通知を送信するための電子メール・アドレスとなります(必要な場合)。

String renameStatus

後処理の設定の一部です。システム・エラーがないとき、これが変更されるバッチ・ステータスとなります(必要な場合)。

Integer renamePriority

後処理の設定の一部です。システム・エラーがないとき、これが変更されるバッチ優先度となります(必要な場合)。

String processorID

後処理の設定の一部です。システム・エラーがないとき、これがバッチがリリースされるバッチ・プロセッサIDとなります。

String processorJobID

後処理の設定の一部です。システム・エラーがないとき、これが、バッチがリリースされるバッチ・プロセッサ・ジョブIDとなります。

String failureRenamePrefix

後処理の設定の一部です。システム・エラーがあるとき、これが名前を変更するためのバッチ接頭辞となります(必要な場合)。

String failureRenameEmail

後処理の設定の一部です。システム・エラーがあるとき、これが通知を送信する電子メール・アドレスとなります(必要な場合)。

String failureRenameStatus

後処理の設定の一部です。システム・エラーがあるとき、これが変更されるバッチ・ステータスとなります(必要な場合)。

Integer failureRenamePriority

後処理の設定の一部です。システム・エラーがあるとき、これが変更されるバッチ優先度となります(必要な場合)。

String failureProcessorID

後処理の設定の一部です。システム・エラーがあるとき、これがバッチがリリースされるバッチ・プロセッサIDとなります。

String failureProcessorJobID

後処理の設定の一部です。システム・エラーがあるとき、これが、バッチがリリースされるバッチ・プロセッサ・ジョブIDとなります。


5.2.2 BarcodeDefinition

バー・コード検証ルール・タイプの定数を次に示します。

定数 説明

VALIDATION_NONE=0

検証ルールは指定されていません。

VALIDATION_LENGTH=1

バー・コードの長さを使用して検証します。

VALIDATION_MASK=2

マスクを使用して検証します。

VALIDATION_REGULAREXPRESSION=3

正規表現を使用して検証します。

VALIDATION_PICKLIST=4

選択リストを使用して検証します。


このクラスのプロパティは次のとおりです。

プロパティ 説明

String barcodeName

バー・コード定義の名前。

Integer validationRule

バー・コード検証ルール。有効な値は、定数として定義されている0-4です。

Integer validationLength

検証の長さ。

String validationMask

検証のマスク。

String validationRegularExpression

検証の正規表現。

String pickListSourceID

検証の選択リスト・ソースID。

String pickListID

検証の選択リストID。


5.2.3 SeparatorDefinition

このクラスのプロパティは次のとおりです。

プロパティ 説明

String name

セパレータ・ページの名前。

Boolean deleteUponCommit

コミット後にセパレータ・ページを削除するかどうかを決定します。

Integer operator

ルールに使用される演算子。有効な値は、RecognitionJobの定数として定義されている0および1です。

String docTypeID

ドキュメント・タイプがセパレータ・ページに基づいて動的に特定される場合、これがこのセパレータ・ページのドキュメント・タイプのIDとなります。

List<SeparatorRuleDefinition> rules

このセパレータ・ページのルール。


5.2.4 SeparatorRuleDefinition

このクラスのプロパティは次のとおりです。

プロパティ 説明

String name

ルールの名前。

Integer operator

選択されるパッチ・コードおよびバー・コードに使用される演算子。有効な値は、RecognitionJobの定数として定義されている0および1です。

String patchCode

このルールに対して選択されるパッチ・コード。

List<String> barcodes

このルールに対して選択されるバー・コード。


5.2.5 DocumentDefinition

ドキュメント・タイプ・マッピング・オプションの定数を次に示します。

定数 説明

BARCODE_VALUE=0

バー・コード値に基づいてドキュメント・タイプを特定します。

BARCODE_PICKLIST=1

選択リスト内の値に基づいてドキュメント・タイプを特定します。


DocumentDefinitionクラスのプロパティは次のとおりです。

プロパティ 説明

String docTypeID

ドキュメント・タイプID。

Integer mappingType

ドキュメント・タイプをバー・コード値と選択リストのどちらに基づいて特定するかを設定します。有効な値は、定数として定義されている0および1です。

String value

指定されたバー・コード値。

String pickListSourceID

指定された選択リスト・ソースID。

String pickListID

指定された選択リストID。


5.2.6 RecognitionJobField

これらは、自動移入タイプの定数です。

定数 説明

AUTOPOPULATE_NONE=0

索引値を自動移入しません。

AUTOPOPULATE_BARCODE=1

索引値にバー・コード値を自動移入します。

AUTOPOPULATE_BATCHNAME=2

索引値にバッチ名を自動移入します。

AUTOPOPULATE_DEFAULT=3

索引値にデフォルト値を自動移入します。

AUTOPOPULATE_INDEXDATE=4

索引値に索引日付を自動移入します。

AUTOPOPULATE_SCANDATE=5

索引値にスキャン日付を自動移入します。


RecognitionJobFieldクラスのプロパティは次のとおりです。

プロパティ 説明

String indexDefID

プロパティ値を移入するメタデータID。

Integer autoPopulate

自動移入タイプ。有効な値は、定数として定義されている0-5です。

String populateValue

バー・コード・タイプの場合、これはバー・コード定義名を表し、デフォルト・タイプの場合、これはデフォルト値を表します。


5.2.7 RecognitionProcessorContext

プロパティ 説明

Logger logger

ユーザーが追加のエントリを記録するためのロガー。

RecognitionJob job

現在使用されているジョブ。

BatchLockEntity batchLockEntity

現在処理されているバッチ。

CaptureWorkspaceEntity workspaceEntity

現在使用されているワークスペース。

int phaseID

現在のフェーズを示す整数。

0: どのフェーズでもありません。例としては、処理前検証やバッチ・クリーン・アップがあります。

1: バー・コード認識

2: ドキュメント編成

3: ドキュメント分類

4: 索引付け

5: ドキュメント作成

6: 後処理

boolean cancelAction

コールによっては、ユーザーがアクションを取り消せることがあります(バー・コード認識やデータベース参照など)。

BatchItemEntity batchItem

現在処理されているバッチ・アイテム。これは、特にバー・コード認識およびバー・コード検証のときに使用されます(ドキュメント編成フェーズの一部)。

Integer patchCodeRead

バッチ・アイテム上で見つかったパッチ・コード。これが使用されるのは、バー・コード認識フェーズにおいてのみです。

List<String> barcodesRead

1つのバッチ・アイテムに関連付けられているすべてのバー・コード。これには、バッチ・アイテムに関連付けられている元のバー・コードや、バー・コード認識エンジンを通して読み取られたバー・コードも含まれます。これが使用されるのは、バー・コード認識フェーズにおいてのみです。

List<ProcessorItem> validBarcodes

これは、特定のバッチ・アイテムに対して見つかった有効なバー・コードのリストです。これが適用されるのは、バー・コード検証ステップ(ドキュメント編成フェーズの一部)のみです。

ProcessorDocumentには、特定のドキュメントに関連付けられている有効なバー・コードのリストも格納されています。これは、ドキュメントに関連付けられているすべてのバッチ・アイテム上で見つかったすべての有効なバー・コードのコレクションです。

ProcessorItem validBarcode

これはドキュメント区切りを特定するバー・コードに固有であり、最適化されたバー・コード認識設定に固有です。

ProcessorSeparatorPage separator

これは、セパレータ・ページが関係する編成タイプの場合にコールされます。セパレータがnullの場合は、このバッチ・アイテムはセパレータ・ページではありません。

ProcessorDocument document

これは、ドキュメントの分類、索引付けおよびドキュメント作成フェーズで使用されます。ドキュメントについてユーザーが知っている必要のある情報がすべて格納されています。

String dbLookupValue

これが使用されるのは、データベース参照の実行前のみです。ユーザーは参照値を変更できます。

String unIndexedDocTitle

これは、ドキュメント作成フェーズに固有です。このプロパティを使用すると、ユーザーが最初のキャプチャ・ドキュメント・タイトルをカスタマイズできます。デフォルトのタイトルはunindexedです。この値がnullの場合は最初のドキュメント・タイトルは変更されません。

String extractPath

バッチ・アイテム抽出先のパス。これは、バー・コード認識フェーズに固有です。ユーザーはこのプロパティを変更しないでください。


5.2.8 PostProcessContext

プロパティ 説明

String renameBatch

後処理時にバッチがこの名前に変更されます。nullの場合、バッチの名前は変更されません。

Integer priority;

後処理時にバッチがこの優先度に変更されます。優先度が有効ではない(<0または>10)場合は、バッチの優先度はそのままになります。

BatchStatusEntity status;

後処理時に、このステータス・エンティティ・オブジェクトがバッチに関連付けられます。nullの場合、バッチのステータスはそのままになります。

int batchState;

認識プロセス中にエラーが発生した場合は、バッチの状態がBATCH_STATE_ERRORに設定され、それ以外の場合はバッチの状態がBATCH_STATE_READYに設定されます。

List<String> emailRecipients;

電子メール通知の送信先である受信者のリスト。空の場合は、電子メールは送信されません。

String emailSubject;

電子メール通知の件名行。

String emailMessage;

電子メール通知のメッセージ本文。空の場合は、電子メールは送信されません。

String processorID;

現在のバッチのリリース先となるプロセッサID。

String processorJobID;

現在のバッチのリリース先となるプロセッサ・ジョブID。


5.2.9 ProcessorSeparatorPage

プロパティ 説明

boolean include

このセパレータ・ページをコミット後に削除するかどうかを示します。

int level;

これが使用されるのは、編成タイプが階層セパレータ・ページの場合のみです。レベルは1から開始します。

String name;

セパレータ・ページの名前。

String batchItemID;

このセパレータ・ページが関連付けられるバッチ・アイテム。


5.2.10 ProcessorItem

プロパティ 説明

String name;

String value;

ProcessorItemは、名前/値ペアのデータを保持するクラスです。スクリプトでバー・コード名/値を保持するのに使用されます。


5.2.11 ProcessorDocument

プロパティ 説明

String title;

ドキュメントのタイトル。これは、ドキュメント作成フェーズで移入されます。

List<String> batchItems;

このドキュメントに関連付けられているすべてのバッチ・アイテム。これは、ドキュメント編成フェーズで移入されます。

List<ProcessorItem> validBarcodes;

このドキュメントに関連付けられている有効なバー・コード。これは、このドキュメントに関連付けられているすべてのバッチ・アイテムに対して見つかったすべての有効なバー・コードの組合せです。これは、ドキュメント編成フェーズで移入されます。

int failureStatus;

現在のドキュメントのステータス。

  • 0: エラーなし

  • 1: バー・コードを検証できませんでした。これに該当するのは、ドキュメント内でバー・コード検証ルールに一致する重複バー・コードが見つかり、値を消去するようにジョブが設定されている場合です。

  • 2: ドキュメントが最大ページ・ルールを超えています。

  • 3: ドキュメント・タイプを特定できません。

  • 4: データベース検索結果がなく、レコードが見つからないときにコミットしないようにジョブが設定されています。

String docTypeID;

ドキュメントに関連付けられているドキュメント・タイプID。nullの場合は、IDが特定されていません。

String comment;

ドキュメントに対するコメント。通常はfailureStatusのエラー詳細ですが、ユーザーがスクリプトを通してカスタマイズできます。

String captureDocID;

これが使用されるのは、1ドキュメントのバッチ編成タイプの場合のみです。このタイプのときは、プロセッサによるドキュメント編成は行われず、キャプチャ・ドキュメントも作成されません。このIDがキャプチャ・ドキュメントIDです。

ProcessSeparatorPage separator;

このドキュメントのセパレータ・ページ。これが適用されるのは、編成タイプが"1ドキュメント"と"セパレータがある複数ページ・ドキュメント"の場合です。

List<ProcessSeparatorPage> hierarchySeparators;

このドキュメントのセパレータ・ページ。これが適用されるのは、編成タイプが"階層セパレータのある複数ページ"の場合です。

List<IndexValue> indexValues;

メタデータの名前および値のリスト。


5.3 スクリプトのメソッド

この項では、スクリプトのメソッドについて説明します。項目は次のとおりです。

5.3.1 initialize (RecognitionProcessorContext rpc)

これは、認識プロセッサがスクリプトに対して最初に行うコールです。まだバッチは指定されていません。

rpcで値が移入されるプロパティは次のとおりです。

  • logger: ロガーを使用して追加のエントリをログに記録できます。このプロパティはプロセス全体を通して維持されます。メソッドごとに繰り返されることはありません。

  • job: 現在の認識ジョブ。このプロパティはプロセス全体を通して維持されます。メソッドごとに繰り返されることはありません。

  • workspaceEntity: 現在のワークスペース・エンティティ。このプロパティはプロセス全体を通して維持されます。メソッドごとに繰り返されることはありません。

  • phaseID: 0

5.3.2 processBatch (RecognitionProcessorContext rpc)

これは、認識プロセッサによってバッチが処理される前にコールされます。

  • phaseID: 0

  • batchLockEntity: この時点で、認識プロセッサによるバッチのドキュメント・リストの更新は完了しています。このプロパティはプロセスの終了まで維持されます。残りのメソッドごとに繰り返されることはありません。

  • cancelAction: ユーザーはフラグをtrueに設定するとバッチの処理をスキップできます。

5.3.3 restoreCaptureBatch (RecognitionProcessorContext rpc)

次の場合:

  • ジョブ編成タイプが、キャプチャ・バッチを必要としている。

  • イメージ・ドキュメントが1つのみである。

  • このバッチに複数のドキュメントがある。

  • バッチ状態は、ドキュメント作成フェーズでプロセッサが失敗したことを示している。

プロセッサは、バッチとジョブのどちらも最後のプロセス以降に変更されていないことを確認します。この状況では、プロセッサはバッチを元の状態に戻すために、認識プロセスで作成されたドキュメントを削除します。このメソッドはバッチのリストア前に起動され、これにより、ユーザーはリストアを取り消し、バッチの処理を無効にできます。

  • phaseID: 0

  • cancelAction: フラグをtrueに設定するとバッチのリストアをスキップでき、このバッチの処理がスキップされます。

5.3.4 beginPhase (RecognitionProcessorContext rpc)

これはフェーズの開始を示します。

  • phaseID: 6つのフェーズがあります(詳細は「RecognitionProcessorContext」のphaseIDを参照してください)。

  • cancelAction: フラグをtrueに設定すると特定のフェーズをスキップできます。スキップできないフェーズの場合は、このフラグは無視されます。

    • 取り消すことができるフェーズ: バー・コード認識、ドキュメント分類、索引付け。

    • 取り消すことができないフェーズ: ドキュメント編成、ドキュメント作成、後処理。

5.3.5 endPhase (RecognitionProcessorContext rpc)

これはフェーズの終了を示します。

  • phaseID: 6つのフェーズがあります(詳細は「RecognitionProcessorContext」のphaseIDを参照してください)。

5.3.6 extractBatchItem(RecognitionProcessorContext rpc)

これは、バー・コード認識フェーズで発生します。プロセッサは、ページ上でバー・コード認識を実行する直前に、バッチ・アイテムを一度に1つずつディレクトリに抽出します。その後、プロセッサからユーザーにアイテムの場所が通知されます。

  • phaseID: 1

  • extractPath: バッチ・アイテムが存在するディレクトリ。

5.3.7 barcodesFoundOnItem(RecognitionProcessorContext rpc)

これは、プロセッサによってバッチ・アイテムが処理され、このアイテム上のバー・コードが収集および認識された後に起動されます。

  • phaseID: 1

  • batchItem: バー・コード認識の実行に現在使用されているバッチ・アイテム。

  • patchCodeRead: バッチ・アイテム上で見つかったパッチ・コード値。

  • barCodesRead: ページ上で読み取られたバー・コードと、バッチ・アイテム上の既存のバー・コードの組合せ。

5.3.8 batchItemAllValidBarcodes (RecognitionProcessorContext rpc)

これは、認識プロセッサによって特定のバッチ・アイテム上のバー・コードの検証が完了した後に発生します。

  • phaseID: 2

  • batchItem: バー・コード検証の実行に現在使用されているバッチ・アイテム。

  • validBarCodes: バッチ・アイテム上で見つかった有効なバー・コードの名前/値ペアのリスト。このリストには、認識ジョブ内のすべてのバー・コード定義が含まれます。値の変更はできますが、名前の変更や、リストのアイテムの追加や削除は行わないでください。

5.3.9 determineSeparatorPage(RecognitionProcessorContext rpc)

これは、このページがセパレータかどうかの確認が完了した後に発生します。このメソッドが起動されるのは、認識ジョブに対してセパレータが定義されているときのみです。このコールで使用されるプロパティは次のとおりです。

  • phaseID: 2

  • batchItem: セパレータかどうかの判定が行われる現在のバッチ・アイテム。

  • validBarCodes: バッチ・アイテム上で見つかった有効なバー・コードの名前/値ペアのリスト。このリストには、認識ジョブ内のすべてのバー・コード定義が含まれます。

  • separator: このバッチ・アイテムが有効なセパレータである場合を除いて、このオブジェクトはnullです。変更を加える場合は、nullに設定するか、有効なデータを移入する必要があります。

レベルが使用されるのは階層セパレータ・ページ・タイプのみです。その他の編成タイプの場合、この値は無視されます。レベルは1から開始します。

プロセッサによって特定されたレベルは変更できます。ただし、レベルが認識ジョブ定義に適合しない場合は、最高レベル(レベル<=0)または最低レベル(レベル>=定義されている最大レベル)が使用されます。

5.3.10 batchItemValidBarcode (RecognitionProcessorContext rpc)

このメソッドは、このバッチ・アイテム上で認識された有効なバー・コードを1つ受け取ります。このコールが発生するのは、バッチ編成タイプがすべてのページのバー・コードで、かつバー・コード認識の最適化がオンの場合のみです。

ページ上でバー・コードが見つからないと、プロセッサは次のページ上でセパレータ・バー・コード値の特定を試みます。次のページでバー・コード値が特定された直後にこれがコールされます。

  • phaseID: 2

  • batchItem: セパレータ・バー・コード値を特定する、次ページのバッチ・アイテム。

  • validBarcode: セパレータ・バー・コードの名前/値ペア。ユーザーは必要であれば値を変更できます。

5.3.11 determineDocType(RecognitionProcessorContext rpc)

これは、認識プロセッサがドキュメント・タイプをデフォルトのドキュメント・タイプか動的ドキュメント・タイプ・マッピングの1つに特定した後にコールされます。docTypeIDは、プロセッサがこれを特定できない場合、nullにできます。

  • phaseID: 3

  • document: 現在のドキュメント情報が格納されます。プロパティの一部は、特定の編成タイプに固有です。docTypeIDはここで調べ、必要に応じて変更する必要があります。

5.3.12 beginDatabaseLookup(RecognitionProcessorContext rpc)

これは、認識プロセッサが参照値を特定した後、参照の実際の実行がコールされる前にコールされます。

  • phaseID: 4

  • dbLookupValue: ユーザーは参照値を変更できます。

  • cancelAction: ユーザーは参照を取り消すことができます。

5.3.13 determineIndexValues(RecognitionProcessorContext rpc)

これは、認識プロセッサが特定のプロセッサ・ドキュメントのすべてのメタデータ値を特定した後にコールされます。ユーザーは値を変更する機会が与えられます。

  • phaseID: 4

  • document: 現在のドキュメント情報が格納されます。プロパティの一部は、特定の編成タイプに固有です。索引値はここで調べ、必要に応じて変更する必要があります。

5.3.14 renameOrigCaptureDocTitle (RecognitionProcessorContext rpc)

これは、プロセッサによって元のドキュメントの名前がunindexedに変更される前にコールされます。これは、"1ドキュメントのみ"を除くすべてのバッチ編成タイプに適用されます。

  • phaseID: 5

  • unIndexedDocTitle: ユーザーがタイトルを変更できます。

5.3.15 createCaptureDoc(RecognitionProcessorContext rpc)

プロセッサによってキャプチャ・ドキュメントが作成される前に、ドキュメントのタイトル、ドキュメント・タイプID、メタデータ値およびドキュメントのコメントをカスタマイズできます。このドキュメントに関連付けられるバッチ・アイテムの変更もできますが、編成タイプが"1ドキュメントのみ"の場合は、バッチ・アイテムを変更しても結果は変わりません。

  • phaseID: 5

  • document: プロセッサが作成しようとしているキャプチャ・ドキュメント。

5.3.16 postProcess(PostProcessContext postContext)

これは、認識プロセッサがすべての後処理設定を特定した後、実際の変更が行われる前に呼び出されます。

  • postContext: 必要であれば、ユーザーは、後処理の結果に影響を及ぼすような変更を加えることができます。

5.3.17 endBatchProcess()

これは、認識プロセッサによるバッチの処理が完了したことを示します。