Excuse me for saying this but your code has lots of errors. You are using locals unnecessarily. There is no data dependency connection between the two loops so they will both run at the same time, and there is no guarantee which one will execute first. If the second loop runs first, you will be reading a local variable that has not been written to yet. According to your question, with every iteration of the second loop, the indicator will get changed because that is the way you wired it to work. In for loop number one, you have a shift register where none is needed. The shift register is not even completely wired (terminal on left side unwired). If you want to store values from an array into an array of indicators, your vi is all wrong. Delete the shift register and the local variable from for loop 1. Wire the output from index array to the loop edge with indexing enabled. Wire this loop output terminal to the indicator array. Delete everything else outside the for loop 1, and remove the while loop. Now the array that is built inside the for loop will get transfered to the indicator array. See the attached vi.