London Developer
Trailblazers
#LonDevSFDC
January 2022
Spring ‘22 Release
What’s coming up?
Doors open, and some chat
Spring ‘22 Highlights
More chat and networking
Thanks to our sponsors
Community News
Spring ‘22
● Currently in sandboxes
● Prod from Feb 5th
London’s Calling CFP is Open
● Closes 13th February 2022
● londonscalling.net/cfp
TrailblazerDX
● In-person (San Francisco)
● April 27th / 28th
● salesforce.com/form/event/tdx22-save-the-date
February DUG
● Hopefully back in-person
See our Twitter + Success group for links
@LonDevSFDC
Idea Exchange Prioritisation
● Closes 17th February 2022
● sforce.co/340derf
Spring ‘22 Release
Keir
@bob_buzzard
Lightning Web Security
Lightning Web Security
● Generally Available in Spring ‘22
● Replaces Locker Service for Lightning Web Components
● Standards Based
● “Most existing Lightning web components just work”
● Virtualises the browser environment
● On or off for the whole org
Lightning Web Security
Lightning Web Security
● Distortion rather than secure wrappers - more performant
● Alter code in sandbox
○ Filter content - restrict access to the current sandboxes cookies, local storage
○ Sanitisation - strip out malicious code
○ Restrict access to properties
● Cross namespace supported
● Not immediately enabled
○ Rolling basis once release goes live
○ Only orgs with custom Lightning Web Components
○ Orgs will be notified
Orchestrator
Orchestrator
● Generally Available in Spring ‘22
● Complex process automation
● Automate a record throughout its lifecycle
● Start and stop automation based on criteria
Orchestrator - Built on Flows
● Automation applied in Stages
○ Stage contains one or more flows (Steps)
○ Run in parallel or serial
● Entry/Exit Evaluation Flows
○ Sophisticated logic provided through flows
○ Exit stage or enter/exit a step
○ Set isOrchestrationConditionMet variable true when criteria are met
● Assign interactive steps to Groups/Queues
○ Everyone gets notified
○ First to complete the flow wins!
Orchestrator
● Trigger from custom code
○ Apex or API
○ Same mechanism as launching a flow
● View assigned work in record detail pages
○ Add Orchestrator Work Guide lightning web component
○ Orchestrator email notifications include links to record detail pages
○ Complete the work in the page
● Monitoring and debugging tools
○ View status
○ Cancel in-flight
○ Debug in-progress (sandbox!)
○ Debug failed
Flow
Flow Builder
● Auto-layout GA in Spring 22
● Filter collection component
● Monitoring and debugging tools
○ View status
○ Cancel in-flight
○ Debug in-progress (sandbox!)
○ Debug failed
Demo
Flow Trigger Explorer
Record Triggered Flow Ordering
● 1 - 2000, ascending
○ Collisions run in API name order
● 1 - 1000 run first
● Then those with no value
○ Created date order
● 1001 - 2000 next
● Scoped to record triggered flow type (before save, after save)
● Best practice is leave gaps (remember Basic programming!)
UTAM
● UI Test Automation Model
● Describe pages as JSON Page Objects
○ Just the parts you want to test
○ Update when UI changes
● Test against the page object
● JavaScript or Java
● Cross Shadow boundary
UTAM
UTAM - HTML
UTAM - Page JSON
UTAM - Test
UTAM
● utam.dev
○ Tutorials
○ Guides
○ Playground
● github.com/salesforce/utam-js-recipes
○ Salesforce UI Samples
○ Spring 22 UI
LWR on Node
Lightning Web Runtime on Node
● Developer Preview
● LWR powers Experience Cloud
○ Fully managed by Salesforce
● LWR on Node
○ Lightning Components and Salesforce platform
○ Entirely under your control
○ Local Node, Heroku or elsewhere
● Guide - sforce.co/3FYIFzq
○ Getting Started
○ Templates
○ Routing
○ Working with LWC
● Trailblazer Community Topic - sforce.co/35nYljh
Lightning Web Runtime on Node
ApexTypeImplementor
● Beta feature
● Find classes implementing an interface
○ Including subclasses
● Only compiled classes
○ Is Valid = true
ApexTypeImplementor
ApexTypeImplementor
bobbuzz.me.uk/Spring22Apex
Questions?
QUIZ TIME
London Salesforce Developer January 2022

London Salesforce Developer January 2022

  • 1.
  • 2.
    What’s coming up? Doorsopen, and some chat Spring ‘22 Highlights More chat and networking
  • 3.
    Thanks to oursponsors
  • 4.
    Community News Spring ‘22 ●Currently in sandboxes ● Prod from Feb 5th London’s Calling CFP is Open ● Closes 13th February 2022 ● londonscalling.net/cfp TrailblazerDX ● In-person (San Francisco) ● April 27th / 28th ● salesforce.com/form/event/tdx22-save-the-date February DUG ● Hopefully back in-person See our Twitter + Success group for links @LonDevSFDC Idea Exchange Prioritisation ● Closes 17th February 2022 ● sforce.co/340derf
  • 5.
  • 6.
  • 7.
    Lightning Web Security ●Generally Available in Spring ‘22 ● Replaces Locker Service for Lightning Web Components ● Standards Based ● “Most existing Lightning web components just work” ● Virtualises the browser environment ● On or off for the whole org
  • 8.
  • 9.
    Lightning Web Security ●Distortion rather than secure wrappers - more performant ● Alter code in sandbox ○ Filter content - restrict access to the current sandboxes cookies, local storage ○ Sanitisation - strip out malicious code ○ Restrict access to properties ● Cross namespace supported ● Not immediately enabled ○ Rolling basis once release goes live ○ Only orgs with custom Lightning Web Components ○ Orgs will be notified
  • 10.
  • 11.
    Orchestrator ● Generally Availablein Spring ‘22 ● Complex process automation ● Automate a record throughout its lifecycle ● Start and stop automation based on criteria
  • 12.
    Orchestrator - Builton Flows ● Automation applied in Stages ○ Stage contains one or more flows (Steps) ○ Run in parallel or serial ● Entry/Exit Evaluation Flows ○ Sophisticated logic provided through flows ○ Exit stage or enter/exit a step ○ Set isOrchestrationConditionMet variable true when criteria are met ● Assign interactive steps to Groups/Queues ○ Everyone gets notified ○ First to complete the flow wins!
  • 13.
    Orchestrator ● Trigger fromcustom code ○ Apex or API ○ Same mechanism as launching a flow ● View assigned work in record detail pages ○ Add Orchestrator Work Guide lightning web component ○ Orchestrator email notifications include links to record detail pages ○ Complete the work in the page ● Monitoring and debugging tools ○ View status ○ Cancel in-flight ○ Debug in-progress (sandbox!) ○ Debug failed
  • 14.
  • 15.
    Flow Builder ● Auto-layoutGA in Spring 22 ● Filter collection component ● Monitoring and debugging tools ○ View status ○ Cancel in-flight ○ Debug in-progress (sandbox!) ○ Debug failed
  • 16.
  • 17.
    Record Triggered FlowOrdering ● 1 - 2000, ascending ○ Collisions run in API name order ● 1 - 1000 run first ● Then those with no value ○ Created date order ● 1001 - 2000 next ● Scoped to record triggered flow type (before save, after save) ● Best practice is leave gaps (remember Basic programming!)
  • 18.
  • 19.
    ● UI TestAutomation Model ● Describe pages as JSON Page Objects ○ Just the parts you want to test ○ Update when UI changes ● Test against the page object ● JavaScript or Java ● Cross Shadow boundary UTAM
  • 20.
  • 21.
  • 22.
  • 23.
    UTAM ● utam.dev ○ Tutorials ○Guides ○ Playground ● github.com/salesforce/utam-js-recipes ○ Salesforce UI Samples ○ Spring 22 UI
  • 24.
  • 25.
    Lightning Web Runtimeon Node ● Developer Preview ● LWR powers Experience Cloud ○ Fully managed by Salesforce ● LWR on Node ○ Lightning Components and Salesforce platform ○ Entirely under your control ○ Local Node, Heroku or elsewhere
  • 26.
    ● Guide -sforce.co/3FYIFzq ○ Getting Started ○ Templates ○ Routing ○ Working with LWC ● Trailblazer Community Topic - sforce.co/35nYljh Lightning Web Runtime on Node
  • 27.
  • 28.
    ● Beta feature ●Find classes implementing an interface ○ Including subclasses ● Only compiled classes ○ Is Valid = true ApexTypeImplementor
  • 29.
  • 30.
  • 31.