Show more progress details on iterate module

Currently while iterating through a list (a list of import files in my case) the progress indicator just shows running with total elapsed time. It would be helpful to update the panel with the value being passed to the module that is being called so that there is a better sense of the progress being made along the way.

or just showing the iteration count 1/100, 2/100 etc based on the number of items in the list.

Hi @CTN,

You can show the value being passed to the module by adding the “Status” action to that module. The action should show the value of a passed parameter.

In order to show iteration count, you should add row numbers to the input dataset of the “Iterate” action with the “Enumerate” action, pass that row number to the module as a parameter and show it’s value with the “Status” action.

thank you. exactly what I was looking for and didn’t realize this option/action existed.


I was wondering if the iteration count “1/100, 2/100” @CTN was talking about can happen all in the same line of the log, which gets updated. So “1/200” would show in the line of the log, and then that same line gets updated with “2/200” and so on, until all the iterations in there have completed, and then the next status action the project has appears in a new line of the log.

I have iterations that take place thousands of times and it would be great if the log did not create thousands and thousands of lines every time.

On the other hand, apart from showing the current iteration which is taking place, how is it possible to show the total number of iterations that have to take place (in @CTN’s example, 1/100)?. We would also have to pass 100 as a parameter to the module, so that through an expression in the Status action such as {Current iteration}&'/'&{Total number of iterations} we would get the desired result, right?



That's not possible.

A solution to this would be to move the "Status" action into a conditionally derived table so that it gets executed only ever Nth iteration. For instance, 10/100, 20/100, 30/100, etc. when N = 10. If you have an iteration that runs thousands of times, then it would probably make sense to make N = 100 or 250 or even 1000.

Yes, that's correct. The total number of iterations would have to be as a parameter in order to produce a status message with total count.

1 Like