Hola pmarinab,
No se si es la solucion, pero segun el ejemplo mostrado por alterpeke, cuando una tabla interna la lees por segunda vez deberias hacer un clear ( tabla )para posicionar en el inicio de la tabla de nuevo, yo he tenido ese problema alguna vez, que como queda posicionada en el ultimo registro no me vuelve a hacer el loop.
Espero que te haya servido de algo.
saludos