実践編 / 第5章 / Step7
Final Step

完成したアプリをチームで使える形にする
USEREMAIL() / 権限設計 / Security Filter / Share / Deploy

アプリは作って終わりではありません。 誰が使うのか、誰に何を見せるのか、どう公開するのかを整えてはじめて 業務で使えるアプリ になります。 最後に、公開前に押さえておきたい実務ポイントをまとめます。

Final Mission

ステップ7:ユーザー設計と公開までを仕上げる

このページでは、ログインユーザーを判定する USEREMAIL()、 管理者と一般ユーザーの見せ分け、 共有設定の Share、 本番公開の Deploy を順番に確認します。

このページのゴール
  • USEREMAIL() の意味を理解する
  • 管理者 / 一般ユーザーの設計方針を決める
  • Share でメンバーを招待できる
  • Deploy 前の確認項目を把握する

ステップ7-1:USEREMAIL() で「誰が使っているか」を判定する

USEREMAIL() は、 今ログインしてアプリを使っている人のメールアドレスを返す関数です。 これを使うと、 「誰に何を見せるか」 を判定できるようになります。

基本形
Current signed-in user
USEREMAIL()
何に使う?
自分のデータだけ見せる、管理者だけ特定メニューを見せる、などに使います。
どこで使う?
スライス条件、View の表示条件、Show_If、セキュリティフィルタなどで使えます。
Usage Example

よくある使い方

Example 1
USEREMAIL() = [利用者メール]
自分の貸出履歴だけ表示したいときの基本形
Example 2
USEREMAIL() = "admin@company.co.jp"
管理者だけに特定ビューを見せたいときの単純な例

ステップ7-2:管理者と一般ユーザーの見せ分けを考える

実務では「全員にすべてを見せる」よりも、 役割に応じて必要なものだけを見せる 方が、使いやすく安全です。

Admin

管理者に見せたいもの

  • ・備品一覧の全件
  • ・貸出履歴の全件
  • ・新規登録や削除の操作
  • ・設定系のビューや管理アクション
設計の考え方

管理者は全体を管理する立場なので、情報を広く持たせます。 ただし、誰でも管理者にしないことが大切です。

General User

一般ユーザーに見せたいもの

  • ・備品一覧
  • ・自分の貸出履歴
  • ・必要な申請フォーム
  • ・使わない管理メニューは非表示
設計の考え方

一般ユーザーには、使う画面だけを見せた方が迷いにくくなります。 不要な操作が見えないだけで、運用ミスも減らせます。

表示条件のイメージ

View visibility condition
USEREMAIL() = "admin@company.co.jp"

まずはこのようなシンプルな条件から始めると理解しやすいです。

覚えておきたいこと

  • ・「見せない」だけでなく「編集させない」も意識する
  • ・管理者判定は最初は固定メールでもよいが、あとで管理テーブル化すると運用しやすい
  • ・画面が少ないほど一般ユーザーは迷いにくい

ステップ7-3:Security Filterで「見えないようにする」

これまで紹介した「表示制御(Show_Ifなど)」は、 実はデータ自体は端末に届いている状態です。

⚠ 重要ポイント

非表示にしているだけでは、裏ではデータが存在しています。
→ セキュリティとしては不十分です

そこで使うのが Security Filterです。

Security Filterとは?

サーバー側でフィルタをかけ、
そもそもデータを端末に送らない仕組みです。

Show_If
表示しないだけ(データはある)
Security Filter
データ自体を送らない(安全)
Security Model

データの流れの違い

NG:Show_Ifだけ
データは全部端末に届いている
→ 非表示でも取得可能(リスクあり)
OK:Security Filter
必要なデータだけ送信
→ そもそも見えないので安全

実践例:自分のデータだけ取得する

Security Filter
USEREMAIL() = [利用者メール]

この設定を行うと、
ログインユーザーのデータだけが端末に送られるようになります。

運用上の注意

Security Filter を使うと取得データが減るため、
大規模データではパフォーマンス改善にもつながる一方、
条件を間違えるとデータが見えなくなるので注意してください。

Security Filter はどこで設定する?

Security Filter は、 テーブル単位で設定 します。

① Data を開く
左メニューから Data をクリック
② Tables を選択
対象のテーブル(例:Borrow Logs)を開く
③ Security Filter を入力
下の方にある「Security Filter」欄に式を入力
ポイント

Security Filter は「列」ではなく テーブル単位で設定します。
→ データ取得そのものを制御しているためです。

AppSheet UI
Data → Tables
Table: Borrow Logs
Security Filter:
USEREMAIL() = [利用者メール]
※ 実際はテーブル設定の下部に表示されます

ステップ7-3:Share でチームメンバーを招待する

アプリを使ってもらうには、 Share から対象ユーザーを招待します。 使ってほしい人のメールアドレスを追加して共有するのが基本です。

共有前の確認

共有相手が利用可能な Google アカウントを持っているか、 そのアカウントでログインして使えるかを確認しておくとスムーズです。

Share Mock

Share 画面イメージ

Share
App Users
Invite
user1@company.co.jp, user2@company.co.jp
admin@company.co.jp 管理者
taro@company.co.jp 一般
共有する相手を明確にし、まずは少人数で試すと運用に乗せやすくなります。

ステップ7-4:Deploy で本番運用へ進める

アプリが一通りできたら、 最後に Deploy を確認します。 Deploy は、 「試作」から「運用」に進むための最終チェック のようなものです。

1. 警告や未設定項目を確認する
キー設定、必須項目、表示条件などで問題がないか見直します。
2. 実際の利用シーンでテストする
スマホでも使いやすいか、一般ユーザー目線でも確認します。
3. 問題がなければ公開状態へ進める
チームで使う前に最終確認を終えておくと安心です。
おすすめの進め方

いきなり全社展開するよりも、 まずは数人で試し、 使いにくい点を直してから広げる方が定着しやすいです。

Deploy Mock

Deploy チェックのイメージ

Deploy
Ready to publish?
Checklist
✓ Key 設定を確認済み
✓ 必須列の入力を確認済み
✓ スマホ画面を確認済み
! 共有先メンバーで最終確認推奨
「動く」だけでなく、「安心して使える」状態かを確認するのが Deploy 前の大切な視点です。

最後に:今回のアプリから広がる改善アイデア

今回作った備品管理アプリで使った考え方は、他の業務にもそのまま応用できます。

施設管理アプリ
QRコード読み取り、写真付き点検、修理履歴、場所ごとの一覧表示などに展開できます。
人の情報管理アプリ
スキル一覧、緊急連絡先、入退館ログ、自分の申請履歴表示などに応用できます。
Final Recap
実践演習で押さえたポイント
データから始める

AppSheet は表データをもとにアプリを組み立てる。土台の設計が重要。

入力を楽にする

Type、Scannable、Initial Value、Actions で現場の操作を減らせる。

見せ方を整える

Views と Column order の調整で、ぐっと使いやすい画面になる。

公開前に設計する

ユーザー、権限、共有、公開前チェックを整えてからチーム展開する。

Final Checklist
公開前の最終チェック