The proposed solution is correct but understanding of how requirements work is the exact opposite. The requirements are not checked when triggering output manually, you'll get a warning message to that effect when you try. There are tons of messages on SCN about it.
The requirements are checked before the output is proposed, so if the requirement is not fulfilled there will be no output created and nothing to process in VF31.