You might experiment with changing the little Select block to
If ButtonPushed==1 Then Goto BarrelNumberValidation
If ButtonPushed==0 Then Exit
the difference is, a simple IF THEN statement like this doesn't count as a "control block"
The problem with the Select block is it is always waiting for you to come back to complete
the structure. If you go around too many times, it will run out of memory for this
and you will get an error. Other odd things may happen too, like other control blocks
behaving oddly. It's always best to exit a control block using the control block's
own mechanisms, never a GOTO.
Just my $0.02