<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Sanskriti Upmanyu on Medium]]></title>
        <description><![CDATA[Stories by Sanskriti Upmanyu on Medium]]></description>
        <link>https://medium.com/@sanskriti.upmanyu?source=rss-622837910b6e------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*o8ZiBaEfd0sampmC8gYAFQ.jpeg</url>
            <title>Stories by Sanskriti Upmanyu on Medium</title>
            <link>https://medium.com/@sanskriti.upmanyu?source=rss-622837910b6e------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 23 May 2026 07:11:21 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@sanskriti.upmanyu/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Configuring GitHub Copilot as a Salesforce AI Developer in VS Code]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/configuring-github-copilot-as-a-salesforce-ai-developer-in-vs-code-5e38b0f49694?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/5e38b0f49694</guid>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Sat, 16 May 2026 06:30:14 GMT</pubDate>
            <atom:updated>2026-05-16T06:30:14.245Z</atom:updated>
            <content:encoded><![CDATA[<p>Modern AI coding assistants are extremely powerful, but by default, they behave like <strong>generic software developers</strong>.<br>That means when you ask them to generate code, they may:</p><ul><li>Write code in the wrong language</li><li>Ignore Salesforce naming conventions</li><li>Miss metadata files</li><li>Generate incorrect SOQL field API names</li><li>Skip documentation standards</li></ul><p>To make GitHub Copilot truly useful for Salesforce development, we need to train it with project-level instructions.</p><p>In this guide, you’ll learn how to:</p><ul><li>Configure GitHub Copilot for Salesforce development</li><li>Create reusable AI rules</li><li>Force naming conventions</li><li>Auto-generate Apex metadata files</li><li>Improve SOQL accuracy using SObject definitions</li><li>Generate documented Apex classes</li><li>Build a working LWC + Apex example</li></ul><p>This creates a highly optimized Salesforce AI development workflow inside VS Code.</p><h3>Understanding the Difference Between Free and Pro GitHub Copilot</h3><p>When using GitHub Copilot Free, you may only see limited model options such as:</p><ul><li>Claude 3.5 Sonnet</li><li>GPT-4…&amp; newly available</li></ul><p>However, with GitHub Copilot Pro, additional premium models become available, such as:</p><ul><li>OpenAI o1 Preview</li><li>OpenAI o1 Mini Preview</li></ul><p>These models generally provide:</p><ul><li>Better reasoning</li><li>Improved code generation</li><li>Better architecture suggestions</li><li>More accurate debugging assistance</li></ul><p>This becomes especially valuable for enterprise Salesforce development.</p><h3>Step 1: Create a Salesforce DX Project</h3><p>Start by creating a Salesforce DX project inside VS Code.</p><p>Typical project structure:</p><pre>force-app/<br>manifest/<br>sfdx-project.json</pre><p>After creating the project:</p><ol><li>Open VS Code</li><li>Create a new Salesforce project with Manifest</li><li>Authorize a Salesforce Org</li><li>Connect the org successfully</li></ol><p>Once the org is connected, we can begin configuring GitHub Copilot.</p><h3>Step 2: Enable GitHub Copilot Project Instructions</h3><p>GitHub Copilot supports project-level AI instructions using a special markdown file.</p><p>To enable it:</p><h3>Navigate to VS Code Settings</h3><p>Search for:</p><pre>Copilot Instructions</pre><p>Enable the setting:</p><pre>Use github.copilot-instructions.md</pre><p>This allows Copilot to automatically read project instructions before generating responses.</p><h3>Step 3: Create the GitHub Copilot Instructions File</h3><p>Inside your project root, create the following structure:</p><pre>.github/<br>    copilot-instructions.md</pre><p>The filename must be exact.</p><h3>Step 4: Define Salesforce AI Rules</h3><p>Now we start training Copilot specifically for Salesforce development.</p><h3>Initial Instructions</h3><p>Add the following rules:</p><pre>You need to act as a Salesforce developer.</pre><pre>While creating Apex classes or Lightning Web Components,<br>always follow Salesforce best practices.</pre><pre>Whenever creating Apex classes,<br>also create the corresponding meta.xml file.</pre><pre>While creating Apex classes or components,<br>always use prefix coder_.</pre><h3>Why These Rules Matter</h3><p>Without instructions:</p><ul><li>Copilot may generate Java or Python logic</li><li>Metadata files may be skipped</li><li>Naming conventions may break</li><li>Salesforce deployment may fail</li></ul><p>With instructions:</p><ul><li>Copilot becomes Salesforce-aware</li><li>Generated code becomes deployment-ready</li><li>Naming standards remain consistent</li></ul><h3>Step 5: Generate an LWC + Apex Controller Using Copilot</h3><p>Now let’s test the setup.</p><p>Open:</p><pre>Edit with Copilot</pre><p>Use the following prompt:</p><pre>Help me create a Lightning Web Component<br>which displays Contact records in a data table.</pre><pre>Use an Apex class to retrieve contacts.</pre><h3>What GitHub Copilot Generates</h3><p>GitHub Copilot now generates:</p><h3>Apex Controller</h3><pre>public with sharing class coder_ContactController {<br>    <br>    @AuraEnabled(cacheable=true)<br>    public static List&lt;Contact&gt; getContacts() {<br>        return [<br>            SELECT Id, Name, Email, Phone<br>            FROM Contact<br>            LIMIT 10<br>        ];<br>    }<br>}</pre><h3>Apex Meta File</h3><pre>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;<br>&lt;ApexClass xmlns=&quot;http://soap.sforce.com/2006/04/metadata&quot;&gt;<br>    &lt;apiVersion&gt;61.0&lt;/apiVersion&gt;<br>    &lt;status&gt;Active&lt;/status&gt;<br>&lt;/ApexClass&gt;</pre><h3>Lightning Web Component HTML</h3><pre>&lt;template&gt;<br>    &lt;lightning-card title=&quot;Contacts&quot;&gt;<br>        &lt;lightning-datatable<br>            key-field=&quot;Id&quot;<br>            data={contacts}<br>            columns={columns}&gt;<br>        &lt;/lightning-datatable&gt;<br>    &lt;/lightning-card&gt;<br>&lt;/template&gt;</pre><h3>JavaScript Controller</h3><pre>import { LightningElement, wire } from &#39;lwc&#39;;<br>import getContacts from &#39;@salesforce/apex/coder_ContactController.getContacts&#39;;</pre><pre>export default class CoderContactTable extends LightningElement {</pre><pre>    contacts = [];</pre><pre>    columns = [<br>        { label: &#39;Name&#39;, fieldName: &#39;Name&#39; },<br>        { label: &#39;Email&#39;, fieldName: &#39;Email&#39; },<br>        { label: &#39;Phone&#39;, fieldName: &#39;Phone&#39; }<br>    ];</pre><pre>    @wire(getContacts)<br>    wiredContacts({ error, data }) {<br>        if(data) {<br>            this.contacts = data;<br>        } else if(error) {<br>            console.error(error);<br>        }<br>    }<br>}</pre><h3>Important Observation</h3><p>Notice how GitHub Copilot automatically:</p><ul><li>Added the coder_ prefix</li><li>Created the meta.xml file</li><li>Generated Apex code</li><li>Generated the LWC</li><li>Wired Apex correctly</li></ul><p>This happened because of the AI instructions.</p><h3>Step 6: Improving SOQL Accuracy Using SObject Definitions</h3><p>One of the biggest AI problems in Salesforce development is:</p><h3>Incorrect API Names</h3><p>AI models do not inherently know:</p><ul><li>Your custom object names</li><li>Your field API names</li><li>Managed package metadata</li><li>Custom namespace structure</li></ul><p>This often causes incorrect SOQL generation.</p><p>Example problem:</p><pre>SELECT Price__c, Tags__c FROM Br__c</pre><p>But actual field API might be:</p><pre>coder_Tags__c</pre><h3>Step 7: Refresh SObject Definitions</h3><p>To solve this, refresh Salesforce object definitions.</p><p>Run:</p><pre>SFDX: Refresh SObject Definitions</pre><p>This generates local metadata references for all objects and fields.</p><p>GitHub Copilot can now use these files for context.</p><h3>Step 8: Add SOQL Intelligence Instructions</h3><p>Add another instruction to:</p><pre>Whenever writing SOQL queries<br>or creating Salesforce records,<br>refer SObject definition files<br>to get correct object and field API names.</pre><h3>Step 9: Attach the SObject File to Copilot</h3><p>Before generating SOQL:</p><ol><li>Open the object definition file</li><li>Or attach it manually in chat</li></ol><p>Example:</p><pre>objects/Br__c.object-meta.xml</pre><p>Now Copilot gains field awareness.</p><h3>Example: Correct SOQL Generation</h3><p>Prompt:</p><pre>Write a SOQL query to retrieve beer records<br>with price and tags.</pre><p>Now GitHub Copilot generates:</p><pre>SELECT Price__c,<br>       coder_Tags__c<br>FROM Br__c</pre><p>This dramatically improves AI-generated Salesforce code quality.</p><h3>Step 10: Enforcing Documentation Standards</h3><p>Most AI-generated Apex classes lack documentation.</p><p>To standardize this, add another rule.</p><h3>Documentation Rule</h3><pre>Whenever creating Apex classes,<br>always add documentation<br>using the following format.</pre><pre>Description:<br>Author:<br>Last Modified:</pre><h3>Step 11: Generate a Batch Apex Class</h3><p>Prompt:</p><pre>Create a Batch Apex class<br>to delete Lead records<br>where Status = &#39;Bogus&#39;</pre><h3>Generated Batch Apex Example</h3><pre>/**<br> * Description: Batch class to delete bogus leads<br> * Author: Sanskriti Joshi<br> * Last Modified: May 2026<br> */</pre><pre>public class coder_DeleteBogusLeadsBatch<br>implements Database.Batchable&lt;SObject&gt; {</pre><pre>    public Database.QueryLocator start(<br>        Database.BatchableContext bc<br>    ) {<br>        return Database.getQueryLocator(<br>            &#39;SELECT Id FROM Lead WHERE Status = \&#39;Bogus\&#39;&#39;<br>        );<br>    }</pre><pre>    public void execute(<br>        Database.BatchableContext bc,<br>        List&lt;Lead&gt; scope<br>    ) {<br>        delete scope;<br>    }</pre><pre>    public void finish(<br>        Database.BatchableContext bc<br>    ) {<br>        System.debug(&#39;Batch completed&#39;);<br>    }<br>}</pre><h3>Why AI Instructions Are Extremely Important</h3><p>Without instructions:</p><ul><li>AI behaves inconsistently</li><li>Output quality varies</li><li>Standards break</li><li>Naming conventions fail</li><li>Deployment issues increase</li></ul><p>With project instructions:</p><ul><li>Code becomes predictable</li><li>AI follows enterprise standards</li><li>Reusability improves</li><li>Teams stay aligned</li><li>Development accelerates</li></ul><h3>Best Practices for Copilot Instructions</h3><p>Keep instructions:</p><ul><li>Short</li><li>Specific</li><li>Action-oriented</li></ul><p>Avoid:</p><ul><li>Long paragraphs</li><li>Overly complex instructions</li><li>Contradicting rules</li><li>Excessive prompts</li></ul><p>Because every instruction gets appended to the AI context window.</p><p>Too many instructions can:</p><ul><li>Reduce performance</li><li>Reduce response quality</li><li>Increase hallucinations</li></ul><h3>Recommended Salesforce Copilot Rules</h3><p>A strong starting template:</p><pre>Act as a Salesforce developer.</pre><pre>Always create Apex meta.xml files.</pre><pre>Use naming prefix coder_.</pre><pre>Follow Salesforce best practices.</pre><pre>Add Apex documentation.</pre><pre>Use SObject definitions<br>for SOQL field references.</pre><h3>Final Outcome</h3><p>After implementing these configurations:</p><p>GitHub Copilot becomes:</p><ul><li>A Salesforce-aware AI assistant</li><li>Metadata-aware</li><li>Naming-convention aware</li><li>SOQL-aware</li><li>Documentation-aware</li></ul><p>Instead of acting like a generic developer, it now behaves more like a trained Salesforce engineer working inside your project ecosystem.</p><p>That is the real power of AI-assisted Salesforce development.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5e38b0f49694" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Git Basics & Workflow]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/git-basics-workflow-cfa0773c1bc0?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/cfa0773c1bc0</guid>
            <category><![CDATA[version-control]]></category>
            <category><![CDATA[salesforce-cicd]]></category>
            <category><![CDATA[github]]></category>
            <category><![CDATA[salesforce-development]]></category>
            <category><![CDATA[git]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Fri, 15 May 2026 21:28:02 GMT</pubDate>
            <atom:updated>2026-05-15T21:28:02.467Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*WK-YXRZdmveN9MBBpYlfkQ.png" /></figure><h3>1. Introduction to Git</h3><p>Git may seem confusing initially, but once you understand:</p><ul><li>where the code is stored,</li><li>how code moves,</li><li>how collaboration works,</li><li>and what each command does,</li></ul><p>the workflow becomes much easier.</p><p>This blog focuses on:</p><ul><li>Git workflow</li><li>Git storage locations</li><li>Core Git commands</li><li>Branching concepts</li><li>Collaboration workflow</li></ul><h3>2. Common Misconception About Git</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*7AYVy6_9VtAoqlT0PKB21w.png" /></figure><h3>Misconception</h3><p>Many developers think code exists only in:</p><p>Local Machine then GitHub/Gitlab, etc.</p><h3>Reality</h3><p>Git actually manages code across <strong>4 important locations</strong>.</p><h3>3. Four Main Locations in Git</h3><h3>A. Working Directory</h3><h3>Definition</h3><p>The Working Directory is:</p><ul><li>your local project folder</li><li>where you actively edit files</li></ul><p>It is your:</p><ul><li>coding environment</li><li>development playground</li></ul><h3>Activities Performed</h3><p>You:</p><ul><li>create files</li><li>modify code</li><li>delete files</li><li>test changes</li></ul><h3>Key Point</h3><p>Changes here are NOT yet tracked permanently.</p><h3>B. Staging Area</h3><h3>Definition</h3><p>The Staging Area is:</p><ul><li>a temporary holding area</li><li>where selected changes are prepared before commit</li></ul><h3>Purpose</h3><p>It acts like:</p><ul><li>a checkpoint</li><li>a preparation zone</li></ul><p>You choose exactly what should go into the next commit.</p><h3>Important Command</h3><p>git add</p><p>This moves changes from:</p><ul><li>Working Directory → Staging Area</li></ul><h3>C. Local Repository</h3><h3>Definition</h3><p>The Local Repository:</p><ul><li>stores committed snapshots locally</li><li>contains Git history</li></ul><h3>Purpose</h3><p>It keeps:</p><ul><li>permanent commit records</li><li>version history</li><li>rollback capability</li></ul><h3>Important Command</h3><p>git commit</p><p>This moves changes from:</p><ul><li>Staging Area → Local Repository</li></ul><h3>D. Remote Repository</h3><h3>Definition</h3><p>A Remote Repository is:</p><ul><li>a shared server repository</li><li>hosted on platforms like GitHub or Bitbucket</li></ul><h3>Purpose</h3><p>Used for:</p><ul><li>collaboration</li><li>backup</li><li>sharing code with teams</li></ul><h3>Important Command</h3><p>git push</p><p>This moves changes from:</p><ul><li>Local Repository → Remote Repository</li></ul><h3>4. Complete Git Workflow</h3><p>The Git workflow follows a step-by-step movement of code.</p><h3>Step 1 — Clone Repository</h3><h3>Command</h3><p>git clone &lt;repository-url&gt;</p><h3>Purpose</h3><p>Creates:</p><ul><li>a local copy of an existing repository</li><li>including full history</li></ul><h3>Flow</h3><p>Remote Repository → Local Machine</p><h3>Step 2 — Modify Files</h3><p>You work inside:</p><ul><li>Working Directory</li></ul><p>Activities:</p><ul><li>writing code</li><li>editing files</li><li>fixing bugs</li></ul><h3>Step 3 — Stage Changes</h3><h3>Command</h3><p>git add .</p><p>or</p><p>git add &lt;filename&gt;</p><h3>Purpose</h3><p>Moves selected changes into:</p><ul><li>Staging Area</li></ul><h3>Key Idea</h3><p>Git prepares a snapshot of files.</p><h3>Step 4 — Commit Changes</h3><h3>Command</h3><p>git commit -m “Commit message”</p><h3>Purpose</h3><p>Creates:</p><ul><li>permanent snapshot</li><li>version checkpoint</li></ul><h3>Flow</h3><p>Staging Area → Local Repository</p><h3>Step 5 — Push Changes</h3><h3>Command</h3><p>git push</p><h3>Purpose</h3><p>Uploads commits to:</p><ul><li>Remote Repository</li></ul><h3>Flow</h3><p>Local Repository → Remote Repository</p><h3>5. Pulling Team Changes</h3><p>Git collaboration is:</p><ul><li>two-way communication</li></ul><h3>Git Pull</h3><h3>Command</h3><p>git pull</p><h3>Purpose</h3><p>Downloads teammates’ latest work.</p><h3>What Happens Internally?</h3><p>git pull combines:</p><h3>1. Fetch</h3><p>git fetch</p><p>Downloads latest updates from remote.</p><h3>2. Merge</h3><p>git merge</p><p>Integrates fetched updates into local code.</p><h3>Flow</h3><p>Remote Repository → Local Repository</p><h3>6. Git Checkout / Git Switch</h3><p>Sometimes developers need to:</p><ul><li>switch tasks</li><li>move between features</li><li>fix urgent bugs</li></ul><h3>Commands</h3><h3>Older Command</h3><p>git checkout</p><h3>Modern Command</h3><p>git switch</p><h3>Purpose</h3><p>Switches between branches.</p><h3>7. Understanding Git Branching</h3><h3>What is a Branch?</h3><p>A branch is:</p><ul><li>an isolated line of development</li></ul><p>It allows developers to:</p><ul><li>work independently</li><li>avoid affecting main codebase</li></ul><h3>Why Branching Matters</h3><p>Branching helps:</p><ul><li>feature development</li><li>bug fixing</li><li>experimentation</li><li>team collaboration</li></ul><p>without disturbing production code.</p><h3>8. Important Branching Commands</h3><h3>A. Create Branch</h3><h3>Command</h3><p>git branch &lt;branch-name&gt;</p><h3>Purpose</h3><p>Creates a new branch.</p><h3>B. Switch Branch</h3><h3>Command</h3><p>git switch &lt;branch-name&gt;</p><h3>Purpose</h3><p>Moves you to another branch.</p><h3>C. Merge Branches</h3><h3>Command</h3><p>git merge &lt;branch-name&gt;</p><h3>Purpose</h3><p>Combines code from one branch into another.</p><h3>9. Merge Conflicts</h3><h3>What is a Merge Conflict?</h3><p>Occurs when:</p><ul><li>two developers modify the same code section</li></ul><p>Git cannot decide:</p><ul><li>which version to keep</li></ul><h3>Resolution</h3><p>Developer must:</p><ul><li>manually review</li><li>choose correct changes</li><li>resolve conflict</li></ul><h3>10. Git Collaboration Flow</h3><p>Typical collaboration cycle:</p><p>Clone Repository</p><p>↓</p><p>Create Branch</p><p>↓</p><p>Write Code</p><p>↓</p><p>git add</p><p>↓</p><p>git commit</p><p>↓</p><p>git push</p><p>↓</p><p>Create Pull Request</p><p>↓</p><p>Code Review</p><p>↓</p><p>Merge into Main Branch</p><h3>11. Git Merge vs Rebase (Mentioned Briefly)</h3><p>The:</p><ul><li>merging</li><li>rebasing</li></ul><p>These are advanced workflows used when:</p><ul><li>integrating team changes</li><li>keeping commit history clean</li></ul><h3>Merge</h3><p>Combines histories together.</p><h3>Rebase</h3><p>Rewrites commit history for cleaner timeline.</p><h3>12. GUI-Based Git Tools</h3><p>Not all developers use command line.</p><h3>Popular Git GUI Tools</h3><h3>1. GitHub Desktop</h3><p>Visual Git interface by GitHub.</p><h3>2. SourceTree</h3><p>Popular Git GUI tool by Atlassian.</p><h3>Benefits of GUI Tools</h3><p>They provide:</p><ul><li>visual branch management</li><li>simplified workflows</li><li>beginner-friendly experience</li></ul><h3>13. Final Git Data Flow Visualization</h3><p>Working Directory</p><p>↓ (git add)</p><p>Staging Area</p><p>↓ (git commit)</p><p>Local Repository</p><p>↓ (git push)</p><p>Remote Repository</p><h3>Reverse Collaboration Flow</h3><p>Remote Repository</p><p>↓ (git pull)</p><p>Local Repository</p><p>↓</p><p>Working Directory</p><h3>14. Key Git Concepts Summary</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PTnqruFi7RkgLghN65SOIA.png" /></figure><h3>15. Important Beginner Insights</h3><h3>Git is NOT GitHub</h3><ul><li>Git = Version control system</li><li>GitHub = Hosting platform</li></ul><h3>Commits are Local First</h3><p>Your commits:</p><ul><li>stay local</li><li>until pushed</li></ul><h3>Staging Area is Critical</h3><p>It allows selective commits.</p><h3>Branches Enable Safe Development</h3><p>Develop features independently.</p><h3>16. Best Practices Mentioned Implicitly</h3><h3>Commit Frequently</h3><p>Small commits are easier to track.</p><h3>Pull Before Push</h3><p>Always sync latest team changes.</p><h3>Use Branches for Features</h3><p>Avoid working directly on main branch.</p><h3>Resolve Conflicts Carefully</h3><p>Never rush conflict resolution.</p><h3>17. Final Conclusion</h3><p>Git manages code through:</p><ol><li>Working Directory</li><li>Staging Area</li><li>Local Repository</li><li>Remote Repository</li></ol><p>Understanding how code moves between these locations makes Git much easier.</p><p>The core workflow is:</p><p>Clone → Edit → Add → Commit → Push → Pull → Merge</p><p>Git branching allows:</p><ul><li>isolated development</li><li>safer collaboration</li><li>efficient teamwork</li></ul><p>Mastering these basics builds a strong foundation for advanced Git workflows.</p><p><strong><em>Thanks, Subscribe if you like my content, I post frequently for community!</em></strong></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=cfa0773c1bc0" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Mac Terminal, A Quick Editorial]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/mac-terminal-a-quick-editorial-081c8385564e?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/081c8385564e</guid>
            <category><![CDATA[terminal-commands]]></category>
            <category><![CDATA[mac-terminal]]></category>
            <category><![CDATA[macos]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Mon, 11 May 2026 09:10:14 GMT</pubDate>
            <atom:updated>2026-05-11T09:26:28.153Z</atom:updated>
            <content:encoded><![CDATA[<p><strong>Here’s the breakdown of the Mac Terminal basics, We’ll learn it like:</strong></p><ul><li>What</li><li>Why</li><li>Syntax</li><li>Real-life thinking</li><li>Common beginner mistakes</li><li>Shortcut</li></ul><h3>1. What is Terminal?</h3><p><strong>Terminal (also called Command Line) is a text-based way to control your computer.</strong></p><p><strong>Instead of:</strong></p><ul><li><strong>clicking folders</strong></li><li><strong>dragging files</strong></li><li><strong>using GUI buttons</strong></li></ul><p><strong>…you type commands directly.</strong></p><p><strong>Think:</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*9A4z86Ko9XmUv5dkNZe9qA.png" /></figure><p><strong>Why Developers Use It</strong></p><p>Because terminal is:</p><ul><li>Faster</li><li>Automatable</li><li>Powerful</li><li>Universal across servers/cloud/devops</li><li>Needed for Git, Docker, Salesforce CLI, Terraform, Node, etc.</li></ul><p>Without terminal skills:</p><ul><li>you become dependent on UI</li><li>automation becomes difficult</li><li>debugging servers/cloud systems becomes harder</li></ul><h3>2. Understanding the Prompt</h3><p>Example:</p><pre>Sanskriti-MacBook:~ user$</pre><p>This is called the <strong>prompt</strong>.</p><p>It tells:</p><ul><li>who you are</li><li>where you are</li><li>terminal is waiting for command</li></ul><p>The $ symbol DOES NOT need to be typed.</p><h3>3. pwd → Print Working Directory</h3><h3>Purpose</h3><p>Shows:</p><blockquote><em>“Where am I currently?”</em></blockquote><h3>Syntax</h3><pre>pwd</pre><h3>Example</h3><pre>pwd</pre><p>Output:</p><pre>/Users/sanskriti</pre><p>Terminal always works relative to a location.</p><p>Before doing anything:</p><ul><li>know current directory</li><li>avoid accidental file operations</li></ul><p>Like checking:</p><blockquote><em>“Which room am I currently standing in?”</em></blockquote><p>before searching for an object.</p><h3>4. ls → List Files/Folders</h3><h3>Purpose</h3><p>Shows files/folders inside current directory.</p><h3>Syntax</h3><pre>ls</pre><h3>Example</h3><pre>ls</pre><p>Output:</p><pre>Desktop<br>Documents<br>Downloads<br>Movies<br>Pictures</pre><h3>Editorial Insight</h3><p>pwd = WHERE you are<br>ls = WHAT exists there</p><p>These two are your survival commands.</p><h3>5. cd → Change Directory</h3><h3>Purpose</h3><p>Move between folders.</p><h3>Syntax</h3><pre>cd folderName</pre><h3>Example</h3><pre>cd Movies</pre><p>Now terminal enters Movies folder.</p><h3>Verify</h3><pre>pwd</pre><p>Output:</p><pre>/Users/sanskriti/Movies</pre><h3>Editorial Concept</h3><p>Terminal navigation is hierarchical.</p><p>Like:</p><pre>Users<br> └── Sanskriti<br>      └── Movies</pre><p>You move deeper using cd.</p><h3>6. cd .. → Go Back</h3><h3>Purpose</h3><p>Move to parent folder.</p><h3>Syntax</h3><pre>cd ..</pre><h3>Why .. ?</h3><p>.. means:</p><blockquote><em>parent directory</em></blockquote><h3>Example</h3><p>Current:</p><pre>/Users/sanskriti/Movies</pre><p>Run:</p><pre>cd ..</pre><p>Now:</p><pre>/Users/sanskriti</pre><h3>Editorial Memory Trick</h3><p>SymbolMeaning.Current folder..Parent folder</p><h3>7. clear → Clean Terminal</h3><h3>Purpose</h3><p>Clears screen clutter.</p><h3>Syntax</h3><pre>clear</pre><p>Shortcut:</p><pre>Command + K</pre><h3>Important</h3><p>It DOES NOT delete history.</p><p>Just visually clears screen.</p><h3>8. ~ (Tilde)</h3><h3>Purpose</h3><p>Represents:</p><blockquote><em>Home directory</em></blockquote><h3>Syntax</h3><pre>cd ~</pre><h3>Example</h3><p>No matter where you are:</p><pre>cd ~</pre><p>takes you to:</p><pre>/Users/yourname</pre><p>This is a shortcut developers constantly use.</p><p>Especially in:</p><ul><li>scripts</li><li>configuration files</li><li>Git setup</li></ul><h3>9. touch → Create File</h3><h3>Purpose</h3><p>Creates empty file.</p><h3>Syntax</h3><pre>touch filename.txt</pre><h3>Example</h3><pre>touch notes.txt</pre><p>Creates:</p><pre>notes.txt</pre><h3>Important Insight</h3><p>touch originally updates timestamps.</p><p>But commonly used to create files.</p><h3>10. Tab Completion (SUPER IMPORTANT)</h3><h3>Purpose</h3><p>Autocomplete names.</p><h3>Example</h3><p>Type:</p><pre>open tes</pre><p>Press:</p><pre>Tab</pre><p>Terminal auto-completes.</p><h3>Why It Matters</h3><p>Faster<br>Avoids spelling mistakes<br>Essential in long paths</p><p>Developers heavily depend on:</p><ul><li>tab completion</li><li>command history</li><li>shortcuts</li></ul><p>These save HOURS.</p><h3>11. open</h3><h3>Purpose</h3><p>Open file/folder using default app.</p><h3>Syntax</h3><pre>open filename.txt</pre><h3>Example</h3><pre>open notes.txt</pre><p>Opens TextEdit.</p><h3>12. Nano Editor</h3><h3>Purpose</h3><p>Edit files directly in terminal.</p><h3>Syntax</h3><pre>nano filename.txt</pre><h3>Example</h3><pre>nano notes.txt</pre><h3>Important Nano Controls</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1004/1*bK_1SUblURrkOWgxVEWdMQ.png" /></figure><p>Nano is useful for:</p><ul><li>server configs</li><li>quick edits</li><li>cloud VMs</li><li>Linux systems</li></ul><p>When GUI is unavailable.</p><h3>13. Command History</h3><h3>Purpose</h3><p>Reuse previous commands.</p><h3>Shortcuts</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*0NwnjG5GRVlyiW28bkqv2A.png" /></figure><p>See Full History</p><pre>history</pre><h3>14. rm → Remove File</h3><h3>Purpose</h3><p>Delete file.</p><h3>Syntax</h3><pre>rm filename.txt</pre><h3>Example</h3><pre>rm notes.txt</pre><h3>WARNING ⚠️</h3><p>Unlike Trash:</p><ul><li>terminal deletion is immediate</li><li>usually unrecoverable</li></ul><h3>15. mkdir → Make Directory</h3><h3>Purpose</h3><p>Create folder.</p><h3>Syntax</h3><pre>mkdir folderName</pre><h3>Example</h3><pre>mkdir project</pre><h3>16. Working With Paths</h3><p>Example:</p><pre>touch project/file.txt</pre><p>This creates:</p><ul><li>file.txt</li><li>inside project</li></ul><p>WITHOUT entering folder.</p><h3>Editorial Insight</h3><p>This is called:</p><blockquote><em>path-based operations</em></blockquote><p>Extremely important concept.</p><p>You don’t always need:</p><pre>cd</pre><h3>17. Recursive Delete</h3><p>Deleting folders requires:</p><pre>rm -r folderName</pre><h3>Why -r ?</h3><p>-r means:</p><blockquote><em>recursive</em></blockquote><p>Delete:</p><ul><li>folder</li><li>files inside</li><li>subfolders inside</li></ul><h3>Example</h3><pre>rm -r project</pre><h3>VERY IMPORTANT WARNING ⚠️</h3><p>This command can destroy systems if used carelessly.</p><p>Example dangerous command:</p><pre>rm -rf /</pre><p>Never run random terminal commands from internet.</p><p>Let’s Breakdown this command:</p><h3>rm</h3><p>Means:</p><blockquote><em>remove (delete)</em></blockquote><p>Used to delete files/folders.</p><h3>-r</h3><p>Means:</p><blockquote><em>recursive</em></blockquote><p>Delete:</p><ul><li>folders</li><li>subfolders</li><li>files inside them</li></ul><p>Without -r, folders usually won’t delete.</p><h3>-f</h3><p>Means:</p><blockquote><em>force</em></blockquote><p>Terminal will:</p><ul><li>NOT ask confirmation</li><li>ignore warnings</li><li>aggressively delete</li></ul><h3>/</h3><p>This symbol means:</p><blockquote><em>ROOT DIRECTORY</em></blockquote><p>The absolute top-level of the operating system.</p><h3>18. Absolute vs Relative Paths</h3><h3>Relative Path</h3><p>Relative to current location.</p><p>Example:</p><pre>Documents/file.txt</pre><h3>Absolute Path</h3><p>Starts from root.</p><p>Example:</p><pre>/Users/sanskriti/Documents/file.txt</pre><h3>Editorial Concept</h3><p>Most terminal mastery comes from:</p><ul><li>understanding paths</li><li>navigation</li><li>file hierarchy</li></ul><h3>Mental Model</h3><p>Think of terminal as:</p><pre>You are standing somewhere<br>↓<br>You inspect surroundings<br>↓<br>Then you create/edit/delete things accordingly</pre><h3>MOST IMPORTANT COMMANDS TO MEMORIZE</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/974/1*qe3XExw1CjVL2F4mq4GdeA.png" /></figure><h3>Terminal Learning Progression</h3><h3>Stage 1</h3><p>Navigation</p><ul><li>pwd</li><li>ls</li><li>cd</li></ul><h3>Stage 2</h3><p>File management</p><ul><li>touch</li><li>mkdir</li><li>rm</li></ul><h3>Stage 3</h3><p>Editing</p><ul><li>nano</li></ul><h3>Stage 4</h3><p>Productivity</p><ul><li>tab completion</li><li>history</li><li>shortcuts</li></ul><h3>Stage 5</h3><p>Advanced DevOps</p><ul><li>grep</li><li>pipes</li><li>permissions</li><li>shell scripting</li><li>git</li><li>docker</li><li>ssh</li></ul><h3>Real Developer Usage</h3><p>Terminal is heavily used in:</p><ul><li>Salesforce CLI</li><li>GitHub Copilot workflows</li><li>Terraform</li><li>Kubernetes</li><li>Linux servers</li><li>AI engineering</li><li>Docker</li><li>CI/CD pipelines</li></ul><p><strong>Quick Practice Challenge</strong></p><p>Try this sequence:</p><pre>pwd<br>ls<br>mkdir demo<br>cd demo<br>touch hello.txt<br>nano hello.txt<br>ls<br>cd ..<br>rm -r demo</pre><p>If you can execute this confidently, you’ve understood the fundamentals.Mac Terminal, A Quick Editorial</p><ul><li>nano</li></ul><h3>Stage 4</h3><p>Productivity</p><ul><li>tab completion</li><li>history</li><li>shortcuts</li></ul><h3>Stage 5</h3><p>Advanced DevOps</p><ul><li>grep</li><li>pipes</li><li>permissions</li><li>shell scripting</li><li>git</li><li>docker</li><li>ssh</li></ul><h3>Real Developer Usage</h3><p>Terminal is heavily used in:</p><ul><li>Salesforce CLI</li><li>GitHub Copilot workflows</li><li>Terraform</li><li>Kubernetes</li><li>Linux servers</li><li>AI engineering</li><li>Docker</li><li>CI/CD pipelines</li></ul><p><strong>Quick Practice Challenge</strong></p><p>Try this sequence:</p><pre>pwd<br>ls<br>mkdir demo<br>cd demo<br>touch hello.txt<br>nano hello.txt<br>ls<br>cd ..<br>rm -r demo</pre><p>If you can execute this confidently, you’ve understood the fundamentals.</p><h3>Practice Guide:</h3><p>Terminal gives:</p><ul><li>massive power</li><li>very little protection</li></ul><p>GUI apps usually ask:</p><blockquote><em>“Are you sure?”</em></blockquote><p>Terminal assumes:</p><blockquote><em>“You know what you’re doing.”</em></blockquote><p>That’s why professional engineers:</p><ul><li>verify commands</li><li>understand paths</li><li>test carefully</li><li>avoid random internet scripts</li></ul><h3>Safer Alternative for Beginners</h3><p>Instead of immediately deleting:</p><p>Use:</p><pre>ls</pre><p>first to inspect.</p><p>Or safer delete:</p><pre>rm -i file.txt</pre><p>-i means interactive:</p><ul><li>asks before deleting</li></ul><h3>Real DevOps Importance</h3><p>In:</p><ul><li>cloud servers</li><li>Kubernetes</li><li>Terraform</li><li>production Linux machines</li></ul><p>One wrong terminal command can:</p><ul><li>bring down infrastructure</li><li>delete databases</li><li>impact customers</li></ul><p>That’s why terminal discipline is considered a core engineering skill.</p><h3>Golden Rule</h3><p>Before pressing Enter on a terminal command:</p><p>Ask:</p><ol><li>What does this command do?</li><li>Which path will it affect?</li><li>Is it recursive?</li><li>Is it force deleting?</li><li>Can I recover this?</li></ol><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=081c8385564e" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Salesforce Spring ’26 Release: Powering the Agentic Enterprise]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/salesforce-spring-26-release-powering-the-agentic-enterprise-0f028c97b383?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/0f028c97b383</guid>
            <category><![CDATA[spring-26-release]]></category>
            <category><![CDATA[salesforce]]></category>
            <category><![CDATA[salesforce-agentforce]]></category>
            <category><![CDATA[salesforce-development]]></category>
            <category><![CDATA[administration]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Wed, 29 Apr 2026 19:57:15 GMT</pubDate>
            <atom:updated>2026-04-29T19:57:15.457Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*CaXKsLpDu4QY_2c8.png" /></figure><p>The <strong>Salesforce Spring ’26 Release</strong> marks a significant leap toward the vision of an <strong>Agentic Enterprise</strong> an ecosystem where human expertise and AI agents work together seamlessly. This release is not just an upgrade; it’s a strategic shift designed to empower organizations with intelligent automation, deeper insights, and enhanced customer engagement capabilities.</p><h3>The Vision: From Automation to Agentic Enterprises</h3><p>At the core of Spring ’26 lies the concept of <strong>Agentforce</strong>, Salesforce’s AI-driven evolution. Instead of merely automating processes, Salesforce now focuses on enabling <strong>intelligent agents</strong> that assist, predict, and act across workflows.</p><p>This means:</p><ul><li>Teams make faster, data driven decisions</li><li>Routine work is handled by AI agents</li><li>Human effort is redirected toward strategic outcomes</li></ul><p>The result is a smarter, more adaptive enterprise that delivers <strong>better customer experiences with confidence</strong>.</p><h3>Key Highlights of the Release</h3><h3>1. Agentforce Platform Expansion</h3><p>Agentforce is deeply embedded across Salesforce products, enhancing:</p><ul><li>Predictive intelligence</li><li>Generative AI capabilities</li><li>Workflow automation</li></ul><p>From <strong>Sales (now Agentforce Sales)</strong> to <strong>Service (Agentforce Service)</strong>, AI is becoming a built-in collaborator rather than an add-on.</p><h3>2. AI-Powered Customization &amp; Setup</h3><p>Admins now benefit from <strong>Setup with Agentforce (beta)</strong>:</p><ul><li>AI-assisted configuration</li><li>Faster setup processes</li><li>Reduced manual effort</li></ul><p>This lowers the barrier for complex customizations and accelerates implementation timelines.</p><h3>3. Enhanced Analytics Ecosystem</h3><p>Salesforce strengthens its analytics stack across:</p><ul><li>Tableau Next</li><li>CRM Analytics</li><li>Data 360</li></ul><p>Organizations can now:</p><ul><li>Generate deeper insights</li><li>Build smarter dashboards</li><li>Enable real-time decision-making</li></ul><h3>4. Automation Gets Smarter</h3><p>Automation tools like <strong>Flow Builder and Flow Orchestration</strong> are enhanced with AI support:</p><ul><li>Intelligent workflow recommendations</li><li>Cross-system integrations</li><li>Supply chain automation via Agentforce</li></ul><p>This transforms automation from rule-based to <strong>context-aware execution</strong>.</p><h3>5. Experience Cloud &amp; AI Search Optimization</h3><p>Experience Cloud now introduces:</p><ul><li>AI-powered search optimization</li><li>Improved content discoverability</li><li>Flexible design with expanded components</li></ul><p>This ensures better digital experiences for customers and partners.</p><h3>6. Developer &amp; Deployment Enhancements</h3><p>Developers gain improvements across:</p><ul><li>Apex, APIs, and Lightning components</li><li>Deployment tools</li><li>Integration capabilities via MuleSoft</li></ul><p>The focus is on <strong>scalability, performance, and seamless delivery</strong> of applications.</p><h3>7. Hyperforce &amp; Infrastructure Evolution</h3><p>Salesforce continues expanding <strong>Hyperforce</strong>:</p><ul><li>Availability in more regions</li><li>IPv6 readiness</li><li>Enhanced IP management</li></ul><p>This ensures better compliance, scalability, and global reach.</p><h3>8. Security &amp; Privacy Advancements</h3><p>Security remains a priority with updates like:</p><ul><li>Native Backup &amp; Recover</li><li>Privacy Request automation (Right to Be Forgotten)</li><li>Stricter app and API controls</li></ul><p>These features help organizations stay compliant and secure in an evolving digital landscape.</p><h3>Release Readiness: A Strategic Approach</h3><p>Salesforce emphasizes <strong>release preparedness</strong> through:</p><ul><li>Pre-release org access</li><li>Release Readiness Trailblazers community</li><li>Sandbox preview tools</li><li>Release in a Box kits</li></ul><p>Organizations are encouraged to:</p><ul><li>Test features early</li><li>Train users proactively</li><li>Align release updates with business goals</li></ul><h3>Why This Release Matters</h3><p>Spring ’26 is not just about new features, it’s about redefining how businesses operate:</p><p>Traditional ApproachAgentic ApproachManual processesAI-assisted workflowsReactive decisionsPredictive insightsTool-based workAgent-driven execution</p><p>This shift enables organizations to:</p><ul><li>Scale faster</li><li>Reduce operational overhead</li><li>Deliver hyper-personalized customer experiences</li></ul><h3>Final Thoughts</h3><p>The Salesforce Spring ’26 Release represents a pivotal moment in enterprise technology. By combining <strong>AI agents with human intelligence</strong>, Salesforce is setting a new standard for productivity, innovation, and customer success.</p><p>For professionals: especially those in consulting, development, and training, this release demands not just adoption, but <strong>strategic understanding</strong>. The future of Salesforce is no longer just cloud-based, it is <strong>agent-driven, intelligent, and autonomous</strong>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=0f028c97b383" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Manage Territory Models and Opportunity in Salesforce]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/manage-territory-models-and-opportunity-in-salesforce-2d2f10923a02?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/2d2f10923a02</guid>
            <category><![CDATA[salesforce-admin]]></category>
            <category><![CDATA[territory-management]]></category>
            <category><![CDATA[salesforce-opportunities]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Mon, 13 Apr 2026 09:38:31 GMT</pubDate>
            <atom:updated>2026-04-13T09:38:31.426Z</atom:updated>
            <content:encoded><![CDATA[<p>In Salesforce, territory management is important for enhancing the handling of opportunities and ensuring sales growth. The Salesforce CRM provides tools to manage territories so that we can improve the territory models efficiently in our org.</p><p>In this Salesforce tutorial, we will learn to <strong>manage territories and territory models for opportunities in Salesforce</strong> Lightning and Salesforce Classic Edition.</p><h3>What is Salesforce territory management</h3><p>In Salesforce, Territory Management is a feature that enables businesses to manage and organize their sales territory effectively. For example, a sales team’s designated geographic region for managing customer accounts and records like opportunity and leads is a sales territory. Salesforce’s Territory Management feature enhances sales processes and ensures managed sales.</p><h3>Manage Territories and Territory Models for Opportunities in Salesforce Lightning</h3><p>This section will discuss the territory management of the opportunities for the Salesforce Lightning edition.</p><h3>Enabling Territory Management in Salesforce Lightning</h3><p>To enable <strong>Territory Management</strong> in Salesforce, navigate to Lightning’s Setup page and follow the steps below.</p><p>1. On the <strong>Setup </strong>page of Salesforce Lightning, go to the<strong> Quick Find</strong> box and search territory, and from the options in the dropdown, select <strong>Territory Settings</strong>.</p><p>In the territory settings window, click <strong>Enable Enterprise Territory Management</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*GEfBt9FgROImr7yx" /></figure><p>2. In this step, select the default access levels for the users in the territory who can access the opportunity.</p><p>In this example, I have given all users the view and edit access, irrespective of who owns the opportunity.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*jkewEfNyMAw3JP6x" /></figure><p>3. On the same page, scroll down to the section <strong>Opportunity Territory Assignment</strong> and select the access for the parent territories. After this activate checkbox, <strong>Enable Filter-Based Opportunity</strong> <strong>Territory Assignment </strong>to apply filters during the assignment of territories.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*KE4TuLk6A5SMgtIx" /></figure><p>Now, we have successfully enabled the territory management for the org.</p><h3>How to create Territory Types and Territory Models in Salesforce Lightning</h3><p>As we enable territory management in the Salesforce environment, <strong>Territory Types</strong>, and <strong>Territory Models</strong> will be activated.</p><p>1. Go to the <strong>Quick Find</strong> box and search, then select <strong>Territory Types</strong>. In the territory types setup window, click the <strong>New Territory Type </strong>button.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*p7nIib-Y1nts-3E-" /></figure><p>2. In this step, go to the information section and enter the field Label, and the <strong>Territory type name</strong> will be auto-filled according to the entered label.</p><p>After this, you have to enter the priority of the territory type, like 001, 002, 005, 009, and so on. You don’t have to enter the priority in a serial number.</p><p>For example, if the company has more sales in <strong>Texas</strong>, it will be at priority 001, and out of 5 territories, if <strong>Colorado</strong> has the lowest sales, then we can assign the priority for it as 005, and in between, the sales increased for territory North Carolina then we can assign it as 002.</p><p>At last, click on the <strong>Save</strong> button.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*L9RVo6euN7j5KeaL" /></figure><p>Till now, we have created the <strong>Territory types</strong> with the relevant priorities. In the further steps, we will create the <strong>Territory models</strong> and assign the created territory types to them.</p><p>3. To create the Territory models, go to the <strong>Quick Find </strong>box on the setup page, then search and select <strong>Territory Models</strong>.</p><p>In the setup window of territory models, click on the button <strong>New Territory Model</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*aqv0O5rVA1nLtJtH" /></figure><p>4. Enter the <strong>Label</strong> for the new territory model, and the <strong>Territory Model Name</strong> will be auto-filled according to the entered Label field. As of now, the <strong>State</strong> field will appear as Planning.</p><p>At last, click on the <strong>Save</strong> button.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*1HUeLKtla-pi6G4z" /></figure><p>5. The territory model will be created; click the <strong>Activate</strong> button to activate it.</p><p>As we click on the <strong>Activate</strong> button, activating will take a while; after activation, the <strong>State</strong> field will change to <strong>Active</strong>.</p><p>6. After activation, the territory model is ready to use. Here, we will assign hierarchy models to this territory model, and for that, click on <strong>View Hierarchy</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*T-ziRgPBcj6C6zNj" /></figure><p>7. In the Territory model hierarchy chart, click <strong>Create Territory</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/776/0*bdgIONL3f-fGBwmF" /></figure><p>8. In this step, enter the below details to create a child territory of the territory model.</p><ul><li>Enter the Territory Label field. For example, I labeled it<strong> Opportunity Florida State</strong>.</li><li>The <strong>Territory Name</strong> will be auto-filled according to the entered label.</li><li>In the field <strong>Territory type</strong>, select the type of territory from the lookup list.</li><li>In the <strong>Territory Access Levels</strong> section, select the access level for the <strong>Opportunity</strong>. In this example, I have selected view ads view and edit for the associated accounts of the opportunity.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*1rq3MrqltDytQ6Rk" /></figure><p>9. Similarly, we have to create child territories for all the available territory types to have a lookup list of the territories.</p><p>After creating territories for all territory types, the hierarchy chart of the <strong>Territory model</strong> will appear as shown in the image below.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/915/0*O04RWfvOmHSelqoo" /></figure><p>Now that we have created the Territory models, we need to customize the Opportunity Page layout to make the territory field appear in the <strong>Opportunity record</strong> <strong>page</strong>.</p><h3>Add the Territory field to the page layout in Salesforce Lightning</h3><p>To Add the Territory field to the page layout, navigate to the setup page of Salesforce Lightning and follow the below steps.</p><p>1. On the setup page of Lightning, click on the <strong>Object Manager</strong> tab.</p><p>2. Search and select the <strong>Opportunity</strong> object in the object manager window.</p><p>3. In the setup window of the <strong>Opportunity</strong> object, click on the option <strong>Page Layout</strong> in the left sidebar. In the next window, click on <strong>Opportunity Layout</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*VaXttrqyz9nALeb5" /></figure><p>4. In the page layout setup, select <strong>Fields</strong> from the scroll bar at the top, then drag the <strong>Territory</strong> field to the Opportunity information section and click the <strong>Save</strong> button to apply changes.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*jLoe-766e_ATYO2f" /></figure><p>The territory field will be added to the record page layout on applying changes.</p><p>5. To view the territory field and assign territory to an opportunity, navigate to an Opportunity record. There, you will see the territory field in the edit window, and from here, you can assign territory to the opportunity.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*pXC4-AmdsY8xMAZS" /></figure><p>Now, we have successfully added the Territory field to the page layout of the Opportunity record page.</p><p>In this way, We can<strong> Manage Territories</strong> and<strong> Territory models</strong> for opportunities in Salesforce Lightning by following the above steps.</p><h3>Manage Territories and Territory Models for Opportunities in Salesforce Classic</h3><p>This section will discuss the territory management of the opportunities for the Salesforce Classic edition.</p><h3>Enabling Territory Management in Salesforce Classic</h3><p>1. Navigate to the setup page of Salesforce Classic, and in the <strong>Quick box</strong>, search for <strong>Manage Territories</strong>, then select <strong>Settings</strong> under the heading <strong>Manage Territories</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/232/0*G68hcOvvURlSacEI" /></figure><p>2. In the settings window, click on the button <strong>Enable Enterprise Territory Management</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*oJyewxmlh_bkrvK1" /></figure><p>3. After enabling the enterprise territory management, select the default opportunity access for users in a territory. After that, select the access for the users of the parent territory.</p><p>At last, click on the <strong>Save</strong> button to apply the changes.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*b25RrcRDcwJt6wVB" /></figure><p>Now, we have successfully enabled the territory management for the org. As we enable territory management, two additional fields will be visible:<strong> Territory types</strong> and <strong>Territory models</strong>.</p><h3>How to create Territory Types and Territory Models in Salesforce Classic</h3><p>To create Territory Types and Models, navigate to Salesforce Classic’s setup page and follow the steps below.</p><p>1. On the<strong> Setup</strong> page, go to the <strong>Administrator </strong>section in the left sidebar and select <strong>Manage territories</strong> -&gt; <strong>Territory types</strong>. We can also access this field from the quick find box.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/283/0*d89e28OJJK27zNo4" /></figure><p>2. In this window, click on the <strong>New Territory type</strong> button.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*9jTJBNN8LwDfwW1v" /></figure><p>3. To create a territory type, enter the Label for territory; this label can be any geographical division like<strong> city</strong>, <strong>state</strong>, or <strong>region</strong>. In this example, I have entered the label as Arizona State, and the <strong>Territory Type Name</strong> will be auto-filled according to the entered label.</p><p>After this, we have to set the priority of the territory type. For this territory type, I have set it as 3. At last, click on the <strong>Save</strong> button.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*hRbesXfdGvM4YQzc" /></figure><p>The priority in the territory is defined according to the performance ranking in any aspect. For example, if the company has the highest sales in <strong>Michigan</strong>, it will be at priority <strong>001</strong>. In the same way, out of all territories, if <strong>Colorado</strong> has the lowest sales, we can assign the priority as <strong>005</strong> or any lowest number according to the number of territories in the org.</p><p>In the further steps, we will create the <strong>Territory models</strong> and assign the created territory types to them.</p><p>4. To create the Territory models, go to the left sidebar on setup, and in the section Administrator, select <strong>Manage territories</strong> -&gt; <strong>Territory Models</strong>.</p><p>In the setup window of territory models, click on the button <strong>New Territory Model</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*M_pSOYfwy2lpqNEE" /></figure><p>5. In this step, enter the label for the territory model, and the <strong>Territory Model Name</strong> field will be auto-filled according to the entered Label.</p><p>At last, click on the <strong>Save</strong> button.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*_dkG4nwMj9n4SDp2" /></figure><p>6. Now, the territory model is created, and to add child territory to the territory model, click on <strong>View Hierarchy</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*GqYCXALnV-oyBRlZ" /></figure><p>7. To add territories in the territory model, we first need to activate the territory model, and for that, click on the <strong>Activate</strong> button.</p><p>It might take some time to activate, and after activation, click <strong>Create Territory</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*epB4rsoWZt-zr2ZJ" /></figure><p>8. Enter the following fields to create the territory for the territory model.</p><ul><li>Enter the <strong>Territory Label</strong> field. For example, I labeled it <strong>Colorado Opportunity</strong>.</li><li>The <strong>Territory Name</strong> will be auto-filled according to the entered label.</li><li>In the field <strong>Territory type</strong>, select the type of territory from the lookup list.</li><li>In the <strong>Territory Access Levels</strong> section, select the access level for the <strong>Opportunity</strong>. In this example, I have selected view ads view and edit for the associated accounts of the opportunity.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*jCbbIAzvphS4acKm" /></figure><p>In the same way, you have to create child territories for the territory types available in your organization.</p><p>9. The hierarchy chart will look as shown below after adding child territories to the territory model.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/724/0*GprhDzyk001oSmAm" /></figure><p>We have created the Territory models, now we need to customize the Opportunity Page layout to make the territory field appear in the <strong>Opportunity record</strong> <strong>page</strong>.</p><h3>Add the Territory field to the page layout in Salesforce Classic</h3><p>To add the Territory field to the page layout of the opportunity, navigate to the setup page of Salesforce Classic and follow the below steps.</p><p>1. On the setup page of Salesforce Classic, go to the build section in the left sidebar and select <strong>Customize</strong> -&gt; <strong>Opportunites</strong> -&gt; <strong>Page Layouts</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/272/0*5szx2kOQhbqYSPzk" /></figure><p>2. In the page layouts, select the default opportunity page layout.</p><p>3. In the Opportunity page layout setup, select <strong>Fields</strong> from the scroll bar at the top, then drag the <strong>Territory</strong> field to the <strong>Opportunity information</strong> section and click the <strong>Save</strong> button to apply changes.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*i4xkw4AooxZ_7ovH" /></figure><p>4. To view the territory field and assign territory to an opportunity, open the Opportunity tab and edit or create an opportunity record. There, you will see the territory field in the form, and from here, you can assign territory to the opportunity.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*auCCUdjQ2K8xGxtX" /></figure><p>Now, we have successfully added the <strong>Territory</strong> field to the page layout of the Opportunity record page.</p><p>In this way, We can<strong> Manage Territories</strong> and<strong> Territory models</strong> for opportunities in Salesforce Classic by following the above steps.</p><h3>Conclusion</h3><p>In Salesforce, territory management is very crucial when it comes to managing sales in the organization. We can enhance our sales process by assigning territories to opportunities, leads, and accounts.</p><p>In the above steps, we have learned about managing territories and territory models for Opportunities in Salesforce. In that process, we learned to enable territory management, creating Territory models and Types. After that, we added the territory field to the page layout of the Opportunity object.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2d2f10923a02" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[ Salesforce Chatter Tip: What Happens When You Mute a Post?]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/salesforce-chatter-tip-what-happens-when-you-mute-a-post-71756b37902d?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/71756b37902d</guid>
            <category><![CDATA[salesforce-tools]]></category>
            <category><![CDATA[salesforce-administrator]]></category>
            <category><![CDATA[salesforce-productivity]]></category>
            <category><![CDATA[salesforce]]></category>
            <category><![CDATA[salesforce-lightning]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Tue, 04 Nov 2025 22:11:52 GMT</pubDate>
            <atom:updated>2025-11-04T22:11:52.976Z</atom:updated>
            <content:encoded><![CDATA[<p>Salesforce Chatter keeps teams connected but sometimes, that connection gets a little <em>too</em> active.</p><p>If your feed is flooded with updates on a post you no longer want to follow, <strong>muting</strong> is your best friend.<br>Let’s explore how it works and test your knowledge with a quick MCQ!</p><h3>The Concept💡</h3><p>The <strong>Mute Post</strong> feature in Chatter lets users <strong>stop receiving updates or notifications</strong> about specific posts in their feed.</p><p>When you mute a post:</p><ul><li>You <strong>won’t get updates</strong> when others comment or like it.</li><li>The post <strong>still remains visible</strong> in the feed (it’s not deleted or hidden).</li><li>If someone <strong>@mentions you</strong> in the same post, it automatically <strong>unmutes</strong> for you again, so you don’t miss anything relevant.</li></ul><p>In short you’re not removing yourself from the post, just pausing notifications until it matters again.</p><h3>Implementation</h3><p>To mute a post:</p><ol><li>Click the <strong>dropdown arrow (⋮)</strong> on the post.</li><li>Select <strong>Mute</strong>.</li><li>Done : you’ll no longer receive notifications for that thread.</li></ol><p>If later someone <strong>@mentions</strong> you again, the post becomes <strong>unmuted automatically</strong> — ensuring you’re looped back in.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*1XZ79gj1vQ3fT4c7g2-_Bw.png" /><figcaption><em>(See image: Posts are automatically unmuted for mentioned users.)</em></figcaption></figure><h3>Purpose</h3><p>The goal is to reduce <strong>feed noise</strong> while keeping control over important updates.</p><p>It helps users:</p><ul><li>Stay focused on relevant conversations.</li><li>Avoid unnecessary alerts from highly active threads.</li><li>Re-engage automatically if tagged again.</li></ul><h3>The MCQ</h3><p><strong>Question:</strong><br> An inside sales rep doesn’t want to keep receiving updates on a busy Chatter post. The Salesforce Admin suggests muting it. What’s true about the <em>Mute Post</em> feature?</p><p><strong>Options:</strong><br> A. A muted post will be unmuted for a user who is @mentioned in the post<br> B. Muted posts cannot be viewed after they have been muted<br> C. Muting a post removes it from all feeds<br> D. Posts can only be muted from Setup</p><h3>Correct Answer: A. Muted post will be unmuted for a user who is @mentioned in the post</h3><p><strong>Why it’s correct:</strong><br> When a user is tagged or mentioned in a muted post, Salesforce automatically <strong>unmutes</strong> it for them to ensure they don’t miss key updates.</p><p><strong>Why others are incorrect:</strong></p><ul><li><strong>B. Muted posts can’t be viewed:</strong> False — muted posts still appear in feeds.</li><li><strong>C. Removes from all feeds:</strong> False — it only stops updates, not visibility.</li><li><strong>D. Only from Setup:</strong> False — users mute posts directly from the <strong>post dropdown menu</strong> (⚙️ → Mute).</li></ul><h3>Objective Mapping</h3><p><strong>Exam Objective (Salesforce Admin Exam):</strong><br> <em>Collaboration and Productivity</em> → Describe Chatter features, post visibility, and feed settings.</p><p><strong>Practical Objective:</strong><br> Enable users to manage feed clutter effectively while staying responsive to direct mentions.</p><h3>⚙️ 🔗 Salesforce Reference</h3><p><a href="https://help.salesforce.com/s/articleView?language=en_US&amp;id=sf.collab_feed_mute.htm&amp;type=5">Salesforce Help: Mute a Post</a></p><h3>Quick Takeaway</h3><p>“Mute” doesn’t mean goodbye : it just means “Not now”!</p><blockquote><em>Stay focused, reduce noise, and let @mentions pull you back when needed.</em></blockquote><p>For more Salesforce productivity tips and admin insights — <br> Follow me on <a href="https://www.linkedin.com/in/sanskriti-joshi/">LinkedIn</a> ✨</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=71756b37902d" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Salesforce Sharing Model Simplified: “Controlled by Parent” in Action]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/salesforce-sharing-model-simplified-controlled-by-parent-in-action-747e8c504e7c?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/747e8c504e7c</guid>
            <category><![CDATA[sales-development]]></category>
            <category><![CDATA[salesforce-administrator]]></category>
            <category><![CDATA[salesforce-tools]]></category>
            <category><![CDATA[salesforce-productivity]]></category>
            <category><![CDATA[salesforce]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Sun, 02 Nov 2025 19:18:25 GMT</pubDate>
            <atom:updated>2025-11-02T19:18:25.138Z</atom:updated>
            <content:encoded><![CDATA[<p>Ever wondered how Salesforce decides who can access child records like <strong>Contacts</strong> under <strong>Accounts</strong>?</p><p>Sometimes, the child doesn’t need its own access settings because it inherits everything from the parent.<br>That’s the magic of <strong>Controlled by Parent</strong>.</p><h3>The Concept 💡</h3><p><strong>Organization-Wide Defaults (OWD)</strong> set the baseline access for all records in an org.</p><p>When you choose <strong>“Controlled by Parent”</strong> for a child object (like <strong>Contact</strong> under <strong>Account</strong>), Salesforce automatically applies the parent record’s sharing settings.</p><p>In short:<br> If a user has access to an <strong>Account</strong>, they’ll have the same access level (Read/Edit/Delete) to all <strong>Contacts</strong> linked to that Account.</p><p>No need to create additional sharing rules!</p><h3>Purpose</h3><p>This setting is ideal when:</p><ul><li>You want consistent sharing behavior between related objects.</li><li>Contacts, Cases, or Orders are logically tied to their parent Accounts.</li><li>You want Account owners to control all related records automatically.</li></ul><p>It reduces complexity, prevents redundant sharing rules, and ensures that data security aligns with business hierarchy.</p><h3>⚙️ Real-Life Implementation</h3><p>To configure this:</p><p>Go to <strong>Setup → Sharing Settings → </strong>Under “Default Internal Access,” <strong>→ </strong>set <strong>Contact = Controlled by Parent.</strong></p><p>Click <strong>Save.</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*c8bdxOrqavbq1c5pEyvKSA.png" /><figcaption><em>(Contacts inherit access from Accounts when “Controlled by Parent” is selected.)</em></figcaption></figure><p>This ensures Account owners can view and edit all Contacts linked to their Accounts automatically and securely.</p><h3>The MCQ</h3><p><strong>Question:</strong><br> Users need edit access to all Contacts associated with Accounts they own. Which OWD sharing setting can meet this requirement?</p><p><strong>Options:</strong><br> A. Private<br> B. Controlled by Parent<br> C. Public Read/Write</p><h3>Correct Answer: B. Controlled by Parent</h3><p><strong>Why it’s correct:</strong><br> With <strong>Controlled by Parent</strong>, Account owners automatically gain the same access level to their related Contacts — no need for manual sharing.</p><p><strong>Why others are incorrect:</strong></p><ul><li><strong>A. Private:</strong> Restricts access to record owners only — not suitable.</li><li><strong>C. Public Read/Write:</strong> Allows all users org-wide to edit Contacts — too permissive.</li></ul><h3>Objective Mapping</h3><p><strong>Exam Objective (Salesforce Admin Exam):</strong><br> <em>Security and Access</em> → Explain how OWDs determine baseline record access and when to use “Controlled by Parent.”</p><p><strong>Practical Objective:</strong><br> Implement secure, scalable data-sharing models by leveraging parent-child access inheritance for related objects.</p><h3>🔗 Salesforce Reference</h3><ul><li><a href="https://help.salesforce.com/s/articleView?id=security_sharing_owd_about.htm&amp;type=0">Salesforce Help: Define Organization-Wide Defaults</a></li><li><a href="https://help.salesforce.com/s/articleView?language=en_US&amp;id=admin_sharing.htm&amp;type=0">Salesforce Help: About Sharing Settings</a></li></ul><h3>Quick Takeaway</h3><p>“Controlled by Parent” = <em>Access inheritance simplified.</em></p><blockquote><em>“Let the Account decide — who sees and edits its Contacts.” 👑</em></blockquote><p>For more Salesforce insights and exam prep stories — <br>Follow me on <a href="https://www.linkedin.com/in/sanskriti-joshi/">LinkedIn</a> ✨</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=747e8c504e7c" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Salesforce List Views: Who Can You Share Them With?]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/salesforce-list-views-who-can-you-share-them-with-5deb07a6c280?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/5deb07a6c280</guid>
            <category><![CDATA[salesforce]]></category>
            <category><![CDATA[salesforce-administration]]></category>
            <category><![CDATA[salesforce-development]]></category>
            <category><![CDATA[salesforce-productivity]]></category>
            <category><![CDATA[salesforce-lightning]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Sat, 01 Nov 2025 19:26:35 GMT</pubDate>
            <atom:updated>2025-11-01T19:26:35.306Z</atom:updated>
            <content:encoded><![CDATA[<p>Ever created a <strong>List View</strong> in Salesforce and wanted to share it with a teammate only to realize the <em>“Who sees this list view?”</em> option isn’t showing? 🤔</p><blockquote>Let’s unpack how list view sharing really works in Lightning Experience, followed by a quick test of your understanding.</blockquote><h3>The Concept 💡</h3><p><strong>List Views</strong> help users filter, organize, and display records that meet specific criteria.<br>When creating a list view, you see the <strong>“Who sees this list view?”</strong> section, which controls visibility.</p><p>The available sharing options depend on <strong>user permissions. </strong>specifically, whether the creator has the ability to make list views public.</p><p>If a user doesn’t have the <strong>Manage Public List Views</strong> permission, they can only create <strong>private</strong> list views visible to themselves.</p><h3>Purpose</h3><p>This design ensures that only authorized users (like admins or power users) can create or share list views across teams or roles maintaining control over org-wide data visibility.</p><p>It helps:</p><ul><li>Prevent unauthorized sharing of sensitive data</li><li>Maintain clean and standardized views for all users</li><li>Empower admins to manage data access efficiently</li></ul><p>Admins can check or grant permissions via Setup:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hM4Isw6Mqg6mUqYGPfi7xw.png" /><figcaption><strong>Setup → Profiles → Administrative Permissions → Manage Public List Views</strong></figcaption></figure><p><em>(See image: This permission controls whether users can share list views publicly.)</em></p><h3>The MCQ</h3><p><strong>Question:</strong><br> A user created a new list view and wants to share it with a colleague. Which statement correctly describes list view sharing settings?</p><p><strong>Options:</strong><br> A. The user who created it always has the option to share it publicly<br> B. The option to share it to all users is always available<br> C. It depends on whether the creator has the required permission via profile or permission set<br> D. Only the creator can access it at any time</p><h3>Correct Answer: C. It depends on whether the user creating the list view has the necessary permission via their profile or permission set</h3><p><strong>Why it’s correct:</strong><br> Only users with the <strong>“Manage Public List Views”</strong> permission (from their Profile or Permission Set) can share a list view with all users, specific roles, or public groups.</p><p><strong>Why others are incorrect:</strong></p><ul><li><strong>A. Always has option:</strong> Not true : depends on permissions.</li><li><strong>B. Always available:</strong> No, sharing options are restricted by security settings.</li><li><strong>D. Only the creator can access:</strong> Incorrect : list views can be shared if permissions allow.</li></ul><h3>Objective Mapping</h3><p><strong>Exam Objective (Salesforce Admin Exam):</strong><br> <em>Object Manager and Lightning App Builder</em> → Describe how to create, modify, and share list views.</p><p><strong>Practical Objective:</strong><br> Understand the <strong>impact of administrative permissions</strong> on sharing and collaboration within Salesforce UI customization.</p><h3>⚙️ Real-Life Implementation</h3><p>In real-world orgs, this comes into play when:</p><ul><li>Sales managers want to share pipeline views with teams.</li><li>Service leaders share open case lists with specific queues.</li><li>Admins standardize common record filters across departments.</li></ul><h3>🔗 Salesforce Reference</h3><p><a href="https://help.salesforce.com/s/articleView?language=en_US&amp;id=sf.customviews_lex.htm&amp;type=5">Create or Edit List Views in Lightning Experience</a></p><h3>Quick Takeaway</h3><p>Not all users can share list views and that’s a good thing.</p><blockquote><em>“If you can’t see the ‘Who sees this list view?’ option, check your permissions, not your patience.” 😉</em></blockquote><p>For more quick Salesforce insights and admin prep tips — <br>Follow me on <a href="https://www.linkedin.com/in/sanskriti-joshi/">LinkedIn</a> ✨</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5deb07a6c280" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Outlook Integration: Streamlining Sales Reps’ Workflows with Salesforce]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/outlook-integration-streamlining-sales-reps-workflows-with-salesforce-ff6c1e970a0b?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/ff6c1e970a0b</guid>
            <category><![CDATA[salesforce-admin]]></category>
            <category><![CDATA[salesforce-productivity]]></category>
            <category><![CDATA[salesforce-development]]></category>
            <category><![CDATA[salesforce-administrator]]></category>
            <category><![CDATA[salesforce]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Fri, 31 Oct 2025 19:50:47 GMT</pubDate>
            <atom:updated>2025-10-31T19:50:47.678Z</atom:updated>
            <content:encoded><![CDATA[<p>Sales reps spend most of their day in Outlook managing emails, meetings, and contacts.<br>But what if they could link all of that activity directly to Salesforce records <em>without ever leaving their inbox</em>?</p><blockquote>That’s where <strong>Outlook Integration</strong> comes in. Let’s break it down, and then test your understanding with an MCQ.</blockquote><h3>The Concept 💡</h3><p><strong>Outlook Integration</strong> connects Salesforce with <strong>Microsoft Outlook and Exchange</strong>, letting users relate emails, events, and contacts directly to Salesforce records.</p><p>This integration adds a <strong>Salesforce side panel</strong> inside Outlook, showing contextual CRM data like Accounts, Contacts, Opportunities, and Cases, next to every email.</p><p>Admins can also pair it with <strong>Lightning Sync</strong> (now replaced by Einstein Activity Capture) to sync contacts and events automatically.</p><h3>Purpose</h3><p>The purpose is simple:</p><p>Empower reps to work smarter, not harder keeping Salesforce data updated straight from Outlook.</p><p>This integration helps:</p><ul><li>Reduce manual data entry</li><li>Keep CRM data accurate in real-time</li><li>Improve adoption by letting users stay in Outlook while keeping Salesforce records fresh</li></ul><h3>The MCQ</h3><p><strong>Question:</strong><br> Global Technologies wants to let sales reps relate emails, contacts, and events in Outlook and Exchange with Salesforce records. What should the admin configure?</p><p><strong>Options:</strong><br> A. Lightning Sync<br> B. Outlook-Salesforce Extender<br> C. Salesforce for Outlook<br> D. Outlook Integration</p><h3>Correct Answer: D. Outlook Integration</h3><p><strong>Why it’s correct:</strong><br> Outlook Integration is Salesforce’s <strong>modern, Lightning-compatible</strong> solution that allows users to relate Outlook items (emails, events, contacts) directly to Salesforce records.</p><p><strong>Why others are incorrect:</strong></p><ul><li><strong>A. Lightning Sync:</strong> Retired; replaced by <em>Einstein Activity Capture</em>.</li><li><strong>B. Outlook-Salesforce Extender:</strong> No such Salesforce feature exists.</li><li><strong>C. Salesforce for Outlook:</strong> Legacy product — retired and unsupported in Lightning Experience since Winter ’21.</li></ul><h3>Objective Mapping</h3><p><strong>Exam Objective:</strong> <em>Productivity and Collaboration</em><br> <strong>Detailed Objective:</strong> Describe the capabilities of activity management and email integration in Salesforce.</p><h3>Real-Life Implementation</h3><p>Admins can set it up from:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*z_3YuyHFEwCdsfi9fEw5fw.png" /><figcaption><strong>Setup &gt; Outlook Integration and Einstein Activity Capture &gt; Enable Outlook Integration.</strong></figcaption></figure><p>Then, users simply install the <strong>Salesforce Add-In</strong> from the Microsoft AppSource store.<br> Once enabled, reps can:</p><ul><li>Relate Outlook emails or events to Accounts, Opportunities, or Cases.</li><li>Log interactions to Salesforce with one click.</li><li>Access CRM insights without switching tabs.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*SxaqVOoGY9SUOmXSu85CIQ.png" /></figure><p><em>(Emails and events can be related to Salesforce records directly within Outlook.)</em></p><h3>🔗 Salesforce Reference</h3><ul><li><a href="https://help.salesforce.com/s/articleView?language=en_US&amp;id=sf.app_for_outlook_user_setup_1.htm&amp;type=5">Salesforce Help: Set Up Outlook Integration</a></li><li><a href="https://trailhead.salesforce.com/content/learn/modules/outlook_integration/outlook_integration_unit_3">Trailhead: Learn Outlook Integration</a></li></ul><h3>Quick Takeaway</h3><p>With Outlook Integration, sales reps don’t just send emails they build relationships and keep Salesforce data accurate at the same time.</p><blockquote><em>“One inbox. One CRM. Double productivity.”</em></blockquote><p>For more Salesforce admin insights and certification prep — <br>Follow me on <a href="https://www.linkedin.com/in/sanskriti-joshi/">LinkedIn</a> 💬</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ff6c1e970a0b" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[What Happens When You Delete a Field in Salesforce?]]></title>
            <link>https://medium.com/@sanskriti.upmanyu/what-happens-when-you-delete-a-field-aa4877460359?source=rss-622837910b6e------2</link>
            <guid isPermaLink="false">https://medium.com/p/aa4877460359</guid>
            <category><![CDATA[salesforce-developer]]></category>
            <category><![CDATA[salesforce]]></category>
            <category><![CDATA[salesforce-administrator]]></category>
            <category><![CDATA[salesforce-object]]></category>
            <category><![CDATA[salesforce-productivity]]></category>
            <dc:creator><![CDATA[Sanskriti Upmanyu]]></dc:creator>
            <pubDate>Thu, 30 Oct 2025 14:55:57 GMT</pubDate>
            <atom:updated>2025-10-30T14:59:43.826Z</atom:updated>
            <content:encoded><![CDATA[<p><strong>As Salesforce Admins, we often create fields to capture business-specific data. But what happens when one of those fields is no longer needed and you decide to delete it?</strong></p><blockquote><strong>Let’s explore this concept and test your understanding with a quick MCQ below.</strong></blockquote><h3>The Concept 💡</h3><p>When you delete a <strong>custom field</strong> in Salesforce, it’s not gone forever immediately.<br> Salesforce moves deleted fields to a <strong>“Deleted Fields”</strong> section in the object manager, where they remain recoverable for <strong>15 days</strong>.</p><p>After that 15-day period, the field along with all its stored data is permanently erased.</p><p>Here’s what else happens when you delete a field:</p><ul><li>All <strong>dependent fields</strong> or <strong>field dependencies</strong> are removed.</li><li>Any <strong>formulas, workflows, or rules</strong> referencing the field are impacted.</li><li>You’ll see a warning message before confirming deletion.</li></ul><h3>Purpose</h3><p>The goal behind this retention window is to provide admins a <strong>grace period</strong> to recover accidentally deleted fields, ensuring no critical business data is lost prematurely.</p><p>This safeguard allows you to undo mistakes before permanent loss.</p><h3>The MCQ</h3><p><strong>Question:</strong><br> An administrator deletes a custom text field on the Account object. What is true regarding a deleted field?</p><p><strong>Options:</strong><br> A. It can be recovered within 15 days of deletion<br> B. It can be recovered within 30 days of deletion<br> C. It can never be recovered<br> D. It can be recovered at any time</p><h3>Correct Answer: A. It can be recovered within 15 days of deletion</h3><p><strong>Why it’s correct:</strong><br> Salesforce retains deleted custom fields in the “Deleted Fields” list for 15 days, during which you can <strong>undelete</strong> them with all their data intact.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*mEVFM_sM8ugZtjVkUfJtnQ.png" /></figure><p><strong>Why others are incorrect:</strong></p><p><strong>B. 30 days:</strong> The retention period is <em>15 days</em>, not 30.</p><p><strong>C. Never recovered:</strong> False — recovery is possible within the grace period.</p><p><strong>D. Recovered any time:</strong> Once 15 days pass, both field and data are permanently deleted.</p><h3>Objective Mapping</h3><p><strong>Practical Objective:</strong> Understand field management and recovery within the Object Manager.<br> <strong>Exam Objective (Salesforce Admin Exam):</strong><br> <em>Object Manager and Lightning App Builder</em> → Explain how to create, delete, and restore fields and their implications.</p><h3>Real-Life Implementation</h3><p>In real-world orgs, this knowledge saves you from panic moments when someone deletes a critical field.<br>Admins can simply head to:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*dUPB0PI5TET5Hh9CQkcybg.png" /><figcaption><strong>Setup → Object Manager → [Object Name] → Fields &amp; Relationships → Deleted Fields</strong></figcaption></figure><p>Always remember to perform a <strong>Data Export</strong> before deleting important fields to preserve historical data.</p><h3>🔗 Salesforce Reference</h3><p><a href="https://help.salesforce.com/s/articleView?id=fields_managing_deleted_fields.htm&amp;language=en_US&amp;type=5">Managing Deleted Fields in Salesforce</a></p><h3>Quick Takeaway</h3><p>Deleting a field isn’t always final: Salesforce gives you <strong>15 days to change your mind.</strong><br>Use that safety net wisely before making permanent changes.</p><p>For more Salesforce admin tips and certification insights — <br> Follow me on <a href="https://www.linkedin.com/in/sanskriti-joshi/">LinkedIn</a> ✨</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=aa4877460359" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>