
- 基本編:固定の宛先・内容のメールを送る
- 内容設定編:業務データを利用してメールの内容を変更する
- 宛先設定編:業務データを利用してメールの宛先を変更する
- HTML メール編:HTML 形式のメールを送る
- HTML メール Markdown編: マークダウンをHTMLに変換し、HTMLメールを送信する
- HTML メール 画像埋め込み編: メールに画像を設定し、HTMLメールを送信する
- 不達対応編:メールが届かなかった時のトラブルシューティングについて
プロセスによって、メールの内容を変更する
「基本編」では、「メッセージ送信中間イベント(メール)」を最低限動作させるアプリを作成しました。今回の「内容設定編」では、メールの件名や本文、添付ファイルなどを、「確認」タスクから設定できるようにアプリを変更します。また、「メッセージ送信中間イベント(メール)」が作成するメール本文のテンプレートをさらに整ったものにします。
- 「確認」タスクで件名を入力する
- 「確認」タスクで本文の一部を入力する
- 「確認」タスクでメールに添付するファイルを指定する
- メールを送信したアプリ名を本文に挿入する
- プロセス詳細ページの URL を本文に挿入する
- メールにプロセス開始者の署名を入れる
これらを組み合わせられれば、送信できるメールの内容がぐっと広がります。一つずつ見ていきましょう。「基本編」で作成した「メッセージ送信中間イベント(メール)テスト」アプリの編集画面を開けてください。
以降、上の 6 項目についてアプリの設定方法を一つずつ説明します。設定した結果については記事の最後で触れますが、各項目の終わりでアプリを保存・リリースし、動作を確認してみても構いません。
「確認」タスクで件名を入力する
まず、「件名」のデータ項目を「確認」タスクから編集できるようにしてください。データ編集許可の設定は「確認」タスクの設定ダイアログから変更できます。
これで「確認」タスクの入力フォームで「件名」が入力できるようになりました。あとは「メッセージ送信中間イベント(メール)」が作成するメールのテンプレートに、「件名」のデータ項目を埋め込むだけです。「メッセージ送信中間イベント(メール)」の設定ダイアログを開いてください。「メールの件名」の右端の「参照を挿入する」メニューから
「件名」を選択すると、データ埋込み用の文字列が設定されます。データ項目「件名」の内容が送信される「メールの件名」に設定されます。
この「メッセージ送信中間イベント(メール)」の設定ダイアログで行う手順によって、データ項目やプロセス固有の情報をメールに埋め込むことができます。以降の内容でもこの手順を何度も踏みますので、覚えておいてください。
「確認」タスクで本文の一部を入力する
「確認」タスクで入力された文章が自動送信メールの本文に埋め込まれるようにしましょう。まずは「確認」タスクに入力フォームを追加するため、「文字」型データ項目を追加してください。各設定項目は次のように変更してください。
| 項目名 | 本文 |
| フィールド名 | q_string0 |
| データタイプ | 文字・複数行 |
| データ編集許可 | 「確認」タスク: 編集可 |
本文に埋め込みたいデータ項目が用意できたので、あとは「件名」と同じように「メッセージ送信中間イベント(メール)」設定ダイアログで埋込み設定をしましょう。
埋込みの手順は「件名」と同じ
参照するデータ項目の数字部分(例えば、q_string0の”0″)がお手元の環境と違うかもしれませんが、気にする必要はありません。数字部分はデータ項目番号なので、ズレることがあります。
「メッセージ: #{#q_string0}」のように入力すると、例えばデータ項目「本文」の内容が「こんにちは」の場合、「メッセージ: こんにちは」という本文が生成されます。このように、そのときどきで書き換えたい部分をデータ埋込にすることで、柔軟にメールの内容を変えられるようになります。
「確認」タスクでメールに添付するファイルを指定する
先ほど本文に埋め込んだのは「文字」型データ項目でしたが、「ファイル」型データ項目を埋め込むとメールにファイルを添付することができるようになります。「ファイル」型データ項目を追加し、次のように設定してください。
| 項目名 | 添付ファイル |
| フィールド名 | q_file0 |
| 総ファイルサイズの最大値 | 5MB |
| 説明 | ファイルサイズの合計を 5 MB 以下にしてください。 |
| データ編集許可 | 「確認」タスク: 編集可 |
Questetra BPM Suite が送信するメールのサイズは 10MB 以内である必要があるため、添付ファイルの合計サイズは 5MB 以下としておきます。
「確認」タスクで編集できるように設定することで、「確認」タスクの入力フォームにファイルアップロード欄が表示されるようになります。そして「メッセージ送信中間イベント(メール)」の設定ダイアログで次のように埋込み設定をしてください。
埋込みの手順は「件名」と同じ
ファイル型データ項目を埋め込むことで、「確認」タスクでアップロードされたファイルがメールに添付されます。本文の #{#q_file1} の部分には添付されたファイル名が埋め込まれます。複数添付した場合はカンマ区切りでファイル名が並べられます。1 つも添付しなかった場合は何も挿入されません。
- バージョン13.1 から、ファイルの添付は設定画面下部の「添付ファイル」の項目でファイル型のデータ項目を選択指定する方式に変更されました
- 上記のように本文に埋め込むだけでは、本文にファイル名が表示されるだけになります

メールを送信したアプリ名を本文に挿入する
メールの受信者が「どのアプリがメールを送ってきたのか」がわかるように、メールの本文にアプリ名を埋め込みましょう。アプリ名は、データ項目を用意しなくてもデータ埋込することができます。
「アプリ名」の項目は用意されているので、選択するだけ
プロセス詳細ページの URL を本文に挿入する
「どのような処理を経てこのメールが届いたのか/これからどういう処理に続くのか」ということをメールの受信者が知りたい場合、プロセス詳細ページが開けると便利です。本文にプロセス詳細ページの URL を入れるようにしましょう。
プロセス詳細ページの URL は http://example.questetra.net/OR/ProcessInstance/#{processInstanceId}/view というフォーマットです。このうち http://example.questetra.net/ の部分は、「システム変数: アプリケーションルート URL」という名称でデータ埋込ができるようになっています。プロセス ID も埋込が可能なので、プロセスに応じてこの URL を動的に生成することができます。

データを組み合わせて URL を作る
上のスクリーンショットのように、 ${var[applicationRoot]}OR/ProcessInstance/#{processInstanceId}/view となるように入力してください。「システム変数: アプリケーションルート URL」を選択すると ${var[applicationRoot]} が、「プロセス ID」を選択すると #{processInstanceId} が本文に埋め込まれます。間の OR/ProcessInstance/#{processInstanceId}/view の部分は手入力で補ってください。
メールにプロセス開始者の署名を入れる
最後に、メールに署名を入れましょう。今回はプロセス開始ユーザの名前を本文末尾に入れることにします。これもコピー&ペーストするだけで埋め込むことができます。
「プロセス開始ユーザ」の項目も用意されているので、選択するだけ
では、これでアプリの設定は完了です。保存・リリースしてアプリの動作を確認してみましょう。「ワークフロー→新規開始」から、アプリ「メッセージ送信中間イベント(メール)テスト」のプロセスを開始してください。
「確認」タスクで編集可になっているデータ項目は「件名」「本文」「添付ファイル」の 3 つですので、入力フォームはこのようになっているはずです。それぞれ何か入力して、「処理完了」してみてください。
複数ファイルの添付なども試してみましょう
入力した内容は反映されていましたか? また、プロセス詳細ページの URL が正しいかも確認しましょう。問題なければ「内容設定編」の内容は終わりです。だいぶ実用的な設定ができるようになってきましたね。
次回は「宛先設定編」として、現在は固定しているメールの宛先を状況に応じて変更するための設定を紹介します。
付録: 他のデータタイプ項目の埋込み
今回は「件名」「本文(文字型)」「添付ファイル(ファイル型)」のデータ項目をメールに埋込みましたが、それ以外のデータ型も埋込むことができます。ここでは簡単に、埋め込んだ際の結果だけ紹介します。
左のようにメールに埋め込むと、右のように表示されます。埋め込み方自体は文字型やファイル型と同じです。記事本文で紹介したデータタイプ以外も使用したい場合に参考にしてください。

ピンバック: ワークフローの途中でメールを自動送信しよう(宛先設定編) – Questetra Support