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
Art SmorodinArt Smorodin 

Take away ability to change case owner

Hi all,
question which is bugging me, how do I take away permission from users to re-assign case owners.
Basically my problem is that some support reps in our org take easy tickets from the queue and leave the rest just hang there. We want to take it away from most people and just leave this functionality avalable just for few users.

What I am trying to achive: if the case is in the queue (aka owner is a queue and not a user), people with "Customer Support" profile can not click on the [Change] button next to ticket owner field. Only people with "customer Support manager" profile should be able to so so.
I have already taken away the "transfer records" permission from them, but the [Change] button is still there.
My current Organization-Wide Defaults on cases are set to Private and Grant Access Using Hierarchies is enabled (it is a Standard object and this option can not be modified).

Any input will be apreciated.
 
Shashikant SharmaShashikant Sharma
Hi,

In order to stop the owenrship update you achieve it by two ways:

1. Create a Separate PageLayout for "Customer Support" and make Case Owner field read only from the page layout

In case this does not work for you if you want it to be conditionally readonly even for "Customer Support" profile then

2. Create a Valdiation Rule
 
AND( NOT(ISNEW()), 
      ISCHANGED( OwnerId ), 
      $Profile.Name  = 'Customer Support' 
     )

Update te above as per your needs.

You could read more about validation rules
https://help.salesforce.com/HTViewHelpDoc?id=fields_about_field_validation.htm
https://help.salesforce.com/HTViewHelpDoc?id=fields_useful_field_validation_formulas.htm

Let me know if you face any issues.

Thanks
Shashikant
Ravi Dutt SharmaRavi Dutt Sharma
Hey Art,

You can create a validation rule to achieve this.
 
IF(
LEFT(PRIORVALUE(OwnerId),3) = '00G',
	IF(Owner:User.Profile.Name = 'Customer Support Manager',
	false,
	true
	),
	false
)

First check if previous owner was a queue. All queue starts with 00G. If previous owner was queue and new owner's user profile is Customer Support Manager, then return false (means do not throw a validation error), else return true.