
本コースの紹介
概要
AppSheetAutomation/AppSheetとは
実現できる業務自動化の例
特徴
対象者
本コースで扱う範囲
本コースの全体像
以下3つのステップで構成
基本知識
定型作業自動化アプリの開発
業務プロセス適用
AppSheetAutomationのライセンス体系
本格的にリリースして使い始める際の3つのポイント
Webhookとは
AppSheetとAppSheetAutomationを使ったWebhook処理の流れ
Webhookで設定する項目例
Slack側のWebhook設定内容
LINE側のWebhook設定内容
AppSheet、AppSheetAutomationについて調べたいという時が出てくると思います。
その時にまずお勧めする参照先をお知らせしておきます。
本セクションで扱う内容と注意
STEP1基本知識
AppSheet入門~基本知識(AppSheet未経験者向け)
Automation基本知識
AppSheet経験者の方は、AppSheet未経験者向けのレクチャーは受講不要です。AppSheet Automationの基本知識のレクチャーから受講お願いします。
AppSheetへのログイン方法
スプレッドシートデータからアプリを作る方法
サンプルテンプレートからアプリを作る方法
AppSheet編集画面の概要
作ったアプリをお手持ちのandroid/iOSのスマホやタブレット上で確認する方法
テーブルとは何か
キー(主キーと外部キー)
AppSheetが自動でつけるキー 3つのステップ
本コースで扱うデータ型の紹介
UI概要紹介
Actionの機能種類
関数式の概要
本コースで扱う関数式の概要
関数式の引数についての概要
引数を持つ関数、持たない関数、ケースによって持ったり持たなかったりする関数がある
テーブルのカラム値にアクセスする方法
AppSheetの指定語を使って特定の状態のデータを取得する方法
関数式の構文、引数を確認したい場合の確認方法
AppSheetで関数式が使える箇所の判別方法
本コースで使う箇所の概要説明
関数式の入力方法とテストする方法
AppSheet未経験者向けのAppSheet入門〜基本知識はここまでです
このセクションから全受講者を対象にしたレクチャーです
前のセクションを飛ばした方もこのセクションから受講お願いします
AppSheetAutomationの構成要素について概要説明
設計思想である再利用性について解説
構成要素「Bot」の概要説明
構成要素「Event」の概要説明
構成要素「Process」の概要説明
構成要素「Task」の概要説明
テンプレートについて以下4点を解説
テンプレートとは
テンプレート使って何ができるのか
テンプレートに含められるコンテンツ
サポートテンプレート
列名変数として以下を紹介
テーブルのカラム値を表示させる方法
AppSheet指定語を使った特定の状態のカラム値を表示させる方法
式変数として3つを解説
算術式
開始式
IF条件式
テンプレートで使える組み込み変数(一部を紹介)
上限の紹介
それぞれの業務アプリにつき、2段構成で解説していきます
1段階目では作るアプリについての概要を机上で説明します
2段階目では、実際に手を動かして業務アプリ開発をしていきます
このセクションで作る業務アプリの概要理解
アプリの目的
現在の業務プロセスや課題感
新たな業務プロセス
システム構成
データモデリング
このセクションで構成するAutomationを理解
Bot1では「報告事項カラム値の更新を検知し、メール通知する」方法、
Bot2では「共有事項カラム値の更新を検知し、Slack通知する」方法、
Bot3では「期日カラム値の更新を検知してステータスカラム値のデータを更新し、LINE通知する」方法について学ぶ
本セクションで開発するアプリの完成形の紹介
スプレッドシートからAppSheetアプリを作成する方法
Data設定
UX設定
Bot1では「報告事項カラム値の更新を検知し、メール通知する」方法について学ぶ
Bot構成
使用Process
Run a task
使用Task
Send an email
プロトタイプ状態だとメールが来ないことがあるようです。
確実な解決策は不明ですが、私の場合はこの方法でメールが送られるようになったので紹介します。メールが届いたらすぐにプロトタイプ状態に戻してください。
AppSheetAutomationのBotの実行結果を確認する方法
Bot2では「共有事項カラム値の更新を検知し、Slack通知する」方法について学ぶ
Bot構成
使用Process
Run a task
使用Task
Call a webhook
Slack
Bot3では「期日カラム値の更新を検知してステータスカラム値のデータを更新し、LINE通知する」方法について学ぶ
Bot構成
使用Process
Run a task
Run a data action
Set row values
使用Task
Call a webhook
LINE
このセクションで作る業務アプリの概要理解
アプリの目的
現在の業務プロセスや課題感
新たな業務プロセス
アウトプット
システム構成
データモデリング
このセクションで構成するAutomationを理解
Botで「出勤時間が入力されたらGoogleカレンダーから予定を取得しSlack通知する」方法を学ぶ
本セクションで開発するアプリの完成形の紹介
スプレッドシートからAppSheetアプリを作成する方法
データソースにGoogleカレンダーを追加する方法
Data設定
スプレッドシートのシートをテーブルとして追加する方法
UX設定
Googleカレンダーと連携してViewを作成する方法
以降のレクチャー受講にあたって、日付読み替えのお願いと注意
UX設定
View Type:calendarの設定方法
Googleカレンダーに登録するActionの作成方法
他のテーブルのデータを更新する方法
登録済みフラグを更新するActionの作成方法
データ更新する方法
前2つのレクチャーで作成したAction(Act1,Act2)を順番に実行するActionの作成方法
アクションボタンの表示条件設定方法
Behavior 「Only if this condition is true」
Botで「出勤時間が入力されたらGoogleカレンダーから予定を取得しSlack通知する」方法を学ぶ
Bot構成
使用Process
Run a task
使用Task
Call a webhook
Slack
スケジュールイベントの紹介
このレクチャーは、手を動かして一緒に開発するのではなく紹介が目的です
このセクションで作る業務アプリの概要理解
アプリの目的
現在の業務プロセスや課題感
新たな業務プロセス
アウトプット
システム構成
データモデリング
このセクションで構成するAutomationを理解
Bot1では「あるテーブルの更新をトリガーに別のテーブルのデータを更新する方法」
Bot2では「Googleドキュメントを使ったテンプレート作成とPDF化、Googleドライブに配置して、メール送付する方法」を学ぶ
本セクションで開発するアプリの完成形の紹介
アプリ開発に着手する前にお伝えしたい内容
AppSheetテンプレートアプリをコピーする方法
Bot1である「あるテーブルの更新をトリガーに別のテーブルのデータを更新する方法」
使用Process
Call a process
Run a data action
Set row values
Bot2では「Googleドキュメントを使ったテンプレート作成とPDF化、Googleドライブに配置して、メール送付する方法」を学ぶ
このレクチャーではデータ更新イベントでメール送信するところまでをBotを作る
Bot構成
使用Process
Run a task
使用Task
Send an email
Bot2では「Googleドキュメントを使ったテンプレート作成とPDF化、Googleドライブに配置して、メール送付する方法」を学ぶ
このレクチャーではGoogleドキュメントを使ったテンプレート作成を学ぶ。このレクチャーでは特に以下2点を学ぶ
自分のテーブルのカラム値を取得する方法
外部参照しているテーブルのカラム値を取得する方法
Bot2では「Googleドキュメントを使ったテンプレート作成とPDF化、Googleドライブに配置して、メール送付する方法」を学ぶ
前のレクチャーに引き続き、このレクチャーではGoogleドキュメントを使ったテンプレート作成を学ぶ。特に学ぶ点は以下2点。
開始式 <<Start: リスト>> 〜 <<End>>
IF条件式 <<If: 条件 >>.〜 <<EndIf>>
Bot2では「Googleドキュメントを使ったテンプレート作成とPDF化、Googleドライブに配置して、メール送付する方法」を学ぶ
このレクチャーでは、前のレクチャーまでで作ったGoogleドキュメントのテンプレートを使ってメールで送付するまでのところまでの設定を学ぶ。
Bot構成
使用Process
Run a task
使用Task
Send an email
このセクションで作る業務アプリの概要理解
アプリの目的
現在の業務プロセスや課題感
新たな業務プロセス
システム構成
データモデリング
使うアドオンの紹介
AppSheetアドオン
AppSheet Eventsアドオン
このセクションで構成するAutomationを理解
「アンケートレコードが追加されたら担当者にメール送信」する方法を学ぶ
本セクションで開発するアプリの完成形の紹介
Googleフォーム作成、フォーム回答記録先としてのスプレッドシート作成、このスプレッドシートからAppSheetを接続する方法
AppSheetアドオンインストール
AppSheetアドオンからAppSheetアプリ作成
Bot作成
AppSheetアプリを介するデータ更新イベントによるメール送信までをここでは実現する。
外部更新イベントについては未対応。これは次のレクチャーで扱う
Bot構成
使用Process
Run a task
使用Task
Send an email
今回のユースケースにおける外部更新イベントの必要性
Googleスプレッドシートでの外部更新イベントの実現方法を学ぶ
AppSheet Events インストールと設定方法
本アプリの完成を確認する
アドオン利用にあたる注意事項
本コース制作者が経験した事象を紹介
このセクションで作る業務アプリの概要理解
アプリの目的
現在の業務プロセスや課題感
新たな業務プロセス
システム構成
データモデリング
このセクションで構成するAutomationを理解
「新しい購入申請が追加されたら、承認者による承認プロセスを実施し、結果を申請側のテーブルに記録し、結果と理由をSlackに通知」する方法を学ぶ
本セクションで開発するアプリの完成形の紹介
スプレッドシートからAppSheetアプリを作成する方法
データ設定
テーブル追加と権限設定
データ型設定
外部キー設定
テーブル参照される側のテーブルでAppSheetが自動設定するVirtualColumns説明
UX設定
Viewの新規作成
特定の条件でViewの表示・非表示を切り替える方法(Show if)
プレビュー画面でアプリの利用ユーザを切り替える方法(Preview App as)
作成Bot
「新しい購入申請が追加されたら、承認者による承認プロセスを実施し、結果を申請側のテーブルに記録し、結果と理由をSlackに通知」する
Bot作成の手順、ステップについての説明
1.Bot枠&Event作成
2.Proc1とProc2枠作成
3.MainProcとProc1を接続
4.Proc1作成
5.MainProcとProc2を接続
6.MainProc仕上げ
7.Botテスト
作成Bot
「新しい購入申請が追加されたら、承認者による承認プロセスを実施し、結果を申請側のテーブルに記録し、結果と理由をSlackに通知」する
Bot作成について以下を実施
1.Bot枠&Event作成
2.Proc1とProc2枠作成
3.MainProcとProc1を接続
Bot構成
使用Process
Call a process
作成Bot
「新しい購入申請が追加されたら、承認者による承認プロセスを実施し、結果を申請側のテーブルに記録し、結果と理由をSlackに通知」する
Bot作成について以下を実施
4.Proc1作成
Bot構成
使用Process
Run a task
Wait for a condition
Run a data action
Set row values
Branch on a condition
使用Task
Send an email
作成Bot
「新しい購入申請が追加されたら、承認者による承認プロセスを実施し、結果を申請側のテーブルに記録し、結果と理由をSlackに通知」する
Bot作成について以下を実施
5.MainProcとProc2を接続
6.MainProc仕上げ
Bot構成
使用Process
Call a process
Run a task
使用Task
Call a webhook
Slack
作成Bot
「新しい購入申請が追加されたら、承認者による承認プロセスを実施し、結果を申請側のテーブルに記録し、結果と理由をSlackに通知」する
Bot作成最後のステップ。テストの実施
7.Botテスト
Bot構成(最終形)
使用Process
Run a task
Run a data action
Set row values
Branch on a condition
Wait for a condition
Call a process
Return values
使用Task
Send an email
Call a webhook
Slack
このセクションを受講開始する前にお伝えしたい内容
スプレッドシートからAppSheetアプリを作成する方法
データ設定
テーブルの追加方法
テーブルへの権限の設定方法
以下テーブルのカラム設定
当社担当者マスタ
データ型の変更方法
特定のカラムを非表示にする方法
顧客マスタ
外部キー設定方法
商品マスタ
データ設定
以下テーブルのカラム設定
見積書
InitialValue設定方法
Yes/No型の表記変更方法
データ設定
複合主キーの設定方法
データ型:Numberの最小値の設定(Minimum value)方法
App Formulaの設定方法
UX設定
顧客マスタView
ViewType:Mapの設定方法
当社担当者マスタView
ViewType:Tableの設定方ほ
商品マスタView
ViewType:Cardの設定方法
UX設定
見積書発行管理View
ViewType:Deckの設定方法
フォーマットルール作成、適用方法
UX設定
見積明細View
ViewType:Tableの作成方法
指定カラムだけをViewに表示させる方法
データ設定
見積明細テーブル
商品IDカラムへの設定追加
ValidIfによるデータ入力の妥当性チェックの導入
UX設定
Brand
アプリ全体の色設定
Options
起動時に表示するViewの設定
このアプリで作るActionの概要紹介
1.見積明細作成リンク(UIナビゲーション)
2.定価総額と提供価格の更新(データ変更)
3.顧客メール提示(データ変更)
1.見積明細作成リンク(UIナビゲーション)
ディープリンクActionの作成方法
LINKTOFORM()の使用方法
2.定価総額と提供価格の更新(データ変更)
SUM()とSELECT()を使ったデータ更新方法
IF()を使ったデータ更新方法
3.顧客メール提示(データ変更)
NOT()でのデータ更新方法
Behavior 「Only if this condition is true」を使ったアクションボタンの表示非表示の切り替え方法
本コース概要
本コースは現役エンジニアが提供する、AppSheet Automationを使った業務自動化アプリのマスターコースです。
AppSheet Automationを学び、以下ツールと連携しながら様々な業務プロセスを自動化する、「業務アプリ」を作っていきましょう。
・AppSheet
・Google Workspace(スプレッドシート、カレンダー、Gmail、ドキュメント、フォーム)
・Slack
・LINE
本コースで作る業務アプリの完成形イメージは全て無料プレビューで閲覧できます。イメージを確認して受講ください。
AppSheet Automationとは、IT技術者やアプリ開発者ではないユーザーにも業務プロセスを自動化する機能を提供する、Google Cloud(GCP)の1サービスです。AppSheet(※1)に統合されています。
※1. AppSheetもGoogle Cloud(GCP)の1サービスで、プログラミングを必要としない方法(= ノーコード)でアプリ開発できるツールです。主に仕事で使う業務アプリ(ビジネスアプリ)をターゲットにしています。
本コース作成に至った背景
私は、現役のエンジニアです。主務ではないですが、業務全体の効率化のためにGoogle WorkSpaceやSlack、その他様々なソフトウェア、サービスを連携させて自動化してきました。
Google WorkSpaceとの連携で主に使ってきたのは、おなじみGoogle Apps Script(GAS)です。
GASでプログラミングして業務を自動化してきました。
担当するコンテンツ/システムの変更や所属チーム異動のたびに、GASのプログラムも更新、新規開発を繰り返していく中で、別の方法はないのか?と考えるようになりました。
そんな私はAppSheetとAppSheet Automationに出会いました。GASで実現してきたこと全てできるわけないですが、「WorkSpaceやSlack/LINEなどと連携した業務自動化の基本機能」が使えます。
さらに、「業務アプリ」として、チーム独自の業務プロセスを自動化してアプリに組み込めます。(スプレッドシートに図形ボタン作ってクリックしたらGAS動かす、みたいなことをやらなくて済む)
AppSheetとAppSheet Automationを触る前は、
「ノーコードはまだまだただのおもちゃでしょう」、
「コード管理とか自動テストできないとかあってチーム開発しづらそう」、
「むしろ画面ポチポチの方が辛い」、
「自分エンジニアだしコーディングが基本でしょ」
という感覚でした。
触ってみた感想は、
「おぉすごい、ここまでできるんだ。楽に使えそう」、
「思ってた以上に色々できて楽しい」、
「細かいところで気になるところあるけど使ってみたい」、
「Google Workspace以外にも業務効率化の範囲を広げられそう」、
「AppSheet Automationを使うと、GASの使い所がこんな感じに変わっていくのか(学び感)」
というのが正直な感想です。(もちろん出会う前の印象そのままのものもあります)
その後試行錯誤使うようになり、経験値が溜まってきたので、以下のような理由、思いから本コースを制作することにしました。
・業務自動化の実現方法として、GAS以外に選択肢があるという事実を伝えたい
・アプリ開発者でなくても自分専用の業務アプリを比較的簡単に作れるということを伝えたい
・これからの業務効率化、自動化の世界観に価値を感じた
本コース受講にあたりAppSheet経験の有無について
AppSheet AutomationはAppSheetに組み込まれており、AppSheetを使う前提となっています。
しかし、本コースではなるべく多くの方に受講いただけるよう、AppSheet未経験者でも進められるようコース設計、制作をしました。本コースで扱う範囲においてはAppSheetの入門〜基本レベルについて解説を設けているので安心して受講ください。(本コースでAppSheetに興味関心が湧いてきたら別途AppSheetの学習もおすすめします。)
そして、AppSheet経験者で基本的なスキルを習得済みの方には、Automationと統合したより高いレベルのアプリ開発経験を提供するコース内容になっています。基本習得者向けのセクションを用意しています。日々の業務を改善する業務アプリのサンプルとしても参考になる内容になっていると思います。
本コースの内容
本コース以下内容で構成しています。
●はじめに
・本コース全体像
AppSheet Automationとは/AppSheetとは/本コースで扱う範囲/本コース全体像
・ライセンスについて
・本編に進む前の環境面の事前準備
・Webhook先の事前設定
●基本知識
・AppSheet Automationの基本知識
・AppSheet未経験者向けの入門知識
●定型作業自動化アプリ開発
- 4つのアクティビティ(通知、データ更新、資料作成、Webhook)を組み合わせて、以下4
つの機能を持つ「業務アプリ」を作ります
1.スプレッドシート更新時の検知(メール,Slack,LINE)&データ更新
2.カレンダーへの予定登録&出勤打刻時Slackへの予定通知
3.テンプレートドキュメントから見積書PDF作成/保存&メール送付
※AppSheet部分の構成が既にされている状態のベースアプリをコピーして、そこからAutomationを構成していきます。
4.フォーム回答時の検知メール(アドオン紹介の参考)
●業務プロセス適用
- AppSheet Automationが持つ全ての作業ステップを組み合わせて、以下の機能を持つ「業務アプリ」を作ります
1.承認管理ワークフロー
●【AppSheet基本習得者向け】見積書発行管理ベースアプリ開発
本内容は、業務アプリを作る製品「AppSheet」の範囲における解説になります。
なので「AppSheet Automation」という本コースの趣旨から外れますが、「AppSheet Automation」を「AppSheet」と統合した業務アプリを作ることは、このコース受講後、業務の自動化機能を持つ業務アプリを作っていく上で必要になってくる内容だと考えているため解説します。
本内容の対象者は、主にAppSheetの基本知識を持っている方向けのレクチャーですが、未経験者もレクチャー内容を真似して進めていくことで細部はわからないまでも業務アプリ開発の感覚を掴むことができます。未経験者でも興味関心があればぜひ受講してみてください。そして、さらに興味関心が沸けば、AppSheetの学習もおすすめします。ぜひご自身が作りたいアプリを作ってください!