So I’m using power automate for the first time to build out a reservation system for 4 packages available for rent. This is my first time using power automate, but I figured a reservation system is a very simple problem to solve and I could get through it.
Simply, a customer fills out a microsoft form, their information gets put into a sharepoint list which triggers the flow. The flow checks if there is an available package, if there is one an email is sent to the customer to pick it up, we wait for an approval, if it’s approved that the customer picked up the package the count of available packages is decremented by 1. We delay for the 3 days they rent the package, then send an email to the customer telling them to return the package. After approving that the customer returned the package, we increment the available package counter. Simple right?
Turns out Power Automate has no global variable system. Oh well, I’m going to use a sharepoint list as the source for the available package counter. Nope, if two people fill out a form within 30 seconds, the sharepoint list is accessed by both flows and data is lost. I can’t turn off concurrency because Power Automate will hang for the 3 day delay.
Is there not a simple way of implementing any solution here? There’s no option for a global variable, no option for turning concurrency back on for certain actions, no option other than implementing my own lock/mutex solution in Power Automate and resolving race conditions etc myself?
I feel like I must be missing something extremely simple.