function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
RelaxItsJustCodeRelaxItsJustCode 

Question about getting data about current user. Please help...

trigger CaseTrigger on Case (before update,before insert,before delete, after update, after insert, after delete)
{
     Profile p = [SELECT Name FROM Profile WHERE ID =:UserInfo.getProfileId()];
          if(p.Name != 'System Administrator') 
          {
               if (Trigger.isInsert && Trigger.isbefore)
                { 
                }
               if (Trigger.isUpdate && Trigger.isbefore)
                {
                     CaseFunctions.CaseValidationBeforeComplete(Trigger.oldMap, Trigger.newMap);
                } 
               if (Trigger.isDelete && Trigger.isbefore)
                {
                }
               if (Trigger.isInsert && Trigger.isafter)
                { 
                }
               if (Trigger.isUpdate && Trigger.isafter)
                {
                } 
               if (Trigger.isDelete && Trigger.isafter)
                {
                }
          }
              
}

 Above is a quick query to find out if the current user is a System Administrator.  Now what I also need to do is check to see if a specific manager assigned to the user.  So it would be equal to saying anyone that has a System Administrator as a manager....  Any ideas???

 

Thank you,

Steve Laycock

SLockardSLockard

Here is some logic to find your managers profile name, good luck.

User u = [SELECT Id, ManagerId FROM User WHERE Id = : UserInfo.getUserId()];
List<User> m = [SELECT Id, ProfileId FROM User WHERE Id = : u.ManagerId LIMIT 1];
if (!m.isEmpty())
{
 List<Profile> p = [SELECT Name FROM Profile WHERE Id = : m[0].ProfileId LIMIT 1];
 if (!p.isEmpty())
 {
  if (p[0].Name == 'System Administrator')
  {
   // logic here   
  }
 }
}