Hi,
I had the same problem but none of the above solution seemed to work for me.
Finally i put the validations in PAI module of the screen.
PROCESS AFTER INPUT.
MODULE LISTE_EXIT_COMMAND AT EXIT-COMMAND.
MODULE LISTE_BEFORE_LOOP.
LOOP AT EXTRACT.
MODULE LISTE_INIT_WORKAREA.
CHAIN.
FIELD ZMPP_WND_BOOTH_V-BOOTHID .
FIELD ZMPP_WND_BOOTH_V-BOOTHSTAT .
FIELD ZMPP_WND_BOOTH_V-BOOTH_DESC .
MODULE SET_UPDATE_FLAG ON CHAIN-REQUEST.
ENDCHAIN.
FIELD VIM_MARKED MODULE LISTE_MARK_CHECKBOX.
"added by me for validations
FIELD ZMPP_WND_BOOTH_V-BOOTHID MODULE check_booth_assignment.
CHAIN.
FIELD ZMPP_WND_BOOTH_V-BOOTHID .
MODULE LISTE_UPDATE_LISTE.
ENDCHAIN.
ENDLOOP.
MODULE LISTE_AFTER_LOOP.
add your validations in the module created by you.
Regards,
Ninad Joshi.