何らかの理由で、Apex で EmailTemplates または Folders をクエリすると、ユーザーに関係なくすべての EmailTemplates または Folders が返されます。通常、クエリは、現在のユーザーが表示する権限を (少なくとも) 持っているレコードのみを返します。現在のユーザーがアクセスできる EmailTemplates のみを照会するにはどうすればよいですか (電子メール フォルダーで定義されたアクセス許可に基づいて)?
これが私がこれまでに持っているものです:
Set<ID> FolderIds = new Set<ID>();
List<Folder> Folders = [Select Id, Name From Folder Where Type = 'Email'];
for(Folder F : Folders) { FolderIds.add(F.Id); }
List<EmailTemplate> Templates = [Select Id, Name, IsActive, Folder.Name
From EmailTemplate
Where IsActive = true
And Folder.Id IN :FolderIds
ORDER BY Folder.Name, Name];