アクションによって特定の操作を実行します。アクションは、メールから行のコピーに至るまで、アプリでのさまざまなタスクの実行に非常に役立ちます。一連のアクションを実行することもできます。
アクション タイプで説明するように、アプリ定義には 4 つのタイプのアクションが含まれます。
- ナビゲーション: アプリ内の別のビューに移動します。
- データ変更: アプリ内のデータを変更(追加、削除、更新)します。
- 外部: デバイスで電話アプリを開いて通話を開始したり、外部サービスに情報を送信したりするなど(プッシュ通知や SMS メッセージなど)、外部サービスを操作します。
- グループ化: 一連のアクションを特定の順序で実行します。
アプリで作成できるアクションのほかに、自動的に作成されるアクションもあります。システム アクションの詳細とその制御方法をご覧ください。
アクションを作成できるだけでなく、ビューイベントを使用して、特定のビュー ナビゲーション イベントが発生したときにアクションを実行するように構成することもできます。
以降のセクションでは、アクションについて詳しく説明します。
- アクションの表示場所
- アクションを実行できる場所
- アクションが実行されるタイミング
- ビュー内のアクションの表示、非表示、並べ替え方法
- アクションを作成する
- アクションを構成する
- アプリ内のアクションを並べ替える
- アクションをお気に入りに追加する
- アクション タイプ
アクションの表示場所
クイック アクション
詳細ビューには、アプリのアクションごとにボタンが表示されます。ボタンをタップすると、アクションがトリガーされます。
一括アクション
テーブルビュー、スライドビュー、ギャラリー ビューでは、アクションを多数の行に同時に一括適用できます。一括アクションの使用をご覧ください。
アクションを実行できる場所
AppSheet アプリはすべてデバイスまたはブラウザで実行されます。ただし、実際にはアプリはすべて AppSheet クラウド サービス(AppSheet バックエンドとも呼ばれる)でホストされるため、一部のアクションは次のようにクラウド サービスでも実行できます。
- ナビゲーション アクションは、デバイスまたはブラウザのアプリでのみ実行できます。
- データ変更アクションは、アプリまたはクラウド サービスで実行できます。アプリデータにアクセスでき、どちらの場所でも変更できます。
- 外部アクションはクライアントでのみ実行されます。たとえば、AppSheet アプリを実行しているデバイスで [External: Start an email] アクションを実行するとメールアプリが開きますが、このアクション自体が実際にメールを送信するわけではありません。
アクションが実行されるタイミング
データ アクションはすべて、その実行を引き起こすイベントによってトリガーされる必要があります。アプリ作成者は、トリガーを次のように制御します。
- ユーザーによる明示的な呼び出し: アイコンまたはボタンとして視覚的に表示されるアクションを作成します。ユーザーがアイコンやボタンをタップまたはクリックすると、アプリによってアクションが呼び出されます。
- ユーザーによる暗黙的な呼び出し: アプリ内のすべてのビューには、ユーザーがビュー内のデータを操作する際の標準的な動作がいくつかあります。たとえば、ユーザーが表形式ビューの行をタップすると、その特定の行の詳細が詳細ビューに表示されます。デフォルトでは、行の選択イベントによって、ユーザーを新しいビューに移動させるシステム定義の UI ナビゲーション アクションがトリガーされます。アプリ作成者は、各ビューに関連付けられたトリガー イベントのサブセットを制御できます。ビューイベントに基づいてアクションを実行するをご覧ください。
- クラウド サービスでの自動呼び出し: クラウド サービスで実行される自動化 bot を定義し、特定の変更が行われたとき、またはスケジュールに従ってアクションを実行します。AppSheet Automation: 基本事項をご覧ください。
ビュー内のアクションの表示、非表示、並べ替え方法
ビュー内のアクションの表示、非表示、並べ替えを行うには、次のうち 1 つ以上の操作を行います。
- テーブルを使用するビューに表示されるアクションを作成します。
- アプリ内のアクションを並べ替えます。
- 一連のアクションを 1 つずつ順番に実行するグループ アクションを作成します。
- アクションの [Behavior] セクションで [Only if this condition is true] 設定を構成して、アクションを表示する行とその表示順序を制御します。
次に例を示します。- アクションを詳細ビューにのみ表示するには、設定を次のように構成します。
SHOW_IF = CONTEXT("VIEWTYPE")="Detail" - アクションを詳細ビューでは ABC、他のすべてのビューでは ACB に並べ替えるには、各アクションの設定を次のように構成します。
- アクション A: 空白のまま
- アクション B:
SHOW_IF = CONTEXT("VIEWTYPE")="Detail" - アクション C: 空白のまま
- アクション B(重複):
SHOW_IF = NOT(CONTEXT("VIEWTYPE")="Detail")
- アクションを詳細ビューにのみ表示するには、設定を次のように構成します。
- スライスを追加して、ビュー内の特定のアクションをフィルタします。スライス アクションをご覧ください。
- スライドビューの場合は、アクションバーを構成します。
- システム アクションを非表示にします。
アクションを作成する
テーブルのアクションを作成するには:
- アプリエディタでアプリを開きます。
- [Actions] に移動し、[Actions] パネルの上部ヘッダーにある [+] をクリックして、いずれかの候補を選択するか、[Create a new action] をクリックします。
アプリエディタを強化しました。
デフォルトでは新しいエディタが有効になっていますが、いつでも以前のエディタに戻すことができます。以前のナビゲーションをお使いの場合
[Behavior] > [Actions] に移動し、[+ New Action] をクリックするか、いずれかの候補を選択します(提供されている場合)。 -
アクションを構成します。
-
アプリを保存します。
アクションを構成する
次の表で説明されている設定を使用して、アクションを構成します。必要に応じて以降のセクションも参照してください。
| 設定 | 説明 |
| Action name | アクションの表示名。 |
| For a record of this table | アクションが適用されるテーブル。 |
| Do this |
実行するアクション。プルダウン リストからアクションを選択します。アクション タイプをご覧ください。 選択したタイプによっては、追加の構成オプションが表示される場合があります。これについては、アクション タイプの説明とともに説明します。
|
| Position |
アクションの位置を制御したり、非表示にしたりします。指定できる値は次のとおりです。
次の図は、この設定に基づくアクションの場所の例を示しています。 注: テーブルビューでは、アクションが特定の列に対して [Display inline] に設定されている場合、アクションは列の横に表示されるのではなく、列の内容を置き換えます。アクションと列の内容を両方表示するには、アクションを関連付ける別の列を作成する必要があります。たとえば、次の図に示すように、アクションを [ |
Display
すべてのアクションには構成可能な表示オプションがあります。表示オプションは、アプリ表示の下部にあるナビゲーション バーとアプリのメインメニューでのビューの表示方法に影響します。
次の表で定義されている設定を使用して、アクションの表示を構成します。
|
設定 |
説明 |
|
Display name |
アクションに表示される名前。固定値(T)またはテキスト式(フラスコ)を入力します。 注:
|
|
Action Icon |
アクションの [Display name](上記参照)とともに表示するアイコン。定義済みリストからアイコンを選択します。カスタム アイコンは使用できません。すべてのアクションにアイコンが必要です。アイコンが選択されていない場合は、タイプ固有のデフォルトが使用されます。 |
Behavior
すべてのアクションには構成可能な動作オプションがあり、これによってアクションを表示する行と、適用前に確認が必要かどうかを制御します。
次の表で定義されている設定を使用して、アクションの動作を構成します。
|
設定 |
説明 |
|
Only if this condition is true |
アクションを表示する行を制御する式。 |
|
Needs confirmation? |
アクションに確認が必要かどうかを切り替えます。 |
| Confirmation Message | [Needs confirmation?] が有効になっている場合に表示する確認メッセージ。 |
Documentation
[Documentation] セクションを開き、アクション用のわかりやすいコメントを入力して、共同編集者がその目的を簡単に把握できるようにします。
Inputs
入力を追加すると、次のようにアクションを動的に構成できます。
- アクションがアプリで使用されるときに、指定された入力の値を記入するようアプリユーザーに求めるダイアログが表示されます。
- このアクションを参照先アクションから呼び出す場合は(実行中のアプリで呼び出すか自動化で呼び出すかは問わない)、参照先アクションで入力値を使用してバインディング式を指定できます。
- アクションが [Run a data action] ステップタイプで使用され、[Set row values] が選択されている場合、アプリ作成者はステップの構成時に入力値を設定できます。
アクションでは、[_INPUT].[入力の名前] という式を使用して入力値にアクセスします。
アプリユーザーに対し、[Details] 列に保存されるメモを入力するように求めるとします。これを行うには、[Change Status] アクションの [Advanced] セクションを開いて入力値(「Notes」など)を追加し、初期値を「n/a」に設定します。例を次に示します。
その後、式 [_INPUT].[Notes] を使用して、この入力値を [Details] 列の値として設定できます。
アプリユーザーが [Change Status] ボタンをクリックすると、詳細の入力を求めるダイアログが表示されます。
[Amount]+[_INPUT].[Amount])は使用しないでください。ネストした式を指定すると、ユーザー プロンプトが表示されなくなります。詳細と例については、データ変更アクションで入力値を動的に設定するをご覧ください。
アクションを動的に構成するために使用できる入力を追加するには:
- [Advanced] セクションを開きます。
- 入力設定の横にある [Add] をクリックします。
- [Name] フィールドに入力値の名前を記入します。
- [Type] プルダウンからデータタイプを選択します。
入力では、一部のデータタイプのみがサポートされています。 - 初期値を追加する、または項目を編集するには:
をクリックして入力ダイアログを開きます。
- [Initial value] フィールドに値または式を追加します。
初期値を指定しなかった場合、値を入力するよう求められます。初期値を指定した場合、値の入力を省略できます。[Initial value] フィールドでは、[_THIS]または[_INPUT]の使用はサポートされていません。 - 必要に応じて他のフィールドを編集します。
- [Done] をクリックします。
- その他の入力値の追加を繰り返します。
アプリ内のアクションを並べ替える
アプリ内のアクションを並べ替えます。
アプリ内のアクションを並べ替えるには:
- アプリエディタでアプリを開きます。
- [Actions]
に移動します。
- 並べ替えるアクションに関連付けられたテーブル名の上にカーソルを置き、
をクリックします。
[Reorder actions for table] ダイアログが表示されます。 をクリックし、アクションをドラッグして順序を変えます。
- 他のアクションについても同じ手順を繰り返します。
- ダイアログを閉じます。
アクションをお気に入りに追加する
よく使うアクションに簡単にアクセスできるようにするには、そのアクションをお気に入りに追加します。
アクションをお気に入りに追加するには:
- アプリエディタでアプリを開きます。
- [Actions]
に移動します。
- [Actions] パネルのアクションにカーソルを合わせて、[More]
> [Add to favorites] を選択します。
アクションをお気に入りから削除するには、お気に入りのアクションにカーソルを合わせて [x] をクリックします。
アクション タイプ
以下は、タイプごとに実行できるアクションをまとめたものです。
ナビゲーション アクション タイプ
ナビゲーション アクション タイプは次のとおりです。
パソコン向けデザインを使用してコンテンツを編集する場合、[Desktop behavior] オプションを使用して次のいずれかのオプションを選択することで、編集エクスペリエンスをカスタマイズできます。
- Edit in place: コンテンツを編集するときに、現在表示されている詳細ビューですべてのフィールドを編集可能にします。
注: 現時点では、詳細ビューがダッシュボード ビューに含まれている場合、[Edit in place] は適用されません。
パソコンのブラウザで [Edit in place] を使用する場合は、次の点を考慮してください。
CONTEXT()を考慮に入れたShow_If条件がある場合、その条件はパソコン デバイス、モバイル デバイスとタブレット、またはその両方に適用できます。- フォームビューと詳細ビューで異なる列の順序を指定した場合([Column Order] 設定を使用)、2 つのビューの機能的な動作は異なります。
- Open a form: コンテンツを編集するときに、別のフォームで編集します。これはデフォルトの設定です。
現在のビューの行を CSV ファイルにダウンロードします。このアクションはパソコンのブラウザでのみ機能し、iOS アプリまたは Android アプリでは機能しません。
オプション:
- CSV file locale: エクスポートされた CSV ファイルの言語 / 地域。
次のサンプル テンプレートをご覧ください。
CSV ファイルをメールで送信するには、CSV テンプレートを使用するをご覧ください。
別の AppSheet アプリを開きます。
オプション:
- Target: アクションがトリガーされたときに移動するアプリのディープリンク。アクションがトリガーされた時点で値を計算する式を指定できます。App 列の型と同じ構造が使用されます。
現在のアプリの別のビューに移動します。
オプション:
- Target: アクションがトリガーされたときに移動するビューのディープリンク。アクションがトリガーされた時点で値を計算する式を指定できます。App 列の型と同じ構造が使用されます。
データ変更アクション タイプ
データ変更アクション タイプは次のとおりです。
この一括アクション オプションは、式ベース バージョンの一括選択です。この自動バージョンでは、ユーザーがアプリケーションのユーザー インターフェースを使用して一括アクションを選択するのではなく、式を使用して行を選択します。
オプション:
- Referenced Table: アクションが実行されるテーブル。
- Referenced Rows: 参照先テーブル内の操作対象の行。
- Referenced Action: 参照先の行に適用するアクション。
SELECT() もご覧ください。
ベスト プラクティスについては、複数のボットによる行データの更新を管理するもご覧ください。
このアクション タイプでは、現在の行のフィールドの値を設定または更新できます。
オプション:
- Set these columns: アクションがトリガーされたときに更新する列と値。アクションがトリガーされた時点で実行される、値を計算する式を指定できます。
- Inputs([Advanced] の下): アクションで設定できる入力値。[Advanced] 構成をご覧ください。
一般的な使用例:
- タスクを完了としてマークする
- チケットの優先度を更新する
- レコードを誰かに割り当てる
- 数値を加算または減算する
- 日付または時刻を現在の時刻に設定する
Lat/Long列をHERE()に設定する
次のような列の値は設定できません。
例については、Maintenance Overview アプリをご覧ください。
ベスト プラクティスについては、複数のボットによる行データの更新を管理するもご覧ください。
新しいアクションを作成し、データを追加する別のテーブルを指定して、追加する各列を定義することで、アプリケーション内のすべてのテーブル間でデータ行をすばやく更新および移動できます。
オプション:
- Table to add to: 新しい行を追加するテーブルを選択します。
- Set these columns: 列の値。
以下に示すアクション設定では、学生テーブルの現在の行から Email と Course の値をコピーし、TODAY() と TIMENOW() の式を使用して、出欠テーブルの新しい行として Email、Course、現在の日付と時刻をロギングする効果が得られます。
外部アクション タイプ
外部アクション タイプは次のとおりです。
選択した URL に移動します。
オプション:
- Target: アクションがトリガーされたときに移動する URL。アクションがトリガーされた時点で実行される、URL を計算する式を指定できます。
- Launch External: ウェブサイトをアプリ内で直接起動するのではなく、デバイスのブラウザで起動できるようにします。
一般的なユースケース:
- 行の値の Google 検索:
CONCATENATE("https://google.com/search?q=", [Search Column Name])
AppSheet アプリを実行しているデバイスでファイルのビューアを開きます。
オプション:
- To: 開くファイル。アクションがトリガーされた時点で値を計算する式を指定できます。
AppSheet アプリを実行しているデバイスでメールアプリを開きます。例については、Click to send email をご覧ください。
オプション:
- To: メールの受信者。アクションがトリガーされた時点で値を計算する式を指定できます。
- Subject: メールの件名。アクションがトリガーされた時点で値を計算する式を指定できます。
- Body: メールの本文。
AppSheet アプリを実行しているデバイスで電話アプリを開きます。例については、Click to send email をご覧ください。
オプション:
- To: 電話の受信者。アクションがトリガーされた時点で値を計算する式を指定できます。
AppSheet アプリを実行しているデバイスでメッセージ アプリを開きます。例については、Click to send email をご覧ください。
オプション:
- To: メッセージの受信者。アクションがトリガーされた時点で値を計算する式を指定できます。
- Message: 送信するメッセージ。アクションがトリガーされた時点で値を計算する式を指定できます。
グループ化アクション タイプ
グループ化アクション タイプは次のとおりです。
一連のアクションを 1 つずつ順番に実行します。これを使用すると、操作ボタンが押されたときに複数の操作を実行できます。
- 複数のナビゲーション アクションまたは外部アクションを指定しても、実行されるのは 1 つだけです。また、グループ化アクションの実行も終了します。
- 検証ルールは、グループ化アクションの各ステップで適用されます。
オプション:
- Actions: 実行するアクションを実行順に指定します。
例については、Resource Portal サンプル テンプレートの Go to Resource アクションをご覧ください。