Pages

Saturday, December 26, 2015

Salesforce: Change Record Owner


In general, to transfer a record from a user to you or to someone else in Salesforce, you need to have following access or permission:
  • you are the record owner and you have Edit permission on the object, or
  • record owned by a user under you in the role hierarchy (Grant Access Using Hierarchies must be enabled for that object) and you have Edit permission on the object, or
  • you have Transfer Record permission and Edit permission on the object, or 
  • you have Modify All permission for the given object, regardless of who owns the record, or
  • you have Modify All Data permission, regardless of who owns the record.
If you see above criteria's, having edit access on a record doesn't mean you will be able to transfer a record you can edit. If you click Sharing button on the record, it will show the explanation of Access Levels:
  • Full Access - User can view, edit, delete, and transfer the record. The user can also extend sharing access to other users.
  • Read/Write - User can view and edit the record, and add associated records, notes, and attachments to it.
While using sharing rules in OWD, we cannot share object access to Full Access.


Transfer Record Permission
For a user with Transfer Record permission, but no Edit permission on record (not on the object):
- will be able to change the owner from Change Owner link from record page
- will be able to change the owner from list view (for Lead and Contact)
- will be able to mass transfer record using "Mass Transfer Records" from the setup menu

With this, it is clear that transfer record owner does not relate with edit record permission, but related with edit object permission.


Summary: user with "Transfer Record" permission allowed to transfer ALL records, as long as the user has Edit permission to the object. Read again here "edit on object" NOT "edit on record", this means, the user will be able to transfer record owner even user do not have Edit access to that record.

Transfer Record permission will include Transfer Case and Transfer Lead permission.


A special case to transfer Campaign, users must also have the "Marketing User" checkbox selected on their user record.

Use Case: allow a user to change owner as long as the user has edit access to the record, edit access may be given from OWD sharing rules or manual sharing.

Solution: based on the above criteria, this use case doesn't fit any criteria. In short, we need to customize with write trigger to query to object UserRecordAccess, example: SELECT RecordId, HasEditAccess FROM UserRecordAccess WHERE UserId='00590000000OoB0AAK' and RecordId='00690000005vUbw' and "Transfer Record" permission must be given to that users.

Other Solution: this may be not an ideal solution, but if you do not have developers to write a trigger, you can use validation rules based on conditions from user object, example: users located in West area only allowed to transfer record owned by users in the same West area, sample validation rule:
TEXT($User.Area__c) <> PRIORVALUE(Owner.Area__c) || 
TEXT($User.Area__c) <> Owner.Area__c 

** this validation rule will stop user to edit record if the record owner is not in the same Area with the user, or the prior record owner is not in the same with user's Area.



Reference:
Blog last modified date: 23 Oct 2016

How to log Case to Salesforce support

Two months ago (around late Oct 2015 - after Winter '16 release), Salesforce change Help and Training portal to a whole new experience. There are 4 main areas improvement in the new portal:
1. Mobile friendly: open web browser from Tablet and smart Phone.
2. My Success Hub: Dashboard, Open and Closed Cases, Training, and Contact Us.
3. Help Finder: Step by Step guided experience with answers at every corner, this is good for user to have self-service.
4. Auto complete Search: based on multiple sources, portal will auto complete and recommend question you may ask.

But, somehow for experience admins or consultants who familiar with the system, to log a case become another challenge. In earlier new version, it buried somewhere under "click here" link - explained by this article Submit, create or update a case with Salesforce Support. This week (before Christmas 2015), we see a newer version released again (2 months after initial portal released), so above article become no longer valid.

So, as of today 26 Dec 2015, here is the step by step on how to log Case to Salesforce support. After click Help & Training link at top right in Salesforce.com

1. Click Contact Support


2. Select a Topic


3. Select a Category


4. Log a Case 
You will see Log a New Case big icon, if you do not see that icon here, it may depend on your level support or Category you choose, you may not see the icon here, continue to step 5 below.



5. Select a Question 
If you do not see the icon at step 4, click a Question (in gray cell), this will bring you to Solution tab. Look for the icon below.



If you not so happy with the new portal, feel free to vote for this idea to have easier way to log a Case, maybe from My Success Hub.


Reference:



Wednesday, December 23, 2015

Salesforce: Sending email using other email address

In previous blog, we discussed about issue with noreply@salesforce.com in Microsoft Outlook when Sender ID compliance is enabled. In this blog, we would like to discuss if Salesforce users need to send email as other email address or a team mailbox from Salesforce.

This is standard Send an Email screenshot:



There are 2 options to send email using other email address:

1. My Email Settings
This is option is more for personal usage or need to do by each users if need to do by a team.
  • Navigate to Your Name | My Settings | Email | My Email Settings
  • Change "What email address would you like to use as your return address?" to the new email address.

Salesforce will send an email for verification to that email address and you need to click the link in that email.



Once verification done, you will notice there are option for you to select a sender email address when compose email from Salesforce, so when recipient reply the email, it will sent to which email address you select.



2. Organization-Wide Email Addresses
This option is for setting additional email address for whole Salesforce users or by Profiles.
  • Navigate to Setup | Email Administration | Organization-Wide Addresses
  • Add Display Name, Email Address, select either visible for all users (All Profiles) or certain Profiles only.


Same with My Email Settings (point 1 above), Salesforce will send email for verification before it will be available to users.

Once verified, notice additional email available in From when you Send Email from Salesforce.




Salesforce: noreply@salesforce.com on behalf of

When you send email from Salesforce, for recipient open the email sent with Microsoft Outlook, the may see the sender as noreply@salesforce.com on behalf of Sender FirstName LastName <emailaddress@domain.com> rather than your name and your email address.


But, when recipient hit reply in Microsoft Outlook, it will point the email to "the right email address" of the sender, not to no-reply@salesforce.com



When recipient open the same email not with Microsoft Outlook, example: using gmail.com, the sender "noreply@salesforce.com on behalf of" is not there. Salesforce is not adding that into the email, that is caused by the email client, which is specific to Microsoft Outlook. Below is screenshot from other email client:



To remove "noreply@salesforce.com on behalf of" follow these steps:
  • Click on Setup | Email Administration | Deliverability 
  • Locate the Email Security Compliance section
  • Unselect the Enable Sender ID compliance box 
  • Click Save button

The emails you send will no longer include the "noreply@salesforce.com on behalf of".




This is how it looks when open from other email client (such as: gmail.com), notice there are no differences before and after we change Sender Id compliance.





Reference:


Friday, December 18, 2015

Salesforce: Win/Loss Ratio

Win/Loss Ratio is always interesting number for a company, by region, by country, until be area manager in a country. It can be either by opportunity quantity or by opportunity amount. In common platform, you need to hire developer to achieve this ratio, developer need to write complex coding, but with Salesforce, as admin, we can create normal report and use Custom Summary Formula with very minimal effort.

The report format need to be Summary, Matrix or Joined report. Side note: you can only add up to 5 Custom Summary Formula in a report.

Here are widely use formula in report related to Opportunity:
  • WON:SUM - number of opportunity Won
  • CLOSED:SUM - number of opportunity Closed (Won + Lost)
  • AMOUNT:SUM - total Amount of opportunity 
  • Record Count - number of record per group

1. Use Case: count Win Loss Ratio by Quantity
CLOSED:SUM/PARENTGROUPVAL(CLOSED:SUM, GRAND_SUMMARY)

2. Use Case: count Win Loss Ratio by Amount
AMOUNT:SUM/PARENTGROUPVAL(AMOUNT:SUM, GRAND_SUMMARY)


* Win / Loss here is a formula field for report display purpose - this is the formula IF(IsWon, "Win","Lost")



Salesforce: Lead Source fields

When adding new Contact or Lead to a CRM system, you would like to note how you get know to that person? That's why by default Salesforce provide standard field or Lead Source is 4 main objects below, and they are picklist fields. You can customize the values based on your organization business model.
  1. Lead - Lead Source
  2. Account - Account Source
  3. Contact - Lead Source
  4. Opportunity - Lead Source
Over the time, you may modify the lead source values accordingly, but to note that: the values of 4 fields above in 4 objects above are in sync, this mean, if you add a new Lead Source value in Lead, it will copy to other objects, the same when you edit, delete and re-order values.

When you convert a Lead to Account, Contact and Opportunity, the conversion value of Lead Source from Lead will bring to Contact and Opportunity Lead Source.


Reference:


Page-level ad