Summer ’16 Release Recap

Hello all!  Apologies for the long delay.  Hopefully you caught some of my guest blog posts I’ve put out there like this one on the Salesforce community or this one on the Salesforce Developer certifications.  I’ve also made a few podcast appearances, presented at a conference, and gotten a few more certs since previously posting 🙂

For those of you unaware, one of the awesome things about Salesforce is that they release MAJOR upgrades 3 times per year, filled with several hundred new features each time.  By major upgrade, I mean almost 400 pages of notes worth!  Lucky for you, I’ve gone through this special 50th ever set of release notes for you so you don’t have to and want to share my favorite new things that are coming!  (I do highly recommend the HTML version by the way so you can skip around to your favorite parts.)

Be advised, I didn’t actually go through 100% of it, (it was 400 pages!) but I was pretty close.  If I missed anything awesome though, feel free to talk about it in the comments!  Without further ado, here are my favorite new features.  If you want to know when these are coming to an org near, you, be sure to check out the calendar on the Trust website.

50logo

I’ve divided it into 3 sections:

  1. General Admin Functionality that all #AwesomeAdmins can take advantage of either in Salesforce Classic or Lightning Experience
  2. Lightning Experience specific functionality that will help with your argument to make the switch.  These are available in Lightning Experience only
  3. Developer features that will come in very handy for anyone doing some coding

GENERAL ADMIN FUNCTIONALITY

Remove a Picklist Field Value from Records

Have you ever wanted to cleanse your data from an old picklist value? Now you can replace an old value with another value or a blank value!

Replace a value with an empty field

Change a Record’s Owner from Salesforce1

Now you can reassign records right from your cell phone or other device!

The Change Owner action and Change Owner dialogue in Salesforce1

Processes Can Execute Actions on More Than One Criteria

Now you can execute actions and then continue down your decision tree to check more criteria to potentially take more actions!

Stop or Continue process

Save Time by Cloning Sandboxes

Have you ever been in the middle of rolling out a feature or project and then had to start creating something brand new and been bummed the only way to get a fresh environment was to start with the current production environment? Or even just wanted to freeze development in one sandbox while not freezing development altogether? Now you can by cloning your sandbox!

Automatically Get Geocodes for Addresses

Now every time you enter a standard address value, the Latitude and Longitude fields will populate with accurate data allowing you to query by distance!

  • Billing Address on Accounts
  • Shipping Address on Accounts
  • Mailing Address on Contacts
  • Address on Leads

Associate a Contact with Multiple Accounts

Ever have a contact who worked at one company but helped out with another in some capacity? While contacts will still have a primary account (direct relationship), you can now add multiple additional account relationships (indirect) to contacts.

Directly and indirectly related accounts on a contact record

Copy and Paste Text on Record Detail Pages on Salesforce1

Also a big boon to avoid having to retype things on a mobile device, you can now take advantage of the native iOS and Android copy/paste functionality to quickly make changes to your records

Share Notes with Other Users or Groups

Ever taken some notes in Salesforce that you wanted to share with others? Now you can and rest assured that while others can see your notes, only you an edit them and choose whether or not your colleagues can re-share them

Use SOQL to Identify Reports Used by Dashboard Components

Ever try to delete a report only to be told that you can’t because it’s being used by a dashboard? No more!

SELECT Id, DashboardId, CustomReportId FROM DashboardComponent USING SCOPE allPrivate WHERE CustomReportId = 00OR0000000PBZZMA4

Use Enhanced Email to Drive Business Processes

Email becomes its own object now and allows you to relate it to your other Salesforce records.  You can also modify fields, workflows, triggers, page layouts, etc on the new Email object.

Bonus: Create and Edit Records While Offline Using Salesforce1 for Android

Available just for Android and only in pilot mode for now, I’m very excited for the future of this feature!

LIGHTNING EXPERIENCE FEATURES

Customize Home for Different User Profiles

Now you can create multiple home pages in Lightning Experience for your users and assign them to specific profiles.  Think of it as a home page layout!

Create and Edit Lightning Experience Record Pages

While not 100% there, you are now able to customize the detail pages for many standard objects in the Lightning Experience similar to what you’re used to doing in Salesforce Classic

Override a View Action with Both a Visualforce Page and a Lightning Page

Did you have an action with a Visualforce override that doesn’t look great in Lightning so you’re thinking about not rolling it out to your pilot group yet? Have no fear! Now you can leave the Visualforce page active in Salesforce Classic, while your Lightning Experience users will see your snazzy new Lightning Page instead when they use that same action

Edit Objects Directly from the Setup Menu in Lightning Experience

Quite possibly my favorite feature in this release, now instead of having to navigate through Setup to make a change on an object, you can do it from the top navigation bar right from any of that object’s records!!!  Hooray for less clicks!

Edit Object in Setup

Simplify Salesforce Navigation with the User Switcher

The other contender for my favorite feature in this release, now you can finally sign into multiple orgs at once and switch back and forth!  I’m very jealous of Madison right now.

user switcher

DEVELOPMENT FEATURES

Increased Cross-Namespace Limits

Might just be a pet-peeve of mine since I recently hit this limit in my production org, but now I don’t have to worry as much about installing so many managed packages anymore that each run their own set of triggers!

View Skeleton Code for Global Apex Classes in Installed Managed Packages

Another boost for orgs that work with a lot of AppExchange managed packages, now you can better see an outline of what the code from those apps is doing to either work around it, or better integrate it into your own code.

/*
This file is generated and isn't the actual source code for this
managed global class.
This read-only file shows the class's global constructors,
methods, variables, and properties.
To enable code to compile, all methods return null.
*/
global class MyClass {
    global Decimal myDec;
    global String myString {
        get;
        set;
    }
    global MyClass() {
    }
    global Integer myMethod(Integer arg1) {
        return null;
    }
}

Get a Map of Populated SObject Fields

I can see a ton of great use cases for this one! Now when looking a particular record, I can do quick checks to see which fields are populated rather than doing a bunch of complicated logic.  I can also just look at the populated fields on my record rather than trying to parse through all the blank ones or try to figure it out on my own.

Debug Lightning Components with the Salesforce Lightning Inspector

If you’re like me and constantly have the Chrome Dev Tools open any time you work with Javascript, then you’re probably gonna love that Salesforce created its own version for when you’re building Lightning Components!  (You may also be like me and just need another excuse to start building some Lightning Components)

Performance tab

That’s it for my favorite Summer ’16 features.  Stay tuned for what I assume should be a pretty cool Summer ’16 Trailhead module coming up and don’t forget to grab your Spring ’16 badge before it gets retired next month!  Don’t forget to add yourself to the Trailhead leaderboard either 🙂

Leave a comment

Blog at WordPress.com.

Up ↑