DBA Data[Home] [Help]

APPS.AP_PREPAY_PKG SQL Statements

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

Line: 34

SELECT DECODE(COUNT(*),
              0, 'INCONSISTENT PREPAY SUPPL', NULL)
  FROM ap_invoices ai
 WHERE ai.invoice_num = cv_prepay_num
   AND ai.vendor_id   = cv_vendor_id;
Line: 79

SELECT DECODE(COUNT(*),
              0, 'INCONSISTENT PREPAY CURR', NULL)
  FROM ap_invoices ai
 WHERE invoice_num              = cv_prepay_num
   AND vendor_id                = cv_vendor_id
   AND cv_base_currency_code    =
           (SELECT base_currency_code
             FROM  ap_system_parameters)
   AND ai.invoice_currency_code = cv_invoice_currency_code
   AND ai.payment_currency_code = NVL(cv_payment_currency_code,
                                      cv_invoice_currency_code);
Line: 139

  SELECT count(*)
  INTO l_count
  FROM ap_invoices ai
  WHERE ai.invoice_num              = p_prepay_num
   AND ai.invoice_type_lookup_code = 'PREPAYMENT'
   AND ai.payment_status_flag      = 'Y'
   AND ai.vendor_id                = p_vendor_id
   AND NVL(ai.earliest_settlement_date,sysdate+1) <= SYSDATE;
Line: 158

    SELECT invoice_id
      INTO p_prepay_invoice_id
      FROM ap_invoices
     WHERE invoice_num = p_prepay_num
     AND vendor_id = p_vendor_id;
Line: 190

SELECT DECODE(COUNT(*),
              0, 'INVALID PREPAY LINE NUM', NULL)
  FROM ap_invoices ai,
       ap_invoice_lines ail
 WHERE ai.invoice_num               = cv_prepay_num
   AND ail.line_number              = cv_prepay_line_num
   AND ail.invoice_id               = ai.invoice_id
   AND ai.invoice_type_lookup_code  = 'PREPAYMENT'
   AND ai.payment_status_flag       = 'Y'
   AND ai.vendor_id                 = cv_vendor_id
   AND NVL(ai.earliest_settlement_date,sysdate+1) <= SYSDATE
   AND ail.line_type_lookup_code    = 'ITEM'
   AND NVL(ail.discarded_flag,'N')  <> 'Y';
Line: 239

SELECT SUM(NVL(aid.prepay_amount_remaining, aid.total_dist_amount))
  FROM ap_invoice_lines_all ail,
       ap_invoice_distributions_all aid
 WHERE ail.invoice_id                            = cv_prepay_invoice_id
   AND ail.line_number                           = cv_prepay_line_num
   AND NVL(ail.line_selected_for_appl_flag,'N') <> 'Y'
   AND aid.invoice_id                            = ail.invoice_id
   AND aid.invoice_line_number                   = ail.line_number
   AND aid.line_type_lookup_code IN ('ITEM', 'ACCRUAL', 'REC_TAX', 'NONREC_TAX')
   -- Included tax distributions for inclusive tax if any
   AND NVL(aid.reversal_flag,'N')               <> 'Y';
Line: 288

SELECT SUM(NVL(aid.prepay_amount_remaining, aid.total_dist_amount))
  FROM ap_invoice_lines_all ail,
       ap_invoice_distributions_all aid
 WHERE ail.invoice_id                            = cv_prepay_invoice_id
   AND ail.line_type_lookup_code <> 'TAX'
   AND NVL(ail.line_selected_for_appl_flag,'N') <> 'Y'
   AND aid.invoice_id                            = ail.invoice_id
   AND aid.invoice_line_number                   = ail.line_number
   AND aid.line_type_lookup_code IN ('ITEM', 'ACCRUAL', 'REC_TAX', 'NONREC_TAX')
   AND NVL(aid.reversal_flag,'N')               <> 'Y';
Line: 336

SELECT SUM(NVL(aid.prepay_amount_remaining, aid.total_dist_amount))
  FROM ap_invoices ai,
       ap_invoice_lines ail,
       ap_invoice_distributions aid
 WHERE ai.vendor_id                                = cv_vendor_id
   AND ai.invoice_type_lookup_code                 = 'PREPAYMENT'
   AND ai.payment_status_flag                      = 'Y'
   AND NVL(ai.earliest_settlement_date,sysdate+1) <= SYSDATE
   AND ail.invoice_id                              = ai.invoice_id
   AND ail.line_type_lookup_code                   = 'ITEM'
   -- this will make sure exclusive TAX lines are not included
   AND NVL(ail.discarded_flag,'N')                <> 'Y'
   AND NVL(ail.line_selected_for_appl_flag,'N')   <> 'Y'
   AND aid.invoice_id                              = ail.invoice_id
   AND aid.invoice_line_number                     = ail.line_number
   AND aid.line_type_lookup_code IN ('ITEM', 'ACCRUAL', 'REC_TAX', 'NONREC_TAX')
   AND NVL(aid.reversal_flag,'N')                 <> 'Y';
Line: 390

SELECT G.period_name
  FROM gl_period_statuses G,
       ap_system_parameters P
 WHERE G.application_id                   = 200
   AND G.set_of_books_id                  = P.set_of_books_id
   AND TRUNC(cv_gl_date) BETWEEN G.start_date AND
                                 G.end_date
   AND G.closing_status                   IN ('O', 'F')
   AND NVL(G.adjustment_period_flag, 'N') = 'N';
Line: 791

     SELECT SUM(NVL(aid.amount,0))
       INTO l_invoice_amount_remaining
       FROM ap_invoice_distributions_all aid, ap_invoice_lines_all ail
      WHERE ail.invoice_id   = p_invoice_id
        AND ail.invoice_id = aid.invoice_id
        AND ail.line_number = aid.invoice_line_number
	--Contract Payments: Although Recoupment is modelled as 'PREPAY' dists
	--amount_recouped will effect the invoice_amount_remaining
	--regardless of invoice_includes_prepay_flag.
        AND ((ail.line_type_lookup_code = 'PREPAY' and
	       ((aid.line_type_lookup_code <> 'PREPAY'
                 and aid.prepay_distribution_id IS NULL
                )
               or  NVL(ail.invoice_includes_prepay_flag,'N') = 'Y'
               )
             ) OR
             (ail.line_type_lookup_code <> 'PREPAY')
       	    );
Line: 817

    SELECT  SUM(NVL(aid.prepay_amount_remaining, aid.total_dist_amount))
      INTO  l_prepay_amount_remaining
      FROM  ap_invoice_lines_all ail,
            ap_invoice_distributions_all aid
     WHERE  ail.invoice_id                            = p_prepay_invoice_id
       AND  ail.line_number                           = p_prepay_line_num
       AND  ail.line_type_lookup_code                 = 'ITEM'
       AND  NVL(ail.discarded_flag,'N')              <> 'Y'
       AND  NVL(ail.line_selected_for_appl_flag,'N') <> 'Y'
       AND  aid.invoice_id                            = ail.invoice_id
       AND  aid.invoice_line_number                   = ail.line_number
       AND  aid.line_type_lookup_code
            IN ('ITEM','ACCRUAL','REC_TAX','NONREC_TAX')
       AND  nvl(aid.reversal_flag,'N')               <> 'Y';
Line: 855

    SELECT  SUM(NVL(aid.prepay_amount_remaining, aid.total_dist_amount))
      INTO  l_prepay_amount_remaining
      FROM  ap_invoice_lines_all ail,
            ap_invoice_distributions_all aid
     WHERE  ail.invoice_id                  = p_prepay_invoice_id
       AND  ail.line_type_lookup_code       = 'ITEM'
       AND  NVL(ail.discarded_flag,'N')     <> 'Y'
       AND  NVL(ail.line_selected_for_appl_flag, 'N') <> 'Y'
       AND  aid.invoice_id                  = ail.invoice_id
       AND  aid.invoice_line_number         = ail.line_number
       AND  aid.line_type_lookup_code
            IN ( 'ITEM','ACCRUAL','REC_TAX','NONREC_TAX')
       AND  NVL(aid.reversal_flag,'N')      <> 'Y';
Line: 892

    SELECT SUM(NVL(aid.prepay_amount_remaining, aid.total_dist_amount))
      INTO l_prepay_amount_remaining
      FROM ap_invoices ai,
           ap_invoice_lines ail,
           ap_invoice_distributions aid
     WHERE ai.vendor_id                                = p_vendor_id
       AND ai.invoice_type_lookup_code                 = 'PREPAYMENT'
       AND nvl(ai.earliest_settlement_date,sysdate+1) <= SYSDATE
       AND ai.payment_status_flag                      = 'Y'
       AND ail.invoice_id                              = ai.invoice_id
       AND ail.line_type_lookup_code                   = 'ITEM'
       AND NVL(ail.discarded_flag,'N')                 <> 'Y'
       AND NVL(ail.line_selected_for_appl_flag, 'N')   <> 'Y'
       AND aid.invoice_id                              = ail.invoice_id
       AND aid.invoice_line_number                     = ail.line_number
       AND aid.line_type_lookup_code
           IN ( 'ITEM','ACCRUAL','REC_TAX','NONREC_TAX')
       AND NVL(aid.reversal_flag,'N')                 <> 'Y';
Line: 937

PROCEDURE Select_Lines_For_Application (
          p_prepay_case_name   IN VARCHAR2,
          p_prepay_invoice_id  IN NUMBER,
          p_prepay_line_num    IN NUMBER,
          p_apply_amount       IN NUMBER,
          p_vendor_id          IN NUMBER,
          p_calling_sequence   IN VARCHAR2,
          p_request_id         IN NUMBER,
          p_prepay_appl_info   OUT NOCOPY ap_prepay_pkg.prepay_appl_tab)
IS

  l_application_result       BOOLEAN;
Line: 961

SELECT ai.invoice_id,
       ail.line_number,
       AP_Prepay_Utils_PKG.Get_Line_Prepay_AMT_Remaining
                           (ail.invoice_id,
                            ail.line_number)
  FROM ap_invoices_all ai,
       ap_invoice_lines_all ail
 WHERE ai.invoice_id                             = cv_prepay_invoice_id
   AND ail.invoice_id                            = ai.invoice_id
   AND AP_Prepay_Utils_PKG.Get_Line_Prepay_AMT_Remaining
                           (ail.invoice_id,
                            ail.line_number)     > 0
   AND ail.line_type_lookup_code                 = 'ITEM'
   AND NVL(ail.discarded_flag,'N')              <> 'Y'
   AND NVL(ail.line_selected_for_appl_flag,'N') <> 'Y'
 ORDER BY ail.line_number;
Line: 982

SELECT ai.invoice_id,
       ail.line_number,
       AP_Prepay_Utils_PKG.Get_Line_Prepay_AMT_Remaining
                           (ail.invoice_id,
                            ail.line_number)
  FROM ap_invoices ai,
       ap_invoice_lines ail
 WHERE ai.vendor_id                                = cv_vendor_id
   AND ai.invoice_type_lookup_code                 = 'PREPAYMENT'
   AND ai.payment_status_flag                      = 'Y'
   AND NVL(ai.earliest_settlement_date,SYSDATE+1) <= SYSDATE
   AND ail.invoice_id = ai.invoice_id
   AND AP_Prepay_Utils_PKG.Get_Line_Prepay_AMT_Remaining
                           (ail.invoice_id,
                            ail.line_number)       > 0
   AND ail.line_type_lookup_code                   = 'ITEM'
   AND NVL(ail.discarded_flag,'N')                <> 'Y'
   AND NVL(ail.line_selected_for_appl_flag,'N')   <> 'Y'
 ORDER BY ai.gl_date,
          ai.invoice_id,
          ail.line_number;
Line: 1006

  p_prepay_appl_info.DELETE;
Line: 1148

END Select_Lines_For_Application;
Line: 1280

  Select_Lines_For_Application (
          p_prepay_case_name,
          p_prepay_invoice_id,
          p_prepay_line_num,
          l_apply_amount,
          p_vendor_id,
          p_calling_sequence,
          p_request_id,
          p_prepay_appl_info);
Line: 1310

          p_last_update_login     IN NUMBER,
          p_calling_sequence      IN VARCHAR2,
          p_prepay_appl_log       OUT NOCOPY ap_prepay_pkg.Prepay_Appl_Log_Tab)
IS
  l_prepay_apply_amount  NUMBER;
Line: 1358

          p_last_update_login,
          p_calling_sequence,
	  'PREPAYMENT APPLICATION',
          l_error_message) = FALSE ) THEN

      p_prepay_appl_log(l_loop_counter).success := 'N';
Line: 1404

          P_LAST_UPDATE_LOGIN IN         NUMBER,
          P_CALLING_SEQUENCE  IN         VARCHAR2,
	  /*Contract Payments*/
	  P_CALLING_MODE      IN         VARCHAR2 DEFAULT 'PREPAYMENT APPLICATION',
          P_ERROR_MESSAGE     OUT NOCOPY VARCHAR2) RETURN BOOLEAN
IS

l_base_currency_code            ap_system_parameters_all.base_currency_code%TYPE;
Line: 1497

SELECT base_currency_code
FROM   ap_system_parameters;
Line: 1501

SELECT batch_id,
       invoice_currency_code,
       exchange_rate,
       exchange_date,
       exchange_rate_type,
       payment_currency_code,
       payment_cross_rate_date,
       payment_cross_rate_type
  FROM AP_Invoices
 WHERE invoice_id = CV_Std_Invoice_ID;
Line: 1513

SELECT invoice_currency_code,
       exchange_rate,
       exchange_date,
       exchange_rate_type,
       payment_currency_code,
       payment_cross_rate_date,
       payment_cross_rate_type
  FROM AP_Invoices
 WHERE invoice_id = CV_PPay_Invoice_ID;
Line: 1525

SELECT ail.amount,
       NVL(ail.base_amount,0),
       /*
       Decode(p_calling_mode,'PREPAYMENT APPLICATION',
  	      AP_Prepay_Utils_PKG.get_line_prepay_amt_remaining(
              		ail.invoice_id,
              		ail.line_number),
	      'RECOUPMENT',
	      AP_Prepay_Utils_Pkg.get_ln_prep_amt_remain_recoup(
			ail.invoice_id,
			ail.line_number)
	     ),
       */
       AP_Prepay_Utils_PKG.get_line_prepay_amt_remaining(
                        ail.invoice_id,
                        ail.line_number),
       ail.quantity_invoiced,
       ail.pa_quantity,
       ail.stat_amount,
       ail.po_line_location_id,
       ail.po_distribution_id,
       ail.rcv_transaction_id,
       ail.unit_meas_lookup_code,
       plt.matching_basis
  FROM AP_invoice_lines ail,
       po_lines pl,        /* Amount Based Matching. PO related tables and conditions */
       po_line_locations pll,
       po_line_types_b plt       --bug 5056269
   --    po_line_types_tl T      --bug 5119694
 WHERE invoice_id  = CV_PPAY_Invoice_ID
   AND line_number = CV_PPAY_LINE_NUM
   AND ail.po_line_location_id  = pll.line_location_id(+)
   AND pll.po_line_id           = pl.po_line_id(+)
   AND pl.line_type_id          = plt.line_type_id(+);
Line: 1563

SELECT AC.currency_code,
       AC.exchange_rate_type,
       AC.exchange_date,
       AC.exchange_rate
  FROM AP_checks_all AC,
       AP_invoice_payments_all AIP
 WHERE AC.check_id    = AIP.check_id
   AND AIP.invoice_id = CV_PPAY_Invoice_ID
   AND NOT EXISTS (SELECT 'Invoice payment has been reversed'
                     FROM AP_invoice_payments_all AIP2
                    WHERE AIP2.reversal_inv_pmt_id = AIP.invoice_payment_id
                      AND AIP2.check_id            = AC.check_id);
Line: 1578

SELECT invoice_distribution_id,
       total_dist_amount,
       total_dist_base_amount,
       nvl(prepay_amount_remaining,total_dist_amount),
       po_distribution_id,
       rcv_transaction_id,
       quantity_invoiced,
       stat_amount,
       pa_quantity,
       p_gl_date,
       p_period_name,
       global_attribute_category,
       'PREPAY' line_type_lookup_code
  FROM ap_invoice_distributions
 WHERE invoice_id                     = CV_PPAY_Invoice_ID
   AND invoice_line_number            = CV_PPAY_LINE_NUM
   AND line_type_lookup_code          IN ('ITEM', 'ACCRUAL')
   AND NVL(prepay_amount_remaining,total_dist_amount) > 0
   --AND NVL(prepay_amount_remaining,0) > 0
   AND NVL(reversal_flag,'N')        <> 'Y';
Line: 1604

SELECT invoice_distribution_id,
       total_dist_amount,
       total_dist_base_amount,
       nvl(prepay_amount_remaining,total_dist_amount),
       po_distribution_id,
       rcv_transaction_id,
       quantity_invoiced,
       stat_amount,
       pa_quantity,
       p_gl_date,
       p_period_name,
       global_attribute_category,
       decode(line_type_lookup_code,'ITEM','PREPAY',
              'ACCRUAL','PREPAY',line_type_lookup_code) line_type_lookup_code,
       decode(line_type_lookup_code,'NONREC_TAX',charge_applicable_to_dist_id,
              'REC_TAX',charge_applicable_to_dist_id,NULL) parent_chrg_appl_to_dist_id,
       decode(line_type_lookup_code,'TERV',related_id, 'TIPV', related_id,
              'TRV',related_id, NULL) parent_related_id
FROM ap_invoice_distributions
WHERE invoice_id          = CV_PPAY_Invoice_ID
AND invoice_line_number   = CV_PPAY_LINE_NUM
AND line_type_lookup_code IN ('ITEM','ACCRUAL')
AND NVL(prepay_amount_remaining,total_dist_amount) > 0
AND NVL(reversal_flag,'N') <> 'Y';
Line: 1708

  l_debug_info := 'Get the Required Line Information for the Selected '||
                  'Prepayment Invoice Line';
Line: 1819

    SELECT NVL( ABS(SUM(quantity_invoiced)), 0 ),
           NVL( ABS(SUM(stat_amount)), 0 ),
           NVL( ABS(SUM(pa_quantity)), 0 )
    INTO   l_prepay_ln_s_quant_invoiced,
           l_prepay_ln_s_stat_amount,
           l_prepay_ln_s_pa_quantity
    FROM   ap_invoice_lines
    WHERE  prepay_invoice_id  = p_prepay_invoice_id
    AND    prepay_line_number = p_prepay_line_num;
Line: 1903

     SELECT NVL(MAX (line_number),0) + 1
      INTO l_prepay_ln_number
      FROM ap_invoice_lines
      WHERE invoice_id = p_invoice_id;
Line: 1915

     l_debug_info := 'Call Ap_Prepay_Pkg.Insert_Prepay_Line';
Line: 1920

     l_dummy := AP_PREPAY_PKG.INSERT_PREPAY_LINE(
     		          p_prepay_invoice_id,
               		  p_prepay_line_num,
               		  p_invoice_id,
               		  l_prepay_ln_number,
               		  l_apply_amount,
               		  l_prepay_ln_base_amount,
               		  p_gl_date,
               		  p_period_name,
               		  p_prepay_included,
               		  l_prepay_ln_quantity_invoiced,
               		  l_prepay_ln_stat_amount,
               		  l_prepay_ln_pa_quantity,
               		  p_user_id,
               		  p_last_update_login,
               		  p_calling_sequence,
               		  p_error_message);
Line: 1962

	                 p_line_number_to_delete  => NULL,
	                 p_Interface_Invoice_Id   => NULL,
	                 p_all_error_messages     => 'N',
	                 p_error_code             => p_error_message,
	                 p_calling_sequence       => l_current_calling_sequence)) THEN

	         RAISE tax_exception;
Line: 1983

        SELECT NVL(included_tax_amount, 0)
        INTO l_inclusive_tax_amount
        FROM ap_invoice_lines_all
        WHERE invoice_id = p_invoice_id
        AND line_number = l_prepay_ln_number;
Line: 2059

     SELECT NVL(MAX(distribution_line_number),0)
     INTO l_max_dist_number
     FROM ap_invoice_distributions
     WHERE invoice_id = p_invoice_id
     AND invoice_line_number = l_prepay_ln_number;
Line: 2068

     SELECT NVL(MAX(distribution_line_number),0)
     INTO l_max_dist_number
     FROM ap_invoice_distributions
     WHERE invoice_id = p_invoice_id
     AND invoice_line_number = p_invoice_line_number ;
Line: 2321

          SELECT NVL( ABS(SUM(quantity_invoiced)), 0 ),
               NVL( ABS(SUM(stat_amount)), 0 ),
               NVL( ABS(SUM(pa_quantity)), 0 )
          INTO l_prepay_dist_s_quant_invoiced,
               l_prepay_dist_s_stat_amount,
               l_prepay_dist_s_pa_quantity
          FROM ap_invoice_distributions
         WHERE prepay_distribution_id =
               l_prepay_dist_info(l_loop_variable).PREPAY_DISTRIBUTION_ID;
Line: 2408

  l_debug_info := 'Call Ap_Prepay_Pkg.Insert_Prepay_Dists';
Line: 2413

  l_dummy := AP_PREPAY_PKG.INSERT_PREPAY_DISTS(
               p_prepay_invoice_id,
               p_prepay_line_num,
               p_invoice_id,
               l_std_inv_batch_id,
	       l_invoice_line_number,
               l_prepay_dist_info,
               p_user_id,
               p_last_update_login,
               p_calling_sequence,
               p_error_message);
Line: 2452

                p_line_number_to_delete  => NULL,
                p_Interface_Invoice_Id   => NULL,
                p_all_error_messages     => 'N',
                p_error_code             => p_error_message,
                p_calling_sequence       => l_current_calling_sequence)) THEN

        RAISE tax_exception;
Line: 2468

     l_debug_info := 'Update parent PREPAY line amount if required';
Line: 2487

           SELECT SUM(NVL(aid.prepay_tax_diff_amount, 0))
           INTO l_prepay_tax_diff_amt
           FROM ap_invoice_distributions_all aid
           WHERE aid.invoice_id = p_invoice_id
           AND aid.invoice_line_number = l_prepay_ln_number
           AND aid.line_type_lookup_code = 'NONREC_TAX'
           AND NVL(aid.reversal_flag,'N') <> 'Y';
Line: 2524

           l_debug_info := 'Update PREPAY line amount and base amount '||
                           'including the prepay tax difference';
Line: 2531

              UPDATE ap_invoice_lines_all ail
              SET amount = l_apply_amount,
                  base_amount = l_prepay_ln_base_amount
              WHERE ail.invoice_id = p_invoice_id
              AND ail.line_number = l_prepay_ln_number;
Line: 2556

  l_debug_info := 'Update Prepayment distributions';
Line: 2561

  l_dummy := AP_PREPAY_PKG.Update_Prepayment(
                 l_prepay_dist_info,
                 p_prepay_invoice_id,
                 p_prepay_line_num,
                 p_invoice_id,
		 l_invoice_line_number,
                 'APPLICATION',
		 p_calling_mode,
                 p_calling_sequence,
                 p_error_message);
Line: 2590

  l_debug_info := 'Update_PO_Receipt_Info';
Line: 2596

  l_dummy := AP_PREPAY_PKG.Update_PO_Receipt_Info(
                 l_prepay_dist_info,
                 p_prepay_invoice_id,
                 p_prepay_line_num,
                 p_invoice_id,
		 l_invoice_line_number,
                 l_ppay_ln_po_line_location_id,
                 l_ppay_ln_uom,
                 'APPLICATION',
                 l_ppay_ln_match_basis,
                 p_calling_sequence,
                 p_error_message);
Line: 2628

  SELECT sum(aid.amount) into l_prepay_excl_tax_amt
  FROM   ap_invoice_lines_all ail,ap_invoice_distributions_all aid
  WHERE  ail.line_type_lookup_code='TAX'
  AND    ail.invoice_id=p_invoice_id
  and    aid.invoice_id=ail.invoice_id
  AND    aid.invoice_line_number=ail.line_number
  AND   ail.prepay_line_number is not null
  AND exists( select 1 from ap_invoice_distributions_all aid1
              where aid1.invoice_id=p_invoice_id
              and aid1.invoice_line_number=l_prepay_ln_number
              and aid1.invoice_distribution_id=aid.charge_applicable_to_dist_id);
Line: 2668

    l_debug_info := 'Update Payment Schedules';
Line: 2673

    l_dummy := AP_PREPAY_PKG.Update_Payment_Schedule(
                p_invoice_id,
                p_prepay_invoice_id,
                p_prepay_line_num,
                l_ppay_apply_amt_in_pay_curr,
                'APPLICATION',
                l_ppay_inv_pay_curr_code,
                p_user_id,
                p_last_update_login,
                p_calling_sequence,
		p_calling_mode,
                p_error_message);
Line: 2795

           ||', P_LAST_UPDATE_LOGIN = '||P_LAST_UPDATE_LOGIN);
Line: 2814

FUNCTION Insert_Prepay_Line(
          p_prepay_invoice_id    IN NUMBER,
          p_prepay_line_num      IN NUMBER,
          p_invoice_id           IN NUMBER,
          p_prepay_line_number   IN NUMBER,
          p_amount_to_apply      IN NUMBER,
          p_base_amount_to_apply IN NUMBER,
          p_gl_date              IN DATE,
          p_period_name          IN VARCHAR2,
          p_prepay_included      IN VARCHAR2,
          p_quantity_invoiced    IN NUMBER,
          p_stat_amount          IN NUMBER,
          p_pa_quantity          IN NUMBER,
          p_user_id              IN NUMBER,
          p_last_update_login    IN NUMBER,
          p_calling_sequence     IN VARCHAR2,
          p_error_message        OUT NOCOPY VARCHAR2)
RETURN BOOLEAN IS

  l_debug_info                VARCHAR2(100);
Line: 2841

  l_api_name := 'Insert_Prepay_Line';
Line: 2843

  l_current_calling_sequence := 'Insert_Prepay_Line<-'
                                ||p_calling_sequence;
Line: 2847

    FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Insert_Prepay_Line(+)');
Line: 2850

  l_debug_info := 'Insert PREPAY Line';
Line: 2855

  INSERT INTO AP_Invoice_Lines(
      INVOICE_ID,
      LINE_NUMBER,
      LINE_TYPE_LOOKUP_CODE,
      REQUESTER_ID,
      DESCRIPTION,
      LINE_SOURCE,
      LINE_GROUP_NUMBER ,
      INVENTORY_ITEM_ID ,
      ITEM_DESCRIPTION  ,
      SERIAL_NUMBER     ,
      MANUFACTURER      ,
      MODEL_NUMBER      ,
      WARRANTY_NUMBER   ,
      GENERATE_DISTS    ,
      MATCH_TYPE        ,
      DISTRIBUTION_SET_ID,
      ACCOUNT_SEGMENT    ,
      BALANCING_SEGMENT,
      COST_CENTER_SEGMENT,
      OVERLAY_DIST_CODE_CONCAT,
      DEFAULT_DIST_CCID,
      PRORATE_ACROSS_ALL_ITEMS,
      ACCOUNTING_DATE,
      PERIOD_NAME,
      DEFERRED_ACCTG_FLAG,
      DEF_ACCTG_START_DATE,
      DEF_ACCTG_END_DATE,
      DEF_ACCTG_NUMBER_OF_PERIODS,
      DEF_ACCTG_PERIOD_TYPE,
      SET_OF_BOOKS_ID,
      AMOUNT,
      BASE_AMOUNT,
      ROUNDING_AMT,
      QUANTITY_INVOICED,
      UNIT_MEAS_LOOKUP_CODE,
      UNIT_PRICE,
      WFAPPROVAL_STATUS,
   -- USSGL_TRANSACTION_CODE, - Bug 4277744
      DISCARDED_FLAG,
      ORIGINAL_AMOUNT,
      ORIGINAL_BASE_AMOUNT,
      ORIGINAL_ROUNDING_AMT,
      CANCELLED_FLAG,
      INCOME_TAX_REGION,
      TYPE_1099,
      STAT_AMOUNT,
      PREPAY_INVOICE_ID,
      PREPAY_LINE_NUMBER,
      INVOICE_INCLUDES_PREPAY_FLAG,
      CORRECTED_INV_ID,
      CORRECTED_LINE_NUMBER,
      PO_HEADER_ID,
      PO_LINE_ID,
      PO_RELEASE_ID,
      PO_LINE_LOCATION_ID,
      PO_DISTRIBUTION_ID,
      RCV_TRANSACTION_ID,
      FINAL_MATCH_FLAG,
      ASSETS_TRACKING_FLAG,
      ASSET_BOOK_TYPE_CODE,
      ASSET_CATEGORY_ID,
      PROJECT_ID,
      TASK_ID,
      EXPENDITURE_TYPE,
      EXPENDITURE_ITEM_DATE,
      EXPENDITURE_ORGANIZATION_ID,
      PA_QUANTITY,
      PA_CC_AR_INVOICE_ID,
      PA_CC_AR_INVOICE_LINE_NUM,
      PA_CC_PROCESSED_CODE,
      AWARD_ID,
      AWT_GROUP_ID,
      REFERENCE_1,
      REFERENCE_2,
      RECEIPT_VERIFIED_FLAG,
      RECEIPT_REQUIRED_FLAG,
      RECEIPT_MISSING_FLAG,
      JUSTIFICATION     ,
      EXPENSE_GROUP     ,
      START_EXPENSE_DATE,
      END_EXPENSE_DATE  ,
      RECEIPT_CURRENCY_CODE,
      RECEIPT_CONVERSION_RATE,
      RECEIPT_CURRENCY_AMOUNT,
      DAILY_AMOUNT           ,
      WEB_PARAMETER_ID,
      ADJUSTMENT_REASON,
      MERCHANT_DOCUMENT_NUMBER,
      MERCHANT_NAME           ,
      MERCHANT_REFERENCE     ,
      MERCHANT_TAX_REG_NUMBER,
      MERCHANT_TAXPAYER_ID   ,
      COUNTRY_OF_SUPPLY      ,
      CREDIT_CARD_TRX_ID     ,
      COMPANY_PREPAID_INVOICE_ID,
      CC_REVERSAL_FLAG          ,
      CREATION_DATE             ,
      CREATED_BY,
      LAST_UPDATED_BY           ,
      LAST_UPDATE_DATE          ,
      LAST_UPDATE_LOGIN         ,
      PROGRAM_APPLICATION_ID    ,
      PROGRAM_ID,
      PROGRAM_UPDATE_DATE       ,
      REQUEST_ID,
      LINE_SELECTED_FOR_APPL_FLAG,
      PREPAY_APPL_REQUEST_ID       ,
      ATTRIBUTE_CATEGORY        ,
      ATTRIBUTE1,
      ATTRIBUTE2,
      ATTRIBUTE3,
      ATTRIBUTE4,
      ATTRIBUTE5,
      ATTRIBUTE6,
      ATTRIBUTE7,
      ATTRIBUTE8,
      ATTRIBUTE9,
      ATTRIBUTE10,
      ATTRIBUTE11,
      ATTRIBUTE12,
      ATTRIBUTE13,
      ATTRIBUTE14,
      ATTRIBUTE15,
      GLOBAL_ATTRIBUTE_CATEGORY,
      GLOBAL_ATTRIBUTE1,
      GLOBAL_ATTRIBUTE2,
      GLOBAL_ATTRIBUTE3,
      GLOBAL_ATTRIBUTE4,
      GLOBAL_ATTRIBUTE5,
      GLOBAL_ATTRIBUTE6,
      GLOBAL_ATTRIBUTE7,
      GLOBAL_ATTRIBUTE8,
      GLOBAL_ATTRIBUTE9,
      GLOBAL_ATTRIBUTE10,
      GLOBAL_ATTRIBUTE11,
      GLOBAL_ATTRIBUTE12,
      GLOBAL_ATTRIBUTE13,
      GLOBAL_ATTRIBUTE14,
      GLOBAL_ATTRIBUTE15,
      GLOBAL_ATTRIBUTE16,
      GLOBAL_ATTRIBUTE17,
      GLOBAL_ATTRIBUTE18,
      GLOBAL_ATTRIBUTE19,
      GLOBAL_ATTRIBUTE20,
      --ETAX: Invwkb
      SHIP_TO_LOCATION_ID,
      PRIMARY_INTENDED_USE,
      PRODUCT_FISC_CLASSIFICATION,
      TRX_BUSINESS_CATEGORY,
      PRODUCT_TYPE,
      PRODUCT_CATEGORY,
      USER_DEFINED_FISC_CLASS,
      PURCHASING_CATEGORY_ID,
      ORG_ID)
SELECT
      p_invoice_id,
      p_prepay_line_number,
      'PREPAY',
      NULL,
      description,
      'PREPAY APPL',
      NULL,
      NULL,
      NULL,
      NULL,
      NULL,
      NULL,
      NULL,
      'D',
      match_type,
      NULL,
      NULL,
      NULL,
      NULL,
      NULL,
      NULL,
      'N',
      p_gl_date,
      p_period_name,
      'N',
      NULL,
      NULL,
      NULL,
      NULL,
      set_of_books_id,
      (-1 * p_amount_to_apply),
      (-1 * p_base_amount_to_apply),
      rounding_amt,
      p_quantity_invoiced,
      unit_meas_lookup_code,
      unit_price,
      'NOT REQUIRED',
   -- ussgl_transaction_code, - Bug 4277744
      'N',
      0,
      0,
      0,
      'N',
      income_tax_region,
      type_1099,
      p_stat_amount,
      invoice_id,
      line_number,
      p_prepay_included,
      NULL,
      NULL,
      po_header_id,
      po_line_id,
      po_release_id,
      po_line_location_id,
      po_distribution_id,
      rcv_transaction_id,
      final_match_flag,
      'N',
      asset_book_type_code,
      asset_category_id,
      project_id,
      task_id,
      expenditure_type,
      expenditure_item_date,
      expenditure_organization_id,
      p_pa_quantity,
      NULL,
      NULL,
      NULL,
      award_id,
      awt_group_id,
      reference_1,
      reference_2,
      receipt_verified_flag,
      receipt_required_flag,
      receipt_missing_flag,
      justification,
      expense_group,
      start_expense_date,
      end_expense_date,
      receipt_currency_code,
      receipt_conversion_rate,
      receipt_currency_amount,
      daily_amount,
      web_parameter_id,
      adjustment_reason,
      merchant_document_number,
      merchant_name,
      merchant_reference,
      merchant_tax_reg_number,
      merchant_taxpayer_id,
      country_of_supply,
      credit_card_trx_id,
      company_prepaid_invoice_id,
      cc_reversal_flag,
      SYSDATE,
      p_user_id,
      p_user_id,
      SYSDATE,
      p_last_update_login,
      program_application_id,
      program_id,
      program_update_date,
      request_id,
     'N',
      NULL,
      attribute_category,
      attribute1,
      attribute2,
      attribute3,
      attribute4,
      attribute5,
      attribute6,
      attribute7,
      attribute8,
      attribute9,
      attribute10,
      attribute11,
      attribute12,
      attribute13,
      attribute14,
      attribute15,
      global_attribute_category,
      global_attribute1,
      global_attribute2,
      global_attribute3,
      global_attribute4,
      global_attribute5,
      global_attribute6,
      global_attribute7,
      global_attribute8,
      global_attribute9,
      global_attribute10,
      global_attribute11,
      global_attribute12,
      global_attribute13,
      global_attribute14,
      global_attribute15,
      global_attribute16,
      global_attribute17,
      global_attribute18,
      global_attribute19,
      global_attribute20,
      --ETAX: Invwkb
      ship_to_location_id,
      primary_intended_use,
      product_fisc_classification,
      trx_business_category,
      product_type,
      product_category,
      user_defined_fisc_class,
      purchasing_category_id,
      org_id
 FROM ap_invoice_lines
WHERE invoice_id  = p_prepay_invoice_id
  AND line_number = p_prepay_line_num;
Line: 3170

      FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Insert_Prepay_Line(-)');
Line: 3195

           ||', P_LAST_UPDATE_LOGIN    = '||P_LAST_UPDATE_LOGIN);
Line: 3211

END Insert_Prepay_Line;
Line: 3214

FUNCTION Insert_Prepay_Dists(
          P_prepay_invoice_id  IN NUMBER,
          P_prepay_line_num    IN NUMBER,
          P_invoice_id         IN NUMBER,
          P_batch_id           IN NUMBER,
          P_line_number        IN NUMBER,
          P_prepay_dist_info   IN OUT NOCOPY AP_PREPAY_PKG.Prepay_Dist_Tab_Type,
          P_user_id            IN NUMBER,
          P_last_update_login  IN NUMBER,
          P_calling_sequence   IN VARCHAR2,
          P_error_message      OUT NOCOPY VARCHAR2)
RETURN BOOLEAN IS

  l_loop_counter            BINARY_INTEGER;
Line: 3240

  l_api_name := 'Insert_Prepay_Dists';
Line: 3244

      FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Insert_Prepay_Dists(+)');
Line: 3247

  l_debug_info := 'Insert PREPAY Distributions';
Line: 3253

  SELECT invoice_includes_prepay_flag
  INTO   l_invoice_includes_prepay_flag
  FROM   ap_invoice_lines
  WHERE  invoice_id=p_invoice_id
  AND    line_number=p_line_number;
Line: 3261

    SELECT ap_invoice_distributions_s.NEXTVAL
      INTO p_prepay_dist_info(l_loop_counter).invoice_distribution_id
      FROM sys.dual;   -- Check if it's better to use sequence.CURRVAL instead of dual.
Line: 3284

	       SELECT invoice_distribution_id
	       INTO p_prepay_dist_info(l_loop_counter).charge_applicable_to_dist_id
	       FROM ap_invoice_distributions
	       WHERE invoice_id = p_invoice_id
	       AND invoice_line_number = p_line_number
               AND line_type_lookup_code = 'PREPAY'
	       and prepay_distribution_id = p_prepay_dist_info(l_loop_counter).parent_chrg_appl_to_dist_id;
Line: 3300

	       SELECT invoice_distribution_id
	       INTO p_prepay_dist_info(l_loop_counter).related_id
	       FROM ap_invoice_distributions
	       WHERE invoice_id = p_invoice_id
	       AND invoice_line_number = p_line_number
	       AND line_type_lookup_code in ('NONREC_TAX','REC_TAX')
	       AND prepay_distribution_id = p_prepay_dist_info(l_loop_counter).parent_related_id;
Line: 3312

    l_debug_info := 'Insert into ap_invoice_distributions';
Line: 3325

    INSERT INTO AP_INVOICE_DISTRIBUTIONS
      (ACCOUNTING_DATE,
       ACCRUAL_POSTED_FLAG,
       ASSETS_ADDITION_FLAG,
       ASSETS_TRACKING_FLAG,
       CASH_POSTED_FLAG,
       DISTRIBUTION_LINE_NUMBER,
       DIST_CODE_COMBINATION_ID,
       INVOICE_ID,
       LAST_UPDATED_BY,
       LAST_UPDATE_DATE,
       LINE_TYPE_LOOKUP_CODE,
       PERIOD_NAME,
       SET_OF_BOOKS_ID,
       ACCTS_PAY_CODE_COMBINATION_ID,
       AMOUNT,
       BASE_AMOUNT,
       BATCH_ID,
       CREATED_BY,
       CREATION_DATE,
       DESCRIPTION,
       FINAL_MATCH_FLAG,
       INCOME_TAX_REGION ,
       LAST_UPDATE_LOGIN,
       MATCH_STATUS_FLAG,
       POSTED_FLAG,
       PO_DISTRIBUTION_ID,
       PROGRAM_APPLICATION_ID,
       PROGRAM_ID,
       PROGRAM_UPDATE_DATE,
       QUANTITY_INVOICED,
       REQUEST_ID,
       REVERSAL_FLAG,
       TYPE_1099,
       UNIT_PRICE,
       ENCUMBERED_FLAG ,
       STAT_AMOUNT,
       AMOUNT_TO_POST,
       ATTRIBUTE1,
       ATTRIBUTE10,
       ATTRIBUTE11,
       ATTRIBUTE12,
       ATTRIBUTE13,
       ATTRIBUTE14,
       ATTRIBUTE15,
       ATTRIBUTE2,
       ATTRIBUTE3,
       ATTRIBUTE4,
       ATTRIBUTE5,
       ATTRIBUTE6,
       ATTRIBUTE7,
       ATTRIBUTE8,
       ATTRIBUTE9,
       ATTRIBUTE_CATEGORY,
       BASE_AMOUNT_TO_POST,
       EXPENDITURE_ITEM_DATE,
       EXPENDITURE_ORGANIZATION_ID,
       EXPENDITURE_TYPE,
       PARENT_INVOICE_ID ,
       PA_ADDITION_FLAG,
       PA_QUANTITY,
       POSTED_AMOUNT,
       POSTED_BASE_AMOUNT,
       PREPAY_AMOUNT_REMAINING,
       PROJECT_ID,
       TASK_ID ,
    -- USSGL_TRANSACTION_CODE, - Bug 4277744
    -- USSGL_TRX_CODE_CONTEXT, - Bug 4277744
       QUANTITY_VARIANCE ,
       BASE_QUANTITY_VARIANCE,
       PACKET_ID,
       AWT_FLAG,
       AWT_GROUP_ID,
     --Bug 7277786 added PAY_AWT_GROUP_ID
       PAY_AWT_GROUP_ID,
       AWT_TAX_RATE_ID,
       AWT_GROSS_AMOUNT,
       AWT_INVOICE_ID,
       AWT_ORIGIN_GROUP_ID,
       REFERENCE_1,
       REFERENCE_2,
       AWT_INVOICE_PAYMENT_ID,
       GLOBAL_ATTRIBUTE_CATEGORY,
       GLOBAL_ATTRIBUTE1 ,
       GLOBAL_ATTRIBUTE2 ,
       GLOBAL_ATTRIBUTE3 ,
       GLOBAL_ATTRIBUTE4 ,
       GLOBAL_ATTRIBUTE5 ,
       GLOBAL_ATTRIBUTE6 ,
       GLOBAL_ATTRIBUTE7 ,
       GLOBAL_ATTRIBUTE8 ,
       GLOBAL_ATTRIBUTE9 ,
       GLOBAL_ATTRIBUTE10,
       GLOBAL_ATTRIBUTE11,
       GLOBAL_ATTRIBUTE12,
       GLOBAL_ATTRIBUTE13,
       GLOBAL_ATTRIBUTE14,
       GLOBAL_ATTRIBUTE15,
       GLOBAL_ATTRIBUTE16,
       GLOBAL_ATTRIBUTE17,
       GLOBAL_ATTRIBUTE18,
       GLOBAL_ATTRIBUTE19,
       GLOBAL_ATTRIBUTE20,
       RECEIPT_VERIFIED_FLAG,
       RECEIPT_REQUIRED_FLAG,
       RECEIPT_MISSING_FLAG ,
       JUSTIFICATION,
       EXPENSE_GROUP,
       START_EXPENSE_DATE,
       END_EXPENSE_DATE,
       RECEIPT_CURRENCY_CODE,
       RECEIPT_CONVERSION_RATE,
       RECEIPT_CURRENCY_AMOUNT,
       DAILY_AMOUNT,
       WEB_PARAMETER_ID,
       ADJUSTMENT_REASON ,
       AWARD_ID,
       CREDIT_CARD_TRX_ID,
       DIST_MATCH_TYPE,
       RCV_TRANSACTION_ID,
       INVOICE_DISTRIBUTION_ID ,
       PARENT_REVERSAL_ID,
       TAX_RECOVERABLE_FLAG,
       TAX_CODE_ID,
       MERCHANT_DOCUMENT_NUMBER,
       MERCHANT_NAME ,
       MERCHANT_REFERENCE,
       MERCHANT_TAX_REG_NUMBER,
       MERCHANT_TAXPAYER_ID,
       COUNTRY_OF_SUPPLY,
       MATCHED_UOM_LOOKUP_CODE,
       GMS_BURDENABLE_RAW_COST,
       ACCOUNTING_EVENT_ID,
       PREPAY_DISTRIBUTION_ID,
       UPGRADE_POSTED_AMT,
       UPGRADE_BASE_POSTED_AMT,
       INVENTORY_TRANSFER_STATUS,
       COMPANY_PREPAID_INVOICE_ID,
       CC_REVERSAL_FLAG,
       AWT_WITHHELD_AMT,
       PRICE_CORRECT_INV_ID,
       PRICE_CORRECT_QTY,
       PA_CMT_XFACE_FLAG,
       CANCELLATION_FLAG,
       INVOICE_LINE_NUMBER,
       ROUNDING_AMT,
       CHARGE_APPLICABLE_TO_DIST_ID ,
       CORRECTED_INVOICE_DIST_ID,
       CORRECTED_QUANTITY,
       RELATED_ID,
       JE_BATCH_ID,
       CASH_JE_BATCH_ID ,
       INVOICE_PRICE_VARIANCE,
       BASE_INVOICE_PRICE_VARIANCE,
       PRICE_ADJUSTMENT_FLAG,
       PRICE_VAR_CODE_COMBINATION_ID,
       RATE_VAR_CODE_COMBINATION_ID,
       EXCHANGE_RATE_VARIANCE,
       AMOUNT_ENCUMBERED ,
       BASE_AMOUNT_ENCUMBERED,
       QUANTITY_UNENCUMBERED,
       EARLIEST_SETTLEMENT_DATE,
       OTHER_INVOICE_ID,
       LINE_GROUP_NUMBER ,
       REQ_DISTRIBUTION_ID,
       PROJECT_ACCOUNTING_CONTEXT,
       PA_CC_AR_INVOICE_ID,
       PA_CC_AR_INVOICE_LINE_NUM,
       PA_CC_PROCESSED_CODE ,
       ASSET_BOOK_TYPE_CODE ,
       ASSET_CATEGORY_ID ,
       DISTRIBUTION_CLASS,
       FINAL_PAYMENT_ROUNDING,
       AMOUNT_AT_PREPAY_XRATE,
       AMOUNT_AT_PREPAY_PAY_XRATE,
       --ETAX: Invwkb
       INTENDED_USE,
       --Freight and Special Charges
       rcv_charge_addition_flag,
       invoice_includes_prepay_flag,  --Bug5224996
       org_id)
    SELECT
       p_prepay_dist_info(l_loop_counter).PREPAY_ACCOUNTING_DATE,
       'N',
       'U',
       ASSETS_TRACKING_FLAG,
       'N',
       p_prepay_dist_info(l_loop_counter).PREPAY_DIST_LINE_NUMBER,
       DIST_CODE_COMBINATION_ID,
       p_invoice_id,
       p_user_id,
       SYSDATE,
       p_prepay_dist_info(l_loop_counter).LINE_TYPE_LOOKUP_CODE,
       p_prepay_dist_info(l_loop_counter).PREPAY_PERIOD_NAME,
       SET_OF_BOOKS_ID,
       NULL,
       (- 1 * p_prepay_dist_info(l_loop_counter).PREPAY_APPLY_AMOUNT),
       (-1 * p_prepay_dist_info(l_loop_counter).PREPAY_BASE_AMOUNT),
       p_batch_id,
       p_user_id,
       SYSDATE,
       DESCRIPTION,
       NULL,
       INCOME_TAX_REGION ,
       p_last_update_login,
       Null,
       'N',
       PO_DISTRIBUTION_ID,
       program_application_id,
       program_id,
       SYSDATE,
       p_prepay_dist_info(l_loop_counter).PREPAY_QUANTITY_INVOICED,
       request_id,
       'N',
       TYPE_1099,
       UNIT_PRICE,
       'N' ,
       p_prepay_dist_info(l_loop_counter).PREPAY_STAT_AMOUNT,
       NULL,
       ATTRIBUTE1,
       ATTRIBUTE10,
       ATTRIBUTE11,
       ATTRIBUTE12,
       ATTRIBUTE13,
       ATTRIBUTE14,
       ATTRIBUTE15,
       ATTRIBUTE2,
       ATTRIBUTE3,
       ATTRIBUTE4,
       ATTRIBUTE5,
       ATTRIBUTE6,
       ATTRIBUTE7,
       ATTRIBUTE8,
       ATTRIBUTE9,
       ATTRIBUTE_CATEGORY,
       NULL,
       EXPENDITURE_ITEM_DATE,
       EXPENDITURE_ORGANIZATION_ID,
       EXPENDITURE_TYPE,
       NULL,
       --bugfix:4924696
       DECODE(pa_addition_flag,'E','E','N'),
       p_prepay_dist_info(l_loop_counter).PREPAY_PA_QUANTITY,
       NULL,
       NULL,
       NULL,
       PROJECT_ID,
       TASK_ID ,
    -- USSGL_TRANSACTION_CODE, - Bug 4277744
    -- USSGL_TRX_CODE_CONTEXT, - Bug 4277744
       NULL,
       NULL,
       NULL,
       NULL,
       AWT_GROUP_ID,
     --Bug 7277786 Added PAY_AWT_GROUP_ID
       PAY_AWT_GROUP_ID,
       AWT_TAX_RATE_ID,
       AWT_GROSS_AMOUNT,
       AWT_INVOICE_ID,
       AWT_ORIGIN_GROUP_ID,
       REFERENCE_1,
       REFERENCE_2,
       AWT_INVOICE_PAYMENT_ID,
       GLOBAL_ATTRIBUTE_CATEGORY,
       GLOBAL_ATTRIBUTE1 ,
       GLOBAL_ATTRIBUTE2 ,
       GLOBAL_ATTRIBUTE3 ,
       GLOBAL_ATTRIBUTE4 ,
       GLOBAL_ATTRIBUTE5 ,
       GLOBAL_ATTRIBUTE6 ,
       GLOBAL_ATTRIBUTE7 ,
       GLOBAL_ATTRIBUTE8 ,
       GLOBAL_ATTRIBUTE9 ,
       GLOBAL_ATTRIBUTE10,
       GLOBAL_ATTRIBUTE11,
       GLOBAL_ATTRIBUTE12,
       GLOBAL_ATTRIBUTE13,
       GLOBAL_ATTRIBUTE14,
       GLOBAL_ATTRIBUTE15,
       GLOBAL_ATTRIBUTE16,
       GLOBAL_ATTRIBUTE17,
       GLOBAL_ATTRIBUTE18,
       GLOBAL_ATTRIBUTE19,
       GLOBAL_ATTRIBUTE20,
       RECEIPT_VERIFIED_FLAG,
       RECEIPT_REQUIRED_FLAG,
       RECEIPT_MISSING_FLAG ,
       JUSTIFICATION,
       EXPENSE_GROUP,
       START_EXPENSE_DATE,
       END_EXPENSE_DATE,
       RECEIPT_CURRENCY_CODE,
       RECEIPT_CONVERSION_RATE,
       RECEIPT_CURRENCY_AMOUNT,
       DAILY_AMOUNT,
       WEB_PARAMETER_ID,
       ADJUSTMENT_REASON ,
       AWARD_ID,
       CREDIT_CARD_TRX_ID,
       DIST_MATCH_TYPE,
       RCV_TRANSACTION_ID,
       p_prepay_dist_info(l_loop_counter).INVOICE_DISTRIBUTION_ID,
       NULL,
       TAX_RECOVERABLE_FLAG,
       TAX_CODE_ID,
       MERCHANT_DOCUMENT_NUMBER,
       MERCHANT_NAME ,
       MERCHANT_REFERENCE,
       MERCHANT_TAX_REG_NUMBER,
       MERCHANT_TAXPAYER_ID,
       COUNTRY_OF_SUPPLY,
       MATCHED_UOM_LOOKUP_CODE,
       NULL,
       NULL,
       p_prepay_dist_info(l_loop_counter).PREPAY_DISTRIBUTION_ID,
       NULL,
       NULL,
       'N',
       COMPANY_PREPAID_INVOICE_ID,
       CC_REVERSAL_FLAG,
       NULL,
       PRICE_CORRECT_INV_ID,
       PRICE_CORRECT_QTY,
       PA_CMT_XFACE_FLAG,
       'N',
       p_line_number,
       ROUNDING_AMT,
       p_prepay_dist_info(l_loop_counter).charge_applicable_to_dist_id,
       NULL,
       NULL,
       p_prepay_dist_info(l_loop_counter).related_id,
       NULL,
       NULL,
       INVOICE_PRICE_VARIANCE,
       BASE_INVOICE_PRICE_VARIANCE,
       PRICE_ADJUSTMENT_FLAG,
       PRICE_VAR_CODE_COMBINATION_ID,
       RATE_VAR_CODE_COMBINATION_ID,
       EXCHANGE_RATE_VARIANCE,
       AMOUNT_ENCUMBERED ,
       BASE_AMOUNT_ENCUMBERED,
       QUANTITY_UNENCUMBERED,
       EARLIEST_SETTLEMENT_DATE,
       NULL,
       LINE_GROUP_NUMBER ,
       REQ_DISTRIBUTION_ID,
       PROJECT_ACCOUNTING_CONTEXT,
       NULL,
       NULL,
       NULL,
       ASSET_BOOK_TYPE_CODE ,
       ASSET_CATEGORY_ID ,
       'PERMANENT',
       NULL,
       (-1 * p_prepay_dist_info(l_loop_counter).PREPAY_BASE_AMT_PPAY_XRATE),
       (-1 * p_prepay_dist_info(l_loop_counter).PREPAY_BASE_AMT_PPAY_PAY_XRATE),
       --ETAX: Invwkb
       INTENDED_USE,
       'N',
       l_invoice_includes_prepay_flag,  --Bug5224996
       ORG_ID
    FROM ap_invoice_distributions
   WHERE invoice_distribution_id = p_prepay_dist_info(l_loop_counter).PREPAY_DISTRIBUTION_ID;
Line: 3712

          p_last_update_login => p_last_update_login,
          p_calling_sequence  => p_calling_sequence );
Line: 3720

  l_debug_info := 'Update global context code';
Line: 3739

      FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Insert_Prepay_Dists(-)');
Line: 3757

           ||', P_LAST_UPDATE_LOGIN    = '||P_LAST_UPDATE_LOGIN);
Line: 3774

END Insert_Prepay_Dists;
Line: 3777

FUNCTION Update_Prepayment(
          p_prepay_dist_info    IN      AP_PREPAY_PKG.Prepay_Dist_Tab_Type,
          p_prepay_invoice_id   IN      NUMBER,
          p_prepay_line_num     IN      NUMBER,
          p_invoice_id          IN      NUMBER,
          p_invoice_line_num    IN      NUMBER,
          p_appl_type           IN      VARCHAR2,
	  p_calling_mode	IN      VARCHAR2  DEFAULT 'PREPAYMENT APPLICATION',
          p_calling_sequence    IN      VARCHAR2,
          P_error_message       OUT NOCOPY VARCHAR2)
RETURN BOOLEAN IS

  l_current_calling_sequence  VARCHAR2(2000);
Line: 3799

CURSOR C_Update_Prepayments IS
SELECT prepay_distribution_id,
       ABS(amount)
  FROM ap_invoice_distributions_all
 WHERE invoice_id             = p_invoice_id
   AND invoice_line_number    = p_invoice_line_num
   AND NVL(reversal_flag,'N') = 'Y'
   AND parent_reversal_id     IS NOT NULL;
Line: 3812

  l_api_name := 'Update_Prepayment';
Line: 3814

      FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Update_Prepayment(+)');
Line: 3818

  l_current_calling_sequence := 'update_prepayment<-' ||p_calling_sequence;
Line: 3820

  l_debug_info := 'Update Prepayment Info';
Line: 3838

      UPDATE ap_invoice_distributions
         SET prepay_amount_remaining =
             NVL(prepay_amount_remaining, total_dist_amount) -
             p_prepay_dist_info(l_loop_counter).PREPAY_APPLY_AMOUNT
       WHERE invoice_distribution_id =
             p_prepay_dist_info(l_loop_counter).PREPAY_DISTRIBUTION_ID;
Line: 3855

      l_debug_info := 'Update prepayment_amt_remaining: '|| ' Invoice ID: '||p_prepay_invoice_id
							 || ' Line Num: '||p_prepay_line_num;
Line: 3870

          UPDATE ap_invoice_distributions_all dp
          SET dp.prepay_amount_remaining =
             (SELECT SUM(NVL(dp.prepay_amount_remaining, dp.total_dist_amount) +
                     (NVL(ds.amount, 0) + NVL(ds.prepay_tax_diff_amount, 0)))
                FROM ap_invoice_distributions_all ds
               WHERE ds.prepay_distribution_id = dp.invoice_distribution_id)
          WHERE dp.invoice_id = p_prepay_invoice_id
          AND   dp.line_type_lookup_code IN ('REC_TAX','NONREC_TAX')
          AND   exists (select 'Exclusive Prepay Tax Line'
                          from ap_allocation_rule_lines arl
                         where arl.invoice_id = p_prepay_invoice_id
                           and arl.to_invoice_line_number = p_prepay_line_num
                           and arl.chrg_invoice_line_number = dp.invoice_line_number);
Line: 3891

          UPDATE ap_invoice_distributions_all dp
          SET dp.prepay_amount_remaining = NVL(dp.prepay_amount_remaining, dp.total_dist_amount) + /*Bug 7372625*/
             (SELECT SUM(/*NVL(dp.prepay_amount_remaining, dp.total_dist_amount) +*/
                     (NVL(ds.amount, 0) + NVL(ds.prepay_tax_diff_amount, 0)))
                FROM ap_invoice_distributions_all ds
               WHERE ds.prepay_distribution_id = dp.invoice_distribution_id)
          WHERE dp.invoice_id = p_prepay_invoice_id
          AND dp.invoice_line_number = p_prepay_line_num
          AND dp.line_type_lookup_code IN ('REC_TAX','NONREC_TAX');
Line: 3911

    l_debug_info := 'Open Cursor C_Update_Prepayments';
Line: 3916

    OPEN C_Update_Prepayments;
Line: 3919

      l_debug_info := 'Fetch C_Update_Prepayments';
Line: 3924

      FETCH C_Update_Prepayments INTO
        l_prepay_distribution_id,
        l_apply_amount;
Line: 3934

      EXIT WHEN C_Update_Prepayments%NOTFOUND;
Line: 3936

      UPDATE  ap_invoice_distributions
         SET  prepay_amount_remaining = prepay_amount_remaining +
                                        l_apply_amount
       WHERE  invoice_distribution_id = l_prepay_distribution_id;
Line: 3943

    CLOSE C_Update_Prepayments;
Line: 3948

      FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Update_Prepayment(-)');
Line: 3981

END Update_Prepayment;
Line: 3984

FUNCTION Update_PO_Receipt_Info(
          p_prepay_dist_info          IN      AP_PREPAY_PKG.Prepay_Dist_Tab_Type,
          p_prepay_invoice_id         IN      NUMBER,
          p_prepay_line_num           IN      NUMBER,
          p_invoice_id                IN      NUMBER,
          p_invoice_line_num          IN      NUMBER,
          p_po_line_location_id       IN      NUMBER,
          p_matched_UOM_lookup_code   IN      VARCHAR2,
          p_appl_type                 IN      VARCHAR2,
          p_match_basis               IN      VARCHAR2,
	  p_calling_sequence          IN      VARCHAR2,
          p_error_message             OUT NOCOPY  VARCHAR2)
RETURN BOOLEAN IS

l_current_calling_sequence      VARCHAR2(2000);
Line: 4021

CURSOR C_PO_Receipt_Update IS
SELECT ail.po_line_location_id,
       ail.unit_meas_lookup_code,
       aid.rcv_transaction_id,
       aid.po_distribution_id,
       aid.amount,
       aid.quantity_invoiced,
       plt.matching_basis
  FROM ap_invoice_distributions aid,
       ap_invoice_lines ail,
       po_lines pl, /* Amount Based Matching. PO related tables and conditions */
       po_line_locations pll,
       po_line_types_b plt,    --bug 5056269
       po_line_types_tl T
 WHERE aid.invoice_id             = ail.invoice_id
   AND aid.invoice_line_number    = ail.line_number
   AND aid.invoice_id             = p_invoice_id
   AND aid.invoice_line_number    = p_invoice_line_num
   AND NVL(aid.reversal_flag,'N') = 'Y'
   AND aid.parent_invoice_id      IS NOT NULL
   AND ail.po_line_location_id    = pll.line_location_id(+)
   and pll.po_line_id             = pl.po_line_id(+)
   and pl.line_type_id            = plt.line_type_id(+)
   and plt.LINE_TYPE_ID = T.LINE_TYPE_ID
   and  T.LANGUAGE = userenv('LANG');
Line: 4052

  l_api_name := 'Update_Po_Receipt_Info';
Line: 4060

  l_current_calling_sequence := 'update_po_receipt_info<-'||
                                  p_calling_sequence;
Line: 4063

     FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Update_PO_Receipt_Info(+)');
Line: 4086

	--to update the recouped_amounts as oppose to billed columns...

         l_po_ap_dist_rec.add_change(
			        p_po_distribution_id => p_prepay_dist_info(l_loop_counter).ppay_po_distribution_id,
                                p_uom_code           => p_matched_uom_lookup_code,
                                p_quantity_billed    => NULL,
                                p_amount_billed      => NULL,
                                p_quantity_financed  => NULL,
                                p_amount_financed    => NULL,
                                p_quantity_recouped  => (-1) *p_prepay_dist_info(l_loop_counter).prepay_quantity_invoiced ,
                                p_amount_recouped    => p_prepay_dist_info(l_loop_counter).prepay_apply_amount,
                                p_retainage_withheld_amt => NULL,
                                p_retainage_released_amt => NULL);
Line: 4110

	 RCV_BILL_UPDATING_SV.ap_update_rcv_transactions(
             p_prepay_dist_info(l_loop_counter).ppay_rcv_transaction_id,
             p_prepay_dist_info(l_loop_counter).prepay_quantity_invoiced,
             p_matched_UOM_lookup_code,
             (-1) * p_prepay_dist_info(l_loop_counter).prepay_apply_amount,
             p_match_basis);
Line: 4133

				 p_last_update_login  => NULL,
				 p_request_id	      => NULL
                                );
Line: 4142

    OPEN C_PO_Receipt_Update;
Line: 4145

      FETCH C_PO_Receipt_Update INTO
        l_po_line_location_id,
        l_unit_meas_lookup_code,
        l_rcv_transaction_id,
        l_po_distribution_id,
        l_apply_amount,
        l_quantity_invoiced,
        l_match_basis
        ;
Line: 4155

      EXIT WHEN C_PO_Receipt_Update%NOTFOUND;
Line: 4178

        RCV_BILL_UPDATING_SV.ap_update_rcv_transactions(
                l_rcv_transaction_id,
                l_quantity_invoiced,
                l_unit_meas_lookup_code,
                l_apply_amount,
                l_match_basis);
Line: 4189

    CLOSE C_PO_Receipt_Update;
Line: 4204

				 p_last_update_login  => NULL,
				 p_request_id	      => NULL
                                );
Line: 4212

  l_debug_info := 'Call the PO_AP_INVOICE_MATCH_GRP to update the Po Distributions and Po Line Locations';
Line: 4217

  PO_AP_INVOICE_MATCH_GRP.Update_Document_Ap_Values(
                                        P_Api_Version => 1.0,
                                        P_Line_Loc_Changes_Rec => l_po_ap_line_loc_rec,
                                        P_Dist_Changes_Rec     => l_po_ap_dist_rec,
                                        X_Return_Status        => l_return_status,
                                        X_Msg_Data             => l_msg_data);
Line: 4225

     FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Update_PO_Receipt_Info(-)');
Line: 4258

END Update_PO_Receipt_Info;
Line: 4261

FUNCTION Update_Payment_Schedule(
          p_invoice_id              IN      NUMBER,
          p_prepay_invoice_id       IN      NUMBER,
          p_prepay_line_num         IN      NUMBER,
          p_apply_amount            IN      NUMBER,
          p_appl_type               IN      VARCHAR2,
          p_payment_currency_code   IN      VARCHAR2,
          p_user_id                 IN      NUMBER,
          p_last_update_login       IN      NUMBER,
          p_calling_sequence        IN      VARCHAR2,
	  p_calling_mode	    IN	    VARCHAR2 DEFAULT NULL,
          p_error_message           OUT NOCOPY VARCHAR2)
RETURN BOOLEAN IS

  l_debug_info                    VARCHAR2(100);
Line: 4287

SELECT  payment_num,
        DECODE(p_appl_type,
               'UNAPPLICATION', gross_amount - amount_remaining,
                amount_remaining)
  FROM  ap_payment_schedules
 WHERE  invoice_id               = p_invoice_id
   AND  (payment_status_flag||'' = 'P'
    OR   payment_status_flag||'' = DECODE(p_appl_type, 'UNAPPLICATION', 'Y', 'N'))
 ORDER BY DECODE(p_appl_type,
                 'UNAPPLICATION', DECODE(payment_status_flag,'P',1,'Y',2,3),
                 DECODE(NVL(hold_flag,'N'),'N',1,2)),
          DECODE(p_appl_type,
                 'UNAPPLICATION', due_date,
                  NULL) DESC,
          DECODE(p_appl_type,
                 'APPLICATION', due_date,
                 NULL),
          DECODE(p_appl_type,
                 'UNAPPLICATION', DECODE(hold_flag,'N',1,'Y',2,3),
                  DECODE(NVL(payment_status_flag,'N'),'P',1,'N',2,3));
Line: 4309

    l_api_name := 'Update_Payment_Schedule';
Line: 4311

    l_current_calling_sequence := 'update_payment_schedule<-'||
                                 p_calling_sequence;
Line: 4315

       FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Update_Payment_Schedule(+)');
Line: 4365

     *  Update the amount remaining for this payment schedule line so that:      *
     *  (amount remaining - apply amount remaining).                             *
     +---------------------------------------------------------------------------*/

        l_debug_info := 'Update ap_payment_schedule for the invoice, case 1';
Line: 4374

        UPDATE ap_payment_schedules
           SET amount_remaining = (amount_remaining -
                                   ap_utilities_pkg.ap_round_currency(
                                   l_apply_amount_remaining,
                                   p_payment_currency_code)),
               payment_status_flag =
                           DECODE(amount_remaining -
                                ap_utilities_pkg.ap_round_currency(
                                l_apply_amount_remaining,
                                p_payment_currency_code),
                                0,'Y',
                                gross_amount, 'N',
                                'P'),
               last_update_date = SYSDATE,
               last_updated_by = p_user_id,
               last_update_login = p_last_update_login
         WHERE invoice_id = p_invoice_id
           AND payment_num = l_cursor_payment_num;
Line: 4399

     *   Update the amount_remaining to 0 and amount_apply_remaining become *
     *   (amount_apply - amount_remaining(this line)), then go to next      *
     *   schedule line.                                                     *
     *----------------------------------------------------------------------*/

        l_debug_info := 'Update ap_payment_schedule for the invoice, case 2';
Line: 4409

        UPDATE ap_payment_schedules
           SET amount_remaining = DECODE(p_appl_type,
                                         'APPLICATION',0,
                                         gross_amount),
               payment_status_flag = DECODE(p_appl_type,
                                           'APPLICATION','Y',
                                           'N'),
               last_update_date  = SYSDATE,
               last_updated_by   = p_user_id,
               last_update_login = p_last_update_login
        WHERE  invoice_id        = p_invoice_id
          AND  payment_num       = l_cursor_payment_num;
Line: 4443

  l_debug_info := 'Update ap_invoices to reflect the amount applied p_apply_amount, p_invoice_id '||p_apply_amount||','||p_invoice_id;
Line: 4450

     UPDATE ap_invoices
        SET amount_paid = nvl(amount_paid,0) + p_apply_amount ,
            payment_status_flag =
                        AP_INVOICES_UTILITY_PKG.get_payment_status(p_invoice_id ),
            last_update_date    = SYSDATE,
            last_updated_by     = P_user_id,
            last_update_login   = p_last_update_login
      WHERE invoice_id          = p_invoice_id;
Line: 4459

     SELECT amount_paid
       into l_amount_paid
       from ap_invoices
      where invoice_id=p_invoice_id;
Line: 4467

      FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_PREPAY_PKG.Update_Payment_Schedule(-)');
Line: 4487

             ||' LAST_UPDATE_LOGIN       = '||TO_CHAR(p_last_update_login)
             ||' PAYMENT_CURRENCY_CODE   = '||p_payment_currency_code);
Line: 4507

END update_payment_schedule;
Line: 4534

          P_last_update_login IN NUMBER,
          P_calling_sequence  IN VARCHAR2,
          P_error_message     OUT NOCOPY VARCHAR2)
RETURN BOOLEAN
IS

-- Prepayment Invoice Related Variables

  l_ppay_inv_curr_code           ap_invoices_all.invoice_currency_code%TYPE;
Line: 4561

SELECT invoice_currency_code,
       payment_currency_code,
       payment_cross_rate_date,
       payment_cross_rate_type
  FROM AP_Invoices
 WHERE invoice_id = CV_PPay_Invoice_ID;
Line: 4571

SELECT *
  FROM AP_INVOICE_LINES
 WHERE invoice_id  = CV_Invoice_ID
   AND line_number = CV_line_num;
Line: 4655

               P_last_updated_by   => p_user_id,
               P_last_update_login => p_last_update_login,
               P_error_code        => l_error_code,
	       P_Token             => l_token,
               P_calling_sequence  => l_current_calling_sequence);
Line: 4680

            p_line_number_to_delete  => NULL,
            P_Interface_Invoice_Id   => NULL,
            p_all_error_messages     => 'N',
            p_error_code             => p_error_message,
            p_calling_sequence       => l_current_calling_sequence)) THEN

         RAISE tax_exception;
Line: 4701

            p_line_number_to_delete  => NULL,
            P_Interface_Invoice_Id   => NULL,
            p_all_error_messages     => 'N',
            p_error_code             => p_error_message,
            p_calling_sequence       => l_current_calling_sequence)) THEN

      RAISE tax_exception;
Line: 4714

  l_dummy := AP_PREPAY_PKG.Update_Prepayment(
               l_prepay_dist_info,
               p_prepay_invoice_id,
               p_prepay_line_num,
               p_invoice_id,
               p_line_num,
               'UNAPPLICATION',
	       NULL,    --p_calling_mode
               p_calling_sequence,
               p_error_message);
Line: 4733

  l_dummy := AP_PREPAY_PKG.Update_PO_Receipt_Info(
               l_prepay_dist_info,
               p_prepay_invoice_id,
               p_prepay_line_num,
               p_invoice_id,
               p_line_num,
               NULL,
               NULL,
              'UNAPPLICATION',
               NULL,
	       p_calling_sequence,
               p_error_message);
Line: 4755

    l_dummy := AP_PREPAY_PKG.Update_Payment_Schedule (
                p_invoice_id,
                p_prepay_invoice_id,
                p_prepay_line_num,
                l_ppay_apply_amt_in_pay_curr,
                'UNAPPLICATION',
                l_ppay_inv_pay_curr_code,
                p_user_id,
                p_last_update_login,
                p_calling_sequence,
		NULL,
                p_error_message);
Line: 4805

           ||', P_LAST_UPDATE_LOGIN       = '||P_LAST_UPDATE_LOGIN);
Line: 4834

          p_last_update_login     IN     NUMBER,
          p_calling_sequence      IN     VARCHAR2,
          p_error_message         OUT NOCOPY VARCHAR2)
RETURN BOOLEAN IS

  l_prepay_dist_info          AP_PREPAY_PKG.PREPAY_DIST_TAB_TYPE;
Line: 4860

SELECT  ai.invoice_id
  FROM  ap_invoices ai
 WHERE  ai.vendor_id                = cv_vendor_id
   AND  ai.invoice_num              = cv_prepay_num
   AND  ai.invoice_type_lookup_code = 'PREPAYMENT'
   AND  ai.payment_status_flag      = 'Y'
   AND  NVL(ai.earliest_settlement_date,sysdate+1) <= SYSDATE;
Line: 4869

SELECT ai.invoice_num,
       ail.line_number,
       AP_Prepay_Utils_PKG.get_line_prepay_amt_remaining
                           (ail.invoice_id,
                            ail.line_number)
  FROM  ap_invoices ai,
        ap_invoice_lines ail
 WHERE  ai.invoice_id                = cv_prepay_invoice_id
   AND  ail.invoice_id               = ai.invoice_id
   AND  AP_Prepay_Utils_PKG.get_line_prepay_amt_remaining
                           (ail.invoice_id,
                            ail.line_number) > 0
   AND  ail.line_type_lookup_code    = 'ITEM'
   AND  NVL(ail.discarded_flag,'N') <> 'Y'
 ORDER  BY ail.line_number;
Line: 4932

                      p_last_update_login,
		      l_current_calling_sequence,
		      'PREPAYMENT APPLICATION',
                      p_error_message);
Line: 4972

           ||', P_LAST_UPDATE_LOGIN       = '||P_LAST_UPDATE_LOGIN);