4 認識プロセッサ・スクリプトの作成
この章では、認識プロセッサ・スクリプトの作成について説明します。
認識プロセッサ・スクリプトの一般的な用途を次に示します。
-
単一のバー・コード値を複数のフィールド値に分割する。
-
バー・コード値を適切なフィールドに割り当てる。
-
どのページがドキュメントの区切りかを、カスタム・ロジックを使用して判断する。
-
サーバー・アクティビティに対するカスタムの監査を実行する。
-
無効なデータがあったときにバッチのコミットを取り消す。
Captureでは、認識プロセッサ・スクリプトを作成して認識処理をカスタマイズできます。詳細は、『Oracle WebCenter Enterprise Captureのマネージング』を参照してください。
この章の内容は、次のとおりです。
認識プロセッサのメソッド
この項では、認識プロセッサのメソッドについて説明します。認識プロセッサ・バッチ・ジョブでは、次の順序でメソッドが実行されます:
ノート: 一部のメソッドは、特定のジョブ構成でのみ実行されます。
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 rpcPostProcessContext 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<PostProcessContext> | このドキュメントのセパレータ・ページ。これは、階層セパレータがある複数ページ編成タイプにのみ適用されます。 |
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 | PostProcessContext | セパレータ・ページが関係する編成タイプに固有です。セパレータが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]);
}
}
}