Skip to main content
Vignesh Kumar N a posé une question dans #Vlocity

Hi everyone,

I'm doing poc with an OmniScript that invokes a Data Mapper Load. The Data Mapper receives the necessary input and creates:

  • Account
  • Contact
  • User

All three records are being created through a single Data Mapper Load execution.

Based on my understanding of Salesforce Mixed DML rules, I expected a Mixed DML Operation error because:

  • Account and Contact are non-setup objects.
  • User is a setup object.

However, no error is being thrown, and all three records are created successfully.

This raised a few questions for me:

  1. How does Data Mapper Load handle DML operations internally in this scenario?
  2. Does OmniStudio/Data Mapper execute setup and non-setup object operations in separate transactions behind the scenes?
  3. Is there any special processing or orchestration that prevents Mixed DML errors when using Data Mapper Load?    

I'd appreciate any insights into this behavior. 

 

Thanks in advance! 

1 réponse
  1. 6 juin, 07:41

    Hi, 

     

    OmniStudio's Data Mapper Load does not execute all DML in a single Apex transaction the way a standard Apex class would. Internally, it uses a chunked/asynchronous execution model

     that separates setup and non-setup object operations into different transaction contexts.  

     

    Specifically:  

     

    • Non-setup objects (Account, Contact) are processed in one transaction context
    • Setup objects (User) are queued and processed in a separate transaction.

     

    This is why Salesforce's Mixed DML governor limit isn't triggered — the platform never sees both in the same transaction.

0/9000