Let me put my 2 cents here;
Hi,
You needs to retrieve the the associated object and pass that object to the validation message so it will shows the validation in that appropriate field.
Event handlers are triggered just before persisting in your database. So if some validation fails you can stop committing.
It cannot be used for User level validation.
You could probably check if the associated object is created before being saved from the save microflow and show validation message. If the associated object exists the save to database.
in a validation microflow, you can simply check the expression:
$object/Module.Association_Name != empty