DBA Data[Home] [Help]

APPS.ARP_CUSTOMER_AGING SQL Statements

The following lines contain the word 'select', 'insert', 'update' or 'delete':

Line: 74

        select lines.days_start,
               lines.days_to,
               lines.report_heading1,
               lines.report_heading2,
               lines.type
        from   ar_aging_bucket_lines    lines,
               ar_aging_buckets         buckets
        where  lines.aging_bucket_id      = buckets.aging_bucket_id
        and    upper(buckets.bucket_name) = upper(p_bucket_name)
        and nvl(buckets.status,'A')       = 'A'
        order  by lines.bucket_sequence_num
        ;
Line: 93

  select decode(p_currency_code, NULL, ps.acctd_amount_due_remaining,
                ps.amount_due_remaining),
         decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ra_cust_trx_types,
         ar_payment_schedules        ps
  where  ps.gl_date                           <= p_as_of_date
  and    ps.cust_trx_type_id                   = ra_cust_trx_types.cust_trx_type_id
  and    ps.gl_date_closed                     > p_as_of_date
  and    ps.customer_id                        = p_customer_id
  and    decode(p_customer_site_use_id,
                NULL, ps.customer_site_use_id,
                p_customer_site_use_id)        = ps.customer_site_use_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'PMT')                        <> ps.class
  and    decode(p_invoice_type_low,
                NULL, ra_cust_trx_types.name,
                p_invoice_type_low)           <= ra_cust_trx_types.name
  and    decode(p_invoice_type_high,
                NULL, ra_cust_trx_types.name,
                p_invoice_type_high)          >= ra_cust_trx_types.name
UNION ALL
  select -sum(decode(p_currency_code, NULL, app.acctd_amount_applied_from,
                     app.amount_applied)),
	decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1)))b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ar_payment_schedules           ps,
	 ar_receivable_applications     app
 where   app.gl_date+0                        <= p_as_of_date
  and    ps.cash_receipt_id+0                  = app.cash_receipt_id
  and    app.status                           in ( 'ACC', 'UNAPP', 'UNID','OTHER ACC')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    decode(p_customer_site_use_id,
                NULL, nvl(ps.customer_site_use_id,-10),
                p_customer_site_use_id)        = nvl(ps.customer_site_use_id,-10)
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(p_credit_option,'AGE','AGE','dummy') = 'AGE' /*4436914*/
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         decode( app.status, 'UNID', 'UNID', 'UNAPP')
UNION ALL /*Bug 4436914 excluded APP and adjustments after as of date*/
  select nvl(sum(decode(p_currency_code, NULL, app.amount_applied,
                  app.acctd_amount_applied_from)),0) amount_due_remaining,
        decode(v_bucket_line_type_0,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_0,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_0,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b0,
        decode(v_bucket_line_type_1,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_1,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_1,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1)))b1,
        decode(v_bucket_line_type_2,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_2,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_2,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b2,
        decode(v_bucket_line_type_3,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_3,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_3,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b3,
        decode(v_bucket_line_type_4,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_4,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_4,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b4,
        decode(v_bucket_line_type_5,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_5,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_5,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b5,
        decode(v_bucket_line_type_6,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_6,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_6,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b6
  from   ar_payment_schedules           ps,
         ar_receivable_applications     app
 where   app.gl_date+0                        > p_as_of_date
  and    ps.cash_receipt_id                   = app.cash_receipt_id /*4436914*/
  and    (ps.payment_schedule_id                = app.applied_payment_schedule_id
         OR
         ps.payment_schedule_id                = app.payment_schedule_id)
  and    app.status                           in ( 'APP')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    decode(p_customer_site_use_id,
                NULL, nvl(ps.customer_site_use_id,-10),
                p_customer_site_use_id)        = nvl(ps.customer_site_use_id,-10)
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         ps.payment_schedule_id
UNION ALL
SELECT -sum(nvl(adj.amount,0)) amount_due_remaining,1,0,0,0,0,0,0
FROM   ar_adjustments adj,
       ar_payment_schedules_all ps
WHERE         adj.GL_date                           > p_as_of_date
       AND    ps.payment_schedule_id                = adj.payment_schedule_id
       AND    adj.status                            = 'A'
       AND    ps.gl_date_closed                     > p_as_of_date
       AND    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
       AND    ps.customer_id                        = p_customer_id
       AND    decode(p_customer_site_use_id,
                NULL, nvl(ps.customer_site_use_id,-10),
                p_customer_site_use_id)        = nvl(ps.customer_site_use_id,-10)
       AND    decode(upper(p_currency_code),NULL, ps.invoice_currency_code,upper(p_currency_code))= ps.invoice_currency_code
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','CM')                         <> ps.class
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class;
Line: 631

  select decode(p_currency_code, NULL, ps.acctd_amount_due_remaining,
                ps.amount_due_remaining),
         decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from  ar_payment_schedules        ps,
        ra_cust_trx_types           rctt
  where  ps.gl_date                           <= p_as_of_date
  and    ps.gl_date_closed                     > p_as_of_date
  and    ps.cust_trx_type_id                   = rctt.cust_trx_type_id
  and    ps.customer_id                        = p_customer_id
  and    ps.customer_site_use_id               = p_customer_site_use_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'PMT')                        <> ps.class
UNION ALL
  select -sum(decode(p_currency_code, NULL, app.acctd_amount_applied_from,
                     app.amount_applied)),
	decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1)))b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ar_payment_schedules           ps,
	 ar_receivable_applications     app
 where   app.gl_date+0                        <= p_as_of_date
  and    ps.cash_receipt_id+0                  = app.cash_receipt_id
  and    app.status                           in ( 'ACC', 'UNAPP', 'UNID','OTHER ACC')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    ps.customer_site_use_id               = p_customer_site_use_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(p_credit_option,'AGE','AGE','dummy') = 'AGE' /*4436914*/
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         decode( app.status, 'UNID', 'UNID', 'UNAPP')
UNION ALL /*Bug 4436914 excluded APP and adjustments after as of date*/
  select nvl(sum(decode(p_currency_code, NULL, app.amount_applied,
                  app.acctd_amount_applied_from)),0) amount_due_remaining,
        decode(v_bucket_line_type_0,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_0,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_0,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b0,
        decode(v_bucket_line_type_1,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_1,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_1,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1)))b1,
        decode(v_bucket_line_type_2,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_2,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_2,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b2,
        decode(v_bucket_line_type_3,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_3,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_3,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b3,
        decode(v_bucket_line_type_4,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_4,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_4,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b4,
        decode(v_bucket_line_type_5,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_5,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_5,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b5,
        decode(v_bucket_line_type_6,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_6,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_6,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b6
  from   ar_payment_schedules           ps,
         ar_receivable_applications     app
 where   app.gl_date+0                        > p_as_of_date
  and    ps.cash_receipt_id                   = app.cash_receipt_id  /*4436914*/
  and    (ps.payment_schedule_id                = app.applied_payment_schedule_id
         OR
         ps.payment_schedule_id                = app.payment_schedule_id)
  and    app.status                           in ( 'APP')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    ps.customer_site_use_id               = p_customer_site_use_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         ps.payment_schedule_id
UNION ALL
SELECT -sum(nvl(adj.amount,0)) amount_due_remaining,1,0,0,0,0,0,0
FROM   ar_adjustments adj,
       ar_payment_schedules_all ps
WHERE         adj.GL_date                           > p_as_of_date
       AND    ps.payment_schedule_id                = adj.payment_schedule_id
       AND    adj.status                            = 'A'
       AND    ps.gl_date_closed                     > p_as_of_date
       AND    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
       AND    ps.customer_id                        = p_customer_id
       AND    ps.customer_site_use_id               = p_customer_site_use_id
       AND    decode(upper(p_currency_code),NULL, ps.invoice_currency_code,upper(p_currency_code))= ps.invoice_currency_code
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','CM')                         <> ps.class
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class;
Line: 1154

  select decode(p_currency_code, NULL, ps.acctd_amount_due_remaining,
                ps.amount_due_remaining),
         decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ra_cust_trx_types,
         ar_payment_schedules        ps
  where  ps.gl_date                           <= p_as_of_date
  and    ps.cust_trx_type_id                   = ra_cust_trx_types.cust_trx_type_id
  and    ps.gl_date_closed                     > p_as_of_date
  and    ps.customer_id                        = p_customer_id
  and    ps.customer_site_use_id               = p_customer_site_use_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'PMT')                        <> ps.class
  and    decode(p_invoice_type_low,
                NULL, ra_cust_trx_types.name,
                p_invoice_type_low)           <= ra_cust_trx_types.name
  and    decode(p_invoice_type_high,
                NULL, ra_cust_trx_types.name,
                p_invoice_type_high)          >= ra_cust_trx_types.name
UNION ALL
  select -sum(decode(p_currency_code, NULL, app.acctd_amount_applied_from,
                     app.amount_applied)),
	decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1)))b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ar_payment_schedules           ps,
	 ar_receivable_applications     app
 where   app.gl_date+0                        <= p_as_of_date
  and    ps.cash_receipt_id+0                  = app.cash_receipt_id
  and    app.status                           in ( 'ACC', 'UNAPP', 'UNID','OTHER ACC')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    ps.customer_site_use_id               = p_customer_site_use_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(p_credit_option,'AGE','AGE','dummy') = 'AGE'  /*4436914*/
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         decode( app.status, 'UNID', 'UNID', 'UNAPP')
UNION ALL /*Bug 4436914 excluded APP and adjustments after as of date*/
  select nvl(sum(decode(p_currency_code, NULL, app.amount_applied,
                  app.acctd_amount_applied_from)),0) amount_due_remaining,
        decode(v_bucket_line_type_0,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_0,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_0,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b0,
        decode(v_bucket_line_type_1,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_1,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_1,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1)))b1,
        decode(v_bucket_line_type_2,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_2,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_2,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b2,
        decode(v_bucket_line_type_3,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_3,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_3,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b3,
        decode(v_bucket_line_type_4,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_4,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_4,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b4,
        decode(v_bucket_line_type_5,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_5,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_5,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b5,
        decode(v_bucket_line_type_6,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_6,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_6,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b6
  from   ar_payment_schedules           ps,
         ar_receivable_applications     app
 where   app.gl_date+0                        > p_as_of_date
  and    ps.cash_receipt_id                   = app.cash_receipt_id  /*4436914*/
  and    (ps.payment_schedule_id                = app.applied_payment_schedule_id
         OR
         ps.payment_schedule_id                = app.payment_schedule_id)
  and    app.status                           in ( 'APP')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    ps.customer_site_use_id               = p_customer_site_use_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         ps.payment_schedule_id
UNION ALL
SELECT -sum(nvl(adj.amount,0)) amount_due_remaining,1,0,0,0,0,0,0
FROM   ar_adjustments adj,
       ar_payment_schedules_all ps
WHERE         adj.GL_date                           > p_as_of_date
       AND    ps.payment_schedule_id                = adj.payment_schedule_id
       AND    adj.status                            = 'A'
       AND    ps.gl_date_closed                     > p_as_of_date
       AND    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
       AND    ps.customer_id                        = p_customer_id
       AND    ps.customer_site_use_id               = p_customer_site_use_id
       AND    decode(upper(p_currency_code),NULL, ps.invoice_currency_code,upper(p_currency_code))= ps.invoice_currency_code
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','CM')                         <> ps.class
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class;
Line: 1683

  select decode(p_currency_code, NULL, ps.acctd_amount_due_remaining,
                ps.amount_due_remaining),
         decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ar_payment_schedules        ps,
         ra_cust_trx_types           rctt
  where  ps.gl_date                           <= p_as_of_date
  and    ps.gl_date_closed                     > p_as_of_date
  and    ps.cust_trx_type_id                   = rctt.cust_trx_type_id
  and    ps.customer_id                        = p_customer_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'PMT')                        <> ps.class
UNION ALL
  select -sum(decode(p_currency_code, NULL, app.acctd_amount_applied_from,
                     app.amount_applied)),
	decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1)))b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ar_payment_schedules           ps,
	 ar_receivable_applications     app
 where   app.gl_date+0                        <= p_as_of_date
  and    ps.cash_receipt_id+0                  = app.cash_receipt_id
  and    app.status                           in ( 'ACC', 'UNAPP', 'UNID','OTHER ACC')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(p_credit_option,'AGE','AGE','dummy') = 'AGE'  /*4436914*/
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         decode( app.status, 'UNID', 'UNID', 'UNAPP')
UNION ALL /*Bug 4436914 excluded APP and adjustments after as of date*/
  select nvl(sum(decode(p_currency_code, NULL, app.amount_applied,
                  app.acctd_amount_applied_from)),0) amount_due_remaining,
        decode(v_bucket_line_type_0,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_0,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_0,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b0,
        decode(v_bucket_line_type_1,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_1,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_1,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1)))b1,
        decode(v_bucket_line_type_2,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_2,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_2,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b2,
        decode(v_bucket_line_type_3,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_3,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_3,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b3,
        decode(v_bucket_line_type_4,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_4,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_4,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b4,
        decode(v_bucket_line_type_5,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_5,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_5,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b5,
        decode(v_bucket_line_type_6,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_6,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_6,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b6
  from   ar_payment_schedules           ps,
         ar_receivable_applications     app
 where   app.gl_date+0                        > p_as_of_date
  and    ps.cash_receipt_id                   = app.cash_receipt_id  /*4436914*/
  and    (ps.payment_schedule_id                = app.applied_payment_schedule_id
         OR
         ps.payment_schedule_id                = app.payment_schedule_id)
  and    app.status                           in ( 'APP')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         ps.payment_schedule_id
UNION ALL
SELECT -sum(nvl(adj.amount,0)) amount_due_remaining,1,0,0,0,0,0,0
FROM   ar_adjustments adj,
       ar_payment_schedules_all ps
WHERE         adj.GL_date                           > p_as_of_date
       AND    ps.payment_schedule_id                = adj.payment_schedule_id
       AND    adj.status                            = 'A'
       AND    ps.gl_date_closed                     > p_as_of_date
       AND    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
       AND    ps.customer_id                        = p_customer_id
       AND    decode(upper(p_currency_code),NULL, ps.invoice_currency_code,upper(p_currency_code))= ps.invoice_currency_code
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','CM')                         <> ps.class
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class;
Line: 2202

  select decode(p_currency_code, NULL, ps.acctd_amount_due_remaining,
                ps.amount_due_remaining) amount_due_remaining,
         decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ra_cust_trx_types,
         ar_payment_schedules        ps
  where  ps.gl_date                           <= p_as_of_date
  and    ps.cust_trx_type_id                   = ra_cust_trx_types.cust_trx_type_id
  and    ps.gl_date_closed                     > p_as_of_date
  and    ps.customer_id                        = p_customer_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'PMT')                        <> ps.class
  and    decode(p_invoice_type_low,
                NULL, ra_cust_trx_types.name,
                p_invoice_type_low)           <= ra_cust_trx_types.name
  and    decode(p_invoice_type_high,
                NULL, ra_cust_trx_types.name,
                p_invoice_type_high)          >= ra_cust_trx_types.name
UNION ALL
  select nvl(-sum(decode(p_currency_code, NULL, app.amount_applied,
                  app.acctd_amount_applied_from)),0) amount_due_remaining,
	decode(v_bucket_line_type_0,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_0,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_0,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b0,
	decode(v_bucket_line_type_1,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_1,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_1,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1)))b1,
	decode(v_bucket_line_type_2,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_2,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_2,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b2,
	decode(v_bucket_line_type_3,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_3,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_3,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b3,
	decode(v_bucket_line_type_4,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_4,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_4,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b4,
	decode(v_bucket_line_type_5,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_5,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_5,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b5,
	decode(v_bucket_line_type_6,
		'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
		'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
		'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
			0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
			1),
		decode(	greatest(v_bucket_days_from_6,
				ceil(p_as_of_date-ps.due_date)),
			least(v_bucket_days_to_6,
				ceil(p_as_of_date-ps.due_date)),1,
			0)
		* decode(nvl(ps.amount_in_dispute,0), 0, 1,
			decode(v_bucket_category,
				'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))
		* decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
			decode(v_bucket_category,
				'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
				1))) b6
  from   ar_payment_schedules           ps,
	 ar_receivable_applications     app
 where   app.gl_date+0                        <= p_as_of_date
  and    ps.cash_receipt_id+0                  = app.cash_receipt_id
  and    app.status                           in ( 'ACC', 'UNAPP', 'UNID','OTHER ACC')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(p_credit_option,'AGE','AGE','dummy') = 'AGE' /*4436914*/
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy', 'SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         decode( app.status, 'UNID', 'UNID', 'UNAPP')
UNION ALL /*Bug 4436914 included APP*/
  select nvl(sum(decode(p_currency_code, NULL, app.amount_applied,
                  app.acctd_amount_applied_from)),0) amount_due_remaining,
        decode(v_bucket_line_type_0,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_0,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_0,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b0,
        decode(v_bucket_line_type_1,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_1,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_1,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1)))b1,
        decode(v_bucket_line_type_2,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_2,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_2,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b2,
        decode(v_bucket_line_type_3,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_3,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_3,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b3,
        decode(v_bucket_line_type_4,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_4,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_4,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b4,
        decode(v_bucket_line_type_5,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_5,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_5,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b5,
        decode(v_bucket_line_type_6,
                'DISPUTE_ONLY',decode(nvl(ps.amount_in_dispute,0),0,0,1),
                'PENDADJ_ONLY',decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                'DISPUTE_PENDADJ',decode(nvl(ps.amount_in_dispute,0),
                        0,decode(nvl(ps.amount_adjusted_pending,0),0,0,1),
                        1),
                decode( greatest(v_bucket_days_from_6,
                                ceil(p_as_of_date-ps.due_date)),
                        least(v_bucket_days_to_6,
                                ceil(p_as_of_date-ps.due_date)),1,
                        0)
                * decode(nvl(ps.amount_in_dispute,0), 0, 1,
                        decode(v_bucket_category,
                                'DISPUTE_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))
                * decode(nvl(ps.amount_adjusted_pending,0), 0, 1,
                        decode(v_bucket_category,
                                'PENDADJ_ONLY', 0, 'DISPUTE_PENDADJ', 0,
                                1))) b6
  from   ar_payment_schedules           ps,
         ar_receivable_applications     app
 where   app.gl_date+0                        > p_as_of_date
  and    ps.cash_receipt_id                   = app.cash_receipt_id  /*4436914*/
  and    (ps.payment_schedule_id                = app.applied_payment_schedule_id
         OR
         ps.payment_schedule_id                = app.payment_schedule_id)
  and    app.status                           in ( 'APP')
  and    nvl(app.confirmed_flag, 'Y')          = 'Y'
  and    ps.gl_date_closed                     > p_as_of_date
  and    (app.reversal_gl_date                 > p_as_of_date OR
          app.reversal_gl_date                is null )
  and    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
  and    ps.customer_id                        = p_customer_id
  and    decode(upper(p_currency_code),
                NULL, ps.invoice_currency_code,
                upper(p_currency_code))        = ps.invoice_currency_code
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'CM')                         <> ps.class
  and    decode(upper(p_credit_option),
                'AGE', 'dummy','SUMMARY','dummy',
                'PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class,
         ps.payment_schedule_id
UNION ALL
SELECT -sum(nvl(adj.amount,0)) amount_due_remaining,1,0,0,0,0,0,0
FROM   ar_adjustments adj,
       ar_payment_schedules_all ps
WHERE         adj.GL_date                           > p_as_of_date
       AND    ps.payment_schedule_id                = adj.payment_schedule_id
       AND    adj.status                            = 'A'
       AND    ps.gl_date_closed                     > p_as_of_date
       AND    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y'
       AND    ps.customer_id                        = p_customer_id
       AND    decode(upper(p_currency_code),NULL, ps.invoice_currency_code,upper(p_currency_code))= ps.invoice_currency_code
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','CM')                         <> ps.class
       AND    decode(upper(p_credit_option),'AGE', 'dummy','SUMMARY','dummy','PMT')                        <> ps.class
group by ps.due_date,
         ps.amount_due_original,
         ps.amount_adjusted,
         ps.amount_applied,
         ps.amount_credited,
         ps.gl_date,
         ps.amount_in_dispute,
         ps.amount_adjusted_pending,
         ps.invoice_currency_code,
         ps.exchange_rate,
         ps.class;
Line: 3048

      SELECT NVL( SUM( DECODE(p_currency_code, NULL,
                              ps.acctd_amount_due_remaining,
                              ps.amount_due_remaining)), 0)
      FROM   ar_payment_schedules           ps,
             ra_cust_trx_line_gl_dist       gld
      WHERE  ps.customer_id                        = p_customer_id
      AND    decode(p_customer_site_use_id,
                    NULL, ps.customer_site_use_id,
                    p_customer_site_use_id)        = ps.customer_site_use_id
      AND    decode(upper(p_currency_code),
                    NULL, ps.invoice_currency_code,
                    upper(p_currency_code))        = ps.invoice_currency_code
      AND    ps.customer_trx_id                    = gld.customer_trx_id
      AND    gld.account_class                     = 'REC'
      AND    gld.latest_rec_flag                   = 'Y'
      AND    ps.class||''                          = 'CM'
      AND    ps.gl_date                           <= p_as_of_date;
Line: 3096

      SELECT NVL(SUM( DECODE(app.status,'UNAPP',
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied), 0) ), 0),
             NVL(SUM( DECODE(app.status,'ACC',
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied), 0) ), 0),
             NVL(SUM( DECODE(app.status,'OTHER ACC',
                         DECODE(app.applied_payment_schedule_id, -4,
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied),0), 0) ), 0),
             NVL(SUM( DECODE(app.status,'OTHER ACC',
                         DECODE(app.applied_payment_schedule_id, -7,
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied),0), 0) ), 0)
      FROM   ar_receivable_applications        app,
             ar_payment_schedules              ps
      WHERE  ps.customer_id                        = p_customer_id
      AND    ps.cash_receipt_id                    = app.cash_receipt_id
      AND    nvl( app.confirmed_flag, 'Y' )        = 'Y'
      AND    app.status                           in ( 'UNAPP', 'ACC' ,'OTHER ACC')
      AND    app.gl_date                          <= p_as_of_date;
Line: 3123

      SELECT NVL(SUM( DECODE(app.status,'UNAPP',
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied), 0) ), 0),
             NVL(SUM( DECODE(app.status,'ACC',
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied), 0) ), 0),
             NVL(SUM( DECODE(app.status,'OTHER ACC',
                         DECODE(app.applied_payment_schedule_id, -4,
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied),0), 0) ), 0),
             NVL(SUM( DECODE(app.status,'OTHER ACC',
                         DECODE(app.applied_payment_schedule_id, -7,
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied),0), 0) ), 0)
      FROM   ar_receivable_applications        app,
             ar_payment_schedules              ps
      WHERE  ps.customer_id                        = p_customer_id
      AND    ps.customer_site_use_id               = p_customer_site_use_id
      AND    ps.cash_receipt_id                    = app.cash_receipt_id
      AND    nvl( app.confirmed_flag, 'Y' )        = 'Y'
      AND    app.status                           in ( 'UNAPP', 'ACC' ,'OTHER ACC')
      AND    app.gl_date                          <= p_as_of_date;
Line: 3151

      SELECT NVL(SUM( DECODE(app.status,'UNAPP',
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied), 0) ), 0),
             NVL(SUM( DECODE(app.status,'ACC',
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied), 0) ), 0),
             NVL(SUM( DECODE(app.status,'OTHER ACC',
                         DECODE(app.applied_payment_schedule_id, -4,
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied),0), 0) ), 0),
             NVL(SUM( DECODE(app.status,'OTHER ACC',
                         DECODE(app.applied_payment_schedule_id, -7,
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied),0), 0) ), 0)
      FROM   ar_receivable_applications        app,
             ar_payment_schedules              ps
      WHERE  ps.customer_id                        = p_customer_id
      AND    ps.cash_receipt_id                    = app.cash_receipt_id
      AND    nvl( app.confirmed_flag, 'Y' )        = 'Y'
      AND    app.status                           in ( 'UNAPP', 'ACC' ,'OTHER ACC')
      AND    ps.invoice_currency_code            = p_currency_code
      AND    app.gl_date                          <= p_as_of_date;
Line: 3179

      SELECT NVL(SUM( DECODE(app.status,'UNAPP',
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied), 0) ), 0),
             NVL(SUM( DECODE(app.status,'ACC',
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied), 0) ), 0),
             NVL(SUM( DECODE(app.status,'OTHER ACC',
                         DECODE(app.applied_payment_schedule_id, -4,
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied),0), 0) ), 0),
             NVL(SUM( DECODE(app.status,'OTHER ACC',
                         DECODE(app.applied_payment_schedule_id, -7,
                             DECODE(p_currency_code, NULL,
                                    -app.acctd_amount_applied_from,
                                    -app.amount_applied),0), 0) ), 0)
      FROM   ar_receivable_applications        app,
             ar_payment_schedules              ps
      WHERE  ps.customer_id                        = p_customer_id
      AND    ps.customer_site_use_id              = p_customer_site_use_id
      AND    ps.cash_receipt_id                    = app.cash_receipt_id
      AND    nvl( app.confirmed_flag, 'Y' )        = 'Y'
      AND    app.status                           in ( 'UNAPP', 'ACC' ,'OTHER ACC')
      AND     ps.invoice_currency_code            = p_currency_code
      AND    app.gl_date                          <= p_as_of_date;
Line: 3247

      SELECT NVL( SUM( DECODE(p_currency_code, NULL, crh.acctd_amount,
                              crh.amount)), 0)
      FROM   ar_cash_receipts             cr,
             ar_cash_receipt_history      crh
      WHERE  cr.pay_from_customer = p_customer_id
/* bug no : 1274152. Aging form did not consider the receipts done without custo
mer location for the calculation of receipt at risk. NVL is added for ps.custome
r_site_use_id in the procedure calc_risk_receipts to avoid null = null compariso
n
fixed by rajsrini */
      AND    decode(p_customer_site_use_id,
                    NULL, nvl(cr.customer_site_use_id,0),
                    p_customer_site_use_id)  = nvl(cr.customer_site_use_id,0)
      AND    cr.currency_code= nvl(p_currency_code,cr.currency_code)
      AND    cr.reversal_date is null
      AND    nvl(cr.confirmed_flag,'Y') = 'Y'
      AND    cr.cash_receipt_id = crh.cash_receipt_id
      AND    crh.current_record_flag||'' = 'Y'
      AND    crh.gl_date <= p_as_of_date
      AND    crh.status  NOT IN ( DECODE ( crh.factor_flag,'Y',
               'RISK_ELIMINATED','N', 'CLEARED'), 'REVERSED' )
     /* 06-AUG-2000 J Rautiainen BR Implementation
      * Short term debt applications are not considered as receipts at risk */
      and    not exists (select 'X'
                         from ar_receivable_applications rap
                         where rap.cash_receipt_id = cr.cash_receipt_id
                         and   rap.applied_payment_schedule_id = -2
                         and   rap.display = 'Y');
Line: 3299

      SELECT NVL(SUM(decode(p_currency_code,NULL,ps.amount_in_dispute * nvl(ps.exchange_rate,1), ps.amount_in_dispute)),0)
      FROM   ar_payment_schedules ps
      WHERE  ps.customer_id                        = p_customer_id
      AND    decode(p_customer_site_use_id,
                    NULL, ps.customer_site_use_id,
                    p_customer_site_use_id)        = ps.customer_site_use_id
      AND    decode(upper(p_currency_code),
                    NULL, ps.invoice_currency_code,
                    upper(p_currency_code))        = ps.invoice_currency_code
--Bug-1304510:Changed ps.due_date to ps.dispute_date.
      AND    ps.dispute_date                          <= p_as_of_date
      AND    nvl( ps.amount_in_dispute, 0 )       <> 0
      AND    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y';
Line: 3335

      SELECT NVL( SUM( ps.amount_adjusted_pending ), 0)
      FROM   ar_payment_schedules ps
      WHERE  ps.customer_id                        = p_customer_id
      AND    decode(p_customer_site_use_id,
                    NULL, ps.customer_site_use_id,
                    p_customer_site_use_id)        = ps.customer_site_use_id
      AND    decode(upper(p_currency_code),
                    NULL, ps.invoice_currency_code,
                    upper(p_currency_code))        = ps.invoice_currency_code
      AND    ps.due_date                          <= p_as_of_date
      AND    nvl( ps.amount_adjusted_pending, 0 ) <> 0
      AND    nvl( ps.receipt_confirmed_flag, 'Y' ) = 'Y';