Pages

Thursday, June 12, 2014

Salesforce: Enhanced Lookups

This blog is continuation of my previous blog about Lookup Auto-Completion. Beside Auto-Lookup, Salesforce also have Enhanced Lookup feature, and this is also not enable by default. Currently only account, contact, user, and custom object lookups can use this feature.

How to enable it? Go to: Setup - Customize - Search - Search Settings, scroll down to Lookup Settings and check objects that you need to enable for Enhanced Lookups.

What is the 'extra' when enable this feature?
  • Ability to sort search result by any column
  • Ability to search not just Name, but also All Fields in that object
  • Ability to modify columns shown in the search result, to modify available columns in lookup result, go to Search Results in the object Search Layouts menu.

This is the same auto-completion, only the parent object (not child object) need to enable for enhanced lookups.

Before enabling Enhanced Lookups



After enabling Enhanced Lookups





Reference: Enabling Enhanced Lookups


Salesforce: Lookup Auto Complete

Many of us may not aware that Salesforce have Auto-Complete feature, it is a simple feature for someone, but for many, this feature help a lot for daily works.

By default it is not enable, so admin need to activate it manually, although it is pretty easy. The setup is buried deep inside Setup menu. Here we go: Setup - Customize - Search - Search Settings. Scroll down to Lookup Settings and look for objects that you need enable for auto-completion then check Lookup Auto-Completion for the objects.

Few items to note for Auto-Completion in Salesforce:
  1. Admin have to manually enable objects for auto-completion. So, when a lookup field created, the parent object (not child object) need to enable for auto-lookup.
  2. Same as other area in Salesforce, it is case-insensitive
  3. It only work for both Master-Detail and Lookup relationship, not for text field or other.
  4. It displays suggestions from My Recent Items list as you type, but recent items here is not limited to the items in side bar, but including in recent tab and list view.
  5. It will catch character in a word start with, so for example: when you type ed, it will catch Kia Edan and edwin, but not medan.
Here a screenshot before turn on auto completion, when user type in Customer Id field, nothing show up:


After turn it on, when user type a character it will show recent record from parent object.




Salesforce: Unable to save when lookup to a record - Insufficient Privileges

Background: a user complain that she get error when edit a record to a lookup record, the same error she got when try to create a new record from related list, both objects are custom object.

We request user to send the screenshot with error message: Insufficient Privileges - You do not have the level of access necessary to perform the operation you requested. Please contact the owner of the record or your administrator if access is necessary.  



From a quick discussion with user, here are few items we notice:  
  • Error is not happen to all lookup record, some of the lookup record do not throw error
  • User profile has Create permission in both objects, and user able to create new record
  • Relationship between this two objects is Master-Detail, and Sharing Setting Organization-Wide Defaults for master object is Read-Only
Further check, we conclude this error only happen to lookup records not editable by user, so this is related to the role hierarchy, but why it not allow user to just link a child record to that parent, where the sharing setting for the parent/lookup object is Read-Only.

A quick thought, is there any Roll-Up summary field in parent to that child? If yes, this lookup will do 'edit' activity to parent -- negative, no Roll-Up summary field in parent to that child.

Finally: we found the issue: this is because Master-Detail field in the child object to parent is set to Sharing Setting = Read/Write: Allows users with at least Read/Write access to the Master record to create, edit, or delete related Detail records.



Once, we change this to Read Only, everything is working well.





Sunday, June 8, 2014

Salesforce MVP Summit 2014


This is my first time attending Salesforce MVP summit. This is the 2nd summit, where 1st summit happened last year.

Yesterday, we end a two full impressive days of Salesforce MVP Summit. Salesforce flew all Salesforce & Force.com MVP from around the world to beautiful city San Francisco. I met many familiar person and familiar name in real person, where we used to met virtually in Salesforce Success Community and just see their small photo in the Chatter Community, from the legendary Steve Molis, Jeff May, Dan Appleman, my Summit buddy Alex Sutherland and many more.



The summit take place in a luxury hotel in the heart of San Francisco. A box with my name come to my room 5 minutes after I check-in. It come with summit agenda and cool Salesforce MVP stuffs, from: jacket, sneaker to cool shades.




We are presented many good stuff by Salesforce product mangers and executives, a sneak peak of what’s coming next on the platform. As we are under NDA not to disclose any, nothing allow to share to public. I only can say Salesforce.com is keep innovating and hearing to our feedback. 




So, now I am in SFO airport ready for a long flight back to home, sunny Singapore. Last words, thanks to Salesforce.com for arranging this great summit and especially to Matt and Erica -  #awesome !!! 








Blogs posted by other MVPs:

Reference: Salesforce MVP™ Program


Friday, June 6, 2014

Salesforce: Obsolete Report

Some of us may have seen error message in Salesforce when running an existing report Obsolete Report. This report can no longer be edited or run. Your administrator has disabled all reports for the custom object, or its relationships have changed. This usually happen when there are changes in the object related to the report or visibility of the object for user.


Recently, we have user complain above error when the object is still in use. Here are few causes of that error taken from Salesforce article.
1. An object used in the relationship is not enabled for reporting
2. A look-up relationship used in the report was deleted or changed its type (changing from master-detail to look-up also makes a report obsolete)
3. An object in the report was deleted.
4. A profile does not have visibility to an object
5. The report is based on an object that belongs to a “managed package”  “In Development” status, therefore not all users will have access to it.

In our scenario, recently we purchased a managed package app, it is working fine and no issue. But, a user from higher management role complain he get this error. We follow above checkpoints:
1. Enable Reports is tick for that custom object, skip.
2. The report is on parent object, not child, skip.
3. Report is still there and working fine, skip.
4. We go to user profile and Read access for the user profile is there, skip
5. This object is a Manage Package object, but Deployment Status = Deployed, skip.

So none of above condition exist for the user. We even going further to check if the user have access to report folder, and we see user role for the report folder is Viewer, skip.

After discuss with the users, we get more info:
  1. A user set weekly schedule dashboard refresh and this effected user is in the recipient of Email Dashboard.
  2. User receive the email and dashboard is showed without issue within that email
  3. When user click the report in email he got above error Obsolete Report
Check with other users in the email recipients, no one have such issue, weird !

Finally, we found the issue - yay..... this is because the object is created from Managed installed package, and this user has no license to the package, so once we add license for that user and it works :)

Actually, it fall under point number 4 in conditions above, where user do not have visibility of the object, it just like we forget extra checkpoint for managed package object. ALL DONE!!

Reference: Why do some reports return an 'obsolete report' error message?


Sunday, June 1, 2014

Salesforce: Related List not Visible to a User

Related list in Salesforce is very useful and simple to use. Child objects from Lookup Relationship or Master-Detail Relationship will show in the Parent object page layout. But, too many related list also not good as it will create a long scroll down on the parent page. So, just use it wisely.

I have a user who do not able to see a related list of custom object, while her peers able. Here are few items to start look into:
  • Check user Profile, if she has read permission to that object (child object). If not, go to user detail and check Permission Set assigned to that user if has read permission to that object.
  • Check for any Record Type for the parent object, if yes, what is the record type for the particular parent record.
  • Check Page Layout Assignment in the parent object and which page is assigned to that parent record
  • Make sure in parent object Page Layout include child object as related list
If all checked and nothing wrong found, click Customize Page link in the parent object page layout when user login, make sure the child record is in Selected List. Sometimes user accidentally remove it and not remember. This is simple, but sometimes we just 'forget' as Salesforce is 'big'.


This page also accessible from User Name - My Settings - Display & Layout - Customize My Pages





Page-level ad