Posts

🛠️ Custom Field Change Tracking in Salesforce – Overcoming Limitations of Field History Tracking

Salesforce is powerful, but like every platform, it has limitations. One such limitation is related to Field History Tracking —you can only track up to 20 fields per object , and even then, certain field types (like long text areas) aren’t supported. I recently came across this limitation during a project where tracking every update to Task fields was critical for compliance and reporting. So, I designed a custom field tracking solution using Apex Triggers and a custom object. In this post, I’ll walk you through how I built it and how you can implement it too. ❗ Why Custom Tracking? Out-of-the-box Salesforce lets you: Track up to 20 fields per object. Track changes on limited data types (excludes Long Text Area, Rich Text, etc.) View changes only in the standard history related list. But in my case, I needed to: Track more than 20 fields. Track long text fields like Description . Store change history in a separate custom object. Restrict deletion of histor...

Integrating Power BI with Salesforce: A Seamless Reporting Experience

Image
Introduction In today’s data-driven world, businesses rely on analytics tools to make informed decisions. Salesforce, a leading CRM platform, offers powerful reporting capabilities, but integrating external analytics tools like Power BI can enhance its functionality. This blog post explores how Power BI was successfully integrated into Salesforce to streamline reporting and provide seamless user experiences. Problem Statement The goal was to integrate Power BI into Salesforce without requiring users to log in separately . The integration needed to support: Punchout Integration: Clicking a link should open Power BI in a new window. Account-Based Integration: Power BI reports should be embedded within Salesforce account pages with pre-filtered data. Home Page Dashboard Integration: Power BI reports should be visible on the Salesforce home page. Solution Overview To meet these requirements, we used Custom Metadata Types , Apex , and Lightning Web Components (LWC) to store, r...