ワークフローアプリで、役職によって閲覧可能レコードを制御する方法に悩んでいます。
プロセス管理の設定もしたアプリを作成しています。
申請書レコードの閲覧範囲を「レコードのアクセス権」で設定したいのですが、部署が多いため条件設定が多くなりそうです。
「グループ(ロール)」等も利用して簡単に出来る方法がないかを探しています。
【役職と閲覧範囲】
・取締役:全部署の全レコード
・部長:所属部署の全部員のレコード
・一般社員:自分のレコードのみ
【組織】
全社ーーー
|ーーー取締役(役員1、役員2)
|ーーーA部門
|ーーーA1部(部長A、社員1、社員2)
|ーーーA2部
|ーーーB部門
|ーーーB1部(部長B、社員3、社員4)
|ーーーB2部
【グループ(ロール)】
・管理職(部長以上):役員1、役員2、部長A、部長B…
【前提条件】
・作成時に、「組織選択」フィールドに作成者の「優先する組織」を自動登録
・「プロセス管理」で指定する承認者としての部長のユーザー情報は、cybozu管理のカスタム項目「上司」から取得(社員1には部長Aを登録済)
【方法①】
レコードの条件
[組織選択] [次のいずれかを含む] [A部長が所属する組織]
ユーザー/組織/グループとアクセス権
取締役 許可する操作: [レ]閲覧 [レ]編集 [レ]削除
A部長 許可する操作: [レ]閲覧 [レ]編集 [レ]削除
作成者 許可する操作: [レ]閲覧 [レ]編集 [レ]削除
Everyone 許可する操作: [ ]閲覧 [ ]編集 [ ]削除
【方法②】
マスタアプリを作成し、「社員1:部長A」「社員3:部長B」と所属部長のユーザー情報を登録しておき、ワークフロー側のフィールドにルックアップ取得してそのフィールドを「レコードのアクセス権」の条件にする
【悩んでいること】
・「方法①」だと、部署の数だけ条件が必要になるとともに、それぞれの条件で「取締役」に対する条件追加が必要になるので回避したい
・「方法②」だと、マスタアプリを作成が必要になるが、作成しない方法を検討したい
・プラグインは使えない
・レコード作成時には、作成者に組織選択させることなどは避ける(出来る限り必要な情報を自動登録・取得しておく)
「マスタアプリを作成しないで承認者に部長を自動指定しろ」という要望に何とか対応したものの、今回ばかりはマスタアプリになる社員名簿を作った方がいいんじゃないかと心折れかけております…。
フィールドを追加するなどで簡単になる方法などいいアイデアをご存じでしたら、ご教示いただけますと幸いです。
よろしくお願いいたします。
ミュートしたユーザーの投稿です。
投稿を表示おはようございます。
アクセス権だけでなんとかするなら、
部署ごとに設定をする感じでしょうね……。やりたくないですね……。
マスタアプリを作成しない場合、プラグインやカスタマイズで上司を取得、
フィールドに格納になるかと思います。
参考までに関連するURLを貼り付けておきます。
https://docs-customine.gusuku.io/ja/actions/other/get_user_property/
https://qiita.com/rex0220/items/d12ad71cccf791d23a50
https://community.cybozu.dev/t/topic/8629
ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示自分もプロセス管理をテスト実装中です
なんだか色々悩みますよね…
レコードのアクセス権で「フォームのフィールドを追加」で「作業者」と「作成者」を追加し、
以下の設定にして運用しようかと考えてます。
作業者 許可する操作: [レ]閲覧 [レ]編集 [レ]削除
作成者 許可する操作: [レ]閲覧 [レ]編集 [レ]削除
Everyone 許可する操作: [ ]閲覧 [ ]編集 [ ]削除
プロセス管理の流れは、
作成者→上長→取締役(条件によって)としています。
作業者とは
https://jp.cybozu.help/k/ja/user/app_settings/process/requiredsettings_process.html
ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示ミュートしたユーザーの投稿です。
投稿を表示