Salesforce Summer 16 – My favorite top 20 features

List of Salesforce Summer 16 features

Summer 16 is already in production and most of you already knows what’s there in pandora box. In this post, I will share my favorite 20 features of Summer 16 release.

Salesforce Summer 16
Salesforce Summer 16

1. Clone Sandbox (Pilot) : This feature is not yet generally available however worth mentioning. Till now, we could create Sandbox only from production, however Summer 16 gives us a way to create brand new sandbox from other existing sandbox instead of production.

2. New Trace Flags in Debug Log : Now we can add trace flags on Automated Process, User, Apex Trigger and Apex classes as well. Before this release, we could only add trace flag on user. This enhancement will give developers more control over what to display in debug log and overcome debug log size limit problems.

Salesforce Summer 16 new Debug logs

3. User Provisioning support in Apex Test class : Until now, it’s been a challenge to test and manage the user provisioning process. But that’s changed with the new test utility class for writing automated tests. Use the testConnectorUtil class to write automated tests that simulate user provisioning. Invoke the createConnectedApp method within an Apex test to create an instance of your connected app. For managing the provisioning process, Salesforce has extended the UserProvisioningRequest object to better handle provisioning failures.

4. Tooling API now supports Test Level : The Tooling API’s runTestsAsynchronous() SOAP call and /runTestsAsynchronous/ REST resource now take a testLevel parameter. Providing a TestLevel enum value of RunSpecifiedTests, RunLocalTests, or RunAllTestsInOrg lets you quickly and easily set up test runs. This parameter is required in the SOAP call, although its value can be null. For the REST resource, the new parameter is optional.

5. Asynchronous web service callout supported by Named credential : Named credentials are now supported in asynchronous web service callouts that use the Continuation class. Previously, named credentials were supported in web service callouts that ran asynchronously only via Queueable Apex, that is, by implementing the Queueable interface.

6. Skeleton Code for Global Apex Classes in Installed Managed Packages : You can now view skeleton code that includes the global constructors, methods, variables, and properties for global Apex classes in the managed packages you’ve installed in your org. Formerly, when you viewed these classes in Setup you saw their constructor and method signatures, but in other development environments you saw only (hidden). You can still see the constructor and method signatures in Setup.

7. Get a Map of Populated SObject Fields : A new method getPopulatedFieldsAsMap()  has been added on the Apex SObject class that makes it more efficient to iterate over fields that have been populated in memory. Previously, iterating over just the populated the fields of an SObject involved some complicated programming. For example, if you queried an SObject using SOQL, it wasn’t easy to tell which fields were returned.

8. Create Lightning Components with Configuration : Now we can create Lightning component with configuration from developer console. Example : before this release, we had to mention in our code that if Lightning component can be used in navigation by specifying force:appHostable interface.  There are few other interfaces as well, which we needed to remember.

Salesforce Summer 16 Lightning Component Configuration
Salesforce Summer 16 Lightning Component Configuration

9. Reference Static Resources with the $Resource Global Value Provider : Before this release we had to provide URL of static resource in <ltng:require> tag. From Summer 16, to reference a specific resource in component markup, use $Resource.resourceName within an expression. Include CSS style sheets or JavaScript libraries into a component using the <ltng:require> tag. To obtain a reference to a static resource in JavaScript code, use $A.get(‘$Resource.resourceName’).

10. Enhancements in existing Lightning Components : Below lightning Components have been modified to add extra features like support of native datepicker in mobile, using currency shortcuts like k,m,b or t in currency etc…

  • ui:inputCurrency
  • ui:inputDate
  • ui:inputDateTime
  • ui:inputNumber
  • ui:menuList
  • ui:menuTriggerLink
  • ui:outputRichText
  • ui:outputTextArea

11. Renaming : Lightning Connect is now known as Salesforce Connect. and Salesforce adapter is known as cross-org adapter.

12. Associate a contact with multiple Account (GA) : One Contact can be associated with multiple Accounts now.

13. Create a Calendar from any Object : This is one of my favorite feature. I remember one of my previous project where we had implemented this functionality using JQuery. It took almost two weeks to finish this development + ongoing bugs on code. note : This is available only in lightning experience.

14. Custom Home page as per profile : Now we can create a custom home pages and assign it on profile basis. This feature was delivered as per this Ideanote : This is available only in lightning experience.

15. Process Builder with multiple decision criteria : Read more about this feature in detail from here.

16. Lightning Voice : Use phone features without ever leaving Salesforce! Your sales reps can now make and receive calls, add call notes, and log their call information with ease. It just takes a single click from phone number fields in Lightning Experience, such as numbers on contacts, leads, and list views.

17. Use System instead of Automated Case user : This came exact at a time when I have story in current release of project. CSR’s are confused that why everywhere name of Jitenrda is appearing ? We were suppose to create a new user with System no reply name however my client is very happy that license cost of one user would be saved 🙂 . This feature in Summer 16 renames the Automated Case User to System so support agents can easily see when automated processes, such as case assignment rules, create a case or change the status of a case.

 18. Flow component for Lightning App builder : Salesforce has rolled out flow component for Lightning App builder. Now Flow can be added in any Lightning Page.

19. User switcher in LEX interface : How many of you are using extensions and plugins to store vast lists of Salesforce username and passwords ? Plugins like Lastpass are frequently used amongst admin and developers. Salesforce also offers product called Environment Hub, which can help to manage Salesforce username and passwords however it works on principal of hub and spoke model. In Summer 16, Salesforce has introduced User switcher.

User Switcher in Salesforce Summer 16
User Switcher in Salesforce Summer 16

With the user switcher, users can now easily navigate Salesforce when they have multiple usernames on the same or different Salesforce orgs. They select their profile picture to see a list of available usernames to navigate to. Users no longer have to open a new tab, enter a login URL, and then enter their username. Their browsers aren’t cluttered with several tabs, one for each Salesforce org. Now users can have a single tab for all Salesforce orgs. Note : this feature is available in Lightning Experience only.

20. New Fields on User Object to detect Identification methods : You can now see in a Users list view which verification methods users have registered for authentication. Depending on the field, you can make changes directly from the view, so you don’t have to visit each user’s detail page to perform these tasks.

User Identification Verification method Salesforce Summer 16User Identification Verification method Salesforce Summer 16
User Identification Verification method Salesforce Summer 16

Salesforce Summer 16 release document is huge with 400+ pages and I tried to keep it as short as possible. However, If you think your favorite feature didn’t make in this list and are very important, please comment on this post.

Related posts

  • Amit Kumar Giri

    very nice and structured. Really its not 100% possible to read 400+ pages of release note. so for me this is my summer 16 update 🙂