functional but checks max for all bal every time

This commit is contained in:
Paul Trowbridge 2018-09-24 00:07:05 -04:00
parent e29b3cea2e
commit cd29ccefab
2 changed files with 14 additions and 6 deletions

View File

@ -205,12 +205,16 @@ CREATE OR REPLACE FUNCTION evt.gl_insert() RETURNS trigger
,list AS (
SELECT
acct
,min(lower(dur)) minp
,max(lower(dur)) maxp
,least(min(lower(dur)),min(lower(g.dur))) minp
,greatest(max(lower(dur)),max(lower(g.dur))) maxp
FROM
ins b
INNER JOIN evt.fspr f ON
f.id = b.fspr
LEFT OUTER JOIN evt.bal e ON
e.acct = b.acct
LEFT OUTER JOIN evt.fspr g ON
g.fspr = e.id
GROUP BY
acct
)

View File

@ -29,15 +29,19 @@ CREATE OR REPLACE FUNCTION evt.gl_insert() RETURNS trigger
)
,list AS (
SELECT
acct
,min(lower(dur)) minp
,max(lower(dur)) maxp
b.acct
,least(min(lower(f.dur)),min(lower(g.dur))) minp
,greatest(max(lower(f.dur)),max(lower(g.dur))) maxp
FROM
ins b
INNER JOIN evt.fspr f ON
f.id = b.fspr
LEFT OUTER JOIN evt.bal e ON
e.acct = b.acct
LEFT OUTER JOIN evt.fspr g ON
e.fspr = g.id
GROUP BY
acct
b.acct
)
,seq AS (
WITH RECURSIVE rf (acct, minp, maxp, id, dur, obal, debits, credits, cbal) AS