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

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

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

  • 単一のバー・コード値を複数のフィールド値に分割する。

  • バー・コード値を適切なフィールドに割り当てる。

  • どのページがドキュメントの区切りかを、カスタム・ロジックを使用して判断する。

  • サーバー・アクティビティに対するカスタムの監査を実行する。

  • 無効なデータがあったときにバッチのコミットを取り消す。

Captureでは、認識プロセッサ・スクリプトを作成して認識処理をカスタマイズできます。詳細は、『Oracle WebCenter Enterprise Captureのマネージング』を参照してください。

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

認識プロセッサのメソッド

この項では、認識プロセッサのメソッドについて説明します。認識プロセッサ・バッチ・ジョブでは、次の順序でメソッドが実行されます:

  1. initialize

  2. processBatch

  3. restoreCaptureBatch

  4. beginPhase

  5. endPhase

  6. extractBatchItem

  7. barcodesFoundOnItem

  8. batchItemAllValidBarcodes

  9. determineSeparatorPage

  10. batchItemValidBarcode

  11. determineDocType

  12. beginDatabaseLookup

  13. determineIndexValues

  14. renameOrigCaptureDocTitle

  15. createCaptureDoc

  16. postProcess

  17. endBatchProcess

ノート:

一部のメソッドは、特定のジョブ構成でのみ実行されます。

initialize

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

認識プロセッサ・クラス(rpc)に移入されるプロパティは、次のとおりです:

  • phaseID: 0

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

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

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

  • batchManager: BatchManagerを使用すると、バッチ、ドキュメントおよびバッチ・アイテムを監査および操作できます。BatchManager内でメソッドをコールする場合は、このプロパティを慎重に使用してください。このプロパティを適切に使用しないと、バッチが破損することがあります。

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void initialize(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

processBatch

processBatchメソッドは、認識プロセッサによってバッチが処理される前にコールされます。rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 0

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

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

  • processorBase: 独自のメトリック・セットの収集に使用できるDynamic Monitoring Service (DMS)のNounオブジェクトを表します。このプロパティはプロセスの終了まで維持され、メソッドごとに繰り返されることはありません。

  • DMS_Literals: DMSで使用されているリソース・バンドル。このプロパティはプロセスの終了まで維持され、メソッドごとに繰り返されることはありません。

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void processBatch(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

restoreCaptureBatch

restoreCaptureBatchメソッドは、以前に処理されたバッチがドキュメント作成フェーズでエラーまたはその他の理由により中断されたときに呼び出されます。認識プロセッサは、処理を開始する前に、まずバッチをクリーン・アップして元の状態に戻す必要があります。

restoreCaptureBatchメソッドは、次のすべての条件が満たされたときに呼び出されます:

  • バッチの状態は、ドキュメント作成フェーズで認識プロセッサが最後に失敗したことを示します。

  • 最後のプロセス以降、バッチは変更されていません。

  • 最後のプロセス以降、認識ジョブは変更されていません。

認識プロセッサは、最後のプロセス以降、バッチとジョブの両方とも変更されていないことを確認します。そのような場合、認識プロセッサは、認識プロセスで作成された以前のドキュメントを削除して、バッチを元の状態に戻します。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 0

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

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void restoreCaptureBatch(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

beginPhase

beginPhaseメソッドは、フェーズの開始を示します。rpcに移入されるプロパティは、次のとおりです:

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

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

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

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

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void beginPhase(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

endPhase

endPhaseメソッドは、フェーズの終了を示します。rpcに移入されるプロパティは、次のとおりです:

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

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void endPhase(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

extractBatchItem

extractBatchItemメソッドは、バー・コード認識フェーズ中に実行されます。認識プロセッサは、認識プロセッサがページ上でバー・コード認識を実行する前に、バッチ・アイテムを一度に1つずつディレクトリに抽出します。次に、認識プロセッサは、アイテムが存在する場所を通知します。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 1。

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

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void extractBatchItem(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

barcodesFoundOnItem

barcodesFoundOnItemメソッドは、認識プロセッサがバッチ・アイテムを処理し、このアイテム上のバー・コードを収集して認識した後に呼び出されます。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 1。

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

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

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

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void barcodesFoundOnItem(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

batchItemAllValidBarcodes

batchItemAllValidBarcodesメソッドは、認識プロセッサが特定のバッチ・アイテム上のバー・コードの検証を完了した後にコールされます。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 2。

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

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

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void batchItemAllValidBarcodes(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

determineSeparatorPage

determineSeparatorPageメソッドは、認識プロセッサがページをセパレータとして検証した後にコールされます。このメソッドが呼び出されるのは、認識ジョブにセパレータ・ページが定義されている場合のみです。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 2。

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

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

  • separator: このバッチ・アイテムが有効なセパレータ・ページである場合を除いて、このオブジェクトはnullです。変更を行う場合は、セパレータをnullまたはProcessSeparatorPageクラスの有効なオブジェクトに設定する必要があります。

認識プロセッサの階層セパレータ機能により、階層レベル内のドキュメントが処理および編成されます。認識プロセッサによって特定されたレベルは変更できます。ただし、そのレベルが認識ジョブ定義に適合しない場合、認識プロセッサでは最低レベル(レベル<=0)または最高レベル(レベル>=定義されている最大レベル)が使用されます。セパレータ・オブジェクトのlevelプロパティは、階層セパレータ・ページ・タイプのみで使用されます。その他のドキュメント・タイプの場合、この値は無視されます。レベルは常に1で始まる必要があります。

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void determineSeparatorPage(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

batchItemValidBarcode

batchItemValidBarcodeメソッドは、特定のバッチ・アイテム上で認識された有効なバー・コードを1つ渡します。このメソッド・コールが発生するのは、ドキュメント編成タイプが「各ページに同じバー・コード値」およびバー・コード認識の最適化がオンになっている場合のみです。

ページ上でバー・コードが見つからない場合、認識プロセッサは次のページ上でセパレータ・バー・コード値の特定を試みます。validBarcodeには、次のページ上で見つかったバー・コードが移入されます。バー・コードが見つからない場合、validBarcodeはnullに設定されます。その場合、このメソッドは、認識プロセッサによってバー・コード値が特定された直後にコールされます。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 2。

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

  • validBarcode: セパレータ・バー・コードの名前と値のペア。この値は、必要に応じて変更できます。

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void batchItemValidBarcode(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

determineDocType

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

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 3。

  • document: 現在のドキュメント情報が格納されます。一部のプロパティは、特定のドキュメント編成タイプに固有です。ドキュメント・オブジェクトのindexValuesプロパティを使用して、ドキュメントのメタデータ値を変更できます。

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void determineDocType(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

beginDatabaseLookup

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

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 4。

  • dbLookupValue: 参照値を変更できます。

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

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void beginDatabaseLookup(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

determineIndexValues

determineIndexValuesメソッドは、認識プロセッサが特定のドキュメントのすべてのメタデータ値を特定した後にコールされます。メタデータ値は変更できます。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 4。

  • document: 現在のドキュメント情報が格納されます。一部のプロパティは、特定のドキュメント編成タイプに固有です。ドキュメント・オブジェクトのindexValuesプロパティを使用して、ドキュメントのメタデータ値を変更できます。

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void determineIndexValues(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

renameOrigCaptureDocTitle

renameOrigCaptureDocTitleメソッドは、認識プロセッサが元のドキュメントの名前をunindexedに変更する前にコールされます。これは、ドキュメント編成を実行しないタイプを除くすべてのドキュメント編成タイプに適用されます。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 5。

  • unIndexedDocTitle: タイトルを変更できます。

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void renameOrigCaptureDocTitle(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

createCaptureDoc

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

ノート:

バッチ・アイテムの変更中は、どのドキュメントにも関連付けられていない孤立アイテムがバッチ内に残る可能性があるため、注意が必要です。

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 5。

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

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void createCaptureDoc(RecognitionProcessorContext rpc);

RecognitionProcessorContext rpc

postProcess

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

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 6。

次の表に、このメソッドの構文およびパラメータを示します:

構文 パラメータ

public void postProcess(RecognitionProcessorContext rpc, PostProcessContext ppc);

RecognitionProcessorContext rpc

PostProcessContext ppc

endBatchProcess

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

rpcに移入されるプロパティは、次のとおりです:

  • phaseID: 0

このメソッドの構文: public void endBatchProcess(RecognitionProcessorContext rpc);

認識プロセッサのクラス

認識プロセッサのクラスは、認識プロセッサ・スクリプトを設計するために使用できます。この項では、次のクラスについて説明します:

認識プロセッサ・スクリプトの設計に使用できる次のクラスに加えて、認識プロセッサおよびインポート・プロセッサに関連する共通クラスがいくつかあります。これらの共通クラスの詳細は、「共通キャプチャ・クラス」を参照してください。

BarcodeDefinition

BarcodeDefinitionクラスには、バー・コード検証ルール・タイプの定数が含まれます。このクラスは、認識プロセッサ・ジョブの第3トレイン・ストップで指定されている1つのバー・コード定義を表します。

プロパティ タイプ 説明

barcodeName

String

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

validationRule

Integer

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

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

  • 0 – 検証ルールが指定されていません。

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

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

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

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

validationLength

Integer

検証の長さ。

validationMask

String

検証のマスク。

validationRegularExpression

String

検証の正規表現。

pickListSourceID

String

検証の選択リスト・ソース識別子。

pickListID

String

検証の選択リスト識別子。

DocumentDefinition

ドキュメント・プロファイルが「バー・コードを使用して動的に決定する」に設定されている場合は、「ドキュメント・プロファイルとバー・コード値のマッピング」を定義できます。各マッピングは、DocumentDefinitionクラスによって表されます。

プロパティ タイプ 説明

docTypeID

String

ドキュメント・タイプの一意識別子。

mappingType

Integer

これにより、リテラル値か選択リストのどちらに基づいてドキュメント・タイプを決定するかを設定します。値は、定数内に定義されている0および1です:

  • 0 – 検出されたバー・コード値を、指定されたリテラル値と比較します。

  • 1 – 選択リストの値に基づいてドキュメント・タイプを決定するドキュメント・タイプ・マッピング・オプション。

value

String

指定されたリテラル文字列。

pickListSourceID

String

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

pickListID

String

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

PostProcessContext

PostProcessContextクラスは、処理が完了した後にバッチに適用する必要があるすべての設定を表します。処理中にエラーが発生した場合、認識プロセッサ・ジョブの後処理トレイン・ストップの設定からPostProcessContextデータが移入されます。

プロパティ タイプ 説明

renameBatch

String

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

priority

int

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

status

BatchStatusEntity

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

batchState

int

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

emailRecipients

List<String>

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

emailSubject

String

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

emailMessage

String

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

processorID

String

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

processorJobID

String

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

comment

String

バッチ・ノートを表します。

errorMessage

String

バッチ処理中に発生したエラー。

ProcessorAttachment

ProcessorAttachmentクラスは、認識プロセッサによって特定された論理キャプチャ・ドキュメント添付を表します。ドキュメント作成フェーズの最終フェーズで、認識プロセッサは、ProcessorAttachmentsのコレクションに基づいて、関連付けられたキャプチャ・ドキュメントへのドキュメント添付を作成しようとします。

プロパティ タイプ 説明

attachmentTypeID

String

添付タイプの一意識別子。

batchItems

List<String>

この添付に関連付けられたバッチ・アイテム。

separator

ProcessSeparatorPage

この添付のセパレータ・ページ。このプロパティは、階層セパレータ編成タイプにのみ適用されます。

title

String

この添付のタイトル。

ProcessorDocument

ProcessorDocumentクラスは、認識プロセッサによって特定された論理キャプチャ・ドキュメントを表します。ドキュメント作成フェーズの最終フェーズで、認識プロセッサは、ProcessorDocumentのコレクションに基づいてバッチ内にドキュメントを作成しようとします。

プロパティ タイプ 説明

title

String

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

batchItems

List<String>

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

validBarcodes

List<ProcessorItem>

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

failureStatus

int

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

  • 0 – エラーなし

  • 1 – バー・コードを検証できませんでした。これに該当するのは、認識プロセッサによってドキュメント内でバー・コード検証ルールに一致する重複バー・コードが検出され、かつ値をクリアするようにジョブが設定されている場合です。

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

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

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

docTypeID

String

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

comment

String

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

captureDocID

String

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

separator

ProcessSeparatorPage

このドキュメントのセパレータ・ページ。これは、ドキュメント編成を実行しない編成タイプおよびセパレータがある複数ページ・ドキュメント編成タイプにのみ適用されます。

hierarchySeparators

List<ProcessSeparatorPage>

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

indexValues

List<IndexValue>

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

attachments

List<ProcessorAttachment>

このドキュメントに関連付けられている添付のリスト。

ProcessorItem

ProcessorItemクラスは、「名前」および「値」プロパティで識別されるアイテムを表します。このクラスは、メタデータ・フィールドの名前と値のペアを保持します。この場合、このクラスは特定のバー・コードの名前と値を保持します。

プロパティ タイプ 説明

name

String

ProcessorItemのバー・コード名を示します。

value

String

ProcessorItemの値を指定します。

ProcessSeparatorPage

ProcessSeparatorPageクラスは、認識プロセッサによって特定されたセパレータ・ページを表します。

プロパティ タイプ 説明

include

boolean

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

level

int

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

name

String

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

batchItemID

String

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

validBarcodes

List<ProcessorItem>

このバッチ・アイテムのすべての有効なバー・コードを保持している階層セパレータ・ページのみで使用されます。

attachmentTypeID

String

これは、認識プロセッサによって検出されたセパレータ・ページに関連付けられている添付タイプIDです。

RecognitionJob

RecognitionJobクラスは認識プロセス・ジョブを表し、バー・コード・シンボルに対応する定数を含みます。

プロパティ タイプ 説明

workspaceName

String

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

workspaceID

String

このジョブが関連付けられているワークスペースの一意識別子。

jobID

String

ジョブの一意識別子。

lastModifiedDateTime

Date

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

lastModifiedUserID

String

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

jobName

String

ジョブの名前。

description

String

ジョブの説明。

scriptID

String

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

barcodes

List<BarcodeDefinition>

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

autoDetectBarcodes

Boolean

「バー・コード自動検出の有効化」をオンにするかどうかを決定します。

validateCheckSum

Boolean

「オプションのチェックサムの検証」をオンにするかどうかを決定します。

symbologies

List<Integer>

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

バー・コード・シンボルに対応する定数は、次のとおりです:

  • 0 – codabar

  • 1 – code 128

  • 2 – code 39

  • 3 – code 93

  • 4 – EAN-13

  • 5 – EAN-8

  • 6 – interleaved 2/5

  • 7 – UCC/EAN 128

  • 8 – UPC-A

  • 9 – UPC-E

  • 10 – Airline(IATA) 2/5

  • 11 – Code 32

  • 12 – Datalogic 2/5

  • 13 – Industrial 2/5

  • 14 – ISBN Addon 2

  • 15 – ISBN Addon 5

  • 16 – Matrix 2/5

  • 17 – Postnet/Planet

  • 18 – パッチ・コード

  • 19 – データ・マトリックス

  • 20 – PDF417

  • 21 – QRコード

batchOrganization

Integer

ドキュメント編成タイプ。値の範囲は0 - 4です。

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

  • 0 – ドキュメントごとの固定ページ数。

  • 1 – なし - ドキュメント編成を実行しない。

  • 2 – 各ページに同じバー・コード値。

  • 3 – セパレータ・ページ

  • 4 – 階層セパレータ・ページ。

documentPageCount

Integer

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

pagesPerDoc2ReadBarcodes

Integer

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

maxPageCountPerDoc

Integer

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

multiPageDocBarcode

BarcodeDefinition

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

optimizeBarcodeDetection

Boolean

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

coverPages

List<SeparatorDefinition>

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

multiBarcodeValuesOption

Integer

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

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

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

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

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

dynamicDocType

Integer

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

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

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

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

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

defaultDocTypeID

String

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

docTypeBarCode

BarcodeDefinition

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

docTypeMappings

List<DocumentDefinition>

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

jobFields

List<RecognitionJobField>

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

dblookupUsing

Integer

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

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

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

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

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

dblookupBarcodeField

BarcodeDefinition

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

dblookupIndexDefID

String

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

dblookupProfile

String

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

dblookupSearchField

String

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

dblookupMultipleRecordAction

Integer

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

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

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

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

dblookupNoMatchAction

Integer

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

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

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

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

renamePrefix

String

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

renameEmail

String

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

renameStatus

String

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

renamePriority

Integer

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

processorID

String

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

processorJobID

String

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

failureRenamePrefix

String

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

failureRenameEmail

String

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

failureRenameStatus

String

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

failureRenamePriority

Integer

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

failureProcessorID

String

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

failureProcessorJobID

String

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

online

boolean

この認識ジョブがアクティブかどうかを示します。

sourceDocAttachments

Integer

ソース・ドキュメント添付のためのオプション。次は、返される値です。
  • 0 – すべての添付を含めてドキュメントを作成します。

  • 1– ドキュメント・プロファイル添付タイプが一致する添付を含めます。

  • 2 – 添付を含めません。

RecognitionJobField

RecognitionJobFieldクラスは、「フィールド」トレイン・ストップの各フィールドを表します。

プロパティ タイプ 説明

indexDefID

String

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

autoPopulate

Integer

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

自動移入タイプの定数は次のとおりです:

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

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

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

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

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

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

populateValue

String

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

RecognitionProcessorContext

RecognitionProcessorContextクラスは、認識処理に関連する関連属性を含むコンテキスト・オブジェクトです。

プロパティ タイプ 説明

logger

Logger

追加エントリのログ記録に使用できるjava.util.logging.Loggerのインスタンス。

job

RecognitionJob

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

ble

BatchLockEntity

現在処理されているバッチが含まれるロック・エンティティ。

workspaceEntity

CaptureWorkspaceEntity

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

phaseID

int

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

  • 0 –バッチ前処理。このステップでは、認識プロセッサがリソース初期化およびバッチ検証を実行し、必要に応じてクリーン・アップします。

  • 1 – バー・コード認識。このステップでは、認識プロセッサがすべてのドキュメントのすべてのバッチ・アイテムを調べて、バッチ・アイテムを1つずつ抽出し、認識設定に基づいてバー・コード認識を実行します。

  • 2 – ドキュメント編成。このステップでは、認識プロセッサがバー・コード定義構成に基づいて有効なバー・コードを検出し、ドキュメント処理設定に基づいて論理ドキュメントを作成します。

  • 3 – ドキュメント分類。このステップでは、認識プロセッサが、ドキュメント・プロファイル設定に基づいて、前のステップで作成された論理ドキュメントごとにプロパティ・ドキュメント・タイプを特定します。

  • 4 – 索引付け。このステップでは、認識プロセッサがデータベース参照構成に基づいてデータベース参照を実行し、フィールド設定に基づいてすべての論理ドキュメントの索引値を特定します。

  • 5 – ドキュメント作成。このステップでは、認識プロセッサが、特定した論理ドキュメントに基づいて実際のキャプチャ・ドキュメントを作成し、ドキュメント索引を移入して、ドキュメント・タイプを割り当てます。プロセス中に警告またはエラーが発生した場合、ドキュメント・コメントが更新されます。

  • 6 – 後処理。このステップでは、認識プロセッサが後処理構成に従ってバッチをリリースします。必要に応じて、バッチ名の変更、バッチのステータスや優先度の変更、電子メール・メッセージの送信が行われることもあります。

cancelAction

boolean

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

batchItem

BatchItemEntity

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

patchCodeRead

Integer

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

barcodesRead

List<String>

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

validBarcodes

List<ProcessorItem>

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

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

validBarcode

ProcessorItem

ドキュメント区切りを特定するバー・コードと、最適化されたバー・コード認識設定に固有です。バッチ編成タイプが各ページにバー・コードがあるタイプであり、最適化された認識がオンになっており、指定されたページのバー・コードがnull (バー・コードが見つからない)である場合、validBarcodeには次のページのバー・コードが含まれます。

separator

ProcessSeparatorPage

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

document

ProcessorDocument

ドキュメントの分類、索引付けおよびドキュメント作成フェーズで使用されます。ドキュメントに関して知っておく必要があるすべての情報が含まれます。

dbLookupValue

String

データベース参照の実行前にのみ使用されます。参照値は変更できます。

unIndexedDocTitle

String

ドキュメント作成フェーズに固有です。最初のキャプチャ・ドキュメントには、属しているドキュメントを認識プロセッサが特定できないすべてのバッチ・アイテムが格納されます。このプロパティを使用すると、最初のキャプチャ・ドキュメント・タイトルをカスタマイズできます。デフォルトのタイトルはunindexedです。この値がnullの場合は最初のドキュメント・タイトルは変更されません。

extractPath

String

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

processorBase

Noun

認識プロセッサのメトリック・データを保持するDMS Noun。

DMS_Literals

ResourceBundle

DMSで使用されているリソース・バンドル。

batchManager

BatchManagerSession

バッチ関連操作の実行に使用できるoracle.odc.batchmanager.BatchManagerSessionのインスタンス。

SeparatorDefinition

SeparatorDefinitionクラスは、セパレータ・ページとみなされる要素の定義を表します。

プロパティ タイプ 説明

name

String

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

deleteUponCommit

Boolean

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

operator

Integer

ルールに使用される演算子。値は0および1です:

  • 0 – 表紙定義ルールで使用されるOR演算子。この演算子を使用して区切られたルールでは、いずれか1つのルールがルール条件と一致している必要があります。

  • 1 – 表紙定義ルールで使用されるAND演算子。この演算子を使用して区切られたルールでは、すべてのルールがルール条件と一致している必要があります。

docTypeID

String

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

rules

List<SeparatorRuleDefinition>

このセパレータ・ページに関連付けられているルールのコレクション。

SeparatorRuleDefinition

SeparatorRuleDefinitionクラスは、セパレータ定義に適用される1つのルールを表します。

プロパティ タイプ 説明

name

String

ルールの名前。

operator

Integer

選択されたパッチ・コードとバー・コードに使用される演算子。値は0および1です。詳細は、「SeparatorDefinition」を参照してください。

patchCode

String

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

barcodes

List<String>

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

認識プロセッサ・スクリプトのサンプル

バッチ・ジョブの構成には、次のステップが関係します:

  • PDF417バー・コードを検出するようにジョブを設定します。

  • ページ上のPDF417バー・コードを| delimitedに設定し、10個のフィールドを連結します。

  • processorDate、TitleおよびAmountという3つのバー・コード定義を(検証ルールなしで)定義します。

  • この3つのバー・コード定義を3つの索引フィールドにマップします。

認識プロセッサ・スクリプトは、バッチ・アイテム上で見つかったPDF417バー・コードを解析して、値を解析し、適切な解析済テキストを3つのバー・コード定義に適用します。このサンプル・スクリプトを使用すると、ジョブ構成ステップに基づいて処理の動作を変更できます:

function batchItemAllValidBarcodes (rpc) {
        // Obtain current batch item
        var batchItem = rpc.getBatchItem();
	
        // obtain bar code count.
        var count = batchItem.getBarcodeCount();
 
        // All barcodes on a batch item.
	var allBarcodes;
 
        // bar code of interest.
	var barcodeValue;
 
        // after parsed barcode value.
        var parsed;
	
        // Obtain bar code value if there is a bar code found.
        if (count > 0) {
                allBarcodes = batchItem.getBarcodes();
                barcodeValue = allBarcodes[0];
 
                // Parse the bar code value by | character.
                var regex = "|";
                  parsed = barcodeValue.split(regex);
                var len = parsed.length;
 
 
                // It should get splitted into 10 strings.
                if (len == 10) {
                        // This is the barcode we want, populate valid bar codes.
                        populateValues(rpc, parsed);
                }
 
        }	
}
 
function populateValues(rpc, parsed) {
        var valid = rpc.getValidBarcodes();
        var i;
 
        for (i=0; i<valid.size(); i++) {
                var bar = valid.get(i);
 
                if (bar.getName() == "processDate") {
                        bar.setValue(parsed[5]);
                } else if (bar.getName() == "Title") {
                        bar.setValue(parsed[6]);
                } else if (bar.getName() == "Amount") {
                        bar.setValue(parsed[4]);
                }	
        }
}