Pages

Tuesday, June 17, 2014

Salesforce: Change Picklist Value

Picklist field is very commonly used in Salesforce. User can easily select a value from picklist, while for admin, it give better data quality, because user cannot just anyhow type in picklist.

But one day, we may have requirement to change existing picklist value with a new one, maybe for Classification from Bug to Defect. Depends on the requirement, you may need to leave all existing data with old value or change existing value to new value.

There are 2 options if you need to change existing value:

1. Create and Replace with New Picklist Value
  • Click New button to add New values (some fields such as Opportunity Stage, you need to enter Stage Name, Type, Probability, and Forecast Category).
  • Click Replace button and type the exact value you want to change in 'Exact Value Changing From', and select replacement value created above.
  • For custom field and some standard field, you will see "Replace all blank values" checkbox to update picklist field without value with a value.
  • Once done, you can delete the old picklist value.
Note:
  • This is a global change and will replace the picklist value for all existing records, including records in the Recycle Bin. 
  • This will update the Modified By date and time for all records where the value was replaced.

2. Rename Picklist Value
Go to a picklist value and click Edit link, then type in the new value. But some picklist fields, example: Opportunity Stage, it will not allow editing of the name, so have to use option no. 1 above.

Note:
  • All existing records value will be updated with new values.
  • This will NOT update the Modified By date and time.

For both option above:
  • It will by pass any validation rules and triggers
  • It will not tracked in field history audit

If you need to keep the old values, here you go:
  1. Create new picklist value
  2. Hide the old value (if you have record type, or dependent picklist) or delete the value.

Extra: delete a value in picklist will not change existing values for the record with that value.


Reference:


Friday, June 13, 2014

Singapore's First Salesforce MVP

1st May 2014 marked a new milestone for my journey with Salesforce. I am honored to announce I am now a Salesforce MVP, and the first for Singapore.

I started my journey with salesforce.com as a developer with a consulting firm in September 2004. This means (in the next few months), I’ll be celebrating my 10th year within the salesforce.com community.

As time passes by, I’ve seen my career grow from being a developer to a consultant. Two years ago I joined a US MNC as a Business System Analyst based in Singapore, still within the salesforce.com community.

Why do I like Salesforce? As an admin or developer, I do not need to worry about maintaining servers, databases, backup and patches because everything is in the cloud. I can access Salesforce from anywhere, on any device through the Salesforce1 mobile app.

My passion and enthusiasm for salesforce.com products has increased my willingness to learn, grow and share with the community. Salesforce Answers Community is a place where I spend my free time. This is a place where members can ask questions about Salesforce. I stay active in the community and it helps me to learn more about Salesforce. I can learn more about the requirements, solutions and best practice of other members. If my organisation has similar requirements, I will already know a possible solution. Staying active in this community helps me to prepare to take Salesforce Certifications, right now I hold 3 active Salesforce/Force.com certifications.

Around early 2013, I attended a local Singapore Salesforce User Group, and it was great to meet up with people with the same passion. Since that very first meeting, I have not missed a single user group meeting. In mid-2013, I became a user group co-leader to run and grow the community, and now we have more than 300 members and it keeps growing.

To be selected as an MVP is a dream come true. It’s for anyone with the heart and passion to help each other - by writing blog posts,using social media, being active in the Success Community, andparticipating in local user groups. With my new status as MVP, I hope I can do more for my company and the Salesforce.com community.


Reference: http://sfdc.co/sg-mvp




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


Page-level ad