Skip to main content

#Automation52 debatiendo

Our HR system is our gold source for user accounts, employee positions (ie Role), access control, and security within our organization.  We have a manual process where an Admin has to look up the data in our HR system and update Salesforce.  We would like to automate this for obvious reasons.  Any advice or guidance on how to do it?   

2 respuestas
  1. Hoy, 13:45

    The HR system is irrelevant as we can't directly interact with it (due to security reasons).  We have a nightly load that is dumped into a database that we can pull from that contains the structure we are looking for. 

     

    What I've noticed is that only the User Object is exposed to the Object Manager, and as a result, exposed for imports into Salesforce.  If I want our HR data to maintain Roles, Permission Sets [Groups], Profiles, Public Groups, and Queues, how do I set that up? 

     

    My first thought was to create a custom object with our HR data that we would load, and then have Flows to modify the various Salesforce User Objects (if that is possible).

0/9000

Hello,

 

Several flows have been deployed using devops center and after activation they fail with the following message:

 

We can't save this record because the ... This error occurred when the flow tried to create records: INVALID_CROSS_REFERENCE_KEY: Record Type ID: this ID value isn't valid for the user: . You can look up ExceptionCode values in the SOAP API Developer Guide. Error ID: 1953550904-187910 (514525920)ok up ExceptionCode values in the SOAP API Developer Guide. Error ID: 1953550904-187910 (514525920). You can look up ExceptionCode values in the SOAP API Developer Guide. Error ID: 1953550904-187913 (-169807181)k up ExceptionCode values in the SOAP API Developer Guide. Error ID: 1953550904-187913 (-169807181)

 

I´ve assigned the corresponding permission sets to my user however the error persists. Run Flows permission is active as well.

 

Am I missing something?

 

#Automation

1 respuesta
  1. 13 jun, 15:42

    Record Type ID changes when you deploy a new record type from Sandbox to Production. I would recommend using Custom Metadata or Custom Settings to hold record type ids and replace them later after deployment with newly generated ids in Production.

0/9000

Hi

 

I'm looking for some advice.  I'm part of a big non profit and we are looking at changing the Default Workflow User to a generic user (so we set up a user thats name is just IT Admin with generic email address) instead of a real person user that we would need to change every time that real person leaves.  

 

This is because we want to use this user for automated process that link to flows or that make notifications in chatter posts so that its distinguishable as being from automated process and not real person.

 

What I want to know is if this is consider bad practise or good practise?  What does everyone else do in big companies, do you have generic use or o you just pick one Salesforce Admin to be the Default Workflow user?

 

(Please note: This has been recommended to us by 3rd party we work with but I want to validate it is the best action to take.)

 

Thanks

Jennifer

 

#Sales Cloud #Nonprofit #Automation 

3 respuestas
  1. 11 jun, 08:24

    hi @Tamsin Humes we have the generic user but in the end we went with it being linked to my email instead of generic email so if I leave I have to hand it over to someone. I guess coz I did it this way I'll be able to set up the MFA requirement.  I'm still trying to get my head around all these security changes, haven't test impact on this user yet.

0/9000

In Salesforce Approval Process, under 'Select Field Used for Automated Approval Routing', what does the checkbox 'Use Approver Field of Product Owner' do? and what happens when it is unchecked 

What does 'Use Approver Field of Product Owner' checkbox do in Salesforce Approval Process routing?

 

Please explain with a simple example." 

 

#Salesforce Admin  #Salesforce Developer  #Salesforce  #Automation

2 respuestas
  1. 11 jun, 06:58

    When “Use Approver Field of Product Owner” is checked, Salesforce uses the user lookup field (Product Owner field on the record) to determine the approver dynamically.

    When it is unchecked, Salesforce ignores that field and instead uses the option selected in “Next Automated Approver Determined By” (e.g., Manager, Queue, or specific user).

    Example:

    • If checked → Approval goes to the user in the Product Owner field
    • If unchecked → Approval goes to the user’s Manager (or configured option) regardless of the Product Owner field

    So, this checkbox controls whether approval routing is based on a record field value or the standard routing option selected above.

0/9000

We are finally starting to leverage Territories in our org and working out Territory Assignment rules which look great and should automatically assign the accounts to the correct territories and provide access to those who need it, but one thing seems obviously missing and that's being able to automate the assignment of the account to the correct owner.   Is that possible or am I missing something?      I could replicate similar rulesets to the assignment rules in Flow to assign the accounts but that would feel disjointed, and figuring out the triggers would be problematic as well.  I would need to manually run them or only upon creation, or something along those lines since I can't use territory object associations as a trigger for flows currently to my knowledge.  Any ideas or experience in this area is welcome!    

2 respuestas
  1. 10 jun, 05:47

    @Garrett Semola

     

    You're not missing anything. This is how Enterprise Territory Management works, and your instinct about it being disjointed to replicate in Flow is exactly the right read.

    The key thing to understand is that Enterprise Territory Management was designed to decouple access from ownership on purpose. Territory assignment grants access to a set of users through the territory model without ever touching the OwnerId field. Salesforce's design philosophy is that a team of people in a territory can all work an account through that shared access, so ownership becomes less relevant. That's why there's no native "assign owner based on territory" setting. The product intentionally treats territory membership and record ownership as two separate concepts. So the feature you're looking for genuinely doesn't exist out of the box, and you haven't overlooked a checkbox. 

     

    Now to the practical problem, which is that you still want ownership to follow territory, and you're right that the trigger is the hard part. Territory assignment runs through the assignment rule evaluation engine, not through standard DML the way you'd normally hook a Flow into. When an account gets evaluated and assigned to a territory, that doesn't fire a clean record-triggered Flow event you can latch onto reliably, which is exactly the limitation you identified. 

     

    Here's the approach that actually works without feeling completely bolted on. The ObjectTerritory2Association object is the junction record that gets created when an account is associated with a territory. That object can be queried, and critically, when an account's territory association changes, that junction record is created or updated. You can build a record-triggered Flow on the Account itself that runs on create and update, and in that Flow, do a Get Records on ObjectTerritory2Association filtered to the current account to find its assigned territory. From there, look up the territory's designated owner (more on where to store that in a second) and set the OwnerId. This keeps the logic on the Account where ownership lives, rather than trying to trigger off the territory association directly. 

     

    The piece that ties it together cleanly is defining who the owner should be per territory. Rather than replicating your assignment rule logic a second time in Flow, which is the disjointed part you want to avoid, create a custom field on the Territory2 object (or a custom metadata type mapping territory to a default owner). Stamp the intended owner there once. Then your Flow just reads the territory off the account's association, reads the designated owner from that territory record, and assigns it. Now you have a single source of truth. Your assignment rules decide the territory, and the territory record itself declares its owner. No duplicated rule logic. 

     

    On the trigger timing problem specifically, since territory assignment can run in batch (nightly recalculation or manual recalculation), the cleanest pattern many orgs use is a scheduled Flow that runs after the territory recalculation completes. It queries accounts where the current owner doesn't match the designated owner of their assigned territory, and corrects them in bulk. This handles the case where territory assignments change through recalculation rather than through a user-initiated save, which a record-triggered Flow would miss entirely. If your territories are fairly stable and assignments mostly happen at account creation, the record-triggered Flow alone may be enough. If territories shift frequently through batch recalculation, the scheduled Flow is the more reliable backbone. 

     

    One caution worth flagging before you build this. Be deliberate about the interaction between automated ownership reassignment and your sharing model. If an account's owner changes automatically, you can trigger ownership-based sharing recalculations, email notifications, and potential record access shifts for the previous owner. Test in a sandbox with a realistic data volume, because reassigning owners in bulk during a recalculation window can generate a lot of downstream processing. Also confirm this plays nicely with any existing assignment rules or other ownership automation you already have, so two processes aren't fighting over OwnerId. 

     

    So to summarize the path I'd take: store the designated owner on the Territory2 record as the single source of truth, use a record-triggered Flow on Account to handle create and update time assignment by reading the territory association, and back it with a scheduled Flow to catch batch recalculation changes. That gives you territory-driven ownership without duplicating your rule logic and without depending on a territory association trigger that doesn't exist. 

    - SP

0/9000

I'm really excited to say that continuous learning and be consistent about that will help you to get great achievements.

I'm happy to share that I'm recognised by Ranger rank on Trailhead learnig platform with 50000+ points and 100+ badges.

Thankyou Trailhead and Salesforce for this great ecosystem of learning platform.

#Trailhead #Salesforce Developer #Trailhead Challenges #Automation
0/9000

Potential Fix for Flow Deployment Error with emailSimple / Send Email Core Action

I ran into an issue when deploying a Flow that uses the Salesforce Flow core action Send Email.

The deployment failed with this error:

Send_Email_to_Users (Action) - We can't find an action with the name and action type that you specified.

The action metadata looked valid:

<actionName>emailSimple</actionName>

<actionType>emailSimple</actionType>

However, the issue ended up being the versionString inside the actionCalls node.

In my sandbox, Salesforce generated the emailSimple action metadata with:

<versionString>3.0.1</versionString>

But in production, the same Send Email action was being generated with:

<versionString>2.0.1</versionString>

After changing the Flow metadata from 3.0.1 to 2.0.1, the deployment completed successfully.

Example:

<actionCalls>

<name>Send_Email_to_Users</name>

<label>Send Email to Users</label>

<actionName>emailSimple</actionName>

<actionType>emailSimple</actionType>

...

<nameSegment>emailSimple</nameSegment>

<offset>0</offset>

<versionString>2.0.1</versionString>

</actionCalls>

So, if you are seeing this deployment error with Flow Send Email / emailSimple, check whether the versionString value differs between sandbox and production.

This looks like an internal version mismatch for Salesforce’s emailSimple core action. The deployment error message does not directly identify versionString as the problem, so it can be easy to miss. 

 

#Salesforce Developer  #Flow  #Automation  #Metadata  #Deployment  #Salesforce CLI

0/9000

Sharing a new update to the Salesforce Metadata Navigator plugin. 

 

The plugin now supports:

  • comparing Profiles and Permission Sets together
  • reviewing differences side by side
  • updating both Profiles and Permission Sets directly from the plugin

This helps reduce the time spent navigating across different setup pages when reviewing or adjusting access. It is especially useful when validating security differences, troubleshooting user access, or cleaning up permission models. 

 

A few key improvements:

  • compare Profiles vs Permission Sets in one place
  • review changes before saving
  • update access directly through the plugin
  • streamline admin and architect workflows

 

Sharing a new update to the Salesforce Metadata Navigator plugin.

 

 

Built this to make permission analysis and maintenance much more practical inside day-to-day Salesforce work. Would love feedback from the community. 

 

#Salesforce @* Release Readiness Trailblazers *@* Salesforce Administrators *@Admin Tricks #RRTreasureHunts #New Releases #Automation

2 comentarios
0/9000

Hi all, I just failed my Salesforce Admin Certification for the second time and now I have to wait until the new Spring release quiz after April 23, 2026. I’m wondering if anyone has been in this situation and how did you prepare to succeed on your third attempt…especially with my next attempt coming with a brand new releases of questions. Definitely down and feeling like I will never pass this cert, any help or guidance would be greatly appreciated!

#Certifications #Salesforce Admin #Admin #Systems Administrator #SFDC Admin Certification #Saleforce Administrator #Beginner Level Adminstrator #Administrator #Cert #Automation
2 comentarios
  1. 26 may, 11:19

    I am giving it for the second time . I will say dont loose hope and with a strategic dedicated effort you will definately come out of it. Have you set a leanring and practice plan for your self . 

0/9000

Built a new Object Explorer experience into Salesforce Metadata Navigator

 to cut down the clicks it takes to inspect object setup. 

 

You can jump into a specific object’s configuration from anywhere and browse it in a mini Salesforce-style Object Manager layout right inside the extension. Instead of bouncing through multiple Setup pages, you can quickly access: 

 

Built a new Object Explorer experience into Salesforce Metadata Navigator to cut down the clicks it takes to inspect object setup.

 

  • Details
  • Fields & Relationships
  • Page Layouts
  • Lightning Record Pages
  • Buttons, Links, and Actions
  • Compact Layouts
  • Field Sets
  • Record Types
  • Search Layouts
  • Object and Field Access
  • Triggers
  • Validation Rules
  • and more

 

The goal was simple: reduce navigation time for admins and architects who spend too much time drilling through Setup just to find one object setting. 

 

It gives you a faster way to inspect metadata, open the exact setup page you need, and move between object-level configurations without losing context. 

 

If you work across multiple objects every day, this makes admin work feel much more direct and a lot less click-heavy. 

 

#Salesforce Admin #Trailblazer  #Salesforcearchitects  #Metadata  #Salesforce @* Release Readiness Trailblazers *@* Salesforce Administrators *@Admin Tricks #RRTreasureHunts #New Releases #Automation

0/9000