https://generalledger-gl.blogspot.com/2017/09/trial-balance-query-std.html
PLSQL Query to Get Trial Balance
select
cc.SEGMENT4 ACCOUNTS,
decode(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
'S',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
NVL(BEGIN_BALANCE_DR_BEQ, 0) -
NVL(BEGIN_BALANCE_CR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
0,
'S',
0,
'E',
0)),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) -
NVL(BEGIN_BALANCE_CR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR_BEQ, 0) -
NVL(BEGIN_BALANCE_CR_BEQ, 0),
0)))))
BEGIN_BALANCE,
DECODE(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PERIOD_NET_DR, 0),
'S',
NVL(PERIOD_NET_DR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PERIOD_NET_DR, 0),
NVL(PERIOD_NET_DR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
'S',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
NVL(PROJECT_TO_DATE_DR_BEQ, 0) +
NVL(PERIOD_NET_DR_BEQ, 0)))),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) + NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) + NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) +
NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR_BEQ, 0) +
NVL(PERIOD_NET_DR_BEQ, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR_BEQ, 0),
0)))))
PERIOD_DR,
DECODE(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PERIOD_NET_CR, 0),
'S',
NVL(PERIOD_NET_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PERIOD_NET_CR, 0),
NVL(PERIOD_NET_CR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
'S',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
NVL(PROJECT_TO_DATE_CR_BEQ, 0) +
NVL(PERIOD_NET_CR_BEQ, 0)))),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) + NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) + NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) +
NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR_BEQ, 0) +
NVL(PERIOD_NET_CR_BEQ, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR_BEQ, 0),
0)))))
PERIOD_CR
,
decode(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
'S',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
NVL(BEGIN_BALANCE_DR_BEQ, 0) -
NVL(BEGIN_BALANCE_CR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
0,
'S',
0,
'E',
0)),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) -
NVL(BEGIN_BALANCE_CR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR_BEQ, 0) -
NVL(BEGIN_BALANCE_CR_BEQ, 0),
0)))))
+
DECODE(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PERIOD_NET_DR, 0),
'S',
NVL(PERIOD_NET_DR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PERIOD_NET_DR, 0),
NVL(PERIOD_NET_DR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
'S',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
NVL(PROJECT_TO_DATE_DR_BEQ, 0) +
NVL(PERIOD_NET_DR_BEQ, 0)))),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) + NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) + NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) +
NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR_BEQ, 0) +
NVL(PERIOD_NET_DR_BEQ, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR_BEQ, 0),
0)))))
-
DECODE(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PERIOD_NET_CR, 0),
'S',
NVL(PERIOD_NET_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PERIOD_NET_CR, 0),
NVL(PERIOD_NET_CR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
'S',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
NVL(PROJECT_TO_DATE_CR_BEQ, 0) +
NVL(PERIOD_NET_CR_BEQ, 0)))),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) + NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) + NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) +
NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR_BEQ, 0) +
NVL(PERIOD_NET_CR_BEQ, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR_BEQ, 0),
0)))))
ENDING_BALANCE
FROM GL_BALANCES BAL,
GL_CODE_COMBINATIONS CC,
GL_LEDGERS L,
GL_LEDGER_SET_ASSIGNMENTS ASG,
GL_LEDGER_RELATIONSHIPS LR
WHERE
BAL.ACTUAL_FLAG = 'A'
AND BAL.CURRENCY_CODE = &ENTERED_CURRENCY
AND BAL.PERIOD_NAME IN (&PERIOD_NAME,
DECODE(&AMOUNT_YPE,
'PTD',
&PERIOD_NAME,
'PJTD',
&PERIOD_NAME,
'YTD',
&FIRST_PERIOD))
AND BAL.CODE_COMBINATION_ID = CC.CODE_COMBINATION_ID
-- AND CC.CHART_OF_ACCOUNTS_ID = &STRUCT_NUM
AND CC.TEMPLATE_ID IS NULL
AND CC.SUMMARY_FLAG = 'N'
AND L.LEDGER_ID = &LEDGER_ID
AND ASG.LEDGER_SET_ID(+) = L.LEDGER_ID
AND LR.TARGET_LEDGER_ID = NVL(ASG.LEDGER_ID, L.LEDGER_ID)
AND LR.SOURCE_LEDGER_ID = NVL(ASG.LEDGER_ID, L.LEDGER_ID)
AND LR.TARGET_CURRENCY_CODE = &LEDGER_CURRENCY
AND LR.SOURCE_LEDGER_ID = BAL.LEDGER_ID
AND LR.TARGET_LEDGER_ID = BAL.LEDGER_ID
group by cc.SEGMENT4
order by cc.SEGMENT4
PLSQL Query to Get Trial Balance
select
cc.SEGMENT4 ACCOUNTS,
decode(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
'S',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
NVL(BEGIN_BALANCE_DR_BEQ, 0) -
NVL(BEGIN_BALANCE_CR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
0,
'S',
0,
'E',
0)),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) -
NVL(BEGIN_BALANCE_CR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR_BEQ, 0) -
NVL(BEGIN_BALANCE_CR_BEQ, 0),
0)))))
BEGIN_BALANCE,
DECODE(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PERIOD_NET_DR, 0),
'S',
NVL(PERIOD_NET_DR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PERIOD_NET_DR, 0),
NVL(PERIOD_NET_DR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
'S',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
NVL(PROJECT_TO_DATE_DR_BEQ, 0) +
NVL(PERIOD_NET_DR_BEQ, 0)))),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) + NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) + NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) +
NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR_BEQ, 0) +
NVL(PERIOD_NET_DR_BEQ, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR_BEQ, 0),
0)))))
PERIOD_DR,
DECODE(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PERIOD_NET_CR, 0),
'S',
NVL(PERIOD_NET_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PERIOD_NET_CR, 0),
NVL(PERIOD_NET_CR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
'S',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
NVL(PROJECT_TO_DATE_CR_BEQ, 0) +
NVL(PERIOD_NET_CR_BEQ, 0)))),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) + NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) + NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) +
NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR_BEQ, 0) +
NVL(PERIOD_NET_CR_BEQ, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR_BEQ, 0),
0)))))
PERIOD_CR
,
decode(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
'S',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
NVL(BEGIN_BALANCE_DR_BEQ, 0) -
NVL(BEGIN_BALANCE_CR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
0,
'S',
0,
'E',
0)),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) - NVL(BEGIN_BALANCE_CR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0) -
NVL(BEGIN_BALANCE_CR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR_BEQ, 0) -
NVL(BEGIN_BALANCE_CR_BEQ, 0),
0)))))
+
DECODE(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PERIOD_NET_DR, 0),
'S',
NVL(PERIOD_NET_DR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PERIOD_NET_DR, 0),
NVL(PERIOD_NET_DR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
'S',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PROJECT_TO_DATE_DR, 0) + NVL(PERIOD_NET_DR, 0),
NVL(PROJECT_TO_DATE_DR_BEQ, 0) +
NVL(PERIOD_NET_DR_BEQ, 0)))),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) + NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) + NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR, 0) +
NVL(PERIOD_NET_DR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_DR_BEQ, 0) +
NVL(PERIOD_NET_DR_BEQ, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_DR_BEQ, 0),
0)))))
-
DECODE(&AMOUNT_YPE,
'PTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PERIOD_NET_CR, 0),
'S',
NVL(PERIOD_NET_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PERIOD_NET_CR, 0),
NVL(PERIOD_NET_CR_BEQ, 0)))),
'PJTD',
SUM(DECODE(&CURRENCY_TYPE,
'T',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
'S',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
'E',
DECODE(BAL.TRANSLATED_FLAG,
'R',
NVL(PROJECT_TO_DATE_CR, 0) + NVL(PERIOD_NET_CR, 0),
NVL(PROJECT_TO_DATE_CR_BEQ, 0) +
NVL(PERIOD_NET_CR_BEQ, 0)))),
'YTD',
DECODE(&CURRENCY_TYPE,
'T',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) + NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0)),
'S',
SUM(DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) + NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0)),
'E',
SUM(DECODE(BAL.TRANSLATED_FLAG,
'R',
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR, 0) +
NVL(PERIOD_NET_CR, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR, 0),
0),
DECODE(BAL.PERIOD_NAME,
&PERIOD_NAME,
NVL(BEGIN_BALANCE_CR_BEQ, 0) +
NVL(PERIOD_NET_CR_BEQ, 0),
0)
- DECODE(BAL.PERIOD_NAME,
&FIRST_PERIOD,
NVL(BEGIN_BALANCE_CR_BEQ, 0),
0)))))
ENDING_BALANCE
FROM GL_BALANCES BAL,
GL_CODE_COMBINATIONS CC,
GL_LEDGERS L,
GL_LEDGER_SET_ASSIGNMENTS ASG,
GL_LEDGER_RELATIONSHIPS LR
WHERE
BAL.ACTUAL_FLAG = 'A'
AND BAL.CURRENCY_CODE = &ENTERED_CURRENCY
AND BAL.PERIOD_NAME IN (&PERIOD_NAME,
DECODE(&AMOUNT_YPE,
'PTD',
&PERIOD_NAME,
'PJTD',
&PERIOD_NAME,
'YTD',
&FIRST_PERIOD))
AND BAL.CODE_COMBINATION_ID = CC.CODE_COMBINATION_ID
-- AND CC.CHART_OF_ACCOUNTS_ID = &STRUCT_NUM
AND CC.TEMPLATE_ID IS NULL
AND CC.SUMMARY_FLAG = 'N'
AND L.LEDGER_ID = &LEDGER_ID
AND ASG.LEDGER_SET_ID(+) = L.LEDGER_ID
AND LR.TARGET_LEDGER_ID = NVL(ASG.LEDGER_ID, L.LEDGER_ID)
AND LR.SOURCE_LEDGER_ID = NVL(ASG.LEDGER_ID, L.LEDGER_ID)
AND LR.TARGET_CURRENCY_CODE = &LEDGER_CURRENCY
AND LR.SOURCE_LEDGER_ID = BAL.LEDGER_ID
AND LR.TARGET_LEDGER_ID = BAL.LEDGER_ID
group by cc.SEGMENT4
order by cc.SEGMENT4
This is very Helpfull
ReplyDelete