Hi,
I wanted to assign permission set to user group during installing the extension in BC and below is the code. The installation failed with error
'Could not install the extension 'XXX on tenant 'default' and company '' due to the following error: 'The record in table User Group Permission Set already exists. Identification fields and values: User Group Code='D365 ACCOUNTANTS',Permission Set='TRANS. ACCESS',Scope='System',App ID='{3AD0200B-B072-4763-9F04-7880752C6086}''
Any idea how to fix this error?
CODE:
codeunit 60007 "Install Codeunit - A"
{
subtype = Install;
trigger OnInstallAppPerCompany()
var
myAppInfo: ModuleInfo;
begin
AddPermissionSetToUserGroup('Base Trans', UserGroupLabel1);
AddPermissionSetToUserGroup('Trans. Access', UserGroupLabel2);
end;
procedure AddPermissionSetToUserGroup(PermissionSetId: Code[20]; UserGroup: Text)
var
PermissionSet: Record "Permission Set";
UserGroupPermissionSet: record "User Group Permission Set";
UserGroupPermissionSet2: record "User Group Permission Set";
UserGroupCode: Code[20];
begin
if not PermissionSet.Get(PermissionSetID) then
exit;
UserGroupCode := CopyStr(UserGroup, 1, MaxStrLen(UserGroupPermissionSet."User Group Code"));
clear(UserGroupPermissionSet);
if UserGroupPermissionSet.Get(UserGroupCode, PermissionSetId) then
exit;
UserGroupPermissionSet.init;
UserGroupPermissionSet."Role ID" := PermissionSetId;
UserGroupPermissionSet."User Group Code" := UserGroupCode;
UserGroupPermissionSet.Insert();
end;
var
UserGroupLabel1: Label 'D365 FULL ACCESS', Locked = true;
UserGroupLabel2: Label 'D365 ACCOUNTANTS', Locked = true;
}