DataScope G/L Finanacial Statements
Jump to navigation
Jump to search
Data Setup
The Keys to
- Assign all Accounts to meaningful groups. For example:
- EXPCOGS
- EXPGA
- ASTCUR
- ASTFIX
- Assign all groups Heading group to top level Groups:
- INC: Income
- EXP: Expenses
- AST: Assets
- Setup Sequence Numbers for all Groups. For Example
- AST: 100
- ASTCUR: 110
- ASTFIX: 150
- INCSALES: 410
Query
Income Statement Only:
select g.sequence||' '||g.group_id||' '||g.line_description Group_Name,t.gl_account||' '||A.Description Account,G.PARENT_GROUP_ID PARGRP,(select sequence from gltacgrp gp where gp.group_id=g.parent_group_id) pgseq,a.gl_group,
t.trx_date,-t.trx_amount trx_amount,t.source_app,description_1, description_2,a.gl_account account,a.description,session_no,trans_no,a.segment_1,a.segment_2,Trx_Date Mo,trx_date yr, trx_date qtr from glttrx t
inner join gltacct a on a.gl_account=t.gl_account
left outer join gltacgrp g on g.group_id = a.gl_group
where trx_date between :beg_date and :end_date and trans_type not in ('B','R') and a.account_type='I'
order by g.sequence
Income Statement and Balance Sheet:
select g.sequence||' '||g.group_id||' '||g.line_description Group_Name,t.gl_account||' '||A.Description Account_name,t.trx_date yr,t.trx_date mo,t.trx_date,-t.trx_amount trx_amount,t.source_app,session_no,trans_no,description_1, description_2,a.gl_account account,a.description ,G.PARENT_GROUP_ID PARGRP,(select sequence from gltacgrp gp where gp.group_id=g.parent_group_id) pgseq
,a.segment_1,a.segment_2,A.ACCOUNT_TYPE IB,a.NOTES_1||' '||a.notes_2 "GL Account" from glttrx t
inner join gltacct a on a.gl_account=t.gl_account
left outer join gltacgrp g on g.group_id = a.gl_group
where (trx_date between :beg_date and :end_date and trans_type not in ('B','R')) and gl_account not between 'Y' AND 'Z'
union
select g.sequence||' '||g.group_id||' '||g.line_description Group_Name,t.gl_account||' '||A.Description Account,
cast ('1/1/2000' as date),cast ('1/1/2000' as date),trx_date,-t.trx_amount,t.source_app,session_no,trans_no,description_1, description_2,a.gl_account account,a.description
,G.PARENT_GROUP_ID PARGRP,(select sequence from gltacgrp gp where gp.group_id=g.parent_group_id) pgseq
,a.segment_1,a.segment_2,A.ACCOUNT_TYPE,NOTES_1||' '||notes_2 from glttrx t
inner join gltacct a on a.gl_account=t.gl_account
left outer join gltacgrp g on g.group_id = a.gl_group
where (trx_date < :beg_date and trans_type not in ('B') and a.account_type='B')
Income Statement with separate drilldown query:
Main Query
select
gp.sequence pgseq,
G.PARENT_GROUP_ID PARGRP,
g.sequence, g.group_id, g.line_description,
t.gl_account, A.Description,
t.trx_date,
t.Trx_Date Mo,t.trx_date yr, t.trx_date qtr,
sum(-t.trx_amount) trx_amount,
sum(-t.trx_amount) pct_comp
from glttrx t
inner join gltacct a on a.gl_account=t.gl_account
left outer join gltacgrp g on g.group_id = a.gl_group
left outer join gltacgrp gp on gp.group_id = g.parent_group_id
where (t.trx_date between :beg_date and :end_date) and
(t.trans_type not in ('B','R')) and
(a.account_type='I') and
(t.gl_account not between 'Y' AND 'Z')
group by gp.sequence, g.parent_group_id, g.sequence, g.group_id, g.line_description,
t.gl_account, a.description, t.trx_date
Drilldown Query
select
a.gl_group,
t.trx_date, t.trx_amount, t.source_app,
t.description_1, t.description_2,
t.gl_account, a.description,
t.session_no, t.trans_no,
a.segment_1, a.segment_2
from glttrx t
inner join gltacct a on a.gl_account=t.gl_account
left outer join gltacgrp g on g.group_id = a.gl_group
left outer join gltacgrp gp on gp.group_id = g.parent_group_id
where (t.trx_date between :beg_date and :end_date) and
(t.trans_type not in ('B','R')) and
(a.account_type='I') and
(t.gl_account not between 'Y' AND 'Z') and
[WHERE pgseq=gp.sequence]
[WHERE pargrp=g.parent_group_id]
[WHERE sequence=g.sequence]
[WHERE group_id=g.group_id]
[WHERE line_description=g.line_description]
[WHERE gl_account=t.gl_account]
[WHERE description=a.description]
[WHERE yr=extract(year from t.trx_date)]
[WHERE mo=extract(month from t.trx_date)]



