Posts

Use of Safe Navigation Operator

Safe Navigation Operator Instead of using explicit, sequential checks for null references, use the safe navigation operator (?.). This new operator short-circuits expressions that attempt to operate on a null value and returns null instead of throwing a NullPointerException. NOTE: All Apex types are implicitly nullable and can hold a null value returned from the operator. Example - Account acc = [SELECT Name FROM Account WHERE Id = :accId]; if (acc != null) {     return acc.Name; } Using Safe Navigation Operator String accName = acc?.acc.Name; String accName =  [SELECT Name FROM Account WHERE Id = :accId]?.Name; The Safe Navigation Operator (?.) in Apex is a feature that allows developers to safely navigate objects and data structures, avoiding null pointer exceptions. When you use the Safe Navigation Operator to access a chain of references, Apex will evaluate the expression from left to right and return null immediately if it encounters a null reference rather tha...

Determine whether the Salesforce organization is a Sandbox or a Production

To determine if a Salesforce organization is a sandbox or a production environment in Apex. Salesforce's sObject Organization has a field called IsSandbox, which is true for sandboxes and false for Production. Boolean isSandbox = UserInfo.getIsSandbox(); Organization org = [Select Id, Name, IsSandbox from Organization]; if (org.isSandbox) {     System.debug('The organization is a sandbox.'); } else {     System.debug('The organization is a production environment.'); } You can use this check to conditionally execute logic based on whether the Apex code is running in a sandbox or production environment. This can be useful for implementing different behaviors or configurations specific to each environment. In Salesforce, the Organization object represents metadata and settings for a Salesforce organization. It provides information about the organization's configuration, such as its name, address, edition, features, limits, and more. The Organization object is rep...

Custom Notifications aka Bell Notifications from the Apex code.

Image
The Messaging.CustomNotification class allows you to create, configure, and send custom notifications using Apex code. Here is a basic outline of how you can create and send a custom notification from an Apex trigger: Create a Custom Notification Type : In the Setup, you should create a Custom Notification Type. This defines the type of notification you will be sending from Apex. Use CustomNotification Class : Once you set up your Custom Notification Type, you can craft your Apex code to create the notification. Here's an example code snippet: // Get the Id for our custom notification type CustomNotificationType notificationType = [SELECT Id, DeveloperName FROM CustomNotificationType WHERE DeveloperName='Lead_Due_Diligence_Completed']; Messaging.CustomNotification notification = new Messaging.CustomNotification();  notification.setTitle('Your Notification Title');  notification.setBody('This is the detail of the notification');  notification.setNotification...

Salesforce Experience Cloud and Salesforce Sites

Image
Salesforce Experience Cloud (formerly known as Salesforce Community Cloud) and Salesforce Sites are both platforms provided by Salesforce for external-facing applications, but they serve different purposes and have distinct features.  Setting up - Salesforce Sites Experience Cloud Here's a comparison between the two: Purpose : Salesforce Experience Cloud : This platform is designed for creating branded online communities, portals, and websites where organizations can engage with customers, partners, and employees. Experience Cloud allows you to build custom-branded sites with features like discussion forums, knowledge bases, and access to Salesforce data. Salesforce Sites: Salesforce Sites, on the other hand, is a platform for creating public-facing websites or web applications that are directly integrated with Salesforce data. Sites are typically used for customer-facing portals, self-service support sites, or custom web applications that leverage Salesforce data and functional...

Salesforce Lightning B2B Just Got Better with Subscriptions Enablement

Image
Docmation's Salesforce experts bring an innovative functionality that makes the Salesforce Lightning B2B experience 10x better. Salesforce Lightning B2B, with its Apps, Lightning components, and industry process flows, allowed its users to get an industry-wide experience in a solution that was still tailored around their individual use case. However, there were still gaps that needed to be filled. Customers wanted to integrate their CPQ and Billing with B2B Lightning while leveraging existing pricing rules and engines to automate the processes.  For instance – What about recurring purchases? Most customer carts have, at least part of an order that belongs to the said category – be it weekly, monthly, quarterly, or annually. However, no such direct processes currently exist within the system.  Docmation’s team of Salesforce experts has launched the all-new ‘subscriptions accelerators’ functionality that works out-of-the-box to seamlessly automate CPQ and Billing processes with ...

Sandbox Management Best Practices

Sandbox Management and Best Practices An overview of different types of sandboxes, top use cases for each type, and what is included with each when the sandbox is created or refreshed. There are 4 types of sandboxes and some are only included in certain Salesforce Editions or purchased for an additional cost, please contact your Salesforce Account Executive for details. Common use cases for each type of sandbox and recommended best practices Developer - may be refreshed every day, does not include any data automatically but allows 200 MB of data to be imported or created. The most agile and plentiful sandbox type for proof of concept, metadata-specific development, or just playgrounds for Developers and Admins to run through potential setup changes to review impact. Developer Pro - may be refreshed every day, does not include any data automatically but allows 1GB of data to be imported or created. Same idea as the Developer but with a higher storage limit for the purpose of creating or...

Data sensitivity and Compliance categorization with Data Classification Metadata

Image
Properly classifying sensitive data in Salesforce is of utmost importance for any organization to implement effective data management policies and ensure compliance with global privacy regulations such as GDPR, CCPA, HIPAA, and others. By categorizing data based on its sensitivity level, companies can apply appropriate security measures, access controls, and data handling practices to reduce potential risks and safeguard sensitive information. Here's how sensitive data can be classified to support data management policies in Salesforce: Compliance Categorization The compliance acts, definitions, or regulations that are related to the field’s data. Default values: CCPA—California Consumer Privacy Act COPPA—Children's Online Privacy Protection Act GDPR—General Data Protection Regulation HIPAA—Health Insurance Portability and Accountability Act PCI—Payment Card Industry PersonalInfo—Personal information. For use with the Enhanced Personal Information Management feature. Only ava...