This is a huge project. I wonder what it would be like if you called it big instead of little. At any rate, I took a look and ran WAS30 at least 20 consecutive times and exited via its red arrow and it worked every time. the last few records always have the number and the text. 41 A41, 42, A42, 51 Holiday, 99 Not Available. The only thing I recommend is to close the resultset every time which you are missing: WACodesSet.close .
If that does not solve your problem, I hope someone more qualified will discover the problem you encountered.