El problema está en el checkflag del principio... Cómo va a comprobar una flag que aún no está puesta? Creo que quitando ese checkflag debería de funcionar. De todos modos prueba también a llenar el txtbox de @perder, que si no puede que de error también.