本記事はノーコードアプリ開発について全く知らなかった管理人が独学で勉強し、ここ大事!と感じた部分を記事にまとめています。
本ブログでは新UI画面で内容をまとめています。
新旧画面への切り替えは、下図を参考に該当アイコンをクリックしてください(^^)
まずはじめに
- 特定のカラムに編集権限を付与したい人
- Editableの項目に関数を入力したときの挙動を勉強したい人
- Editableにfalseを入力したときの挙動が分かる
- 特定のカラムにのみ編集権限を付与することが可能になる
今回の記事は、Editable(編集権限)に関する内容です。
アプリの開発をやっていると、このカラムに入力された情報を誰にもいじられたくない・・と思うことはないですか?
具体的な例としては、
- 経費管理アプリの経費入力欄
- 進捗管理アプリのステータス欄
- 勤怠管理アプリの確定後の就業時間
例に挙げたアプリの項目を好きに編集ができてしまうと、何のためにデータ管理をしているのか分からなくなってしまいます。
こういった悩みを解決するのに役立つのが、Editableの項目です。
特に難しい設定でもないので、本記事を読み込んでマスターしてください(^^)
それでは勉強していきましょう!
Editableとは?
まず、Editableの基本を抑えたいと思います。
EditableはDataペインのColumnタブのカラム値を編集する画面にあります。
Update Behaviorにあります。
次にEditable?に入力が求められる関数を確認してみましょう。
Editable?に入力できる関数はYes/No で返答が可能な関数です。
覚えておきたいYes/Noを返す関数は、こちらの記事にまとめています
appsheetでアプリ開発をするなら抑えておきたい関数をまとめました(^^)
【永久保存版】appsheetで覚えておくべきYes/No関数
それでは、実データを用いてアプリ動作の検証をしていきましょう!
検証データの説明
検証に用いたデータの説明をします。
今回は、editableとアプリユーザーの2つのテーブルを用意しました。
こちらのテーブルは実際にEditableに関数を入力したときの挙動を確認するテーブルです。
また、ステータスカラムのInitial Valueには登録と入力しています。
名前、email、管理者(True or False)のカラムを持たせています。
この状態でeditableテーブルにデータを登録しようとすると、下写真の画面になります。
この状態では、ステータスカラムに登録の初期値が入力され、いずれのカラムも編集可能です。
それではEditable?に関数を入力するとどうなるか見ていきましょう!
Editable?にFalseと入力する
ステータスカラムのEditable?にFalseと入力してみました(^^)
するとどうなるか?
少し分かりにくいですが、ステータスカラムの編集が出来なくなっているのがおわかりでしょうか?
ちなみにInitial Valueに値を入力せずにチェック印を消すと、
ステータスカラムが見えなくなります・・・
カラムを編集することが出来ないので、値が入力されないなら見せる必要がないとappsheetが判断して非表示になってしまいます。
これだけだと全く使えない機能を紹介しただけになりますので、ちゃんと使えるTIPSもお伝えします(^^)
Editable-Falseの組み合わせは、直接Edit画面を開いての編集は出来なくなりますが、アクションボタンでの値の更新は受け付けてくれます。
ステータスカラムを確認にするアクションボタンを作成します。
編集画面のステータスカラム(登録)は、灰色になっており編集不可の状態です。
先ほど作成した確認!のアクションボタンを押すと・・
ステータスカラムの入力値が”確認”に更新されました(^^)
この設定をしておき、カラムの値を更新させるアクションボタンを押せる人に制限をかければ・・・
参考記事の”管理者に承認をもらいたい案件だけ表示させる”を参考にしてください(^^)
【永久保存版】汎用性の高いスライスの設定5選
Editable?に直接関数を入力する
次に、カラムに編集権限を付与する方法を考えてみます。
おさらいですが、Editable?に入力できる関数は はい か いいえ で答えられる関数です。
- [カラム]=〇、[カラム]<〇のように等号・不等号で値の判定をする
- 返り値がTrueまたはFalseの関数を入力する
上記2パターンを思い浮かべて組みやすい方で編集権限付与を検討しましょう(^^)
私がよく使う設定は、
アプリユーザーテーブルを用意して、管理者カラムにTrueもしくはFalseを入力する
この設定はどんなアプリでも使えるため、非常におすすめです(^^)
Editable?に関数を入力します
any(select(アプリユーザー[管理者],[email]=useremail()))
この関数を入力するだけで、アプリユーザー別に編集権限を付与することが可能です(^^)
アプリユーザーテーブルには、管理者ではないAさんと管理者であるB上司がいます。
上記関数をEditable?に入力することで、ユーザーによって見えるViewが変わります。
編集権限を持たないAさんのViewでは、ステータスの確認ができませんが、
編集権限を持つB上司のViewでは、ステータスカラムを確認することができます。
この関数は汎用性が非常に高く、例えば
- センシティブな情報が含まれるView
- アクションボタンの表示
- カラムのShow?設定
こういったデータや設定でも、同じ関数を入力するだけで閲覧権限の付与が可能です(^^)
まとめ
以上、編集権限に関する記事でした。
最後におさらいです(^^)
- Editable?にFalseを入力すると編集による値の更新は不可、アクションボタンによる値の更新は可能
- Editable?に直接関数を入力することで、編集権限の制御が可能
記事内容について何かありましたらページ下にあるコメント欄からコメントをお願いします。
わかりにくかった部分や間違った情報などご指摘いただけると嬉しいです!
勉強お疲れさまでした(^^)