HI Blue Road,
that is the way For loops are supposed to run. There have been a number of discustions regarding this and I believe it all comes down to the issue of data dependencies.
I will try to explain.
Let say you wire a 7 to to the "N" and autoindex through an array of three elements. What data should used inside the loop for the 4-7th iteration?
Also recall that the number of elements in the array can change durring execution (if codded that way). This cannot be detected at compile time. A run time error message would be pretty bad if there was no user to see it (like in an RT app).
In LV, if you want to iterate a fixed number of times and auto-index, you have to explicitly ensure the are sufficient elements in the array.
Other notes:
If you
are auto-indexing of two arrays coming in, it will iterate as many times as the smaller of the two arrays.
If you always want the For loop to return something, put the default value in a shift register first. That way, if the auto-indexed arrays are empty, you still get an answer even though the For loop did not iterate.
I hope this helps,
Ben