Make Database.upsert Throw Errors at Run-Time Instead of Compile-Time - Ideas - Salesforce Trailblazer Community
Trailblazer Community

All Ideas

Idea Details

Post an Idea
970  Points
Idea has been posted. Give it an upvote or downvote.

Make Database.upsert Throw Errors at Run-Time Instead of Compile-Time

Development (Apex, LWC & VF)

I have found a workaround that allows for upsert of an untyped List<SObject> as outlined on the Salesforce Stack Exchange. The only problem is that there is one signature for Database.upsert which, instead of throwing a TypeException when using an untyped list, causes a compile fail, namely the signature that takes all three arguments:

    Database.upsert(List<SObject> records, SObjectField externalIdField, Boolean allOrNone)

If this final signature is validated at run-time instead of compile-time, a complete implementation of dynamic upsert will finally be possible.

Merge Idea · Flag

  • Upvotes
  • Downvotes



from AppExchange


No results found.

Help us to keep IdeaExchange clean by pointing out overlapping ideas. We'll investigate your suggestion and merge the ideas if it makes sense.



Thanks for your merge suggestion. We will review it shortly and merge the ideas if applicable.

Salesforce takes abuse situations very seriously. Examples of abuse include but are not limited to posting of offensive language or fraudulent statements. To help us process your request as quickly as possible, please fill out the form below describing the situation. For privacy and security reasons, the final outcome of an abuse case may not be revealed to the person who reported it.


Thank you for your feedback. We take abuse seriously and will investigate this issue and take appropriate action.