Я подозреваю, что вы не учитываете тот факт, что SYSDATE содержит текущее время, а также текущую дату.Возможно, ваш триггер даст желаемый результат, если вы удалите элемент времени, подобный следующему:
...
error2 exception;
dateres date := trunc(sysdate);
begin
...
«это не работает»
Как подсказывает @bobjarvisвам может понадобиться убрать элемент времени из datedep
(в зависимости от того, как вы его заполняете):
if TRUNC(:OLD.datedep) = dateres
Попробуйте использовать полную маску формата даты, например 'yyyy-mm-dd hh24:mi:ss'
, и посмотрите, что у вас есть на самом деле.