Field & Entity Validations should be used to prevent improper values inside an entity.
This should be used as a base or one of the last lines of defense.
The problem comes when people try to use it to solve GUI issues, speaking about this any form (web or windows), should have its own input validations.
Which in most cases might be a redundant work, but it's inevitable IMHO.
So when I build a web form, I put a validator control to check that Fright is greated than Zero, and another one to check that the OrderDate is before the ShipDate, otherwise the page is not validated and a post back will be stopped.
This is most helpful in databinding situations. I don't like to start the back path of a 2-way databinding if the inputs are invalid.
So why using Field Validations & Entity Validations in the first place if it would be taken care of in the GUI ?
Ans: Since an entity can be updated in code.
IMHO Validations should exist in all layers (DAL, BL, and PL).
Base line:
You can use FieldValidation to prevent wrong data (according to the requirements) being set in a filed.
Always use UI input validations.
Also if you want, instead of validating each field's set action you can use the ValidateEntityBeforeSave to validate the entire entity before the save action, this way you can return error messages to the user where the wrong data is being kept in the fields. (nothing prevented them from being set inside the fields, but they won't be persisted).