Skip to main content
グループ

Architect Trailblazers

Building an eco-system of domain and technical architect experts. Join this group if you want to go down the path of becoming any type of Architect! Updates on the Architect Journey as well as other important information regarding Architect credentials.

I'm investigating a platform level behaviour with the standard Location

 object and wanted to share my findings to see if anyone else has encountered this. 

 

The Issue 

 

Users with the following object permissions:

  • Read = Enabled
  • Create = Enabled
  • Edit = Disabled

Cannot create Location records. Record creation fails with:

INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY

As soon as we grant Edit

 permission on the Location object, the same users can create records successfully. 

 

Troubleshooting Performed 

 

To isolate the problem, we:

  • Disabled all Record-Triggered Flows
  • Disabled all Apex Triggers (including managed package triggers where possible)
  • Attempted creation with only the required Name field populated
  • Removed all references to related records and lookup fields
  • Verified consistent reproduction across multiple test users

Even under these minimal conditions, Create permission alone is insufficient. 

 

My Hypothesis

 

While reviewing the Location object documentation, I noticed the 

RootLocationId field (Read-only Lookup to Location) is populated with the Id of the Location record itself (self-reference) when a Location has no parent (ParentLocationId is null). 

 

 Since a record's Id is not available until the record is saved to database (not committed), any platform process that maintains fields dependent on the newly generated Id must execute in the after context 

(context in which the fields of the record itself are no longer editable). 

 

My hypothesis is that Salesforce performs an internal update operation after the insert to populate RootLocationId with the newly created record's Id. If this internal update runs in the same transaction and in the current user context, it would require Edit permission on the Location object—even though the user is only attempting to create a new record.  

 

Why I think this happens: 

 

  1. RootLocationId is a read-only, system-maintained field
  2. The field references the Location's own Id (when no parent exists)
  3. Record Ids are only available in after-insert context
  4. The error INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY typically indicates insufficient permissions on a cross-referenced record
  5. In this case, the "cross-reference" may be the Location record itself during the internal update

Has anyone experienced the same behavior with the standard Location object? Is there any documented platform behaviour related to RootLocationId or Location hierarchy management that could explain this?

2 件の回答
  1. 昨日、19:11

    Hi @Deepak Sharma

     

    I've opened a case with Salesforce to see if they can provide more information about this behavior. I shared my hypothesis with them.

     

    The log entries related to the transaction that happens when a Location object record is created are very limited. I had already run the test with the ParentLocationId field populated, and the behaviour is the same. According to my hypothesis, that supposed update would be executed regardless of whether the ParentLocationId is populated or not.

     

    I will share any additional information that I get from the support team.

0/9000

Feet on strike? Brain loaded with 4,000 session slides? Coffee-to-water ratio severely out of balance? ☕️⚡️ 

 

Congratulations—you survived #Dreamforce

! Seeing your lightbulb moments and key takeaways flooding the feeds has been absolute gold. 

 

As chaotic and back-to-back as the week was, every single sore step was worth it. But now comes the real magic: keeping that momentum alive before the post-conference brain fog sets in. 

 

Drop a comment (or share it with the world using #DF26LearningQuest):

How are you planning to put all that fresh knowledge into action to level up your orgs, solve real problems, and elevate the people around you throughout the year? 👇 

 

Remember, the true spirit of the Trailblazer community isn't just hoarding cool insights—it's using them to lift up everyone in your orbit. Share what you learned, mentor someone new, and let’s turn that Dreamforce inspiration into real impact! 🚀✨ 

 

@Salesforce Developer Group, Dubai, UAE @Agentblazer Community Group @WFD Partner Cohort: TDX2630DaysChallenge @* Salesforce Developers * @Architect Trailblazers

6 件のコメント
0/9000

Only 1 weekend left until Dreamforce 2026 kicks off! ⚡ Whether you are catching game-changing keynotes or discovering the latest innovations in AI and Agentforce, the energy this year is going to be u

 

Only 1 weekend left until Dreamforce 2026 kicks off! ⚡ 

 

Whether you are catching game-changing keynotes or discovering the latest innovations in AI and Agentforce, the energy this year is going to be unmatched. 

 

Showing up is just the beginning—now it's time to put that inspiration into action! Join the #DF26LearningQuest to learn from #DF26, build real-world skills, and share your takeaways with fellow Trailblazers. We elevate each other. 

 

Start building your Dreamforce agenda today and share it with your peers using #DF26LearningQuest!

 

How to get involved:

Let's learn, share, and rise together! 🚀 

 

@Salesforce Developer Group, Dubai, UAE @Agentblazer Community Group @Architect Trailblazers @WFD Partner Cohort: TDX2630DaysChallenge #DF26 #DF26LearningQuest

1 件のコメント
0/9000

🚀 Welcome to #DF26LearningQuest🚀 

 

A massive THANK YOU to everyone who has already joined the quest! 💙 

 

To clear up any quick questions: This is NOT a coding competition. There are no speed tests or code challenges here. Our goal is simple: to come together as a Trailblazer community, attend #Dreamforce (in person or virtually), and maximize our learning journey side by side. 🧠✨ 

 

How to Submit Your Posts:

  1. Create your social media post using the hashtag: #DF26LearningQuest.
  2. Submit your post link using the form: https://forms.gle/VmDu2EsH53DgEpJ16
  3. ⚠️ Important: Please use the same email address you used when registering for the quest so we can log your entries accurately.

 

Here is your official roadmap to participate and share your experience 👇

  

How to Participate: 

 

1️⃣ Start Posting Now

• Announce that you’re participating in #DF26LearningQuestand invite your network to join you! 

 

2️⃣ Share How to Register for Free

• Help fellow Trailblazers navigate free registration options and streaming via Salesforce+. 

 

3️⃣ Guide Agenda Building

• Share your must-attend session picks, keynotes, and hands-on labs to help others build their schedules. 

 

4️⃣ Share Live Updates During Dreamforce

• Post about the sessions you attend during the event, tagging speakers and key topics. 

 

5️⃣ Post Key Takeaways & Aha! Moments

• Highlight the biggest announcements, AI updates, and technical insights you take away from each session. 

 

6️⃣ Keep the Momentum Going Post-Dreamforce

• Continue sharing recap threads, Trailhead trailmix recommendations, and session highlights after the main event.

 

7️⃣ Attend the 2 Post-Dreamforce Live Sessions

• Join the 2 live post-event sessions to deep-dive into major announcements, then share your reflections!

 

⚠️  Official Disclaimer & Program Terms :

  • No Guarantee of Reward: Participation in #DF26LearningQuest does not guarantee the receipt of a Salesforce certification voucher or any other reward. Voucher quantities are strictly limited.
  • Review & Selection Criteria: All submitted social media posts will be manually reviewed by the organizing committee. Submissions will be evaluated based on originality, quality of content, community engagement, and practical learning takeaways. Low-effort posts, spam, duplicated content, or posts failing to demonstrate genuine engagement will be disqualified.
  • Form & Email Verification: To be eligible for review, participants must post publicly using the #DF26LearningQuesthashtag and submit the post link via the official submission form using the exact email address used during initial quest registration. Unsubmitted links or posts submitted with mismatched emails will not be tracked.
  • Discretion & Finality of Decisions: Voucher allocation is strictly at the sole discretion of the organizing committee. All committee rulings regarding submission validity, quality scoring, and voucher distribution are final, binding, and non-negotiable.
  • Voucher Terms & Non-Transferability: Certification vouchers (if awarded) are non-transferable, cannot be resold or exchanged for cash, and are subject to Salesforce's official voucher expiration dates and exam policies.
  • Community Initiative Notice: This quest is an independent community-driven educational initiative organized by Trailblazer Community Leaders. It is not directly managed, sponsored, or legally guaranteed by Salesforce, Inc.
  • Content Usage: By submitting a link to your post, you grant the organizing committee permission to re-share, quote, or feature your public submission in community recaps and social media highlights. 

#DF26LearningQuest #Dreamforce #Salesforce @Trailblazer Community Cove @Salesforce Developer Group, Dubai, UAE @Agentblazer Community Group @Architect Trailblazers

0/9000

Dreamforce 2026 is right around the corner, but showing up is only half the battle.

 

Dreamforce 2026 is right around the corner, but showing up is only half the battle. We are pleased to launch the DF26LearningQuest to help Trailblazers level up, learn together, and turn keynote inspiration into real-world skills. 

 

Goal : Learn from Dreamforce, Apply the knowledge and Show the community how it’s done. 

 

⏱️ 5 Weeks of learning 

🤝 1 Trailblazer Community supporting your growth 

🏆 Certification Vouchers up for grabs 

 

Sign up today :

https://forms.gle/XTKTWW7v32Xba1Wm7

 

Let’s show up for the inspiration at Dreamforce and walk away with the power to build what’s next. 

 

@WFD Partner Cohort: TDX2630DaysChallenge @Salesforce Developer Group, Dubai, UAE @Agentblazer Community Group @* Salesforce Developers * @Architect Trailblazers @Admin Group, Dubai, UAE @Trailblazer Community Cove

9 件のコメント
0/9000

Attendance in PJs? Check. Free front-row seat to every game-changing keynote? Double check. 

Streaming #Dreamforce on Salesforce+ means zero airport security lines and 100% focused learning you can ship straight to production. Grab your coffee, fire up the stream, and level up your skills with the #DF26LearningQuest

 

 

@Salesforce Developer Group, Dubai, UAE @Agentblazer Community Group @* Salesforce Developers * @WFD Partner Cohort: TDX2630DaysChallenge @Architect Trailblazers

1 件のコメント
0/9000

How can we secure Salesforce hosted MCP server that it has less record access provided to Claude users - based on record fields such as country or product line, similar to attribute based access control - than if they were logging into Salesforce from a browser? 

 

We do not want to change the record sharing and access rules in Salesforce for logged in users but want to restrict it for Claude or other AI tool users.  

 

What options would you recommend? 

 

 

10 件の回答
  1. 9月9日 14:17

    Hi @Istvan Szegedi yes, you can accomplish this in DataGrout in a few different ways:  

      

    1.    In DataGrout’s Salesforce MCP Server, there are a series of data retrieval tools. With over 700 Salesforce tools, those get quite granular. For e.g., in the case of the Opportunity object, your agent can retrieve relevant Opportunity details via the “get-opportunity*” tools.   

      

    2.    In case, your agent does not find a tool that matches your retrieval criteria (say, by region/country/custom-field), you can use DataGrout’s ToolSmith to add relevant (custom) tools to your MCP Server and have DataGrout expose that MCP Server/tool to your agent (while withholding the generic SOQL tool from the MCP Server so the agent does not compose its own queries to bypass the tool restrictions).  

      

    3.    This will work for aggregations/summaries as well via the corresponding filter being added to the SOQL query within a (region-specific) MCP tool such as “SELECT SUM(amount) FROM opportunity WHERE country = ‘United States’”. The agent could simply ask for “SELECT SUM(amount) FROM opportunity” but what DataGrout will execute (via the forementioned MCP tool) is “SELECT SUM(amount) FROM opportunity WHERE country = ‘United States’”.  

      

    4.    We also have policy guard-rails in the DataGrout MCP Gateway that can be used to restrict agent access to certain record sets or operations independent of the Salesforce user’s privileges via monotonic policy cascades.   

      

    Last but not least, I’m having one of the DataGrout product specialists reach out to you to schedule a call and see how we might be able to further help with this or additional use cases.

0/9000

 

"General," "General 2," "General Support," and "General (DO NOT DELETE)." 

 

That's a real Subagent list. Well real-ish. Episode 3 of Season 3: The Agentforce Architects is live, and it's all about keeping Subagents, Actions, and Instructions clean as your Agentforce org actually scales. 

 

Inside this episode:  

 

  • 🗂️ A naming convention that scales: Domain – Capability – Risk Tier 
  • 🔁 Why Actions should be reused, not rebuilt, four times with slightly different names 
  • 📝 Writing Instructions as testable conditional rules instead of vague vibes 
  • 🎬 The true story of a 31-Subagent org, refactored live down to 11

🎧 Episode 3 is live now. 

 

https://open.spotify.com/episode/741mf2sJ0nFeM2JXAgWBP1?si=-lyvStsISbGfjzCswpePNw

 

https://youtu.be/LVvb2DE_zbw

 

 

@Salesforce Developer Group, Dubai, UAE @Agentblazer Community Group @* Salesforce Developers * @Architect Trailblazers @WFD Partner Cohort: TDX2630DaysChallenge

0/9000

I am trying  to show team Hierarchy   like User and Manager   - by using User and Manager lookup join  in recipe I am able to get only immediate(direct)  reporting and opportunity amount rollup.   I need to show rollup based on hierarchy top to bottom such as   EmpM1 ->EmpM2 -> SalesRep1 and SalesRep2,SalesRep3  and SalesRep1 > SalesSubRep1 , SalesSubRep2, SalesSubRep3,SalesSubRep4

 

This is my Expectation 

EmpM1 - 8

EmpM2 - 7

SalesRep1  - 4 

 

I am getting from my recipe 

EmpM1 - 1

EmpM2 - 3

SalesRep1  - 4

 

Can any one hep how to achieve this requirement ?

1 件の回答
  1. 8月24日 23:39

    @Ritesh Gupta

    Did you try flatten transformation (not a lookup join)?  

    If not, try this 

    Add a Flatten node in your recipe (or dataflow) on the hierarchy, using the User Id as the self ID and Manager Id as the parent. Flatten outputs a multi-value roll-up hierarchy field containing every ancestor for each user. 

    Then join your opportunity data to users. When you group by that flattened ancestor field instead of the direct manager field, each opportunity counts toward every manager in that user's chain.  

    Basically, don't roll up by 'who's your manager' instead, roll up by 'who's anywhere above you' Flatten gives you that second thing as a queryable field, and grouping on it produces the top-to-bottom totals you're expecting.  

    Hope this works. thanks! 

0/9000

 

Agentforce isn't magic. It's architecture and if you skip the architecture part, your agents will happily make very confident, very wrong decisions at 2 AM. No errors. No warnings.

Agentforce isn't magic. It's architecture and if you skip the architecture part, your agents will happily make very confident, very wrong decisions at 2 AM. No errors. No warnings. Just chaos with a smile. 

 

In Episode 11, we open a brand-new season of The Franken Org focused entirely on Agentforce and agent architecture. 

 

This episode covers: 

  • 🧠 What the Atlas Reasoning Engine actually does, step by step 
  • 🗂️ Subagents, Actions, and Instructions, the three levers you control 
  • 🛡️ Why grounding and the Trust Layer are non-negotiable 
  • 🔥 The (true-ish) story of the night FrankenForce's support agent approved 47 refunds before breakfast

🎧 Episode 11 is live now. 

 

Youtube :

https://youtu.be/HTfTu1V45u8?si=p-o1XMTtXj8Vwn14

 

Spotify :

https://open.spotify.com/episode/5lu7894nDE2OmnFSav4Nu1

 

 

@Salesforce Developer Group, Dubai, UAE @Agentblazer Community Group @* Salesforce Developers * @WFD Partner Cohort: TDX2630DaysChallenge @Architect Trailblazers

0/9000