Advance your Data & AI career with 50 days of live learning, dataviz contests, hands-on challenges, study groups & certifications and more!
Get registeredGet Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Learn more
Hi,
Via Powershell I'm able to invoke the Power BI API to start a dataset refresh using the "refresh dataset in group" API but using a while loop like below on the status value doesn't appear to exit the loop when the refresh completes to a status "Completed"? How can I write logic to wait for the dataset refresh to complete as once completed I need to set a variable value to output for another process to trigger:
Solved! Go to Solution.
You forgot to set the value of $status inside the loop.
Don't ask for it every five seconds. Every minute is enough.
You forgot to set the value of $status inside the loop.
Don't ask for it every five seconds. Every minute is enough.
Thank you. Your posts and solution were most helpful.
You were correct in the end, thanks!
I needed to get the status from the $history.status within the while loop, I was getting this from the status variable outside of the while loop so this was never changing. After setting the while loop condition status to the while loop status the correct status value was returning to exit the while loop...phew!
Thanks for your reply.
The value of status will be set by the Power BI Service, I'm using the Start-Sleep to wait for status to change to "Completed" when the refresh completes. However, once I see the refresh has completed the new status isn't reflected to exit the loop.
Thanks.
 
					
				
				
			
		
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!
Check out the October 2025 Power BI update to learn about new features.
