【図解AppSheet】使い勝手良いアプリを作るなら避けられない!Action機能のまとめ
AppSheet上級者になるために避けて通れないAction機能。
書籍なんかでもカットされていることが多いので、公式ヘルプを読み込まないといけない・・・。
と言うことで、今回もビジュアルで分かる形でまとめつつ、各アクションをできるだけ簡単・シンプルにまとめてみました。
アプリづくりのHOW TOというよりも、理解を深めるため記事です。
急がば回れで、こちらを理解して開発に着手するとスムーズにアプリ作成ができると思うので、ぜひマスターしてみてください。
Action機能とは?
まずは、そもそもの大前提。
Action機能って何?ってところから説明します。
Actionとは、特定の定義した動きを実行してくれる機能です。
Automationと似ていますが、こちらは無料でも利用可能!
そして、気持ちもう少しシンプルめな機能かなという印象です。Automation機能で言うなら、タスクが一番似てるかな・・・と思います。
ちなみに、Actionを連続して実行することもできるのでAutomationっぽいこともできます。
今回は、特に汎用度も高く、肝になりそうなアクションに★を付けています。(個人の見解ですが)
Actionの4タイプを7つに分解して解説
Actionには大きく4タイプあり、公式HPで各アクションは下記で分類されており、選択画面ではアクションの名前の先頭にはタイプが記載されています。
4つのタイプを一言で言うならこんな感じ。
ただ、個人的には公式HPの分類だと、
タイプの名前と処理の中身にちょっと齟齬があって分かりにくいな~と思ってます。
(内部的な操作云々の関係だと思うのですが・・・)
なので、もう少し細かく再分類してみました!
やりたい事があって「どのアクションを使えるかな~」と考えると思うので、出来ることで分類をしています。
分類を図示するとこんな感じです。
”遷移する”アクション
ココには、別のアプリ・ビュー・Webサイトに遷移できるアクションをまとめてみました。
遷移するアクションなので、
「ターゲット」項目に、遷移先を設定することで利用します。
なお、AppSheet的分類が違うのは、
・アプリとビューはappsheet内なので、ナビゲーションアクション
・Webサイトは外部なので、外部アクション
というイメージでいます。
App: go to another AppSheet app
別のAppSheetアプリに遷移します。
「ターゲット」にURLやディープリンクで遷移先を設定して使います。
App: go to another view within this app
今のAppSheetアプリの別のビューに遷移します。
「ターゲット」にURLやディープリンクで遷移先を設定して使います。
External: go to a website
外部のWebサイトに遷移します。
「ターゲット」にURLを設定して使います。
外部に遷移するので、AppSeet内で開くのか、外部サイトで開くのか選択するところがあります。
”外部連携処理”をするアクション
ココには外部連携して、何か処理を行うアクションをまとめてみました。
Webサイトへの連携以外の”External action types”のアクションはすべてここにカテゴライズしています。
ファイルを開くアクション以外は、外部連携して連絡を行うアクションになります。
External: open a file
AppSheetで利用中のファイルビューアーを開きます。
「ファイル」にファイルの場所を設定して使います。
External: start an email
AppSheetで利用中のメールアプリを開きます
To : 宛先 ※必須
Subject : 件名
Body : 本文
External: start a phone call
AppSheetで利用中の電話アプリを開きます。
To : 電話番号 ※必須
External: start a text message
AppSheetで利用中のメッセージアプリを開きます
To : 電話番号 ※必須
Subject : 本文
"CSV処理"をするアクション
ココには、CSVのインポート・エクスポートの機能をまとめました。
データを扱うにはよく使う機能なので、活躍頻度も高めかと思います。
PCのみで利用できるので、要注意。
App: export this view to a CSV file
表示しているデータをCSVで、エクスポートします。
App: import a CSV file for this view
CSVデータをAppSheetのデータベースへ、インポートします。
"データ更新"をするアクション
ここから先は、データ変更についてのアクションたちです。
まず最初はデータの更新。
どちらも、現在の行のデータを編集するアクションです。
なお、AppSheet的分類が違うのは、
・ "edit this row"はフォームに遷移して編集するので、ナビゲーションアクション
・" set the value of some columns in this row"は裏でデータを編集するので、データ変更アクション
のイメージでいます。
App: edit this row
フォームを出して、現在の行を編集する。
★Data: set the value of some columns in this row
現在の行のフィールドの値を設定または更新することができます。
この2つのパターンで更新できます。
①画面には表示せず、裏でデータを更新する
②入力画面を出し、入力した値でデータを更新する
ただし、下記の項目は更新できないです。
・キー列
・ app formulaの設定されている項目(自動計算されるため)
・データ変更を定義するカラム(ChangeCounter, ChangeLocation, ChangeTimeStamp)
汎用度も高いので、これを使いこなせると上級者の仲間入りできる!
"データ削除"をするアクション
データ削除にはバリエーションがなく、シンプルに行を削除するアクションのみです。
Data: delete this row
現在の行を削除します。
"データ追加"をするアクション
データの追加が一番バリエーションもあり、使う頻度も多く、肝になるところです。
App: open a form to add a new row to this table
フォームを開いて、新しいデータを作成します。
App: copy this row and edit the copy
現在の行のデータの入ったフォームを開いて、新しいデータを作成します。
★Data: add a new row to another table by using values from this row
他のテーブルのデータを更新します。
こちらも汎用性が高く、使いこなせるといろんなことができるアクション。
今深すぎるので、また別途で扱えればと思います。
★Data: execute an action on a set of rows
他のテーブルにあるアクションを実行します。
これも汎用性高く、使いこなせれば上級者になれるアクション。
1:nで紐づくテーブルに対して、1で起きたことを検知して、n側で処理を行うなんかができます。
例えば、タスク管理で親子階層タスクがあったとき、親のタスクをクローズしたら、子のタスクもクローズするとか。
アイディア次第でいろんなことができそうです。
"グループ化"をするアクション
Grouped: execute a sequence of actions
現在のテーブルのアクションを連続実行することができます。
Data: execute an action on a set of rowsと違い、現在のテーブルのアクションしか呼び出せない事に注意。
他のテーブルのアクションを呼び出したい場合は、Data: execute an action on a set of rowsを作って、それを呼び出す形にすればOK。
これを上手く使うとオートメーション機能っぽいことができます。
いかがだったでしょうか。
すごく長い記事になってしまいましたが、これをマスターできればかなり高機能なアプリが作れるようになること間違いなしです!!
AppSheetについて得た知識をシェアするマガジンです。ご興味あればぜひフォローを!▼
また、お仕事のご相談・依頼なども随時承っています。
noteへのコメントはもちろん、各種SNSのDM等からどうぞ。
自己紹介はこちらです
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?