Posts

Joined the Salesforce B2B Commerce Cloud Partner Advisory Board.

Image
I am happy to join the Salesforce B2B Commerce Cloud Partner Advisory Board. As a member of this board, I will have the opportunity to discuss B2B Commerce Cloud product features, industry vision, and the future of the partner program with Salesforce executives. This advisory board will provide a forum for partners to share information and insights with Salesforce regarding trends and uncover opportunities in the Commerce Cloud market. This board's contributions will help keep the programs and products we offer to our customers relevant and align with Salesforce's core values of trust, customer success, innovation, equality, and sustainability. Salesforce B2B Commerce Cloud Partner Advisory Board. Had a great time at the New York Salesforce Commerce Partner Advisory Board meeting. I enjoyed one-on-one meetings with the Salesforce team, sharing field experience and feedback, and being at the top of my mind. Grateful for the opportunity to collaborate with industry leaders and ex...

Use of Null Coalescing Operator

Image
Null Coalescing Operator The new null coalescing operator (??) simplifies code with verbose null checks.  For example - Old Ways -  Example 1 -  Integer anInteger; // Assume this is passed as parameter and can be NULL  Integer notNullReturnValue; if (anInteger != null){   notNullReturnValue = anInteger; } else {   notNullReturnValue = 100; } Example 2 -  Integer notNullReturnValue = (anInteger != null) ? anInteger : 100; New Way (Null Coalescing Operator) - Integer anInteger; // Assume this is passed as parameter and can be NULL  Integer notNullReturnValue = anInteger ?? 100; Note : nullish coalescing operator (??) is also part of modern JavaScript APIs. You can also use them in your Lightning Web Components (LWCs) to simplify null checks. When using the null coalescing operator, always remember operator precedence. In some cases, using parentheses is necessary to obtain the desired results. For example, the expression top ?? 100 - bottom ?? 0 e...

Salesforce Lightning Design Systems

Salesforce Lightning Design Systems Lightning Design System  Salesforce Lightning Design System (SLDS) is a set of tools and guidelines provided by Salesforce for building user interfaces consistent with the Salesforce Lightning Experience. Benefits include efficiency, scalability, interoperability with the larger Salesforce ecosystem, and consistent design. Let’s just make sure we follow Salesforce Lightning Design Guidelines, Principles, and Best Practice  Here are a few links - Salesforce Figma UI Kit (Unleash the power of the SLDS UI Kit in Figma.) - Salesforce (@salesforce) on Figma Community   Lightning Web Components (View web component JavaScript, HTML, and CSS code, then preview the output.) - Components - Salesforce Lightning Component Library   Design System Starter Kit (Run prototypes of all sizes in the browser using SLDS.) - GitHub - salesforce-ux/design-system-starter-kit: Rapid prototyping environment using the Salesforce Lightning Design System...

Nebula Logger for Salesforce

Nebula Logger for Salesforce is a logging and monitoring solution specifically designed for Salesforce applications. It provides developers and administrators with enhanced visibility into the behavior, performance, and usage of Salesforce components and processes.  Nebula Logger is built natively on Salesforce, using Apex, lightning components, and various types of objects. There are no required external dependencies Unleash the Power of Advanced Logging with Nebula Logger | Dreamforce 2023 Why Nebula Logger Unleash the power of Advanced Logging Nebula Logger is an open-source framework developed by Jonathan Gillespie. It allows for considerably more robust debugging & error logging. It offers a neat solution to gather all the scattered data into one organised space. Helps link batch job logs together, aura and LWC logs together, and retain your debug logs for longer. Out-of-the-Box Salesforce Debugger Limitations Only Apex can directly add debug statements - in Flow and ...

Find Case ThreadId using Apex and Formulas

Ensure that an email sent to your customer support email is attached to an existing case using Thread ID. Formula - "ref:_" & LEFT($Organization.Id,5) & RIGHT($Organization.Id,5) & "._" & LEFT(Id,5) & SUBSTITUTE(Left(RIGHT(Id,10), 5), "0", "") & RIGHT(Id,5) & ":ref" Apex -  ref:_'+ UserInfo.getOrganizationId().left(5) + UserInfo.getOrganizationId().mid(11,4) + '._'+ caseId.left(5)+ caseId.mid(10,5) + ':ref ]'; The actual extraction of the thread ID is looking for anything in between "ref:" and ":ref" Example of a thread id: ref:_00D30oKPx._50030bwIii:ref Note: If multiple thread IDs are included in the header or the body of the email sent, the email will attach to the Case that is represented by the first thread ID in the string: Example  [ ref:_00D30oKPx._50030bwIii:ref ] [ ref:_00D30oKPx._50030bMuaN:ref ]  the email will attach to the case represented by ref:_00D30oKP...

Salesforce Well-Architected Framework

Image
The Salesforce Well-Architected Framework is a set of guidelines for building secure and scalable solutions on the Salesforce platform that meet business requirements and industry standards.  Salesforce Well-Architected provides guidance and examples for building trustworthy, user-friendly, and flexible solutions on the Salesforce Customer 360 Platform. It offers insights from product teams and implementation experts to help you identify areas for improvement in your landscape. Salesforce Well-Architected Framework Salesforce Well-Architected has two levels of organizing information. The top level includes well-architected solutions that should be Trusted, Easy, and Adaptable. The second level provides more detailed considerations, patterns to follow (or anti-patterns to avoid), and prescriptive guidance for specific aspects of those solutions. Aligning your designs with this framework's guidance ensures higher quality and longevity for your Salesforce Customer 360 applications.

Lightning Record Picker Component in Salesforce

Image
The lightning-record-picker is a Salesforce Lightning Web Component that allows users to search and select a record from a specified object. It provides a user-friendly interface for selecting records and can be used in various contexts within Salesforce Lightning Experience. The lightning-record-picker component can be used in a Salesforce application to allow users on desktop or mobile devices to quickly find and select Salesforce records. The component's behavior and presentation can be configured, and filtering can enable users to retrieve and display records that meet specific criteria. This feature is generally available and includes changes since the last release. Previously, the component allowed for a maximum of 50 records, but now you can retrieve up to 100. Additionally, the component displays clear error messages when configuring invalid specifications and supports new attributes. To enable offline use, this component uses the GraphQL wire adapter. Below is an imaginar...