Skip to main content

#FlowBuilder3 debatiendo

Hello Trailblazer Community, 

 

I am a Salesforce developer and long-time security operations professional looking to build a custom portfolio/proof-of-concept project. My goal is to configure a Salesforce Developer Org to mimic the core behavior, data models, and logic of enterprise security workforce tools—specifically mirroring the predictive dispatch and incident tracking functionality of Allied Universal’s HELIAUS platform.

I am looking for architectural advice on standard object mapping, custom object schemas, and automation design to achieve this single goal: 

 

Core Objective: Predictive Guard Dispatch & Incident Triage

  • The Goal: Field guards use mobile devices to log incidents/checkpoints, and an engine tracks trends to suggest proactive patrol routes and risk mitigations.
  • My Salesforce Strategy: I am leveraging Service Cloud. I plan to map distinct Client Locations/High-Rises to the standard Account object and physical sub-zones/buildings to the Location object. I will use Cases to represent security incidents (e.g., trespass, maintenance hazards, medical emergencies) with custom status picklists for Triage Levels.
  • The Architecture Dilemma: I want the system to dynamically suggest "Proactive Guard Patrol Tasks" based on historic Case density at a specific Location. For example, if a high-rise has a spike in trespass Cases on the loading dock between 18:00 and 22:00, the system should automatically generate a high-priority Patrol Task for the guard on duty during those hours.

My Questions for the Community:

  1. What is the most scalable way to architect this predictive routing/task element? Should I use Flow Builder to trigger these proactive Tasks using a scheduled flow that evaluates historic Case density, or is this a viable use-case for Einstein Prediction Builder / Agentforce in a free developer sandbox environment?
  2. How should I structure a junction object between Locations and Cases if a single incident overlaps multiple physical zones, ensuring the data remains clean for analytics reporting?

I would love to hear your thoughts on custom data models, pitfalls with predictive logic in Flow, or integration ideas for feeding mock security data into Salesforce.

Thank you in advance for your insights! 

 

Future Roadmap Goals (For Future Sprints):

  • Future Goal 2: High-Volume Security Roster Scheduling, Guard Card certification tracking, and Overtime (OT) mitigation logic using custom objects or Field Service Cloud.
  • Future Goal 3: Conversational AI Automated Screening (Cloning the "Lisa" recruitment bot) using Einstein Bots or Agentforce to feed the applicant pipeline.

#Service Cloud  #FlowBuilder  #Einstein Prediction Builder  #Agentforce  #Salesforce Developer  #Salesforce Field Service

1 respuesta
  1. 8 jul, 16:09

    Excellent use case and a strong example of extending Salesforce beyond traditional CRM workflows.

    From an architectural perspective, I would recommend treating predictive patrol generation as a separate domain rather than creating Tasks directly from incident records. A dedicated custom object such as Patrol Recommendation or Risk Assessment provides a cleaner separation between operational incidents and system-generated intelligence. This approach improves auditability, reporting, and future scalability as the recommendation engine becomes more sophisticated.

    For the data model, your proposed Account → Location hierarchy is sound. To support incidents affecting multiple physical zones, I would introduce a junction object between Cases and Zones/Locations. This avoids data duplication, preserves referential integrity, and enables more accurate analytics when evaluating incident concentration across overlapping areas.

    Regarding predictive logic, a layered architecture would likely be most scalable:

    • Case creation and enrichment via Record-Triggered Flows 

    • Scheduled aggregation of incident metrics into summary objects (by Zone, Incident Type, Time Window, and Severity) 

    • Recommendation generation based on configurable risk thresholds 

    • Patrol assignment and dispatch workflows consuming those recommendations

    I would caution against calculating historical density directly against large Case datasets within Flow as volume grows. Pre-aggregated metrics will perform significantly better and align more closely with enterprise-scale security operations platforms.

    For a portfolio project, Flow Builder is more than capable of demonstrating the core concept. However, Agentforce could add significant value by providing contextual reasoning around recommendations—for example, explaining why a patrol was suggested, identifying recurring incident patterns, or proposing mitigation strategies based on historical trends. This would make the solution feel closer to a modern intelligence-driven operations platform rather than a rules-based dispatch system.

    Looking ahead, Field Service could also become a natural extension of this architecture. Guards can be modeled as service resources, patrols as work orders or service appointments, and optimization logic can evolve toward workforce scheduling, route optimization, certification tracking, and overtime management.

    Overall, the architecture direction is solid. The key design principle I would emphasize is separating raw operational events (Cases) from analytical intelligence (risk scoring, recommendations, patrol generation). That separation will make the platform significantly easier to scale, maintain, and evolve as additional predictive and AI capabilities are introduced.

0/9000

Solution to Compare Salesforce IDs

 

Purpose

 

This formula converts the Salesforce ID into a numeric value, allowing you to compare IDs directly using greater-than (>) or less-than (<) operators. 

 

  1. Define IdChars: IdChars = '01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'    

    This string represents the character set used in Salesforce IDs.

  2. Convert ID to Numeric Value:    

    Use the

    FIND function to locate the position of each character in the IdChars string and calculate a numeric value for the ID.    

    Example formula:

(FIND(MID(AccountId, 4, 1), IdChars) - 1) * 100000000000000 +(FIND(MID(AccountId, 5, 1), IdChars) - 1) * 1000000000000 +(FIND(MID(AccountId, 10, 1), IdChars) - 1) * 10000000000 +(FIND(MID(AccountId, 11, 1), IdChars) - 1) * 100000000 +(FIND(MID(AccountId, 12, 1), IdChars) - 1) * 1000000 +(FIND(MID(AccountId, 13, 1), IdChars) - 1) * 10000 +(FIND(MID(AccountId, 14, 1), IdChars) - 1) * 100 +(FIND(MID(AccountId, 15, 1), IdChars) - 1)

 

Now you can compare ID Numeric Value 1 with ID Numeric Value 2 using greater-than (>) or less-than (<) operators. 

 

#Flow Formula  #FlowBuilder

 

 

#Flow

0/9000

🚀 Sort and Edit in Flow Data Table component | Save Changes within Flow 🚀

 

 

In this quick tutorial, I'll show you exactly how to use the new features of the data table component from Salesforce's Spring 26 release. Learn how to implement inline editing and column sorting directly within your screenflow, making your workflow automation more efficient. This update offers significant enhancements for any Salesforce developer working with Flow Builder. 

 

Also, I have shown how to save the inline edit changes properly in Salesforce.

 

📺 Watch the full video here: https://youtu.be/n_YgSPdj1no

 

 

#Salesforce Developer #Salesforce Admin #Flow #Flownatics #FlowBuilder #New Releases

 

@The Blog Group @* Release Readiness Trailblazers *

   

🚀 Sort and Edit in Flow Data Table component | Save Changes within Flow 🚀 In this quick tutorial, I'll show you exactly how to use the new features of the data table component from Salesforce's Spri

 

 

0/9000

Do you spend your day in Flow Builder? 

I am a Flow Builder designer and seeking to understand more about your backlog and needs for governance tools. Want to weigh in?! Here is a link to a 10 minute survey!  

 

@Salesforce Flow Automation #FlowBuilder  #Flow  #Automation

0/9000

Hello, 

I have created a flow that sends an email to a user when a record is completed.  I would like to include the related order record link in the email. 

 

I am using the rich text editor, and have added a link, but it is environment specific.  is there a better way to do this? 

here's an example of what I am using now 

 

"

https://mycompany--uat.sandbox.lightning.force.com/{!$Record.Order__r.Id}

 

 

#FlowBuilder

1 respuesta
  1. 4 nov 2025, 22:01

    I get a 'this site can't be reached' message.  Not sure if I mentioned this, but the user would be clicking the link from the email they receive.

0/9000

I want to create a flow that will parse out the case subject line to populate a custom lookup field on a case. Our subject line contains a Quote number that starts with a SQ or SMQ followed by 6 numbers. I want to pull in the quote number to the custom lookup field from the subject line. I am new to flow so any help is appreciated. 

 

Examples of subject line: 

  1. SQ459927 - A3im FW: A3im New Purchase Order
  2. FW: [External] PO P35072 for SQ459920
  3. Process SMQ666666

 

#Salesforce Flow #Email-to-case #FlowBuilder #Salesforce Developer

6 respuestas
0/9000

Trailblazer Meetup '24 - 100 Days Challenge, participants will engage in activities focused on Salesforce fundamentals, Apex programming, and Lightning Web Component Training. This includes participating in running challenges and social interactions.

 

Tech Day-11 - Salesforce Lightning Flow  - 6th Apr 2024 (Sat)

https://trailblazercommunitygroups.com/events/details/salesforce-salesforce-user-group-chennai-india-presents-trailblazer-ninjas24-tech-day-11-lighting-flow-part-1/

 

Tech Day-12 - Salesforce Lightning Flow - 7th Apr 2024 (Sun)

https://trailblazercommunitygroups.com/events/details/salesforce-salesforce-user-group-chennai-india-presents-trailblazer-ninjas24-tech-day-12-lighting-flow-part-2/

Trailblazer Meetup '24 - 100 Days Challenge, participants will engage in activities focused on Salesforce fundamentals, Apex programming, and Lightning Web Component Training.

 

Join our 100 Days Challenges - It's 100% Free.

100 Hours of Salesforce Training : https://bit.ly/100HourOfTraining

100 Days of Self-Learning Challenge : https://bit.ly/100DaysOfSelfLearning

100 Days of Running Challenge : https://bit.ly/100DaysOfRunning

 

For Event Updates:

Telegram  : https://bit.ly/TelegramSFUG

YouTube   : https://bit.ly/YouTubeSFUG

LinkedIn    : https://bit.ly/LinkedInSFUG

Whatsapp : https://bit.ly/WhatappSFUG

Twitter       : https://bit.ly/TwitterSFUG

Instagram  : https://bit.ly/InstagramSFUG

 

Note: Share this with your friends, colleagues, and final-year students who are interested in learning Salesforce as a career path. Let's contribute to our community by spreading the word!

 

#Trailhead Challenges

 

#Flows #Screen Flow #Flow Formula #Schedule Triggered Flow #FlowBuilder #Flow Error #FlowCallout #Flow User 

0/9000

Hello Everyone,

 

I created a record trigger flow that when an agent link a contact to messaging session via Messaging Related Contact it should also link the contact into the case object, this flow is working when agent do the linking when messaging session is active but when status is ended it is not working, my question is why its not working?

 

Also below is my flow configuration:

 

Start record trigger flow:

  • Select Object : Messaging Session
  • Configure Trigger: A record is updated
  • Set Entry Condition: None
  • Optimize flow for: Action and Related Records

Decision:

  • Outcome Order:
    • Contact Not Found:
      • Condition Requirements to Execute Outcome: Condition Requirements to Execute Outcome: All Conditions Are Meet (AND)
      • Resource: {!$Record.MessagingEndUser.ContactId} Is Null True
      • When to Execute Outcome: If the condition requirements are met
  • Default Outcome: Contact Found

Update Records:

  • How to Find Records to Update and Set Their Values: Specify conditions to identify records, and set fields individually
  • Object : Case
  • Condition Requirements to Execute Outcome: Condition Requirements to Execute Outcome: All Conditions Are Meet (AND)
  • Id Equals {!$Record.CaseId}
  • Set Field Values for the Case Records:
    • ContactId <-  {!$Record.MessagingEndUser.ContactId}

#FlowBuilder #Record-Triggered #Messaging Session #Case

2 respuestas
  1. 7 nov 2023, 10:06

    Hi @Ariel Gencianeo, if you attempt to debug the flow adding a Messaging End User to a Messaging Session record with Status "Ended" , what flow elements are executed?

0/9000

I have a requirement to notify all account team members when a new opportunity is created and I am not sure the best way to do this using flow builder. If I create a record trigger flow when a new Opportunity is created, and then use the get Account Team Member where the AccountId = Record>AccountId. Can I then just use an email action or is there a better way to do this?  Thank you

 

#FlowBuilder #Flow #Email Alerts #Account Teams

1 respuesta
  1. 9 nov 2023, 23:32

    Get all Account Team Member's emails and add them to a collection and you can use the send email action. The variable for the email is text and add them to a text collection. You need a loop and two assignments.

     

    Hope this helps. 

0/9000

Hi

 

I have created a schedular flow which will execute everyday, I have added the condition that when last stage change date is older than 14 send a email

 

Please find following results of the flow, 

 

Outcome conditions

{!VarStatusAge} (14) Equals 14

All conditions must be true (AND)

Skipped this outcome because its conditions weren't met:

 

Where {!VarStatusAge} is TODAY() - {!$Record.App_Stage_Change_Date__c} which return the data type number with decimal 0

but when i change condition to equal 13 it is working

 

Outcome conditions

{!VarStatusAge} (14) Equals 13

All conditions must be true (AND)

 

Can you please someone explain how this logic works.

 

Thank you

 

#FlowBuilder #Scheduled Flow #Flows

2 respuestas
  1. 9 nov 2023, 06:55

    Hi Ravendr Shukla

     

    Thank you very much for your response, 

     

    my 

    App_Stage_Change_Date__c

    field is date type field, 

0/9000