This is the first post in a series of Salesforce Lightning posts. New posts will be created as I navigate the SF Lightning Learning Curve.
What is Lightning?
Lightning is Salesforce’s new User Interface (UI) that replaces Salesforce classic. It’s a framework of client-side, Javascript components that let one build a responsive, modern interface. See Lightning FAQs for more details.
Gaps Between Lightning & Salesforce Classic
Salesforce has been hard at work for about 2 years now enhancing Lightning so that it has the features that Salesforce Classic has. However, there are still gaps between the two and Lightning is even able to do do things Salesforce Classic never could. Here’s a list of things that will likely impact you.
Disclaimer: This is not a complete list.
Regular User Gaps
- Lightning does not allow customizable dashboards.
- Lightning does not allow customizable home page components.
- Lightning doesn’t support Account teams, Account and Contact hierarchy, or person accounts.
- Lightning doesn’t support merging Accounts, Contacts, or Leads.
- Lightning doesn’t support Joined Reports, Details of Matrix Reports, Tables Funnel and Scatter chart types, and scheduling of report refreshes.
- For Listviews, Lightning doesn’t support resizable columns or Advanced filter logic. However, it does support charts and creating filters on the fly, which Classic does not support.
Admin Gaps
- Can’t apply custom branding, including custom logos or colors, to the new interface.
- Custom buttons that use a URL or Javascript content aren’t supported. Some of this functionality can be replaced with Process Builder, Visual Workflow, or custom code.
- Custom links with parameters for filling in form fields aren’t supported.
- You can’t define custom field-level help or add field-level help for fields in custom objects.
- Field sets aren’t available in Lightning Experience. If you or someone in your organization created a field set while using Salesforce Classic, you see the global variable for field sets in places such as formula fields and Visualforce pages, but you can’t manage them in Lightning.
- Apex Sharing Rules not available.
- Apex Sharing Recalculations not available.
Setup Gaps
The Lightning Setup experience doesn’t provide all the functionality that Classic does.
- An org’s edition information isn’t visible.
- Advanced currency management, or dated exchange rates, isn’t supported in general.
- Languages that are read right-to-left, including Arabic, and Hebrew, aren’t supported. All other locales and languages are supported.
- The Setup Tree is limited to Pages that support Lightning and Admin pages that apply across your org.
- Advanced setup search isn’t available.
- To access other setup pages, Classic setup must be used.
Programmatic Gaps
- Lightning Page tabs and custom Lightning Pages are currently available for the Salesforce1 mobile app only, and aren’t available in Lightning Experience.
- Visualforce – This release a beta version of Visualforce for Lightning Experience that is production quality but with known limitations. Here are some of the important ones:
- Visualforce is Wrapped in an IFrame in Lightning Experience.
- sforce.one No longer Used Only in Salesforce1.
- You can’t set window.location in Javascript.
- Lightning Experience App User Interface is always visible.
- Page Title can’t be set.
- Home Doesn’t Support Visualforce.
- Navigation Menu Doesn’t Support Visualforce.
Navigation Gaps
- Navigation Menu Replaces the Tab Bar.
- Apps and Custom Objects Available from the App Launcher Only
- Open links in New Browser Windows or Tabs generally supports except in the following areas:
- Links in the Top Deals and Recent Records cards on Home.
- Action icons, buttons, and menu items on records.
- Links To Notes.
- View Report links on Dashboards.
- Links on the Lightning Experience Setup page.
Action Gaps
These actions and buttons aren’t available in Lightning.
- Deep Clone.
- Mass Delete.
- Mass actions on home pages and list views.
- Data import tools on object home pages.
- Sharing buttons.
- Custom buttons that define the content source as URL or OnClick Javascript.
- Custom links with parameters for filling in form fields.
AppExchange Apps
Some apps on the AppExchange support Lightning. If an app is supported, a “Lightning Ready” sash appears on its AppExchange Listing. If an app isn’t supported, use Salesforce Class instead.
Packaging and ISVForce Gaps
- These packaging features aren’t supported in Lightning:
- Creating a package.
- Uploading a package.
- Upgrading a package.
- Deprecating a package.
- Creating a branch or patch organization.
- These ISVforce features aren’t supported in Lightning:
- Channel Order App
- Environment Hub
- Trialforce
- Usage Metrics Visualization App
Mitigation Strategies
- Continue using Salesforce Classic until Lightning is enhanced to have your desired features. Salesforce provides 3 major releases per year, roughly every 4 months, and each release usually has more Lightning features.
- Build your own Lightning Components to support the functionality desired. With Lightning being a framework that is customizable, you can build any desired functionality. Do your Cost-Benefit analysis to see if this is worthwhile. You could potentially sell your components on the Lightning AppExchange to offset your costs
- Lightning AppExchange. See if there are Lightning components on the Lightning AppExchange that will provide the desired functionality for you.