Oracle Workflow APIリファレンス リリース2.6.3.5 部品番号: B15622-01 |
![]() |
![]() |
![]() |
![]() |
![]() |
||
前へ | 次へ | 目次 | 索引 | 用語集 |
procedure HandleError
(itemtype in varchar2,
itemkey in varchar2,
activity in varchar2,
command in varchar2,
result in varchar2);
Java構文
public static boolean handleError
(WFContext wCtx,
String itemType,
String itemKey,
String activity,
String command,
String result)
説明
このプロシージャは通常、ERRORプロセスのアクティビティからコールされ、エラーが検出されたプロセス・アクティビティを処理します。
このプロシージャをプロセスの任意のアクティビティでコールして、一部のプロセスをそのアクティビティにロールバックすることもできます。このプロシージャでコールされるアクティビティはどのステータスでもよく、実行中でなくてもかまいません。 また、サブプロセス内のアクティビティでもよく、 アクティビティ・ノード・ラベルがプロセス内で一意でなければ、そのアクティビティ・ノード・ラベル名の前に親プロセスの内部名を追加できます。 たとえば、<parent_process_internal_name>:<label_name>のように指定します。
このプロシージャは指定されたアクティビティを消去し、CANCELモードで各アクティビティを再実行して、すでに遷移した後続のすべてのアクティビティも消去します。 ステータスが「ERROR」になっているアクティビティには、その後に実行済アクティビティがないため、プロシージャはエラーのあるアクティビティのみを消去します。
アクティビティが消去されると、指定されたアクティビティの親プロセスがアクティブでない場合、このプロシージャはそれらの親プロセスすべてのステータスを「有効」にリセットします。
その後、このプロシージャは、SKIPまたはRETRYのうち、入力された方のコマンドに基づいて、指定されたアクティビティを処理します。
このAPIは、入力されたコマンドに基づいて、oracle.apps.wf.engine.skipイベントまたはoracle.apps.wf.engine.retryイベントを呼び出します。 これらのイベントについては、Oracle Workflowに事前定義済のサブスクリプションは含まれていませんが、イベントが発生したときに独自の処理を実行するため、独自のサブスクリプションを定義することもできます。 『Oracle Workflow開発者ガイド』のワークフロー・エンジン・イベントに関する項、『Oracle Workflow開発者ガイド』のイベント・サブスクリプションの定義(スタンドアロンOracle Workflowの場合)に関する項、『Oracle Workflow開発者ガイド』のイベント・サブスクリプションの作成または更新(Oracle Applicationsの場合)に関する項を参照してください。
引数(入力)
wCtx | ワークフローのコンテキスト情報。Javaメソッドの場合にのみ必須です。 「Oracle Workflowのコンテキスト」を参照してください。 |
item_typeまたはitemType | 有効な項目タイプ。 |
item_keyまたはitemKey | アプリケーション・オブジェクトの主キーから生成される文字列。この文字列により、項目タイプの項目が一意に識別されます。項目タイプと項目キーにより、プロセスが識別されます。 |
activity | エラーが発生したか、または元に戻すアクティビティ・ノード。アクティビティ・ノードのラベル名を指定します。アクティビティ・ノードのラベル名で特定のサブプロセスを識別できない場合は、ラベル名の前に親プロセスの内部名を追加できます。 たとえば、<parent_process_internal_name>:<label_name>のように指定します。 |
command | プロセス・アクティビティの処理方法を決定する次の2つのコマンドのどちらか。 |
SKIP: アクティビティを再実行しないけれども、指定された結果でアクティビティが完了したものとしてマークを付け、そのアクティビティからプロセスを続行します。 | |
RETRY: アクティビティを再実行し、そのアクティビティからプロセスを続行します。 | |
result | SKIPコマンドに必要な結果。 |
注意: 項目が作成された後は、その項目の有効日と、項目が進むプロセスのバージョン番号を変更できません。ただし、HandleErrorを使用すると、既存項目のプロセスを手動で変更できることがあります。
プロセスの変更が些細なものであれば、HandleErrorを使用して、項目をエラーになるアクティビティの次のアクティビティに手動で進めるか、プロセス内の別のトランジションにリダイレクトできます。
プロセスの変更が大幅なものであれば、少なくとも次の手順を実行する必要があります。
前へ | 次へ | 目次 | 索引 | 用語集 |