はじめに
こんにちは、京セラコミュニケーションシステム 西田(@kccs_hiromi-nishida)です。
最終回となるvol.5では、Automationを使って日報が登録されたら、指定した人に登録されたことをメールで知らせる仕組みを作成したいと思います!
ぜひご覧ください。
本記事は2024年3月ごろに作成しております。よって、引用している文章などはこの時点での最新となります。ご了承ください。
また、特別な記載のない限り、画像はGoogle AppSheet画面をキャプチャしたものとなります。
連載記事一覧
AppSheetで簡単アプリ開発 ~vol1. AppSheetって何ができる?
AppSheetで簡単アプリ開発 ~vol2. サンプルを使って作ってみよう!
AppSheetで簡単アプリ開発 ~vol3. 日報アプリを作る(データ準備編)
AppSheetで簡単アプリ開発 ~vol4. 日報アプリを作る(ビュー編)
AppSheetで簡単アプリ開発 ~vol5. 日報アプリを作る(Automation編) ★本記事★
この記事の対象者
- AppSheetに興味のある方
- AppSheetでアプリを作ってみたい方
Automationとは
Automationとはタスクを自動化する機能で、Event・Process・Taskを組み合わせてBotというワークフローのようなものを作成し、実行します。
Automationには7つのタスクがあらかじめ用意されています。
タスクの種類
タスク名 | 機能 | メモ |
---|---|---|
Send an email | メール送信 | 任意のアドレスに送信するにはデプロイ必須 ※デプロイしない場合はアプリ作成者にのみメールが届く |
Send a notification | プッシュ通知送信 | モバイル機器にプッシュ通知を送信 |
Send an SMS | SMSメッセージ送信 | 日本国内では使えない(Twilioアカウントが必要) |
Call a webhook | 外部サービスとの連携(Webhook) | SlackやLineなどのWebhookに対応しているアプリに通知を送信 |
Create a new file | ファイルの作成と保存 | CSV・HTML・ICS_Calendar・JSON・PDF・XLSX・XMLファイルの作成が可能 |
Call a script | Google Apps Scriptの実行 | AppSheetだけではできない複雑な処理やGASから外部サービへの連携などを実行 |
Send a chat message | チャットメッセージの送信 | Google Chatへのメッセージ送信 |
メール自動通知を作成する
今回は先ほど紹介したタスクの中からSend an email
タスクを使って、日報が登録されたら指定したユーザーにメールを送信する、という自動化を設定してみたいと思います!
まず、Automation画面を開き、Create my first automation
を選択します。

すると、AppSheetって賢い!って思うのですが、オススメの自動化タスクを提示してくれます。
今回まさしくやりたいことを提示してくれているので、When a new 日報 record is created, send an email
を選択しましょう。

そうすると、自動的にイベント・プロセス・タスクまで作成をしてくれます。賢い!(二度目)

では、自動生成されたイベントとプロセスに関して解説します。
イベントについて
A new 日報 record is created
という部分を選択すると設定画面が表示されます。
Event Type
はイベントの種類で今回はData change
になっていますね。
Data changeはその名の通りデータが追加・更新・削除された時に後続のプロセスを実行する、というイベントです。
Table
は対象のテーブル、Data change type
はAdds
が選択されています。
これで日報テーブルにデータが追加された時
というイベントだとわかります。

プロセスについて
Send an email
という部分を選択すると設定画面が表示されます。
Email Type
は今回Embedded app view
を選択しました。
届いたメールを開いたときに、指定したViewを本文に埋め込んで表示する設定です。

To
には送信先のメールアドレスを、Email Subject
にはメールの件名を設定します。
件名には<<[日付]>> の日報が登録されました
と指定しました。
こうすると、<<[日付]>>の部分が登録された日付で置換されます。
デプロイ前だとTo
にアプリ作成者以外のメールアドレスを指定したとしても、必ずアプリ作成者のメールアドレスにメールが送信されます。
Email Body
はメール本文の指定を行う項目です。
最後にApp view to embed in email body
には日報_Detail
を選択してください。
こうすることで、メールの本文に日報の詳細画面が埋め込まれます。

ちなみにこの日報_Detail
って何だろうと思われたかもしれません。
これは今までvol1~4にて紹介した方法でアプリを作成していれば、自動で作成されているViewです。
View画面の左下の方にこっそりあると思います!
今回、表示名だけ設定しました。これを設定していないとメールに日報_Detail
と表示されてしまうためです。

自動化をテストしてみよう!
※この時点でまだSave
していない場合はちゃんとSaveを選択してくださいね!
では、アプリのプレビューからデータを追加してみましょう。
フォームに入力が終わったら、保存
を選択してデータを保存します。


しばらくして、このようなメールが届けば成功です!

デプロイする
これまで作成してきたアプリ。プレビューでは操作が可能ですが、スマホアプリなどから操作するにはデプロイ
を行う必要があります。
また、今回のようにメールの自動送信を作成した場合、デプロイを行わないとアプリ作成者にしかメールを送信することができません。
というわけで、デプロイしてみましょう。
画面左側のロケットのようなアイコンを選択し、Deployment Check
を選択します。

Deployment check
はそのアプリがデプロイ可能かどうかをチェックしてくれます。
チェック結果は以下のように画面上に表示され、ERROR
の判定があるとデプロイはできません。
※ERROR項目がある場合、その項目を選択することでエラーの内容を確認することができるので、対応を実施する必要があります!
今回はPASSED
とWARNING
なのでデプロイ可能なことがわかります。
この状態で、Move app to deployed state
を選択してください。

画面のようなメッセージが表示され、デプロイの完了が確認できました。
ちなみに、デプロイ前の状態に戻したい時はReturn to prototype state
を選択すればデプロイ状態が解除され、プロトタイプ版に戻すことができます。

vol1の記事でも紹介しましたが、デプロイを行うと作ったアプリで使用している機能によっては無料ではなく、有料のプラン契約が必要になる場合があります。
その場合は、デプロイ時にERRORとして表示されるので、有料プランを契約する、もしくは無料で使用できない機能を外して再度デプロイするなどの対応が必要となります。
さいごに
vol.1~5までを通して、サンプルからアプリを作る方法や1からアプリを作る方法をご紹介しました。
今回の連載では一切コードを書くことはなく、まさにノーコード!
でも結構ちゃんとしたアプリが作れるなと思っていただけたのではないでしょうか。
とくにGoogle Workspaceが導入されている企業では、無料で使用できる場合が多いのでぜひアプリ作成にチャレンジしてみてください!
おしらせ
弊社X(旧:Twitter)では、Qiita投稿に関する情報や各種セミナー情報をお届けしております。情報収集や学びの場を求める皆さん!ぜひフォローしていただき、最新情報を手に入れてください