Salesforceの公開グループに所属するユーザの取得
イシュー
- Salesforceの公開グループに所属するユーザを取得する
参考
- soql - Selection of group name and user name from GroupMember in one query - Salesforce Stack Exchange
- How to get all Users of a Public Group? - Salesforce Developer Community
- visualforce - How to access all the public groups relatedto an user in apex - Salesforce Stack Exchange
- How do we get all the users who are part of public group of current logged in user? - Salesforce Stack Exchange
- it is better solution. not perfect
- Determine the Public Groups a User Is In - Salesforce Developer Community
- Apex Sharingでロールに対して共有を設定する at nkjmkzk.net
- Group
仕様把握
- Group は、PublicGroup(公開グループ)のこと
- Group の Typeは、「Regular」「Role」「RoleAndSubordinates」がある
** userGroup 1: groupId=00G10000001d3NvEAI;relatedId=null;type=Organization 2: groupId=00G10000001TUnHEAW;relatedId=null;type=Regular 3: groupId=00G10000001TUoYEAW;relatedId=null;type=Regular 4: groupId=00G10000001TUodEAG;relatedId=null;type=Regular 5: groupId=00G10000001TURAEA4;relatedId=00E10000000xAQrEAM;type=Role 6: groupId=00G10000001TURBEA4;relatedId=00E10000000xAQrEAM;type=RoleAndSubordinates 7: groupId=00G10000001TUosEAG;relatedId=null;type=Regular →1、5はつかわれていない ** GroupMember a(2ug3g): userGroupSet=00G10000001TUnHEAW;group=00G10000001TUoYEAW b(6ug2g): userGroupSet=00G10000001TURBEA4;group=00G10000001TUnHEAW c(u 7g): userGroupSet=00510000002cnZ0AAI;group=00G10000001TUosEAG ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ Group:グループ2(4: 00G10000001TUod、ユーザ:Regular) Group(Regular):4: groupId=00G10000001TUodEAG;relatedId=null;type=Regular GroupMember なし(どうやってユーザーIdを取得するか?) TestGroup1:テストグループ(2: 00G10000001TUnH、ロール&下位ロール:TestRole : Regular, type=RoleAndSubordinates) Group(Regular): 2: groupId=00G10000001TUnHEAW;relatedId=null;type=Regular GroupMember: b(6ug2g): groupId=00G10000001TUnHEAW;userGroupSet=00G10000001TURBEA4 (Other Group); Group(Other): 6:groupId=00G10000001TURBEA4;relatedId=00E10000000xAQrEAM;type=RoleAndSubordinates → グループから「ロール&下位ロール」とロールID:00E10000000xAQrEAM を導く TestGroup2:テストグループ2 3: 00G10000001TUoY : Regular テストグループ Group(Regular): 3: groupId=00G10000001TUoYEAW;relatedId=null;type=Regular GroupMember: a(2ug3g): groupId=00G10000001TUoYEAW; userGroupSet=00G10000001TUnHEAW(Other Group); Group(Regular): 2: groupId=00G10000001TUnHEAW;relatedId=null;type=Regular → グループから「グループ」とグループID:00G10000001TUnHEAW を導く UerGroup: Group(Regular): 7: groupId=00G10000001TUosEAG;relatedId=null;type=Regular Groupmember: c(u 7g): userGroupSet=00510000002cnZ0AAI;group=00G10000001TUosEAG → グループからユーザとユーザID(00510000002cnZ0AAI) を導く