[旧バージョン] 単票画面にメール送信機能を追加する

単票形式で作成したシートにメール送信機能を追加します。
ここでは、「育児休業届」アプリの「保存」ボタンがクリックされたときに
「休業終了日」の項目に値が入力されていればメールを送信するように変更しています。

ちなみに

このページの説明に該当するアプリタイプを以下に表記します。

  • 帳票タイプ(単票タイプ)

参考

アプリタイプについての詳細は「アプリタイプを確認する」を参照してください。

注意

このドキュメントは、CELF3.6.1以前のバージョンでの設定方法について説明しています。

CELF4.0.0以降のバージョンについては、メール送信機能を追加する を参照してください。

送信先メールアドレスをシートに記載する

  1. CELF に ログイン し、「管理ボタン」をクリックして管理画面を開きます。
../../../../../../_images/img_0188.png

ちなみに

「管理ボタン」は管理者ユーザーでログインしている場合に表示されます。

  1. カスタマイズするアプリをダブルクリックします。
../../../../../../_images/img_0285.png
  1. 育児休業届シート(メインシート)をダブルクリックします。
../../../../../../_images/img_0368.png
  1. シート設定カテゴリの img_sheet_setting_button ボタンをクリックします。
../../../../../../_images/img_0462.png
  1. シート列数を 1 列追加します。
../../../../../../_images/img_0558.png

ちなみに

シートに表示される列数が 1 列増加します。

../../../../../../_images/img_0645.png
  1. シートの右端列の 1 行目に送信先のメールアドレスを記載します。
../../../../../../_images/img_0743.png

ヒント

送信先メールアドレスが複数ある場合は、メールアドレスをセミコロン( ; )で区切って記載します。

../../../../../../_images/img_0837.png
  1. シートの右端列の列見出しをクリックします。
../../../../../../_images/img_0931.png
  1. メニューから非表示をクリックします。
../../../../../../_images/img_1027.png

ちなみに

列が非表示になります。

../../../../../../_images/img_1125.png
  1. シートを保存します。シートカテゴリの img_sheet_save_button ボタンをクリックします。
../../../../../../_images/img_50.png
  1. 「保存」をクリックします。
../../../../../../_images/img_51.png

ヒント

以下のショートカットキーを押してもシートを保存することができます。

  • Ctrl キー + S キー

アプリにメール送信機能を追加する

「育児休業届」アプリの「保存」アクションにメール送信機能を追加します。
「保存」アクションは以下ような処理フローになっており、追加、修正箇所をカスタマイズします。
../../../../../../_images/img_53.png

カスタマイズの詳細は以下のとおりです。

[1] 特定の項目が更新された場合に更新があったことをセルに記録します。
[2] 特定の項目が登録された場合に登録があったことをセルに記録します。
[3] 登録、更新の結果がセルに記録されている場合、メール送信を実行します。
[4] 登録、更新の結果をセットしたセルをクリアします。

ちなみに

[4]の「セルをクリアする」理由は2回目の保存アクションが実行された場合に前回のデータを残さないためです。
前回のデータが残ったままだと不具合の原因になるおそれがあります。
セルに一時的に値をセットした場合、必ずセルをクリアする処理も追加します。
では、下の手順で実際にアクションセットの編集方法を説明していきます。

当該アプリの「保存」アクションを開く

  1. CELF に ログイン し、「管理ボタン」をクリックして管理画面を開きます。
../../../../../../_images/img_0188.png

ちなみに

「管理ボタン」は管理者ユーザーでログインしている場合に表示されます。

  1. カスタマイズするアプリをダブルクリックします。
../../../../../../_images/img_0285.png
  1. 育児休業届シート(メインシート)をダブルクリックします。
../../../../../../_images/img_0368.png
  1. img_edit_action_button ボタンをクリックします。
../../../../../../_images/img_1220.png
  1. 「保存」のアクションセットをダブルクリックします。
../../../../../../_images/img_1319.png

データを登録した時のアクションをカスタマイズする

  1. 「制御」タブから「条件を判定する」アクションを、「テーブルにデータを登録する」アクションの下にドラッグ&ドロップして追加します。
../../../../../../_images/img_1517.png

ヒント

「ヘッダの内容をテーブルに新規登録し、ヘッダIDを採番する。」とコメントされているアクションを探してください。

  1. 追加した「条件を判定する」アクションの分岐条件に「 =[当該項目セルアドレス] <> ""」を入力します。
../../../../../../_images/img_1617.png

ヒント

ここでは、[当該項目セルアドレス]には「休業終了日」の入力欄のセルアドレスを設定します。

../../../../../../_images/img_1715.png

ヒント

この式は「休業終了日」の入力欄に何か値が入力されているかどうかを判定します。

  1. 「セル操作」タブから「セルに値をセットする」アクションを、追加した「条件を判定する」アクションの「もし○○ならば」部分にドラッグ&ドロップして追加します。
../../../../../../_images/img_1815.png
  1. 追加した「セルに値をセットする」アクションのセルアドレスに、送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 2 行目を設定します。
../../../../../../_images/img_1915.png

ヒント

ここでは、追加したのは Z 列、メールアドレスが記載されているのは Z1 のセルです。

  1. 追加した「セルに値をセットする」アクションでセットする値に、直前の「テーブルにデータを登録する」アクションの登録 ID 出力先セルアドレスを設定します。
../../../../../../_images/img_2014.png
  1. 「セル操作」タブから「セルに値をセットする」アクションを、手順 3. で追加した「セルに値をセットする」アクションの下にドラッグ&ドロップして追加します。
../../../../../../_images/img_2112.png
  1. 追加した「セルに値をセットする」アクションのセルアドレスに、送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 3 行目を設定します。
../../../../../../_images/img_2211.png

ヒント

ここでは、追加したのは Z 列、メールアドレスが記載されているのは Z1 のセルです。

  1. 追加した「セルに値をセットする」アクションでセットする値に、「登録」を設定します。
../../../../../../_images/img_239.png

データを更新した時のアクションをカスタマイズする

  1. 「制御」タブから「条件を判定する」アクションを、「テーブルのデータを更新する」アクションの下にドラッグ&ドロップして追加します。
../../../../../../_images/img_2410.png

ヒント

「ヘッダの内容をテーブルに更新」とコメントされているアクションを探してください。

  1. 追加した「条件を判定する」アクションの分岐条件に「 =[当該項目セルアドレス] <> ""」を入力します。
../../../../../../_images/img_56.png

ヒント

ここでは、[当該項目セルアドレス]には「休業終了日」の入力欄のセルアドレスを設定します。

../../../../../../_images/img_1715.png

ヒント

この式は「休業終了日」の入力欄に何か値が入力されているかどうかを判定します。

  1. 「セル操作」タブから「セルに値をセットする」アクションを、追加した「条件を判定する」アクションの「もし○○ならば」部分にドラッグ&ドロップして追加します。
../../../../../../_images/img_259.png
  1. 追加した「セルに値をセットする」アクションのセルアドレスに、送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 2 行目を設定します。
../../../../../../_images/img_266.png

ヒント

ここでは、追加したのは Z 列、メールアドレスが記載されているのは Z1 のセルです。

  1. 追加した「セルに値をセットする」アクションでセットする値に、直前の「テーブルのデータを更新する」アクションの更新条件と同じ式を設定します。
../../../../../../_images/img_278.png
  1. 「セル操作」タブから「セルに値をセットする」アクションを、手順 3. で追加した「セルに値をセットする」アクションの下にドラッグ&ドロップして追加します。
../../../../../../_images/img_288.png
  1. 追加した「セルに値をセットする」アクションのセルアドレスに、送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 3 行目を設定します。
../../../../../../_images/img_298.png

ヒント

ここでは、追加したのは Z 列、メールアドレスが記載されているのは Z1 のセルです。

  1. 追加した「セルに値をセットする」アクションでセットする値に、「更新」を設定します。
../../../../../../_images/img_308.png

「メールを送信する」アクションを追加する

  1. 「制御」タブから「条件を判定する」アクションを、アクションセットの最後にドラッグ&ドロップして追加します。
../../../../../../_images/img_316.png
  1. 追加した「条件を判定する」アクションの分岐条件に「 =[登録 ID 出力先セルアドレス] <> ""」を入力します。
../../../../../../_images/img_326.png

ヒント

ここでは、[登録 ID 出力先セルアドレス]には 送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 2 行目を設定します。

ヒント

図中の式は現在時刻が出力されているかどうかを判定します。

  1. 「データ操作」タブから「テーブルから 1 件取得する」アクションを、追加した「条件を判定する」アクションの「もし○○ならば」部分にドラッグ&ドロップして追加します。
../../../../../../_images/img_337.png
  1. 追加した「テーブルから 1 件取得する」アクションの取得元テーブルを選択します。 img_edit_data_action_button ボタンをクリックします。
../../../../../../_images/img_347.png
  1. アプリで使用しているテーブルをダブルクリックします。
../../../../../../_images/img_354.png

ヒント

「テーブルから 1 件取得する」アクションのデータを取得するテーブルに、ダブルクリックしたテーブル名が表示されます。

../../../../../../_images/img_363.png

ヒント

アプリで使用しているテーブルは、同じアクションセット内の「テーブルにデータを登録する」アクションなどから確認することができます。

../../../../../../_images/img_372.png
  1. 追加した「テーブルから 1 件取得する」アクションの取得するデータとデータ出力先を設定します。「表示する列と表示先の設定」リンクボタンをクリックします。
../../../../../../_images/img_54.png
  1. 「表示する列と表示先の設定編集」ダイアログの「(列を選択)」部分をクリックして、「[アプリで使用しているテーブル名]. LAST_MODIFIED」を選択します。
../../../../../../_images/img_55.png

ヒント

ここでは、[アプリで使用しているテーブル名]は「wih_育児休業届_header」です。

ヒント

「[アプリで使用しているテーブル名]. LAST_MODIFIED」は、データの更新日付になります。

  1. 「表示する列と表示先の設定編集」ダイアログのデータ出力先を、送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 2 行目を設定します。設定したら「OK」ボタンをクリックします。
../../../../../../_images/img_392.png

ヒント

ここでは、追加したのは Z 列、メールアドレスが記載されているのは Z1 のセルです。

  1. 追加した「テーブルから 1 件取得する」アクションの検索条件を設定します。「検索条件」リンクボタンをクリックします。
../../../../../../_images/img_402.png
  1. 検索条件設定画面で、「○○が一致する××」の「○○」部分に、「[アプリで使用しているテーブル名]. ID」を選択します。
../../../../../../_images/img_412.png

ヒント

ここでは、[アプリで使用しているテーブル名]は「wih_育児休業届_header」です。

  1. 検索条件設定画面で、「○○が一致する××」の「××」部分に、「=[ 送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 2 行目 ]」を入力します。
../../../../../../_images/img_422.png

ヒント

ここでは、追加したのは Z 列、メールアドレスが記載されているのは Z1 のセルです。

  1. 「OK」ボタンをクリックします。
../../../../../../_images/img_432.png

ヒント

アクションに検索条件が設定されます。

../../../../../../_images/img_441.png
  1. 「データ操作」タブから「以下のメールを送信する」アクションを、追加した「テーブルから 1 件取得する」アクションの下にドラッグ&ドロップして追加します。
../../../../../../_images/img_451.png
  1. 追加した「メールを送信する」アクションの宛先に、 送信先メールアドレスをシートに記載する でメールアドレスを記載したセルを設定します。
../../../../../../_images/img_461.png

ヒント

ここでは、メールアドレスが記載されているのは Z1 のセルです。

  1. 追加した「メールを送信する」アクションの件名に、「="[アプリ名] " & [作業区分表示セルアドレス] & "完了通知"」と設定します。
../../../../../../_images/img_471.png

ヒント

ここでは、[アプリ名]には「育児休業届」を設定します。

ヒント

ここでは、[作業区分表示セルアドレス]には 送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 3 行目を設定します。
作業区分は「更新」または「登録」が表示されます。
  1. 追加した「メールを送信する」アクションの本文に、「="更新者:" & USER.ID() & "更新日時:" & [更新日時出力先セルアドレス]」と設定します。
../../../../../../_images/img_481.png

ヒント

「 USER.ID() 」は、現在 CELF にログインしているユーザーの ID を取得します。

ヒント

ここでは、[更新日時出力先セルアドレス]には 送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 2 行目を設定します。

ちなみに

このメールの本文には、以下の内容が記載されます。

  • 「育児休業届」を更新したユーザーの ID
  • 「育児休業届」を更新した日時

データの更新情報の初期化を行う

  1. 「セル操作」タブから「セルの値をクリアする」アクションを、「エラー情報を出力する」アクションの上に追加します。
../../../../../../_images/img_1417.png

ヒント

「ヘッダーの更新が失敗した場合は更新処理を中断」とコメントされているアクションを探してください。

  1. 追加した「セルの値をクリアする」アクションでクリアするセルを、送信先メールアドレスをシートに記載する でメールアドレスを記載した列の 2 行目を設定します。
../../../../../../_images/img_52.png

ヒント

ここでは、追加したのは Z 列、メールアドレスが記載されているのは Z1 のセルです。

  1. 「OK」ボタンをクリックします。
../../../../../../_images/img_49.png

注意

セルをクリアしないと2回目の保存の時に前回のデータが残ったままの状態になります。
データが残ったままの状態は不具合の原因になるため、アクションで一時的に使用したセルは必ずクリアしてください。