いよいよ完結編です。BOTに実装しましょう。
1. 指定数点検終了後、月次報告書(スプレッドシート)にデータを入力。



・Table 記録シートに今月2か所点検記録が入力された時に、下の”報告書データ作成”に移行

・Actions 月次報告データ作成 を実行します。(Actionsの動作は解説済、下スクショ参照)


・Actions 月次報告データが実行されると、月次報告書スプレッドシートに入力されます。

・ここが重要です。Optionsを有効(青色)にする。
AppSheetのAutomationには、開発者をどん底に突き落とす**「仕様という名の壁」**が存在します。それがこの2つのオプションです。
1. Trigger other bots(Botの連鎖許可)
「Botが書き換えたデータには、他のBotは反応しない」 これがAppSheetのデフォルト(初期設定)です。無限ループでサーバーがパンクするのを防ぐための安全装置ですが、これを知らないと「データは更新されたのに、次のメールが飛ばない!」と何時間も悩むことになります。
- 有効にする理由: 「Bot A」が処理した結果を受けて「Bot B」を動かす、いわゆる**Botのリレー(連鎖)**をさせるためです。
2. Wait for execution to complete?(同期の完結待ち)
データの同期(Sync)中に、すべてのBot処理が終わるまで「スマホ画面のぐるぐる」を終わらせない設定です。
- 有効にする理由: 「PDFを作成してからメールで送る」という流れで、PDFができる前にメール送信が走ってしまう**「空振り」を防ぐため**です。確実にバトンを渡してから次の走者をスタートさせる、現場の「点呼」と同じ役割を果たします。
2. 月次報告書承認メール

・Condition [ステータス] = “承認待ち”
(月次報告書スプシ→ステータス列→承認待ちが入力されている場合)



・承認用PDFのフォーマット、保存したいフォルダ、ファイル名を指定します。
【”変電所報告書/表紙”に、”Report_”, [報告ID]で承認前PDF(印鑑空欄状態)を保存】


・月次報告書スプシ→承認用PDF列→承認前PDF(印鑑空欄状態)へのリンクを入力
【これはダイナミックメールに記入する、承認前PDFへのリンクとなる】


・いよいよ、承認依頼メール送信(ダイナミックメール)の設定です。

・実際のメールです。
承認する(Actions)保留する(Actions)で指定、承認用PDFは、先に指定したもの


・Actions 承認するに、”承認待ち”と”保留”の場合に、メールのボタンを表示するようにする。

・Actions 保留するに、”承認待ち”の場合に、メールのボタンを表示するようにする。
3. 保留通知




・保留通知の設定です。詳細はスクショ
4. ダイナミックメールでの承認後PDF(電子押印付)を作成する


・Condition [ステータス] = “承認済み”
(月次報告書スプシ→ステータス列→承認済みが入力されている場合)



・承認用PDFのフォーマット、保存したいフォルダ、ファイル名を指定します。
【”変電所報告書/表紙”に、”Report_”, [報告ID]で承認後PDF(押印状態)を保存】


・月次報告書スプシ→承認用PDF列→承認後PDF(押印状態)へのリンクを入力
【これはダイナミックメールに記入する、承認後PDFへのリンクとなる】
5. 実際の動作(保留ボタンを押した場合)



・保留ボタンが消え、ステータスが保留となり、月次報告書シートに記入され、メールが発信。
5. 実際の動作(承認ボタンを押した場合)


・承認及び保留ボタンが消え、ステータスが承認済みとなる。

・指定フォルダに承認前と承認後のPDFが保存される。(これはダイナミックメールのリンク先)


・承認前と承認後の状態です。
6. 補足説明
無料でAppsheet BOTを使って、emailを短時間に多数送信するとgoogleから怒らます。
“Warning: Email failed to be sent. This is due to hitting a rate-limit quota…”
一時間程度してから試しましょう。


コメント