Google が提供するノーコード開発プラットフォーム「 AppSheet (アップシート)」の基礎的な解説シリーズです。
第2回は、「AppSheetとは」をテーマに、「 できること 」を解説します。
この記事は、これから情報を集めて検討しようとしている企業の担当者様向けに、初歩から解説しています。
現場主導の業務改善、ノーコード開発、Google Workspaceと連携したデータ活用やDX推進に関心がある方は、是非参考にしてください。
本ブログ記事及びサンプルデータの著作権は、当社に帰属します。AppSheetを学習する目的での個人使用を除き、無断での複製、転載、改変、翻案、公衆送信等の利用を禁止します。詳細は、ウェブサイト利用規約をご確認ください。
目次
1. 基本的なデータ操作(CRUD)
CRUDとは、データの作成(Create)、読み取り(Read)、更新(Update)、削除(Delete)の頭文字をとった4つの基本なデータ操作のことです。
Googleフォームとスプレッドシートを組み合わせても同じようなことはできますが、モバイルでスプレッドシートを参照したり、更新するのは不便です。AppSheetでは、ひとつのアプリでデータのCRUDができて、デバイス(スマホ、タブレット、PC)に最適化された画面で操作できるメリットがあります。
他にも、以下のようなメリットがあります。
データ型(Type)で入力規則を定義できる
データ型(Type)により入力規則を定義できます。数値型、日付型、日時型、メールアドレス型など、データの形式に合わせて入力規則を定義できるので、入力フォームでデータが正しく入力されているか、入力チェックができます。
複雑な入力ができる
Googleフォームやスプレッドシートではできないような複雑な入力ができます。例えば、入力フォームで階層型ドロップダウンを使用できます。階層型ドロップダウンとは、例えば、都道府県 → 市区町村のように大分類を選択してから、中分類、小分類へと絞り込んでいく形式の入力方法です。
マスタデータを利用できる
顧客マスタ、商品マスタ、社員マスタのように、社内にあるマスタデータを利用できます。ユーザーは入力フォームでマスタデータから選択した値を入力することができるので、入力を効率化したり、入力ミスを減らすことができます。
また、マスタデータを利用することで、データの整合性を保つことができます。例えば、顧客マスタと注文マスタが連携されている場合、顧客マスタで住所を変更すると、注文マスタの住所も自動的に更新されます。これにより、データの不整合を防ぐことができ、データの管理・運用の効率化にもつながります。
バーコード、QRコードをスキャンできる
バーコードやQRコードをスキャンしてデータを入力したり、検索できます。スキャンすることにより、手作業によるデータ入力の手間を省き、入力ミスを減らすことができます。例えば、在庫管理アプリでは、商品のバーコードをスキャンすることで、商品マスタを登録する際のJANコードや、入出庫する商品を入力することができます(詳しくはこちら記事 → AppSheet で在庫管理アプリ(第2回)スプレッドシートからアプリ作成)。
データの関係性を定義できる
例えば、請求書アプリでは、データに親子関係があります。
- 請求書データ(親):請求日、請求書番号、取引先名、件名、合計金額など
- 明細データ(子):商品名、単価、単位、税区分、金額など
データ型で「Ref」を選択すると、データの関係性を定義することができます(詳しくはこちらの記事 → AppSheet で請求書アプリ(第3回)Refでリレーションシップを設定)。
例えば、日報アプリで、顧客マスタと担当者(社員)マスタを利用して日報データを作成すると、
- 顧客別
- 担当者別
で、関連する日報がインラインテーブルで表示されます。
計算式を設定できる
スプレッドシートと同じように計算式を設定して、数値計算したり表示内容を変えることができます。AppSheetには、Expression Assistantというエディタで式を書きます。例えば、
- 請求書アプリで、明細行の金額を合計する
- 日報アプリで、終了日時から開始日時を引き算して作業時間を計算する
- 在庫管理アプリで、在庫量と発注点の数量を比較して、在庫量 - 発注点 < 0 の時にメールを送信する
という使い方ができます。
2. データ型(Type)
AppSheetでは、データ型(Type)を使用して、入力データの種類を定義することができます。データ型は34種類から選択でき、数値、文字列、日付、画像など、さまざまな種類のデータに対応しています。データ型を設定することで、アプリの基本機能を定義することができます。
ここでは、よく使われるデータ型や、AppSheetに特徴的なデータ型を厳選して紹介します。
Enum、EnumList
Enumは、いわゆるラジオボタンで、選択肢から 1 つだけ選択することができます。EnumListは、いわゆるチェックボックス、選択肢から複数選択することができます。EnumやEnumListを活用することで、手入力の手間を省いたり、入力ミスを防ぐことができます。選択肢は「Add」ボタンをクリックして追加し、ドラッグ&ドロップで並べ替えができます。
Image
Imageは、画像を保存するためのデータ型です。カメラアプリを起動して写真を撮影したり、ライブラリから写真を追加することができます。追加した写真データは、Googleドライブに保存されます。例えば、在庫管理アプリで商品マスタに写真を追加するような使い方ができます(詳しくはこちら記事 → AppSheet で在庫管理アプリ(第2回)スプレッドシートからアプリ作成)。
File
Fileは、ファイルを保存するためのデータ型です。PDFなどのファイルを追加することができます。追加したファイルデータは、Googleドライブに保存されます。例えば、タスク管理アプリで、タスクに関連するファイルをアップロードするような使い方ができます(詳しくはこちら記事 → AppSheetでタスク管理アプリ(第3回)Googleドライブにアップロード)。
Drawing
Drawingは、写真などの画像データに、フリーハンドで描画することができます。例えば、設備保全などの点検記録の際に、カメラで写真を撮って、不具合箇所に○をつけるなどの使い方ができます。
Signature
Signatureは、署名を保存するためのデータ型です。画面に直接署名することで、署名データを作成することができます。スマホやタブレットを使えば、出先で署名することができます。
Address
Addressは、住所を入力するためのデータ型です。マップ上で住所の場所をピンで表示したり、Google マップと連携して経路を検索したりすることができます。
LatLong
LatLongは、緯度と経度を値を保存するためのデータ型です。スマホの GPS や既存の緯度経度データを利用して、緯度と経度の値を入力することができます。また、緯度と経度の値があれば、マップ上でピン表示したり、経路を検索したりすることができます。
XY
XYは、画像上の座標を記録するためのデータ型です。左上を (0,0)、右下を (100,100) として、ピンを動かして、X座標とY座標を入力できます。施設の平面図を用意して、設備備品の場所や点検箇所の場所をピン表示するような使い方ができます。
3. ビュー(View:画面)
AppSheetでは、アプリの画面をビュー(View)と呼びます。ビューは、アプリの機能や用途に合わせて、用意されているテンプレートから選択して設定します。データの入力や編集を行う入力フォームビュー(Form)と、データの詳細情報を表示する参照ビュー(Detail)は、AppSheetにより自動的に作成されます。
ここでは、データのリストを一覧表示する時によく使われる6つのビューについて、それぞれの特徴を解説します。
table
tableビューは、スプレッドシートのような表形式でデータを一覧表示するビューです。必要に応じて表示項目を追加・削除できて、大量データの表示に向いています。ソート順の設定やグルーピングができて、グループごとの簡単な集計ができます。
deck
deckビューは、一行のカード形式でデータを一覧表示するビューです。各行にサムネイル画像、テキスト、ボタンなどの要素を配置できるので、視覚的にわかりやすく、ユーザーの操作性を向上させることができます。ソート順の設定、グルーピング、簡単な集計ができます。
card
cardビューは、deckビューよりも画像を強調してデータを一覧表示するビューです。各カードには画像、テキスト、ボタンなどの要素を配置し、画像を効果的に活用することで、必要な情報を一目で把握することができます。4種類のカード形式を用途に合わせて選ぶことができます。
calendar
calendarビューは、カレンダー形式でデータを一覧表示するビューです。日付や日時に関するデータを視覚的にわかりやすく表示するのに適したビューです。イベントの色はカスタマイズすることができます。
map
mapビューは、場所情報を視覚的にわかりやすく表示するのに適したビューです。データ型が、Address、LatLong、XYの時に、場所をマップ上にピン表示します。ピンをクリックすると詳細が表示されて、Google マップと連携して経路検索を簡単に行うことができます。
dashboard
dashboardビューは、複数のデータを組み合わせて表示したい場合や、さまざまなデータを一元的に表示したい場合に便利なビューです。例えば、タスク管理アプリではステータス別のビューを組み合わせて、タスクの状況をまとめて表示することができます(詳しくはこちら記事 → AppSheetでタスク管理アプリ(第4回)スライスでデータを切り出す)。
Interactive modeという機能を使うと、選択したレコードに関連するレコードを動的に表示することができるので、ユーザーは関連するデータを簡単に確認することができます。
4. 書式設定(Format rules)
Format rulesは、データの書式をカスタマイズするための機能です。
- 文字色
- 文字サイズ
- 下線、太字、イタリックなどの簡単な装飾
- アイコン
を設定することでデータの視認性を高めたり、重要度を強調したりすることができます。
また、条件に応じて書式を変更することができます。例えば、タスク管理アプリで、期日超過のタスクは赤色、期日が5日以内に迫っているタスクは黄色で表示するといったルールを設定することができます(詳しくはこちら記事 → AppSheetでタスク管理アプリ(第6回)Format Rulesで文字色を変える)。 Format rulesを使うことで、アプリの使いやすさや利便性を向上させることができます。
5. アクション(Action)
アクション(Action)は、ボタンクリックで特定の操作を実行したり、複数の操作を一括して実行する機能です。DeckビューやDetailビューで表示されるアイコンをクリックして実行することが多いです。
アクションは17種類ありますが、ここではよく使われる2つのアクションを紹介します。
Data: set the values of some columns in this row
ボタンクリックやデータ変更の際に、指定した列の値を更新します。例えば、タスク管理アプリで、タスクの「ステータス」を「作業中」や「完了」に変更するような使い方ができます(詳しくはこちら記事 → AppSheetでタスク管理アプリ(第7回)アクションで列の値を更新する)。
Data: execute an action on a set of rows
条件に合致するレコード(行)をフィルタリングして、特定のアクションを実行します。例えば、在庫管理アプリで、入出庫した商品を商品テーブルから探して在庫量を更新するような使い方ができます(詳しくはこちら記事 → AppSheet | execute an action on a set of rows でテーブルをまたぐ処理)。
その他のアクションとしては、
- CSVファイルをインポート、エクスポートする
- 別のアプリや別のビューへ移動する
- 複数のアクションを組み合わせて実行する
などがあります。
6. Automation
Automationは、トリガイベントによって、決められた手順で特定の処理を実行する機能です。トリガイベントとは、
- ユーザーによるデータ操作:ユーザーがデータを追加、更新、削除した時
- スケジュール:特定の時刻、曜日、日付などのスケジュール
の2つがあり、6種類のタスクと5種類のアクションを実行できます。Automationで実行できるタスクは、
タスク | できること |
---|---|
Send an email | メールを送信する |
Send a notification | プッシュ通知を送信する |
Send an SMS | SMSメッセージを送信する(日本国内では不可) |
Call a webhook | Webhookで外部サービスと通信する |
Create a new file | PDFなどのファイルを作成して保存する |
Call a script | GAS(Google Apps Script)を実行する |
です。ここでは、よく使われる2つのタスクについて紹介します。
Send an email
定義したワークフローの中で、メールを送信できます。例えば、在庫管理アプリで、商品の在庫量が発注点の数量以下になった時に、担当者に発注依頼のメールを送信するという使い方ができます(詳しくはこちら記事 → AppSheet で在庫管理アプリ(第6回)発注点アラートメールを送信する)。
また、GmailのDynamic email機能を使用して、Gmail上でアプリを操作して申請承認ワークフローを実行することもできます(詳しくはこちら記事 → AppSheet と Gmail が統合 - dynamic email でできること)。
Create a new file
定義したワークフローの中で、ファイルを作成します。主に、PDFファイルの作成で使用されます。例えば、請求書アプリで請求書のPDFを作成するような使い方ができます。Send an emailと組み合わせて、請求書PDFをメール送信することもできます(詳しくはこちら記事 → AppSheetで請求書アプリ(第7回)Automationで請求書をPDFで発行)。
7. Google Workspaceとの連携
AppSheetは、Google Workspaceとシームレスに連携しているので、Google Workspaceの機能を活用して高度なアプリを作成したり、アプリの開発や運用を効率化できます(詳しくはこちら記事 → AppSheet と Google Workspace の連携(1)8つのサービスでできること)。
サービス | できること |
---|---|
Googleスプレッドシート | アプリのデータソースとして使用できます。GAS(Google Apps Script)のSpreadsheetサービスを呼び出して、AppSheet単体ではできない複雑なデータ処理ができます。 |
Googleドライブ | 「Image」型で追加した画像データや、「File」型で追加したファイルデータは、Googleドライブ内に保存されます。GAS(Google Apps Script)のDriveサービスを呼び出して、フォルダの作成、ファイルの移動などもできます。 |
Googleカレンダー | Googleカレンダーをデータソースとして追加して、アプリ上で操作できます。予定の追加、変更、削除したり、MeetのURLを生成して、招待メールを送信することができます。 |
Gmail | Automationの「Send an email」タスクで紹介したように、Gmail上でアプリを操作できます。 |
Googleフォーム | Googleフォームとリンクしているスプレッドシートをアプリのデータソースとして使用できます。 |
Googleチャット | Automationの「Send a notification」タスクを使用して、 チャットスペース(Spaces)に通知できます。チャット上で操作できるチャットアプリを作成できます(Google Workspace契約者のみ)。 |
GAS(Google Apps Script) | Automationの「Call a script」タスクを使用して、GAS(Google Apps Script)を呼び出して実行できます。 |
以上、AppSheetで「 できること 」について解説しました。
導入を検討される場合は、はじめに本ブログ記事を参照して、AppSheetについて理解を深めていただければ幸いです。
次回(第3回)からは、AppSheetの活用事例について解説します。
- 第1回 特徴、メリット、料金を解説
- 第2回 AppSheetで「 できること 」
- 第3回 AppSheet活用事例(1)設備保全管理
- 第4回 AppSheet活用事例(2)問い合わせ管理
- 第5回 AppSheet活用事例(3)QRコードで備品管理
- 第6回 セキュリティとガバナンス