подскажите, а можно для упрощения синтаксиса использовать оконные функции? у меня есть задача также упростить синтаксис запроса, возвращающего текущие остатки, где также рассчитывается максимальная дата.
create or alter procedure GETAMOUNTS4MODID (
ACAID_ D_ID,
MODID_ D_ID,
ADATE_ D_DBDATE)
returns (
MODCNT D_PRICE)
as
begin
select MODCNT
from AMOUNTS AA
where (CAID = :ACAID_) and
(MODID = :MODID_) and
(ADATE = (select max(ADATE)
from AMOUNTS A1
where (A1.CAID = :ACAID_) and
(A1.MODID = :MODID_) and
A1.ADATE <= :ADATE_))
into :MODCNT;
suspend;
end
ADATE - то дата, а ADATE_ - это текущий таймстэмп