![見出し画像](https://assets.st-note.com/production/uploads/images/135362265/rectangle_large_type_2_a925b47a0e78408484d8bb1ae328c8fb.png?width=1200)
ステータスと権限の関連性(kintone)
こんにちは、ちゃんえりです。本当は、抱負なんかも記事にしたかったのですが、気づいたら2月でした。
嫌になっちゃいますね(・・;)
気づいたら3月でした(💢'ω')
なんだか毎年2月と3月は忙しい気がします。
でも、発信したいことはたくさんあるので、少しずつ頑張ります!!
ということで今回は、1月のkNN(kintone Night Nagoya)でLTした内容をnoteにもまとめようと思います!
早速ですが、クイズです
編集権限のないレコードのステータスを変更しようとするとどうなるでしょうか?
① そもそもステータス変更のボタンが表示されない
![ボタンが表示されない](https://assets.st-note.com/production/uploads/images/133730886/picture_pc_dc76be117044713506d3f43a151c1171.gif?width=1200)
②「権限がありません」と表示されて変更できない
![権限がありません](https://assets.st-note.com/production/uploads/images/133731015/picture_pc_29c1640964de56b7b60cbfe0c9a73e6e.gif?width=1200)
③ 特に問題なく、ステータスを変更できる
![ステータス変更できる](https://assets.st-note.com/production/uploads/images/133731055/picture_pc_fdc75049ed1fe8f062d523e476503a9f.gif?width=1200)
答えは…
₍₍ ◝('ω'◝) ⁾⁾₍₍ ◝( 'ω' )◟ ⁾⁾₍₍ (◟'ω')◟ ⁾⁾
( 'ω' و(و♪ ƪ( 'ω' ƪ )♪( 'ω' و(و ♪ƪ( 'ω' ƪ )♪
実際にみてみましょう
というわけで、実際に試してみます!
未申請のときは、編集が可能な状態。ここから申請していきます。
![](https://assets.st-note.com/img/1710246634804-z7wJJQVMWE.png?width=1200)
申請中になりました。編集権限がなくなります。
![](https://assets.st-note.com/img/1710247775403-mSm8rfI0Ag.png?width=1200)
まず、この時点で「承認する」のボタンが表示されているので、
① そもそもステータス変更のボタンが表示されない は間違いですね ❌
では、実際に承認していきます。
![](https://assets.st-note.com/production/uploads/images/135097009/picture_pc_2abe68a431299f72d6bacca97a3e72da.gif?width=1200)
……特にエラーもなく、ステータス変更できましたね。
なので、
②「権限がありません」と表示されて変更できない も間違いですね❌
ということで正解は!
③ 特に問題なく、ステータスを変更できる
でした(* 'д'ノノ゙☆パチパチパチ
みなさん、正解できましたか?
結構以外じゃなかったですか??
私は今でも、あれ?編集権限ないのに、ステータス変更できた?!
となるときがあります ( ◜▿◝)ァ,、
まとめ
基本的には、ステータスを使うときは作業者を設定していると思うので、
大きな影響はないと思いますが、
「編集権限ないから作業者設定しなくても、いっか!」など思っていると、
意図しない人が実はステータスを進めることができた。なんてことになってしまうので、注意が必要です!!
逆に言うと、レコードの編集はさせたくないけど、ステータスは進められるようにしたい!という要件に対応することができます✨
例:申請後は誰も編集はできないけど、承認者だけステータスを承認に進められる。 など
ちなみに、kintoneのヘルプには
作業者に指定したユーザーは、レコードの閲覧権限が必要です。レコードの閲覧権限がないと、そのユーザーはレコードを閲覧できず、アクションを実行できません。なお、レコードの編集権限はなくても問題ありません。
とちゃんと書いてありましたw
おまけ (カスタマイズする方向け)
JavaScriptのカスタマイズで「プロセス変更イベント」を使用し、
イベント内でイベントオブジェクトを"return"していると、
値の変更の有無にかかわらず、「権限がありません」と表示され、
ステータスが遷移できなくなるので、注意が必要です。
![](https://assets.st-note.com/img/1710252052077-9XnrXk2fhp.png?width=1200)
上のコードで実際に承認してみると……。
![](https://assets.st-note.com/production/uploads/images/135166659/picture_pc_f717ee7241473e8b54b74606a828b2ae.gif?width=1200)
これは、要件によって対応方法が変わるのですが、プロセス変更イベントで処理をしたいけど、自分のレコードの値更新などはしないよ!という場合は、何もreturnしなければ、ステータスは進みます。
逆に、自分のレコードの値を更新したい場合は、編集権限をつけないといけません。
でも、普通に考えて編集権限のないのにレコードの値更新できたら逆に困りますよね……。
上記の話でカスタマイズしない人が気をつけないといけないこと
プロセスやステータス関連のプラグインを使用していると、
裏側で実は、イベントオブジェクトを"return"していて、エラーになる可能性があるので、注意が必要です。
以上、みなさんのkintoneライフのお役に立てたら幸いです。
おわり!