Что вы имеете в виду, говоря, что «пользователь может изменить системную дату»? Это Oracle Forms, верно? SYSDATE возвращает системную дату сервера базы данных, а не дату клиента (т.е. собственного ПК пользователя), поэтому - продолжайте и используйте SYSDATE, никаких проблем с этим (если, конечно, пользователи не имеют доступа к серверу базы данных, но это уже другая история & a огромная дыра в безопасности).
Кстати, кроме использования триггера (это будет WHEN-VALIDATE-ITEM), более простой способ сделать это - открыть палитру свойств элемента и использовать свойство «Максимально допустимое значение», установленное на сегодня .