accomodate periods

This commit is contained in:
Paul Trowbridge 2018-09-19 00:58:06 -04:00
parent 8a5bfcbd4b
commit e4a813304d
3 changed files with 54 additions and 1 deletions

View File

@ -0,0 +1,41 @@
WITH
--startign month
m as (
SELECT
*
FROM
(
VALUES
(1,1,1)
,(2,2,1)
,(3,3,1)
,(4,4,2)
,(5,5,2)
,(6,6,2)
,(7,7,3)
,(8,8,3)
,(9,9,3)
,(10,10,4)
,(11,11,4)
,(12,12,4)
) X (cm,fm,fq)
)
INSERT INTO
evt.fspr
SELECT
--TO_CHAR(gs.d,'YYYY.MM.DD')::ltree t1
(
--year
to_char(extract(year from gs.d),'FM0000')
--quarter
||'.'||to_char(m.fq,'FM00')
--month
||'.'||to_char(m.fm,'FM00')
--day
||'.'||to_char(extract(day from gs.d),'FM00')
)::ltree t2
,tstzrange(gs.d,gs.d + '1 month'::interval) r
FROM
generate_series('2018-01-01 00:00'::timestamptz,'2099-12-01 00:00'::timestamptz,'1 month') gs(d)
INNER JOIN m ON
m.cm = extract(month from gs.d)

View File

@ -3,7 +3,11 @@
CREATE TABLE evt.gl ( CREATE TABLE evt.gl (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY
,bprid INT REFERENCES evt.bpr (id) ,bprid INT REFERENCES evt.bpr (id)
,account text REFERENCES evt.acct (acct) ,acct text REFERENCES evt.acct (acct)
,pstmp timestamptz DEFAULT CURRENT_TIMESTAMP
--populates by trigger join to evt.fspr
,tstmp timestamptz
,fspr ltree REFERENCES evt.fspr (id);
,amount numeric (12,2) ,amount numeric (12,2)
,glline INT ,glline INT
,bprkeys JSONB ,bprkeys JSONB
@ -11,6 +15,9 @@ CREATE TABLE evt.gl (
COMMENT ON COLUMN evt.gl.id IS 'gl id'; COMMENT ON COLUMN evt.gl.id IS 'gl id';
COMMENT ON COLUMN evt.gl.bprid IS 'id of initial basic pecuniary record'; COMMENT ON COLUMN evt.gl.bprid IS 'id of initial basic pecuniary record';
COMMENT ON COLUMN evt.gl.acct IS 'account code'; COMMENT ON COLUMN evt.gl.acct IS 'account code';
COMMENT ON COLUMN evt.gl.pstmp IS 'post time stamp';
COMMENT ON COLUMN evt.gl.tstmp IS 'transaction time stamp';
COMMENT ON COLUMN evt.gl.fspr IS 'fiscal period';
COMMENT ON COLUMN evt.gl.amount IS 'amount'; COMMENT ON COLUMN evt.gl.amount IS 'amount';
COMMENT ON COLUMN evt.gl.glline IS 'gl line number'; COMMENT ON COLUMN evt.gl.glline IS 'gl line number';
COMMENT ON COLUMN evt.gl.bprkeys IS 'extract from initial basic pecuniary record'; COMMENT ON COLUMN evt.gl.bprkeys IS 'extract from initial basic pecuniary record';

5
schema/tables/perd.sql Normal file
View File

@ -0,0 +1,5 @@
------------------------fiscal periods------------------------
CREATE TABLE evt.fspr (
id ltree
,dur tstzrange
)