Одним из способов является использование триггера POST-FORMS-COMMIT. Это срабатывает после того, как все данные были вставлены, обновлены или удалены, но до фиксации базы данных. Таким образом, вы можете сделать что-то вроде:
declare
l_count integer;
begin
select count(*)
into l_count
from detail
where master_id = :master.master_id
and rownum = 1;
if l_count = 0 then
message ('Must have details');
raise_application_error;
end if;
end;