Если в обеих базах данных нет соответствующих функций, рассмотрите возможность создания собственных функций, которые будут «имитировать» оригиналы.
Например, для Oracle SYSDATE
:
create or replace function f_sysdate return date is
begin
return sysdate;
end;
Я не знаю PostgreSQL, но вы бы сделали то же самое в этой базе данных. Имя функции должно быть таким же: F_SYSDATE
.
Тогда в JasperReports вместо вызова «оригиналов» вы будете вызывать свои собственные функции, например,
select ename, job, sal,
f_sysdate --> this
from emp
where deptno = 10
При этом отчет будет работать в обеих базах данных. Правда, вам придется приложить некоторые первоначальные усилия, но - это может окупиться в будущем.