追加・更新及び削除ができるかの制御をテーブルのセキュリティフィルターによってユーザー単位でアクセスの権限を制御できることは確認できましたが、投稿者が「自身で追加したレコードに関してだけは更新及び削除が可能」とすることはできますでしょうか。
ROW レベルでの制御を行うためには、まず、それぞれのROWが誰によって作成されたか?の記録を残す必要があります。
スプレッドシートの対象のTABLEにCOLUMNを追加し、[UserEmail]という名称のカラムを作成し、そのテーブルをREGENERATEします。
追加されたカラムのデータタイプをEmailに設定。同時にInitial ValueのExpressionにUSEREMAIL()という関数を入力します。
この設定で、ROWが新規に作成された際、ログインしているユーザーのメールアドレスをそのUSEREMAILというカラムに値として落とし込んでくれます。ROWのOwnershipが誰にあるのか?を示してくれるフラッグとします。
次に、若干単調かつ面倒な作業となるかもしれませんが、そのテーブルで入力制限をしたいカラムすべてのEDITIFの設定にて、関数を使うことができますので、その設定に
[UserEmail]=Useremail()
UserEmail()は現在ログイン中のユーザーのEmailアドレスを返す関数ですので、そのVALUEとROWの[UserEmail]のVALUEが同じときにだけ編集可、とします。
削除に関して。これも複数の異なるアプローチがあると思いますが、一番簡単なのは、SYSTEM GENERATEDのDELETEというアクション。こちらの設定画面でOnly if this condition is true という項目がありますので、その関数に上記とまったく同じ
[UserEmail]=Useremail()
と設定されれば、自分が作成したROWを開いたときにのみDELETEのActionボタンが見える、逆にいいますと他人が作成したROWを開くとACTIONボタン表示されない、結果削除できない、という仕様を設定できます。
お試し下さい。
ADD アクションの設定は、以下の部分です。
まず、Expressionを挿入する場所(正確にはEDITIFではなくEDITABLEの項目でした。失礼しました)は以下です。