Salesforce Release Webinar
Spring 23 Highlights
Keir Bowden, CTO
@bob_buzzard
www.linkedin.com/in/keirbowden
● Summer 22 Release
○ Fond Farewells
○ General
○ Analytics
○ Customization
○ Development
○ Experiences
○ Sales
○ Service
○ Beta
● Questions
Agenda
Fond Farewells
Davy Jones’ Locker
Async SOQL
• Spring '23
• Use Bulk API/Batch Apex
API Versions 21-30
• Currently deprecated
• Removed Summer '23
• Will error!
Davy Jones’ Locker
Salesforce Mobile App Community License Access
• Summer '23
• Purchase platform subscription
Salesforce for Outlook
• June '24
• Use Outlook Integration/Einstein Activity Capture
Permissions on profiles
• Spring '26
• sforce.co/3HiqBnO
General
Browsers
Edge
Chromium
Chrome Firefox Safari
Lighting Experience
(Desktop)
Lightning Experience
(iPadOS)
Experience Builder
Sites
Classic
Classic Console
MFA Automatically Enabled
MFA required for direct logins
• "In phases throughout 2023"
• "Eventually we'll enforce MFA"
Required, but not checked, for Single Sign-On
Analytics
Personalized Report Filters
Report on Analytics Subscriptions
Subscriptions
• Lightning report/dashboards + collections
• CRM Analytics Lenses
• Dashboards in Slack
Notification conditions
• CRM Analytics dashboard widgets
• Einstein Discovery model quality alerts
Analytics Other
Subscription limits increased
• 15 reports
• 15 dashboards
• Previously 7
Lightning report builder has feature parity with Classic
• Edit in Classic button removed from lightning report actions
Enhanced Reports on mobile GA
Filter report types by objects/fields GA
• Up to 4 objects or 20 fields
Analytics Other Other
Report/Dashboard collections
• Group reports/dashboards from different folders
• Enable unified experience for analytics home
Customization
Picklists
Clean Inactive Picklist Values GA
• Bulk delete inactive values
• Custom picklists with pre-defined values only
Bulk Manage Picklist Values GA
• Delete, activate, deactivate, replace in bulk
• Previously one at a time
• Custom picklists with pre-defined values only
Inclusivity
Pronouns and Gender Identity Fields
• Optional for Lead, Contact, Person Account
• Default (vetted) value sets
• Add your own picklist values
Add to page layouts to use
Consider privacy implications
Lightning App Builder
Dynamic forms:
• Supported in Case and Lead record pages
Dynamic actions for standard objects GA
• All standard objects – desktop only
• Custom objects – desktop and mobile
Customise desktop forecast pages
Sharing
Enhanced PII Management release update
• Stop external users accessing other users' PII data – and their own!
• Field set defines PII – admin modifiable
View full record sharing details
Development
Access element via reference
• HTML
<template>
<div lwc:ref="userInfo">
...
</div>
</template>
• JavaScript
let userInfoEle=this.refs.userInfo;
Lightning Components
New conditional directives
• lwc:if
• lwc:else
• lwc:elseif
Use in preference to if:true, if:false
• More performant
• Old versions will be deprecated and removed in future
Lightning Components
lwc:elseif and lwc:else must be immediately preceded by lwc:if or lwc:elseif
<template lwc:if={sayHello}>
Hello!
</template>
<template lwc:elseif={sayGoodbye}>
Goodbye!
</template>
<template lwc:else>
Nothing to say!
</template>
Lightning Components
User mode database operations GA
• Respect field level security and object permissions of current user
• Apply sharing rules
SOQL WITH clause
• List<Contact> contacts=[SELECT Id, FirstName, LastName from Contact WITH USER_MODE];
DML
• Contact ctct=new Contact(FirstName='Keir', LastName='Bowden');
insert as user ctct;
Apex
Specify delay when enqueueing job
• System.enqueueJob(new CheckForResults(), 5);
• Delays job execution by 5 minutes
• 0-10 minutes
Configure org-wide default delay when enqueueing jobs
• Setup -> Apex Settings
• 1-600 seconds
• Doesn't override delay parameter on enqueueJob
Apex
ApexTypeImplementor GA
• Identify which classes implement an interface
• bobbuzz.me.uk/Spring22Apex
SOQL Query with Bind Variable Map
Map acctBinds = new Map{'acctName' => 'Acme Corporation'};
List accts =
Database.queryWithBinds('SELECT Id FROM Account WHERE Name = :acctName',
acctBinds, AccessLevel.USER_MODE);
Apex
DevOps Center GA
Declarative deployment without change sets
Organise and track changes with Work Items
• Supports automation
Automatic change tracking
• Select changes to include in Work Items
Integration with Github
Deploy through clicks
• Collaborate with devs working directly in Github
Install Managed Package
sforce.co/3eg1DKa
See element descriptions on canvas
Improved flow element menu
Flow Builder
Select multiple records from a table GA
2000 element limit removed
• Other limits still apply
Flow Runtime
Experiences
Use <script> tag to add structured data
• bit.ly/3vEeU4i
Contact Support Form component available for LWR
Add alt text for images in rich content editor component
Next and previous buttons for grid component
Margin field for standard and custom components
Padding field for custom and some standard components
LWC/Aura Sites
Exceed person account ownership limit
• Create PersonAccountOwnerPowerUser via the API
• Associated with user id
• User must be top level of hierarchy
Micro-batching
• Error notifications when errors occur
• Add Apex tests for programmatic record creation
Performance
Sales
Customize page using Lightning App Builder
Forecast using custom date fields
• Previously Close Date, Product Date or Schedule Date
Collaborative Forecasting
Collaborative Forecasting Design Updates
Service
Enhanced reporting
• Swarm's related records
• Swarm member's work/skills
Required skills for swarm members
Swarming
Require all skills when filtering work items or agents
Notify agents with browser alerts
• Agent must enable
Supervisors can reassign agents to queues
Deploy Supervisor configurations
• Change sets or packages
Routing
Knowledge
Knowledge Dashboard Pack for CRM Analytics
• All Service Cloud users - View
• CRM Analytics license to Edit
• Install from AppExchange
• Includes draft articles
Change or add record types for translated articles
Cases
Lightning threading in Email-to-case
• Match on token and header-based threading
• Setup -> Email-to-Case -> Settings
Log a call from activities component
Beta
Configure Search Fields by Profile
Enable via Setup -> Einstein Search -> Search Manager
Lightning Web Security
Beta for Aura components
• Lightning Experience
• Experience Cloud sites
• Setup -> Session Settings -> Lightning Web Security
Test in sandbox!
Evaluate JavaScript in Lightning Web Security Console
RefreshView API
Refresh component data without a reload
• Aura and LWC
• Salesforce platform and custom components
Replaces force:refreshView in Aura
Flexible control of refresh scopes
Field Level Security in Permission Sets
Enable via Setup -> User Management
Enabled Disabled
Lightning Web Runtime Sites
Actions Bar Component
• Custom set of actions for object detail pages
Notifications Component
• Customizable, single place to catch up on notifications
Record Detail Component
• View and edit records
• Inherits formatting from site branding
Flow Reactive Components
Components react to changes to other components
• On the same screen!
Custom LWC and "supported components"
Opt-in:
• Setup -> Process Automation Settings -> Opt in to Reactive Screens Beta
Chatter Group:
• sforce.co/3kpc5S4
Flow Choice Lookup Component
Select from a list of values
• Search rather than scrolling
Supports all choice resources
Other – contact support to enable
Enhance Lightning Dashboards with Text and Graphics
Increase Lightning Dashboard filters
• 3 to 5
Recalculate Account Sharing Rules faster
• Virtual implicit case shares
• Grants view/edit to account owners/shared with for records owned by high volume site users
That’s all folks
Release Readiness
sforce.co/3Hbp03j
Release in a Box
• Release Notes
• Demo videos
Trailhead badge - sforce.co/3QN2wJ8
Questions?

Salesforce Spring 23 Webinar

  • 1.
    Salesforce Release Webinar Spring23 Highlights Keir Bowden, CTO @bob_buzzard www.linkedin.com/in/keirbowden
  • 2.
    ● Summer 22Release ○ Fond Farewells ○ General ○ Analytics ○ Customization ○ Development ○ Experiences ○ Sales ○ Service ○ Beta ● Questions Agenda
  • 3.
  • 4.
    Davy Jones’ Locker AsyncSOQL • Spring '23 • Use Bulk API/Batch Apex API Versions 21-30 • Currently deprecated • Removed Summer '23 • Will error!
  • 5.
    Davy Jones’ Locker SalesforceMobile App Community License Access • Summer '23 • Purchase platform subscription Salesforce for Outlook • June '24 • Use Outlook Integration/Einstein Activity Capture Permissions on profiles • Spring '26 • sforce.co/3HiqBnO
  • 6.
  • 7.
    Browsers Edge Chromium Chrome Firefox Safari LightingExperience (Desktop) Lightning Experience (iPadOS) Experience Builder Sites Classic Classic Console
  • 8.
    MFA Automatically Enabled MFArequired for direct logins • "In phases throughout 2023" • "Eventually we'll enforce MFA" Required, but not checked, for Single Sign-On
  • 9.
  • 10.
  • 11.
    Report on AnalyticsSubscriptions Subscriptions • Lightning report/dashboards + collections • CRM Analytics Lenses • Dashboards in Slack Notification conditions • CRM Analytics dashboard widgets • Einstein Discovery model quality alerts
  • 12.
    Analytics Other Subscription limitsincreased • 15 reports • 15 dashboards • Previously 7 Lightning report builder has feature parity with Classic • Edit in Classic button removed from lightning report actions Enhanced Reports on mobile GA Filter report types by objects/fields GA • Up to 4 objects or 20 fields
  • 13.
    Analytics Other Other Report/Dashboardcollections • Group reports/dashboards from different folders • Enable unified experience for analytics home
  • 14.
  • 15.
    Picklists Clean Inactive PicklistValues GA • Bulk delete inactive values • Custom picklists with pre-defined values only Bulk Manage Picklist Values GA • Delete, activate, deactivate, replace in bulk • Previously one at a time • Custom picklists with pre-defined values only
  • 16.
    Inclusivity Pronouns and GenderIdentity Fields • Optional for Lead, Contact, Person Account • Default (vetted) value sets • Add your own picklist values Add to page layouts to use Consider privacy implications
  • 17.
    Lightning App Builder Dynamicforms: • Supported in Case and Lead record pages Dynamic actions for standard objects GA • All standard objects – desktop only • Custom objects – desktop and mobile Customise desktop forecast pages
  • 18.
    Sharing Enhanced PII Managementrelease update • Stop external users accessing other users' PII data – and their own! • Field set defines PII – admin modifiable View full record sharing details
  • 19.
  • 20.
    Access element viareference • HTML <template> <div lwc:ref="userInfo"> ... </div> </template> • JavaScript let userInfoEle=this.refs.userInfo; Lightning Components
  • 21.
    New conditional directives •lwc:if • lwc:else • lwc:elseif Use in preference to if:true, if:false • More performant • Old versions will be deprecated and removed in future Lightning Components
  • 22.
    lwc:elseif and lwc:elsemust be immediately preceded by lwc:if or lwc:elseif <template lwc:if={sayHello}> Hello! </template> <template lwc:elseif={sayGoodbye}> Goodbye! </template> <template lwc:else> Nothing to say! </template> Lightning Components
  • 23.
    User mode databaseoperations GA • Respect field level security and object permissions of current user • Apply sharing rules SOQL WITH clause • List<Contact> contacts=[SELECT Id, FirstName, LastName from Contact WITH USER_MODE]; DML • Contact ctct=new Contact(FirstName='Keir', LastName='Bowden'); insert as user ctct; Apex
  • 24.
    Specify delay whenenqueueing job • System.enqueueJob(new CheckForResults(), 5); • Delays job execution by 5 minutes • 0-10 minutes Configure org-wide default delay when enqueueing jobs • Setup -> Apex Settings • 1-600 seconds • Doesn't override delay parameter on enqueueJob Apex
  • 25.
    ApexTypeImplementor GA • Identifywhich classes implement an interface • bobbuzz.me.uk/Spring22Apex SOQL Query with Bind Variable Map Map acctBinds = new Map{'acctName' => 'Acme Corporation'}; List accts = Database.queryWithBinds('SELECT Id FROM Account WHERE Name = :acctName', acctBinds, AccessLevel.USER_MODE); Apex
  • 26.
    DevOps Center GA Declarativedeployment without change sets Organise and track changes with Work Items • Supports automation Automatic change tracking • Select changes to include in Work Items Integration with Github Deploy through clicks • Collaborate with devs working directly in Github Install Managed Package sforce.co/3eg1DKa
  • 27.
    See element descriptionson canvas Improved flow element menu Flow Builder
  • 28.
    Select multiple recordsfrom a table GA 2000 element limit removed • Other limits still apply Flow Runtime
  • 29.
  • 30.
    Use <script> tagto add structured data • bit.ly/3vEeU4i Contact Support Form component available for LWR Add alt text for images in rich content editor component Next and previous buttons for grid component Margin field for standard and custom components Padding field for custom and some standard components LWC/Aura Sites
  • 31.
    Exceed person accountownership limit • Create PersonAccountOwnerPowerUser via the API • Associated with user id • User must be top level of hierarchy Micro-batching • Error notifications when errors occur • Add Apex tests for programmatic record creation Performance
  • 32.
  • 33.
    Customize page usingLightning App Builder Forecast using custom date fields • Previously Close Date, Product Date or Schedule Date Collaborative Forecasting
  • 34.
  • 35.
  • 36.
    Enhanced reporting • Swarm'srelated records • Swarm member's work/skills Required skills for swarm members Swarming
  • 37.
    Require all skillswhen filtering work items or agents Notify agents with browser alerts • Agent must enable Supervisors can reassign agents to queues Deploy Supervisor configurations • Change sets or packages Routing
  • 38.
    Knowledge Knowledge Dashboard Packfor CRM Analytics • All Service Cloud users - View • CRM Analytics license to Edit • Install from AppExchange • Includes draft articles Change or add record types for translated articles
  • 39.
    Cases Lightning threading inEmail-to-case • Match on token and header-based threading • Setup -> Email-to-Case -> Settings Log a call from activities component
  • 40.
  • 41.
    Configure Search Fieldsby Profile Enable via Setup -> Einstein Search -> Search Manager
  • 42.
    Lightning Web Security Betafor Aura components • Lightning Experience • Experience Cloud sites • Setup -> Session Settings -> Lightning Web Security Test in sandbox! Evaluate JavaScript in Lightning Web Security Console
  • 43.
    RefreshView API Refresh componentdata without a reload • Aura and LWC • Salesforce platform and custom components Replaces force:refreshView in Aura Flexible control of refresh scopes
  • 44.
    Field Level Securityin Permission Sets Enable via Setup -> User Management Enabled Disabled
  • 45.
    Lightning Web RuntimeSites Actions Bar Component • Custom set of actions for object detail pages Notifications Component • Customizable, single place to catch up on notifications Record Detail Component • View and edit records • Inherits formatting from site branding
  • 46.
    Flow Reactive Components Componentsreact to changes to other components • On the same screen! Custom LWC and "supported components" Opt-in: • Setup -> Process Automation Settings -> Opt in to Reactive Screens Beta Chatter Group: • sforce.co/3kpc5S4
  • 47.
    Flow Choice LookupComponent Select from a list of values • Search rather than scrolling Supports all choice resources
  • 48.
    Other – contactsupport to enable Enhance Lightning Dashboards with Text and Graphics Increase Lightning Dashboard filters • 3 to 5 Recalculate Account Sharing Rules faster • Virtual implicit case shares • Grants view/edit to account owners/shared with for records owned by high volume site users
  • 49.
  • 50.
    Release Readiness sforce.co/3Hbp03j Release ina Box • Release Notes • Demo videos Trailhead badge - sforce.co/3QN2wJ8
  • 51.