メールを送信する
最終更新日: 2021年10月5日
各ノードにおける「イベント」(承認、差し戻しなど)の発生タイミングで、メールを送信することができます。
メールの送信元(発信者 "From")と、送信先(受信者 "To")を固定するのではなく、ノードに割り当てられたユーザ・グループに送信するように設定できます。
年休申請モデルに「メールアドレス」「次のメールアドレス」「申請者のメールアドレス」項目を追加した例です。
現在、ログオンしているアカウントのメールアドレスを格納します。ログオンするアカウントによって値が変わるため、データベースに値を保存しません。
スクリプトで、項目「メールアドレス」にUSERINFO関数の値をセットします。
USERINFO関数のパターンに "メールアドレス" を設定します。
申請時であれば次の承認者へ、承認時であれば次の承認者(または決裁者)というように、次のノードのメールアドレスを格納する項目を用意します。
ワークフローの進み方によって値が変わるため、データベースに値を保存しません。
次のノードにかかわる処理対象アカウントのメールアドレスを取得する関数は WF_NEXT_USERID_MAIL, WF_NEXT_GROUPID_MAIL, WF_NEXT_MAIL があります。ここでは WF_NEXT_MAIL を適用した例を示します。
それぞれの関数の違いは次のとおりです。
動作確認後は、「次のメールアドレス」項目は、隠し項目にするとよいでしょう。
WF_NEXT ではじまる関数では、差し戻し時には差し戻し先のユーザ(またはグループ)のメールアドレスが適切にセットされます。
申請者のメールアドレスを保持します。この値も計算によって常に取得できるため、データベースに値を保存しません。
申請者のメールアドレスを取得する関数 WF_APPLICANT_MAILo を適用します。
申請者や承認者になるアカウントに、メールアドレスを設定してください。
グループにメールアドレスを設定することもできます。
グループに設定するメールアドレスは、(複数の)個人メールアドレスへのエイリアスとするとよいでしょう。詳細はメールサーバ管理者へお問い合わせください。
フローイベントのタイミングで送信されるメールテンプレートをあらかじめ作成しておきます。ここでは申請時と、承認(決裁)時に送信されるメールテンプレートを用意します。
システム管理者でログオンし、管理処理メニューのメールテンプレートを開きます。
メールテンプレートのID値は任意の文字列を指定してください。各項目にはプレースホルダを指定できます。各項目の設定方法およびメールサーバ設定の詳細は「システムの管理>メールテンプレート」をお読みください。
ここでは宛先(To)を
同様に、承認時のメールテンプレートも用意します。宛先(To)を
「順次・順次」(申請→承認→決裁) フローを用意します。ここでは申請者を総務部グループとし、決裁者を suzuki としています。
ワークフローの更新画面を開き、メール設定を行います。「追加」ボタンをクリックします。
ノード(この例では「申請」と「決裁」)ごとに、メール送信のタイミングとメールテンプレートを指定することができます。
申請ノードでは「申請」タイミングを、決裁ノードでは「決裁」タイミングをそれぞれ指定した例です。
決裁ノードで「決裁」タイミングと「差し戻し」タイミングをそれぞれ指定した例です。
各メール送信タイプの動作は次の通りです。
一つのノードにそれぞれ複数のメール送信タイプの組み合わせを用意することができます。承認ノードの承認時に送信するメールと、同じ承認ノードの却下時に送信するメール、などです。
5つのノード「担当者→課長→部長→購買部→購買部部長」からなるフローパターンを想定します。
「課長→部長→購買部」はそれぞれ異なる3つのノードですが、同じメール送信タイプ「承認」を設定することができます。
申請と承認の2ノード構成で、申請は総務部(に所属する"佐藤")、承認は"鈴木"という例を使って説明します。
データの新規登録画面です。アカウント "佐藤" のメールアドレスが設定されています。ワークフローは申請前のため、次のメールアドレスは空白です。
申請を行います。
次のメールアドレスの値が設定されます。このタイミングで、申請時のメール設定が動作します。例えばメールテンプレートで差出人を(自身の)メールアドレスに、宛先人を次のメールアドレスに設定すると、このメールアドレスが使われます。
アカウント "鈴木" のメールアドレスが設定されています。承認ボタンをクリックします。
このタイミングで、決裁時のメール設定が動作します。決裁のため、次のメールアドレスは空白になります。例えばメールテンプレートで差出人を(自身の)メールアドレスに、宛先人を申請者のメールアドレスにする、といった使い方があります。
概要
年休申請モデルへの適用
メールアドレス
USERINFO関数
次のメールアドレス
WF_NEXT_MAIL関数
関数
型
DB保存
使い分け
WF_NEXT_USERID_MAIL
文字列
しない
グループ宛にメールを送る必要がない場合
WF_NEXT_GROUPID_MAIL
文字列
しない
ユーザー宛にメールを送る必要がない場合
WF_NEXT_MAIL
文字列
しない
ユーザー、グループのいずれにもメールを送る可能性がある場合
ワンポイント
差し戻しの場合のメールアドレスは?
申請者のメールアドレス
WF_APPLICANT_MAIL関数
アカウントへのメールアドレス設定
アカウント
グループ
ワンポイント
メールテンプレートの用意
${年休申請.次のメールアドレス}
とし、次の承認者へ連絡するようにします。
${年休申請.申請者のメールアドレス}
とし、申請者へ連絡するようにします。
ワークフローの設定
メール送信タイプ
メール送信タイプ
動作
新規登録
ワークフロー対象のモデルでデータを新規登録した場合(保存ボタンクリック時)に送信されます。
申請
ワークフロー申請ボタンクリック時に送信されます。
承認
ワークフロー承認ボタンクリック時に送信されます。
却下
ワークフロー却下ボタンクリック時に送信されます。
保留
-(動作しません)
差し戻し
ワークフロー差し戻しボタンクリック時に送信されます。
取り消し
-(動作しません)
決裁
ワークフロー決裁者(フローの最終ノードに割り当てられている人)による承認クリック時に送信されます。
同じノードに複数のメール送信タイプを設定する
異なるノードに同じメール送信タイプを設定する
動作例
申請
決裁