元の質問 : ユーザの階層化されたロール名の取得
user オブジェクトのManagerフィールドは親の情報を再帰的に検索できます。
select Name,UserRole.Name,Manager.UserRole.Name,Manager.Manager.UserRole.Name from user
しかし、親のロールはできないです。
1階層上のロールのIdは取得できるのですが、Nameや更にその上の階層にはアクセスできませんでした。
select Name,UserRole.Name,UserRole.ParentRoleId from user
外部ユーザについても同じように機能しそう。
不具合
ロールの新規追加ができない。
画面もクラッシックに勝手に切り替わるらしい
Create a Role Hierarchy げぇ、上記と同じじゃん。
Data Security Create a Role Hierarchy Problem because move to Lighting
Experience Cloud サイト
新しい組織には、デフォルトで Experience Cloud ユーザーに最大 50,000 の取引先ロールを設定できます。取引先ロール数を 100,000 に増やすには、サポートに連絡する必要があります (ただし、承認を得るには詳細なシステムデザインビューの提出が必要になります)。Salesforce に設定できる取引先ロールの絶対最大値は 500,000 で、それだけの数にするには Salesforce の特別な承認が必要です。
サイトユーザーに関連付けられた取引先ごとに取引先ロールが生成されるため、取引先ロールは急速に増えます。つまり、組織で 2 つのパートナー取引先ロールを設定し、100 件のパートナー取引先があれば、200 件の取引先ロールが作成されます。