web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Best Way To Send Multi...
Power Apps
Answered

Best Way To Send Multiple Changes With Rollbacks?

(0) ShareShare
ReportReport
Posted on by 2

Hello everyone!

 

I've been wondering what the best approach to this problem would be, as everything I've tried so far has been either unsuccessful or not particularly scalable.

 

I have multiple Dataverse tables that I am writing to from Power Apps (Table A, B, C), all with different data. I'd like to issue these all at once, in a single request that either succeeds or fails at once, or works sequentially but rolls back any changes upon failure. I've tried two solutions so far, the first being a Changeset request using the Dataverse connector in PA, but this doesn't seem to work as the amount of rows I am writing to in Tables B & C are dynamic, and the Dataverse connector doesn't allow apply to each. The other solution is in PowerApps, which is simply writing to the tables and encasing everything in nested IfErrors that rollback changes on failure. This is somewhat better, but I am worried about issues happening on those rollbacks themselves and creating even more issues. I've seen some options that look viable using the Web API (Execute batch operations using the Web API (Microsoft Dataverse) - Power Apps | Microsoft Learn/Dataverse Batch Requests in Power Automate - NETWORG Blog (thenetw.org)), but this is currently far outside my skillset. 

 

Does anyone know of an easier way to do this? Or are my options simply between the good-but-higher-code solution and the worse-but-lower-code Power Apps solution?

 

Thanks!

 

 

  • Verified answer
    EricRegnier Profile Picture
    8,720 Most Valuable Professional on at

    Hi @JJWorkAcc,

    Indeed, the Changeset action in PA is very limited, and most of the time I cannot use it as well, for instance, it doesn't support for each loops 😞  IfErrors would sort of work but very messy and error prone in my opinion. It doesn't actually rollup the transaction, you're just manually performing another update operation to "rollback", and these updates can fail and can end up in a corrupted state. The best way as you alluded to is more in a pro-code scenario with Web API or also with the SDK (.NET): https://learn.microsoft.com/dotnet/api/microsoft.xrm.sdk.messages.executetransactionrequest?view=dataverse-sdk-latest
    Probably not the answer you were looking for but at least it is possible. Another option is to manage via a business process meaning, if an error occurs in the app, ensure you bubble up the error correctly to the users, update rows to an "error" state and have a easy way for the users to fix/address the error to bring back the system/records to a valid state.
    Hope this helps!

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Season of Sharing Community Challenge Winners!

Congratulations to our community stars!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Leaderboard > Power Apps

#1
11manish Profile Picture

11manish 432 Super User 2026 Season 2

#2
Mohsin Ali Profile Picture

Mohsin Ali 347

#3
WarrenBelz Profile Picture

WarrenBelz 254 Most Valuable Professional

Last 30 days Overall leaderboard