Featured post

Functionality of Segment Value Inheritance ESS Process

  The Segment Value Inheritance process simplifies the maintenance of the chart of accounts. When the characteristics of values in the value...

Monday 8 May 2017

AR Aging Report Query




select customer_number, customer_name, 
paymt, 
Day_030 , 
Day_031_060, 
Day_061_090, 
Day_091_120, 
Day_121_150, 
Day_151_180, 
Day_181, 
no_ofTrx 
from 
(select pay.org_id,pay.customer_id 
-- ,pay.trx_number, pay.trx_date 
-- ,pay.AMOUNT_DUE_ORIGINAL, pay.AMOUNT_DUE_REMAINING,to_Date 
('asofdate') - trunc(pay.trx_date) 
, sum((case when ( to_Date ('&1') - trunc(pay.trx_date) ) <=30 
then APPS.XX_ar_aging_amtapp(to_Date ('&1'),pay.customer_trx_id) end ) ) 
Day_030 
, sum((case when ( to_Date ('&1') - trunc(pay.trx_date) ) 
between 31 and 60 then APPS.XX_ar_aging_amtapp(to_Date 
('&1'),pay.customer_trx_id) end ) ) Day_031_060 
, sum((case when ( to_Date ('&1') - trunc(pay.trx_date) ) between 
61 and 90 then APPS.XX_ar_aging_amtapp(to_Date 
('&1'),pay.customer_trx_id) end ) ) Day_061_090 
, sum((case when ( to_Date ('&1') - trunc(pay.trx_date) ) 
between 91 and 120 then APPS.XX_ar_aging_amtapp(to_Date 
('&1'),pay.customer_trx_id) end ) ) Day_091_120 
, sum((case when ( to_Date ('&1') - trunc(pay.trx_date) ) between 
121 and 150 then APPS.XX_ar_aging_amtapp(to_Date 
('&1'),pay.customer_trx_id) end ) ) Day_121_150 
, sum((case when ( to_Date ('&1') - trunc(pay.trx_date) ) 
between 151 and 180 then APPS.XX_ar_aging_amtapp(to_Date 
('&1'),pay.customer_trx_id) end ) ) Day_151_180 
, sum((case when ( to_Date ('&1') - trunc(pay.trx_date) ) >= 
181 then APPS.XX_ar_aging_amtapp(to_Date 
('&1'),pay.customer_trx_id) end ) ) Day_181 
,count(*) no_ofTrx 
,'' 
from apps.ar_payment_Schedules_all pay 
where pay.class in ('XX','YY','ZZ') and pay.org_id = &3 
and pay.gl_date <= to_Date ('&1') 
and pay.GL_DATE_CLOSED > to_Date ('&1') 
and exists ( select 'x' from apps.gl_code_combinations gl 
,apps.ra_cust_trx_line_gl_dist_all distgl 
where (trim (('&2')) ='0' or gl.segment4 in ('&2')) 
--gl.segment4 in ('&2') 
and gl.CODE_COMBINATION_ID = distgl.CODE_COMBINATION_ID 
and distgl.ACCOUNT_CLASS ='REC' 
and distgl.CUSTOMER_TRX_ID =pay.CUSTOMER_TRX_ID 

group by pay.org_id,pay.customer_id 
-- ,pay.AMOUNT_DUE_ORIGINAL, pay.AMOUNT_DUE_REMAINING 
,pay.trx_number, pay.trx_date 
) invag , 
(select pay.org_id,pay.customer_id, sum(receiptL.AMOUNT_APPLIED) paymt 
from apps.ar_payment_Schedules_all pay 
,AR_RECEIVABLE_APPLICATIONS_ALL receiptL 
where pay.class ='PMT' and receiptl.status in ('ACC','UNAPP') and 
pay.org_id =&3 
and pay.PAYMENT_SCHEDULE_ID = receiptL.PAYMENT_SCHEDULE_ID 
and pay.gl_date <= to_Date ('&1') 
and pay.GL_DATE_CLOSED > to_Date ('&1') 
group by pay.org_id,pay.customer_id 
) payment, 
apps.ra_customers cust 
where cust.customer_id = invag.customer_id (+) 
and cust.customer_id = payment.customer_id (+) 
and (invag.org_id is not null or payment.org_id is not null)

No comments:

Post a Comment

Please review my topic and update your comments

Note: only a member of this blog may post a comment.