Skip to main content

Command Palette

Search for a command to run...

๐Ÿค– Day 6: Automating Business Processes in Salesforce

Published
โ€ข7 min read
๐Ÿค– Day 6: Automating Business Processes in Salesforce
C

I am a senior software developer with extensive experience in leading teams and building complex web platforms, including educational and healthcare-focused applications. I have demonstrated deep technical expertise in backend development, AI integration, and cloud technologies, which is further evidenced by my peer-reviewed publications in real-time object detection and AI. My work has earned recognition through citations and contributions to platforms indexed in Google Scholar and ResearchGate. Beyond my technical roles, I am actively involved in mentorship through ADPList and serve as an Alumni Advisory Board Member for the Generation Initiative, showcasing my commitment to advancing digital skills and cloud technology.

Introduction

Welcome to Day 6 of my Salesforce Administrator learning journey! Today was all about automation โ€“ teaching Salesforce to do repetitive tasks automatically so users can focus on more important work.

I learned how to use Workflow Rules and Process Builder to automate business processes without writing a single line of code. This is one of the most powerful features of Salesforce and a critical skill for any Salesforce Administrator.


What I Built Today

I created automated processes for a housing association's repair management system:

1. Auto-Assign Emergency Repairs (Workflow Rule)

Problem: Emergency repairs were being manually assigned, causing delays.

Solution: Created a Workflow Rule that automatically assigns emergency repairs to the "Emergency Repairs Team" queue as soon as they're logged.

How it works:

  • Trigger: When a repair request is created

  • Condition: Priority = "Emergency"

  • Action: Update Owner field to "Emergency Repairs Team" queue

Impact: Emergency repairs are now assigned instantly, reducing response time.


2. Send Email Alerts for High-Priority Repairs (Workflow Rule)

Problem: Managers weren't being notified of urgent repairs in real-time.

Solution: Created a Workflow Rule that sends an email alert to the repairs manager when an emergency repair is logged.

How it works:

  • Trigger: When a repair request is created

  • Condition: Priority = "Emergency"

  • Action: Send email using custom template with repair details

Impact: Managers are immediately notified and can take action faster.


3. Create Follow-Up Tasks for Overdue Repairs (Workflow Rule)

Problem: Overdue repairs were being forgotten.

Solution: Created a Workflow Rule that automatically creates a high-priority task for the repair owner when a repair becomes overdue.

How it works:

  • Trigger: When a repair request is created or edited

  • Condition: Status = "Overdue"

  • Action: Create task with due date = tomorrow

Impact: Ensures overdue repairs are followed up promptly.


4. Update Tenancy Status When Move-In Date Passes (Process Builder)

Problem: Tenancy records were staying in "Pending" status even after tenants moved in.

Solution: Created a Process Builder flow that automatically updates tenancy status to "Active" when the move-in date is reached.

How it works:

  • Trigger: When a tenancy record is created or edited

  • Condition: Move-In Date โ‰ค Today AND Status = "Pending"

  • Action: Update Status to "Active"

Impact: Tenancy records are always up-to-date without manual intervention.


5. Update Property Status When Tenancy Ends (Process Builder)

Problem: When a tenancy ended, the property status wasn't being updated, causing confusion about availability.

Solution: Created a Process Builder flow that automatically updates the related property's status to "Available" when a tenancy ends.

How it works:

  • Trigger: When a tenancy record is edited

  • Condition: Status changes to "Ended"

  • Action: Update related Property record's status to "Available"

Impact: Property availability is always accurate, improving operational efficiency.

Key Learning: This demonstrates Process Builder's ability to update related records, which Workflow Rules cannot do.


6. Post to Chatter for High-Priority Repairs (Process Builder)

Problem: The repairs team wasn't being notified in real-time about urgent repairs.

Solution: Created a Process Builder flow that posts to the "Repairs Team" Chatter group when a high-priority repair is logged.

How it works:

  • Trigger: When a repair request is created

  • Condition: Priority = "High" OR "Emergency"

  • Action: Post to Chatter with repair details

Impact: Team collaboration is improved with instant notifications.


Workflow Rules vs. Process Builder: When to Use Each

One of the key lessons today was understanding when to use Workflow Rules vs. Process Builder.

Use Workflow Rules when:

  • โœ… You need simple, single-object automation

  • โœ… You're updating fields on the same record

  • โœ… You're sending email alerts or creating tasks

  • โœ… The logic is straightforward (one condition, one action)

Use Process Builder when:

  • โœ… You need to update related records (parent or child)

  • โœ… You need multiple criteria branches (if-then-else logic)

  • โœ… You need to create new records

  • โœ… You want to post to Chatter

  • โœ… You need to call Apex code

Example:

  • Workflow Rule: "When Priority = Emergency, send email" โœ…

  • Process Builder: "When Tenancy ends, update the related Property record" โœ…


Order of Execution: Why It Matters

Today I learned about Salesforce's Order of Execution โ€“ the sequence in which Salesforce processes automation when a record is saved.

Simplified Order:

  1. Validation Rules (fire first)

  2. Workflow Rules (field updates only)

  3. Process Builder

  4. Workflow Rules (email alerts and tasks)

Why this matters:

  • If a validation rule fails, no automation runs

  • Workflow field updates happen BEFORE Process Builder

  • Multiple automations on the same object can cause infinite loops

Best Practice: Use only ONE automation tool per object to avoid conflicts.


Testing My Automation

Testing is critical to ensure automation works as expected. Here's how I tested each automation:

Test 1: Emergency Repair Auto-Assignment

  1. Created a repair request with Priority = "Emergency"

  2. Result: โœ… Owner automatically changed to "Emergency Repairs Team"

  3. Result: โœ… Email alert received in inbox

Test 2: Overdue Repair Task Creation

  1. Created a repair request with Status = "Overdue"

  2. Result: โœ… Task created with subject "Follow up on overdue repair request"

  3. Result: โœ… Task due date = tomorrow

Test 3: Tenancy Status Update

  1. Created a tenancy with Move-In Date = yesterday and Status = "Pending"

  2. Result: โœ… Status automatically changed to "Active"

Test 4: Property Status Update

  1. Changed a tenancy status to "Ended"

  2. Result: โœ… Related property status changed to "Available"

Test 5: Chatter Post

  1. Created a repair request with Priority = "High"

  2. Result: โœ… Chatter post appeared on the record

All tests passed! โœ…


Challenges I Faced

Challenge 1: Email Template Merge Fields

Problem: My email template wasn't displaying the property name correctly.

Solution: I learned that merge fields use the format {!Object.Field}. For lookup fields, you need to use {!Object.Lookup_Field__r.Name} to display the related record's name.

Example:

  • โŒ {!HOA_Repair_Request__c.Property__c} (displays ID)

  • โœ… {!HOA_Repair_Request__c.Property__r.Name} (displays property name)


Challenge 2: Process Builder Not Firing

Problem: My Process Builder flow wasn't updating the property status.

Solution: I forgot to activate the process! Process Builder flows must be activated before they run. Also, I learned to check the "Only when a record is updated to meet the criteria" option to prevent the process from firing on every edit.


Challenge 3: Understanding "Immediate" vs. "Scheduled" Actions

Problem: I was confused about when to use immediate vs. scheduled actions.

Solution:

  • Immediate Actions: Run as soon as the criteria are met (e.g., send email immediately)

  • Scheduled Actions: Run at a specific time in the future (e.g., send reminder email 3 days before due date)

For today's use cases, I used immediate actions.


Key Takeaways

  1. โœ… Automation saves time โ€“ What used to take manual effort now happens automatically

  2. โœ… Choose the right tool โ€“ Workflow Rules for simple tasks, Process Builder for complex processes

  3. โœ… Always test โ€“ Create test records to verify automation works as expected

  4. โœ… Document your automation โ€“ Future admins (and future you!) will thank you

  5. โœ… Understand order of execution โ€“ Prevents conflicts and unexpected behavior

  6. โœ… Process Builder can update related records โ€“ This is a game-changer for complex processes


Real-World Application

These automation skills directly apply to the Salesforce Administrator role at Incommunities:

  • Auto-assigning cases based on priority or category

  • Sending email alerts to managers for urgent issues

  • Creating tasks for follow-ups

  • Updating related records (e.g., updating property status when tenancy changes)

  • Posting to Chatter for team collaboration

Automation is one of the most valuable skills a Salesforce Admin can have because it directly improves efficiency and user satisfaction.


What's Next?

Tomorrow (Day 7), I'll be learning Flow Builder โ€“ the modern, more powerful successor to Workflow Rules and Process Builder. Flow Builder can do everything Process Builder can do, plus:

  • User interaction (screens and forms)

  • Complex logic (loops, decisions)

  • Delete records

  • Integration with external systems

I'm excited to level up my automation skills!


Resources

Thanks for following along! If you're also learning Salesforce, I'd love to hear about your automation experiences. Drop a comment below! ๐Ÿ‘‡

#Salesforce #SalesforceAdmin #Automation #LearningInPublic #Day6