ヒューマン・タスク用の通知電子メールのカスタマイズ
タスク割当ておよびプロセスの進行について、ユーザーに継続的に通知されるようにします。 ヒューマン・タスク用の通知電子メールを簡単に構成し、それらの通知用のテンプレートを作成できます。
通知電子メールおよびテンプレートについて
「プロセス」を構成して、割り当て、承認、エスカレーション、リマインダ、および再割り当てなどのイベントが発生したときにタスク担当者に通知電子メールを送信できます。 通知電子メールには、承認や却下など、タスクに定義された結果が含まれます。 割当て先は、これらの結果をクリックして、アプリケーションにサインインすることなく、電子メール・クライアントを使用してタスクを完了できます。
ノート:
設計時に電子メール通知を構成したら、実行時に電子メール通知を有効にする必要があります(「電子メール通知の有効化」を参照)。 その後、通知ログを表示したり、元の受信者のすべてまたは一部に電子メール通知を再送信することもできます(「電子メール通知の表示および再送信」を参照)。また、ヒューマン・タスク用にカスタマイズした通知電子メールを構成して使用することもできます。 次の情報を含むカスタマイズした電子メール・テンプレートを作成するオプションがあります。
-
ペイロード
-
タスク
-
タスクに関するアクションを実行するためのリンク
-
タスク・コメント
アクション可能な電子メールについて
アクションあり/なしの通知電子メールを構成できます。 アクションを含む電子メールには、承認や却下などのタスクに定義された結果が含まれます。 これらの結果をクリックすると、電子メール・クライアントを使用してタスクを処理できます。 さらに、タスクにコメントおよび添付ファイルを追加できます。
警告:
電子メールへのアクセス権を持つすべてのユーザーがアクションを実行できるため、通知電子メールの送信先には注意してください。
デフォルトの電子メール・テンプレートについて
ヒューマン・タスクについて電子メール通知を有効にする場合、デフォルト・テンプレートを選択することも、用途に合わせて新規に作成することもできます。 デフォルトでは、次の2つの電子メール・テンプレートを使用できます。
-
デフォルト(アクションあり) - 承認や却下など、タスクに定義された結果が含まれます。 これらの結果をクリックすると、アプリケーションにサインインせずに、電子メール・クライアントを使用してタスクを処理できます。 さらに、タスクにコメントおよび添付ファイルを追加できます。
-
デフォルト(アクションなし) - エンドユーザーがアプリケーションにサインインし、タスクを表示して完了できるようにするリンクが含まれています。 エンド・ユーザーがモバイル・デバイスで電子メールを表示してリンクをクリックすると、モバイル・アプリケーションがインストールされている場合にはデフォルトで起動されます。
電子メール通知の構成
電子メール通知を構成し、電子メールがタスク担当者に送信される時期を指定します。 電子メール通知をカスタマイズして、受信者が簡単に認識して対応するために必要な情報がすべて含まれるようにすることもできます。
Eメール・テンプレートの管理
基本的なタスク情報、フォームのペイロード値、およびコメントを含む、ヒューマン・タスク用のカスタマイズされた通知電子メールを使用し、オプションでエンドユーザーがアプリケーションにサインインせずにタスク・アクションを実行できるようにします。 プロパティ・ペインの「通知」オプションを使用して、カスタマイズされた通知メールを作成します。
電子メール・テンプレートの構成
カスタマイズした電子メール・テンプレートを作成し、それらを使用してヒューマン・タスク用の通知電子メールを送信できます。 ローカル・ドライブから電子メール・テンプレートをアップロードしたり、既存の電子メール・テンプレートを編集またはコピーしたり、自分の用途に合った電子メール・テンプレートをダウンロードすることができます。
電子メール・テンプレートを作成
HTMまたはHTML拡張子を持つファイルをアップロードするか、「電子メール・テンプレート」の作成ダイアログ・ボックスに用意されているコード・エディタにHTMLマークアップを直接入力することで、電子メール・テンプレートを作成できます。
新しい電子メール・テンプレートを作成するには:
-
プロセス・エディタでプロセスを開きます。
-
ヒューマン・タスクを選択し、「メニュー」
をクリックし、「プロパティを開く」を選択します。
-
「実装」をクリックし、「通知」タブを選択します。
-
電子メール・テンプレートの管理の横にある「追加」
をクリックします。
「電子メール・テンプレート」を作成するダイアログ・ボックスが開きます。
-
メール・テンプレートの名前を入力します。
-
次のいずれかのオプションを使用して、電子メール・テンプレートを作成します:
-
「アップロード」をクリックすると、既存の電子メール・テンプレートを参照して追加することができます。 その内容を編集することができます。
-
また、電子メール・テンプレートのHTMLマークアップを手動で入力して、最初から開始することもできます。 データを含めるには、mustacheテンプレートを使用します。 mustacheテンプレートはロジックレスであり、オブジェクト(この場合はタスク・オブジェクト)に指定された値を使用してテンプレートのタグを拡張して操作します。 これらのテンプレートにより、容易にHTMLファイルにデータ参照を含めることができます。 次の例で、mustacheテンプレートを使用して姓と名を参照する方法を示します。
テンプレート:
<p>Hello {{first_name}} {{last_name}}</p>オブジェクト:
{ "first_name": "Joe", "last_name": "Smith" }出力:
<p>Hello Joe Smith</p>「ムスタチェ語」とMustache 5を参照してください。
次の表は、タスク・オブジェクトのtask関連属性の説明を示しています。 変数名は大文字と小文字が区別されます。
変数 説明 acquiredByタスクを取得したユーザーの名前
acquiredByIdタスクを取得したユーザーのID
assignedDateタスクが割り当てられた日付
createdDateタスクの作成日
creatorタスクの作成者
creatorIdタスクの作成者のID
dueDateタスクの完了期日
endDateタスクが終了する日付
fromUserタスクを再割当てした作成者またはユーザー
fromUserIdタスクが取得されたユーザーのID
longSummaryタスクの詳細説明
outcomeタスクの結果
ownerGroupタスク所有者が属するグループ
ownerRoleタスク所有者のロール
ownerUserタスクを所有するユーザー
ownerGroupIdタスク所有者が属するグループのID
ownerRoleIdタスク所有者のロールのID
ownerUserIdタスクを所有しているユーザーのID
priorityタスク優先度
payloadタスク・ペイロードのマップ
priorityNumタスクの優先順位番号
shortSummaryタスクの短い要約
startDateタスクの開始日
stateタスクの現在のステータス
taskIdタスクID
taskNumberタスク番号
taskDefinitionIdタスクの定義ID
titleタスクのタイトル
updatedByタスクを更新したユーザーの名前
updatedByIdタスクを更新したユーザーのID
updatedDateタスクが更新された日付
次の表に、タスク・オブジェクトのprocess関連属性の説明を示します:
変数 説明 instanceIdタスクが存在するプロセス・インスタンスのID
processIdタスクが存在するプロセスのID
processNameタスクが存在するプロセスの名前
processVersionタスクが存在するプロセスのバージョン
次の表に、タスク・オブジェクトのapplication関連属性の説明を示します:
変数 説明 assigneeタスクの譲受人の氏名
currentYear現在の年
logoOracleロゴ
url実行時にタスクの詳細にアクセスするためのURL
次の表に、タスク・オブジェクトの「コメント」関連属性の説明を示します:
変数 説明 commentsコメント一覧
commentStr実際のコメント
updatedByコメントを更新したユーザーの名前
updatedDateコメントが更新された日付
次の表に、タスク・オブジェクトのaction関連属性の説明を示します:
変数 説明 actionDisplayNameアクションの名前を表示します。 たとえば、ApproveやRejectなどです。
actionNameヒューマン・タスク・アクションで定義されたアクションの名前。 たとえば、APPROVEやREJECTなどです。 アクション名は大文字と小文字が区別され、タスクの結果と一致する必要があります。
actionsアクションのリスト。
urlアクションを実行するためのURL。
例:
次の表に、mustacheテンプレートを使用してタグを定義する方法の例を示します。
定義する対象 例 変数
{{title}}, {{assignee}}セクション/リスト
{{#comments}} {{commentStr}} {{updatedBy}} at {{updatedDate}} {{/comments}}Nullチェック
{{#dueDate}} Due Date: {{dueDate}} {{/dueDate}}HTML文字列
{{{actions}}}ペイロード
適切な電子メール・テンプレートが得られるよう、ペイロードで使用されるすべてのビジネス・オブジェクトとフォーム・キーに対してはcamelCaseネーミング規則を使用してください。
ビジネス・オブジェクトを含むフォームのペイロードの例
{{#payload}} {{#financialApprovalForm}} <td valign="top">{{contractCategory}}</td> <td valign="top">{{creditLimit}}</td> {{#contractDataObject}} <td valign="top">{{customerName}}</td> <td valign="top">{{contractStartDate}}</td> <td valign="top">{{creditLimit}}</td> {/contractDataObject}} {{/financialApprovalForm}} {{/payload}}ペイロードの構造がWebフォーム・ページの「Data」ペインに表示されます。
テキストおよびブール・データを含むフォームのペイロードの例
{{#payload}} {{#travelRequestForm}} {{#form}} <td valign="top">{{name}}</td> <td valign="top">{{customerName}}</td> <td valign="top">{{totalAmount}}</td> <td valign="top">{{country}}</td> <td valign="top">{{city}}</td> <td valign="top">{{purposeOfVisit}}</td> {{/form}} {{/travelRequestForm}} {{/payload}}ペイロードの構造は、ヒューマン・タスクの「Data Association」ページの受信WebフォームのdataObjectを参照してください。
配列データとビジネス・オブジェクトを持つフォームのペイロードの例
{{#payload}} {{#basicForm}} {{#form}} <td valign="top">{{firstName}}</td> <td valign="top">{{lastName}}</td> {{#expensesItem}} <td valign="top">{{description}}</td> <td valign="top">{{amount}}</td> {/expensesItem}} {{/form}} {{#invoice}} <td valign="top">{{id}}</td> {{/invoice}} {{/basicForm}} {{/payload}}アクション
文字列、リストまたはマップを使用してアクションを定義できます。
-
文字列としてのアクション: この場合は、デフォルトの電子メールのようにアクションが定義されます。 リンクのルック&フィールを変更することはできません。
たとえば:{{{actions}}} -
リストとしてのアクション: 各アクションで反復してリンクのルック・アンド・フィールを変更する場合に使用します。 すべてのリンクに同じ設定が適用されます。 たとえば:
{{#actionsList}} <a href="{{url}}"> {{actionDisplayName}}</a> {{/actionsList}} -
マップとしてのアクション: 各アクション・リンクをカスタマイズする場合に使用します。 たとえば:
{{#actionsMap}} {{#APPROVE}} <a href="{{url}}" style="background-color: green;”> {{actionDisplayName}}</a> {{/APPROVE}} {{#REJECT}} <a href="{{url}}" style="background-color: red;”>{{actionDisplayName}}</a> {{/REJECT}} {{/actionsMap}}
ノート:
Mustacheでは、デフォルトではすべての変数はHTMLでエスケープされます。 エスケープされていないHTMLをEメールの件名(つまり、特殊文字を含む)でレンダリングする場合は、{{{title}}}などのトリプル・ミュスタチを使用するか、& (たとえば、{{&title}})を使用する必要があります。 -
-
-
ファイナライズの前に「Preview」をクリックして、テンプレートを表示します。
ノート:
プレビュー・モードでは、ペイロードとアクション・マップ・セクションにデータは表示されません。
実際の電子メールはだいたいこのようになります。
既存のテンプレートの編集
「電子メール・テンプレートの編集」ダイアログ・ボックスを使用して既存のテンプレートを編集できます。
既存の電子メール・テンプレートを編集するには:
-
プロセス・エディタでプロセスを開きます。
-
ヒューマン・タスクを選択し、「メニュー」
をクリックし、「プロパティを開く」を選択します。
-
「実装」をクリックし、「通知」タブを選択します。
-
編集する電子メール・テンプレートの横にある「オプション」
をクリックします。
「電子メール・テンプレートの編集」ダイアログ・ボックスが開きます。
-
必要に応じてHTMLマークアップを編集します。
または、「アップロード」をクリックして、既存の電子メール・テンプレートを参照してアップロードし、現在の電子メール・テンプレートを置き換えます。
-
ファイナライズの前に「Preview」をクリックして、テンプレートを表示します。
ハンドル・バー・ヘルパーの使用
ハンドル・バー・ヘルパーを使用して、Eメール・テンプレートの構成を最適化します。 条件付きヘルパーを使用して、Eメール・テンプレートにロジックを追加します。 文字列、数値、日付書式など、他のハンド・バー・ヘルパーも使用できます。
条件付きヘルパー
次の表に、一般的な条件付き関数ヘルパーとその例を示します:
| 関数 | 説明 | 例 |
|---|---|---|
eq |
2つの要素が等しいかどうかをチェックします。 |
この例では、タスクの結果(承認または却下)に基づいて電子メールの件名を変更する方法を示します |
neq |
2つの要素が等しくないかどうかをチェックします。 |
この例では、ビジネス・オブジェクトの値を比較し、Eメールを変更する方法を示します。 |
gt |
「より大きい」演算子 |
次の例は、経費精算書の合計金額が$10,000を超える場合にEメール件名を「重要!」としてマークする方法を示しています。 次の例では、配列オブジェクトのサイズを比較し、アイテム数が1より大きい場合にのみ条件付きで費用アイテムを表示します。 |
and |
2つの条件が真かどうかをチェック |
この例では、出張カテゴリがクリティカルであり、出張者がエグゼクティブである場合に、特別なカテゴリ・セクションをEメール・コンテンツに追加する方法を示します。 |
文字列、日付および数値書式のヘルパー
次の表に、一般的な文字列、日付および数値書式のヘルパーと例を示します:
| 関数 | 説明 | 例 |
|---|---|---|
capitalizeFirst |
値の最初の文字を大文字にします。 |
値が「string.example」の場合、出力は「String.example」になります。 |
center |
指定された高さのフィールドに値を中央揃えします。 |
valueが"String.example"の場合、出力は"String.example"です。 |
cut |
指定した文字列からargのすべての値を削除します。 |
valueがString with spacesの場合、出力はStringwithspacesになります。 |
join |
配列、イテレータまたは反復可能オブジェクトを文字列と結合します。 |
valueがlist ['a', 'b', 'c ]の場合、出力は文字列"a // b // c"になります。 |
lower |
文字列をすべて小文字に変換します。 |
valueが'String Helper Example'の場合、出力は'string helper example'になります。 |
upper |
文字列をすべて大文字に変換します。 |
valueが'Hello'の場合、出力は'HELLO'になります。 |
replace |
リテラル・ターゲット・シーケンスに一致する文字列の各部分文字列を、指定されたリテラル置換シーケンスに置き換えます。 |
valueが"String..."の場合、出力は"String example"になります。 |
dateFormat |
指定された書式で日付を返します。 パラメータ:
|
例:
|
numberFormat |
指定された形式で数値を返します。 パラメータ:
|
|
ノート:
ハンドル・バーはMustacheのスーパーセットであり、MustacheテンプレートはHandlebarと互換性があります。「ハンドル・バー」を参照してください。










