動的割当てパターンの表示名の構成方法

ランタイム構成サービスには、使用可能なユーザーとグループの動的割当てパターンのリストを返すメソッドが用意されています。これらのパターンは、パターンの名前、およびパターンとそのパラメータに対するユーザーが表示可能なラベルと説明の両方を返します。このパターンでは表示名のローカライズがサポートされるため、コンテキスト・ユーザーには適切な言語で表示されます。Oracle BPM WorklistおよびJDeveloperのヒューマン・タスク・エディタでは、これらのパターンを使用して、使用可能な動的割当てパターンのリストを表示します。

Dynamic Assignment Frameworkでは、パターン実装で、パターンとそのパラメータに対する判読可能な表示名と説明が表示されるようにするメソッドが提供されています。

組込みパターン実装、およびAbstractDynamicPatternクラスを拡張するカスタム実装では、WorkflowLabels.propertiesリソース・バンドル・ファイルを使用して、これらの表示文字列を構成します。

動的割当てパターンの表示名を構成するには:

エントリをリソース・プロパティ・ファイルWorkflowLabels.propertiesに追加し、関連リソース・プロパティ・ファイルを他の言語で追加して、動的割当てパターンとそのパラメータの表示名と説明(および適切なトランスレーション)を指定します。このファイルは、次のパスにある、ワークフロー構成パラメータworkflowCustomizationsClasspathURL識別されるクラスパス内に配置されている必要があります。

oracle/bpel/services/workflow/resource/WorkflowLabels.properties

動的割当てパターンのエントリは、次の形式である必要があります。

DYN_ASSIGN_FN.[pattern name]=Pattern Display Name

DYN_ASSIGN_DESCR.[pattern name]=Function Description

DYN_ASSIGN_PARAM_LABEL.[pattern name].[parameter name]=Parameter Display Name

DYN_ASSIGN_PARAM_LABEL.[pattern name].[parameter name]=Parameter Description

たとえば、MOST_PRODUCTIVEパターンのエントリは、次のとおりです。

DYN_ASSIGN_FN.MOST_PRODUCTIVE = Most Productive

DYN_ASSIGN_DESCR.MOST_PRODUCTIVE = Picks the user, group or application role that
has completed the highest number of tasks within a certain time period. For group
and application roles the total number of tasks completed by all the users who
are direct members of that group or role are counted. The time period to use can
be specified using the Time Period parameter. If no time period is specified,
then the default value specified in the dynamic assignment configuration for the
instance is used.

DYN_ASSIGN_PARAM_LABEL.MOST_PRODUCTIVE.TIME_PERIOD = Time Period

DYN_ASSIGN_PARAM_DESCR.MOST_PRODUCTIVE.TIME_PERIOD = The previous number of days
over which to count the number of completed tasks. If not specified, the default
value defined in the human workflow dynamic assignment configuration is used.

これらのファイルに動的割当てパターンのエントリを追加するかどうかはオプションです。ファイルにエントリが存在しない場合は、かわりに関数名(ROUND_ROBINなど)が使用されます。