Forum Discussion
Looping with delay timmer between apis call not working
guys Im trying to insert a function between interactions to this code segment; called wait seconds but it doesnt seem to make the wait actually work, any insigt?:
iterar = List.Accumulate({0 .. numeroIteraciones - 1}, facturas, (state, current) =>
let
id = current * tamanoLote,
headers = [authorization="XXXXXXXXX", accept="application/json"],
facturasObtenidas = ObtenerFacturas(id, headers),
_= Wait_Seconds(20, () => null),
facturasConcatenadas = state & facturasObtenidas
in
facturasConcatenadas
),
wait seconds function code:
//Function to create a timer between interations
let
Wait = (seconds as number, action as function) =>
if (List.Count(List.Generate(() => DateTimeZone.LocalNow() + #duration(0,0,0,seconds), (x) => DateTimeZone.LocalNow() < x, (x) => x)) = 0)
then null else action()
in
Wait
That's not how you do delays in Power Query. Use Function.InvokeAfter - PowerQuery M | Microsoft Learn
3 Replies
- lbendlin
Super User
That's not how you do delays in Power Query. Use Function.InvokeAfter - PowerQuery M | Microsoft Learn
- StefanoGrimaldi
Resident Rockstar
ohh thanks , didnt know of this function will give it a try and come back thanks.
- StefanoGrimaldi
Resident Rockstar
would appreciate a example of how you would insert the function in the code I pass please lbendlin