DBA Data[Home] [Help]

APPS.AP_INTEREST_INVOICE_PKG SQL Statements

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

Line: 38

PROCEDURE ap_int_inv_insert_ap_invoices(
   P_int_invoice_id                IN   NUMBER,
   P_check_date                    IN   DATE,
   P_vendor_id                     IN   NUMBER,
   P_vendor_site_id                IN   NUMBER,
   P_old_invoice_num               IN   VARCHAR2,
   P_int_invoice_num               IN   VARCHAR2,
   P_interest_amount               IN   NUMBER,
   P_interest_base_amount          IN   NUMBER,
   P_payment_method_code           IN   VARCHAR2, --4552701
   P_doc_sequence_value            IN   NUMBER,
   P_doc_sequence_id               IN   NUMBER,
   P_set_of_books_id               IN   NUMBER,
   P_last_updated_by               IN   NUMBER,
   P_interest_accts_pay_ccid       IN   NUMBER,
   P_pay_group_lookup_code         IN   VARCHAR2,
   P_invoice_currency_code         IN   VARCHAR2,
   P_payment_currency_code         IN   VARCHAR2,
   P_immed_terms_id                IN   NUMBER,
   P_terms_id                      IN   NUMBER,
   P_terms_date                    IN   DATE,
   P_payment_cross_rate            IN   NUMBER,
   P_exchange_rate                 IN   NUMBER,
   P_exchange_rate_type            IN   VARCHAR2,
   P_exchange_date                 IN   DATE,
   P_payment_dists_flag            IN   VARCHAR2,
   P_payment_mode                  IN   VARCHAR2,
   P_replace_flag                  IN   VARCHAR2,
   P_invoice_description           IN   VARCHAR2,
   P_org_id                        IN   NUMBER,
   P_last_update_login             IN   NUMBER,
   P_calling_sequence              IN   VARCHAR2,
   P_legal_entity_id               IN   NUMBER,
   P_party_id                      IN   NUMBER,  -- 4746599
   P_party_site_id                 IN   NUMBER,
   P_invoice_id                    IN   NUMBER); --8249618
Line: 76

PROCEDURE ap_int_inv_insert_ap_inv_rel(
   P_invoice_id                    IN   NUMBER,
   P_int_invoice_id                IN   NUMBER,
   P_checkrun_name                 IN   VARCHAR2,
   P_last_updated_by               IN   NUMBER,
   P_payment_num                   IN   NUMBER,
   P_payment_dists_flag            IN   VARCHAR2,
   P_payment_mode                  IN   VARCHAR2,
   P_replace_flag                  IN   VARCHAR2,
   P_calling_sequence              IN   VARCHAR2);
Line: 88

PROCEDURE ap_int_inv_insert_ap_inv_line(
   P_int_invoice_id                IN      NUMBER,
   P_accounting_date               IN      DATE,
   P_old_invoice_num               IN      VARCHAR2,
   P_interest_amount               IN      NUMBER,
   P_interest_base_amount          IN      NUMBER,
   P_period_name                   IN      VARCHAR2,
   P_set_of_books_id               IN      NUMBER,
   P_last_updated_by               IN      NUMBER,
   P_last_update_login             IN      NUMBER,
   P_asset_account_flag            IN      VARCHAR2,
   P_Payment_cross_rate            IN      NUMBER,
   P_payment_mode                  IN      VARCHAR2,
   p_type_1099                     IN      VARCHAR2,
   p_income_tax_region             IN      VARCHAR2,
   p_org_id                        IN      NUMBER,
   p_calling_sequence              IN      VARCHAR2);
Line: 107

PROCEDURE ap_int_inv_insert_ap_inv_dist(
   P_int_invoice_id                IN   NUMBER,
   P_accounting_date               IN   DATE,
   P_vendor_id                     IN   NUMBER,
   P_old_invoice_num               IN   VARCHAR2,
   P_int_invoice_num               IN   VARCHAR2,
   P_interest_amount               IN   NUMBER,
   P_interest_base_amount          IN   NUMBER,
   P_period_name                   IN   VARCHAR2,
   P_set_of_books_id               IN   NUMBER,
   P_last_updated_by               IN   NUMBER,
   P_interest_accts_pay_ccid       IN   NUMBER,
   P_asset_account_flag            IN   VARCHAR2,
   P_Payment_cross_rate            IN   Number,
   P_exchange_rate                 IN   NUMBER,
   P_exchange_rate_type            IN   VARCHAR2,
   P_exchange_date                 IN   DATE,
   P_payment_dists_flag            IN   VARCHAR2,
   P_payment_mode                  IN   VARCHAR2,
   P_replace_flag                  IN   VARCHAR2,
   P_invoice_id                    IN   NUMBER,
   P_calling_sequence              IN   VARCHAR2,
   P_invoice_currency_code         IN   VARCHAR2,
   P_base_currency_code            IN   VARCHAR2,
   P_type_1099                     IN   VARCHAR2,
   P_income_tax_region             IN   VARCHAR2,
   P_org_id                        IN   NUMBER,
   P_last_update_login             IN   NUMBER,
   p_accounting_event_id           IN   NUMBER DEFAULT NULL);
Line: 138

PROCEDURE ap_int_inv_insert_ap_pay_sche(
   P_int_invoice_id                IN   NUMBER,
   P_check_date                    IN   DATE,
   P_interest_amount               IN   NUMBER,
   P_payment_method_code           IN   VARCHAR2, --4552701
   P_last_updated_by               IN   NUMBER,
   P_payment_cross_rate            IN   NUMBER,
   P_payment_priority              IN   NUMBER,
   P_payment_dists_flag            IN   VARCHAR2,
   P_payment_mode                  IN   VARCHAR2,
   P_replace_flag                  IN   VARCHAR2,
   P_calling_sequence              IN   VARCHAR2,
   P_External_Bank_Account_Id      IN   NUMBER,
   P_org_id                        IN   NUMBER,
   P_last_update_login             IN   NUMBER);
Line: 165

      insert_invoice_payments)

+=============================================================================+
| Step      | Description                                       | Work for*   |
+==========+====================================================+=============+
| Step 1:  | Call ap_int_inv_get_info to get some parameters    | PAY         |
|      |
+----------+----------------------------------------------------+-------------+
| Step 2:  | Call ap_int_inv_insert_ap_invoices                 | PAY         |
|      |
+----------+----------------------------------------------------+-------------+
| Step 3:  | Call ap_int_inv_insert_ap_inv_rel                  | PAY         |
|          |
+----------+----------------------------------------------------+-------------+
| Step 4:  | Call  ap_int_inv_insert_ap_inv_line                | PAY         |
|          |
+----------+----------------------------------------------------+-------------+
| Step 5:  | Call  ap_int_inv_insert_ap_inv_dist                | PAY         |
|          |
+----------+----------------------------------------------------+-------------+
| Step 6:  | Call ap_int_inv_insert_ap_pay_sche                 | PAY         |
|          |
+----------+----------------------------------------------------+-------------+
| Step 7:  | Call AP_PAY_INVOICE_PKG.ap_pay_insert_invoice      |             |
|          |     _payments : Insert AP_INVOICE_PAYMENTS         | PAY         |
+----------+----------------------------------------------------+-------------+

 *========================================================================*/


PROCEDURE ap_create_interest_invoice(
   P_invoice_id                  IN   NUMBER,
   P_int_invoice_id              IN   NUMBER,
   P_check_id                    IN   NUMBER,
   P_payment_num                 IN   NUMBER,
   P_int_invoice_payment_id      IN   NUMBER,
   P_old_invoice_payment_id      IN   NUMBER        Default NULL,
   P_period_name                 IN   VARCHAR2,
   P_invoice_type                IN   VARCHAR2      Default NULL,
   P_accounting_date             IN   DATE,
   P_amount                      IN   NUMBER,
   P_discount_taken              IN   NUMBER,
   P_discount_lost               IN   NUMBER        Default NULL,
   P_invoice_base_amount         IN   NUMBER        Default NULL,
   P_payment_base_amount         IN   NUMBER        Default NULL,
   P_vendor_id                   IN   NUMBER,
   P_vendor_site_id              IN   NUMBER        Default NULL,
   P_old_invoice_num             IN   VARCHAR2,
   P_int_invoice_num             IN   VARCHAR2,
   P_interest_amount             IN   NUMBER,
   P_payment_method_code         IN   VARCHAR2      Default NULL, --4552701
   P_doc_sequence_value          IN   NUMBER        Default NULL,
   P_doc_sequence_id             IN   NUMBER        Default NULL,
   P_checkrun_name               IN   VARCHAR2      Default NULL,
   P_payment_priority            IN   VARCHAR2      Default NULL,
   P_accrual_posted_flag         IN   VARCHAR2,
   P_cash_posted_flag            IN   VARCHAR2,
   P_posted_flag                 IN   VARCHAR2,
   P_set_of_books_id             IN   NUMBER,
   P_last_updated_by             IN   NUMBER,
   P_last_update_login           IN   NUMBER        Default NULL,
   P_currency_code               IN   VARCHAR2      Default NULL,
   P_base_currency_code          IN   VARCHAR2      Default NULL,
   P_exchange_rate               IN   NUMBER        Default NULL,
   P_exchange_rate_type          IN   VARCHAR2      Default NULL,
   P_exchange_date               IN   DATE          Default NULL,
   P_bank_account_id             IN   NUMBER        Default NULL,
   P_bank_account_num            IN   VARCHAR2      Default NULL,
   P_bank_account_type           IN   VARCHAR2      Default NULL,
   P_bank_num                    IN   VARCHAR2      Default NULL,
   P_future_pay_posted_flag      IN   VARCHAR2      Default NULL,
   P_exclusive_payment_flag      IN   VARCHAR2      Default NULL,
   P_accts_pay_ccid              IN   NUMBER        Default NULL,
   P_gain_ccid                   IN   NUMBER        Default NULL,
   P_loss_ccid                   IN   NUMBER        Default NULL,
   P_future_pay_ccid             IN   NUMBER        Default NULL,
   P_asset_ccid                  IN   NUMBER        Default NULL,
   P_payment_dists_flag          IN   VARCHAR2      Default NULL,
   P_payment_mode                IN   VARCHAR2      Default NULL,
   P_replace_flag                IN   VARCHAR2      Default NULL,
   P_invoice_description         IN   VARCHAR2      Default NULL,
   P_attribute1                  IN   VARCHAR2      Default NULL,
   P_attribute2                  IN   VARCHAR2      Default NULL,
   P_attribute3                  IN   VARCHAR2      Default NULL,
   P_attribute4                  IN   VARCHAR2      Default NULL,
   P_attribute5                  IN   VARCHAR2      Default NULL,
   P_attribute6                  IN   VARCHAR2      Default NULL,
   P_attribute7                  IN   VARCHAR2      Default NULL,
   P_attribute8                  IN   VARCHAR2      Default NULL,
   P_attribute9                  IN   VARCHAR2      Default NULL,
   P_attribute10                 IN   VARCHAR2      Default NULL,
   P_attribute11                 IN   VARCHAR2      Default NULL,
   P_attribute12                 IN   VARCHAR2      Default NULL,
   P_attribute13                 IN   VARCHAR2      Default NULL,
   P_attribute14                 IN   VARCHAR2      Default NULL,
   P_attribute15                 IN   VARCHAR2      Default NULL,
   P_attribute_category          IN   VARCHAR2      Default NULL,
   P_calling_sequence            IN   VARCHAR2      Default NULL,
   P_accounting_event_id         IN   NUMBER        Default NULL,
   P_org_id                      IN   NUMBER        Default NULL)
IS

   current_calling_sequence     VARCHAR2(2000);
Line: 343

  AP_INTEREST_INVOICE_PKG.ap_int_inv_insert_ap_invoices(
          P_int_invoice_id,
          P_accounting_date,
          P_vendor_id,
          P_vendor_site_id,
          P_old_invoice_num,
          P_int_invoice_num,
          P_interest_amount,
          C_int_payment_base_amount,
          P_payment_method_code, --4552701
          P_doc_sequence_value,
          P_doc_sequence_id,
          P_set_of_books_id,
          P_last_updated_by,
          C_interest_accts_pay_ccid,
          C_pay_group_lookup_code,
          C_invoice_currency_code,
          C_payment_currency_code,
          C_immed_terms_id,
          C_terms_id,
          C_terms_date,
          C_payment_cross_rate,
          P_exchange_rate,
          P_exchange_rate_type,
          P_exchange_date,
          P_payment_dists_flag,
          P_payment_mode,
          P_replace_flag,
          P_invoice_description,
          P_org_id,
          P_last_update_login,
          Current_calling_sequence,
          C_Legal_entity_id,
          c_party_id, --4746599
          c_party_site_id,  -- 4959918
	  P_invoice_id);   --8249618
Line: 384

  AP_INTEREST_INVOICE_PKG.ap_int_inv_insert_ap_inv_rel(
          P_invoice_id,
          P_int_invoice_id,
          P_checkrun_name,
          P_last_updated_by,
          P_payment_num,
          P_payment_dists_flag,
          P_payment_mode,
          P_replace_flag,
          Current_calling_sequence);
Line: 399

  AP_INTEREST_INVOICE_PKG.ap_int_inv_insert_ap_inv_line(
          P_int_invoice_id,
          P_accounting_date,
          P_old_invoice_num,
          P_interest_amount,
          C_int_payment_base_amount,
          P_period_name   ,
          P_set_of_books_id,
          P_last_updated_by  ,
          P_last_update_login ,
          C_asset_account_flag,
          C_Payment_cross_rate,
          P_payment_mode,
          l_type_1099,
          l_income_tax_region,
          P_org_id,
          P_calling_sequence);
Line: 422

  AP_INTEREST_INVOICE_PKG.ap_int_inv_insert_ap_inv_dist(
          P_int_invoice_id,
          P_accounting_date,
          P_vendor_id,
          P_old_invoice_num,
          P_int_invoice_num,
          P_interest_amount,
          C_int_payment_base_amount,
          P_period_name,
          P_set_of_books_id,
          P_last_updated_by,
          C_interest_accts_pay_ccid,
          C_asset_account_flag,
          C_payment_cross_rate,
          P_exchange_rate,
          P_exchange_rate_type,
          P_exchange_date,
          P_payment_dists_flag,
          P_payment_mode,
          P_replace_flag,
          P_invoice_id,
          current_calling_sequence,
          C_invoice_currency_code,
          l_base_currency_code,
          l_type_1099,
          l_income_tax_region,
          P_org_id,
          P_last_update_login,
          p_accounting_event_id);
Line: 461

  AP_INTEREST_INVOICE_PKG.ap_int_inv_insert_ap_pay_sche(
          P_int_invoice_id,
          P_accounting_date,
          P_interest_amount,
          P_payment_method_code, --4552701
          P_last_updated_by,
          C_payment_cross_rate,
          C_payment_priority,
          P_payment_dists_flag,
          P_payment_mode,
          P_replace_flag,
          Current_calling_sequence,
          C_External_Bank_Account_Id,
          P_org_id,
          P_last_update_login);
Line: 483

  ap_pay_invoice_pkg.ap_pay_insert_invoice_payments(
          P_int_invoice_id,
          P_check_id,
          1,
          P_int_invoice_payment_id,
          P_old_invoice_payment_id,
          P_period_name,
          P_accounting_date,
          P_interest_amount,
          0,
          0,
          C_int_invoice_base_amount,
          C_int_payment_base_amount,
          'N',
          'N',
          'N',
          P_set_of_books_id,
          P_last_updated_by,
          P_last_update_login,
          sysdate,
          P_currency_code,
          P_base_currency_code,
          P_exchange_rate,
          P_exchange_rate_type,
          P_exchange_date,
          P_bank_account_id,
          P_bank_account_num,
          P_bank_account_type,
          P_bank_num,
          '',
          '',
          C_interest_accts_pay_ccid,
          P_gain_ccid,
          P_loss_ccid,
          P_future_pay_ccid,
          '',
          P_payment_dists_flag,
          P_payment_mode,
          P_replace_flag,
          P_attribute1,
          P_attribute2,
          P_attribute3,
          P_attribute4,
          P_attribute5,
          P_attribute6,
          P_attribute7,
          P_attribute8,
          P_attribute9,
          P_attribute10,
          P_attribute11,
          P_attribute12,
          P_attribute13,
          P_attribute14,
          P_attribute15,
          P_attribute_category,
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          '',
          Current_calling_sequence,
          P_accounting_event_id,
          P_org_id);
Line: 631

  SELECT  asp.interest_accts_pay_ccid,
          DECODE(glcc.account_type,'A','Y','N'),
          asp.base_currency_code,
          pv.type_1099,
          DECODE(pv.type_1099,
                 NULL, NULL,
                 DECODE(asp.combined_filing_flag,
                        'N', NULL,
                        DECODE(asp.income_tax_region_flag,
                               'Y', pvs.state,
                               asp.income_tax_region)))
    INTO  P_interest_accts_pay_ccid,
          P_asset_account_flag,
          P_base_currency_code,
          P_type_1099,
          P_income_tax_region
    FROM  ap_system_parameters asp,
          gl_code_combinations glcc,
          po_vendors pv,
          po_vendor_sites pvs
   WHERE  glcc.code_combination_id = asp.interest_code_combination_id
     AND  pv.vendor_id             = P_vendor_id
     AND  pvs.vendor_site_id       = P_vendor_site_id
     AND  NVL(pvs.org_id, -999)    = NVL(asp.org_id, -999);
Line: 662

  SELECT ai.pay_group_lookup_code,
         ai.invoice_currency_code,
         ai.payment_currency_code,
         ai.terms_id, ai.terms_date,
        /* bug 5000194 */
         (AP_IBY_UTILITY_PKG.Get_Default_Iby_Bank_Acct_Id /* External Bank Uptake */
                     ( ai.vendor_id,
                       ai.vendor_site_id,
                       ai.payment_function,
                       ai.org_id,
                       P_currency_code,
                       'Interest Invoice')),
         (P_interest_amount / ps.payment_cross_rate
                            * nvl(ai.exchange_rate,1)),
         (P_interest_amount / ps.payment_cross_rate
                            * nvl(P_exchange_rate,1)),
         nvl(ps.payment_cross_rate,1),
         ai.legal_entity_id,
         ai.party_id,
         ai.party_site_id,  -- bug 4959918
         ps.payment_priority -- Bug 5139574
    INTO P_pay_group_lookup_code,
         P_invoice_currency_code,
         P_payment_currency_code,
         P_terms_id,
         P_terms_date,
         P_External_Bank_Account_Id,
         int_invoice_base_amount,
         int_payment_base_amount,
         P_payment_cross_rate,
         P_Legal_Entity_ID,
         P_party_id,
         P_party_site_id,
         P_payment_priority
    FROM ap_invoices ai,
         ap_payment_schedules ps
   WHERE ai.invoice_id                  =  P_invoice_id
     AND ps.invoice_id                  =  P_invoice_id
     AND ps.payment_num                 =  P_payment_num;
Line: 733

  Insert AP_INVOICES
 *==========================================================================*/

PROCEDURE ap_int_inv_insert_ap_invoices(
          P_int_invoice_id               IN   NUMBER,
          P_check_date                   IN   DATE,
          P_vendor_id                    IN   NUMBER,
          P_vendor_site_id               IN   NUMBER,
          P_old_invoice_num              IN   VARCHAR2,
          P_int_invoice_num              IN   VARCHAR2,
          P_interest_amount              IN   NUMBER,
          P_interest_base_amount         IN   NUMBER,
          P_payment_method_code          IN   VARCHAR2, --4552701
          P_doc_sequence_value           IN   NUMBER,
          P_doc_sequence_id              IN   NUMBER,
          P_set_of_books_id              IN   NUMBER,
          P_last_updated_by              IN   NUMBER,
          P_interest_accts_pay_ccid      IN   NUMBER,
          P_pay_group_lookup_code        IN   VARCHAR2,
          P_invoice_currency_code        IN   VARCHAR2,
          P_payment_currency_code        IN   VARCHAR2,
          P_immed_terms_id               IN   NUMBER,
          P_terms_id                     IN   NUMBER,
          P_terms_date                   IN   DATE,
          P_payment_cross_rate           IN   NUMBER,
          P_exchange_rate                IN   NUMBER,
          P_exchange_rate_type           IN   VARCHAR2,
          P_exchange_date                IN   DATE,
          P_payment_dists_flag           IN   VARCHAR2,
          P_payment_mode                 IN   VARCHAR2,
          P_replace_flag                 IN   VARCHAR2,
          P_invoice_description          IN   VARCHAR2,
          P_org_id                       IN   NUMBER,
          P_last_update_login            IN   NUMBER,
          P_calling_sequence             IN   VARCHAR2,
          P_Legal_Entity_ID              IN   NUMBER,
          P_party_id                     IN   NUMBER,  --4746599
          P_party_site_id                IN   NUMBER,  --4959918
	  P_Invoice_id                   IN   NUMBER ) --8249618
IS
  debug_info                   VARCHAR2(100);
Line: 793

  current_calling_sequence := 'ap_int_inv_insert_ap_invoices<-'||
                              P_calling_sequence;
Line: 800

    SELECT remit_to_supplier_name, remit_to_supplier_id,
           remit_to_supplier_site, remit_to_supplier_site_id,
           relationship_id
    INTO l_remit_to_supplier_name, l_remit_to_supplier_id,
         l_remit_to_supplier_site, l_remit_to_supplier_site_id,
         l_relationship_id
    FROM AP_INVOICES_ALL
    WHERE INVOICE_ID = P_Invoice_id;
Line: 809

    debug_info := 'Insert into ap_invoices';
Line: 811

    INSERT INTO AP_INVOICES(
          INVOICE_ID,
          LAST_UPDATE_DATE,
          LAST_UPDATED_BY,
          VENDOR_ID,
          INVOICE_NUM,
          INVOICE_AMOUNT,
          BASE_AMOUNT,
          PAY_CURR_INVOICE_AMOUNT,
          VENDOR_SITE_ID,
          AMOUNT_PAID,
          DISCOUNT_AMOUNT_TAKEN,
          INVOICE_DATE,
          INVOICE_TYPE_LOOKUP_CODE,
          DESCRIPTION,
          AMOUNT_APPLICABLE_TO_DISCOUNT,
          TAX_AMOUNT,
          TERMS_ID,
          TERMS_DATE,
          PAY_GROUP_LOOKUP_CODE,
          SET_OF_BOOKS_ID,
          ACCTS_PAY_CODE_COMBINATION_ID,
          INVOICE_CURRENCY_CODE,
          PAYMENT_CURRENCY_CODE,
          PAYMENT_CROSS_RATE_TYPE,
          PAYMENT_CROSS_RATE_DATE,
          PAYMENT_STATUS_FLAG,
          POSTING_STATUS,
          CREATION_DATE,
          CREATED_BY,
          PAYMENT_CROSS_RATE,
          EXCHANGE_RATE,
          EXCHANGE_RATE_TYPE,
          EXCHANGE_DATE,
          SOURCE,
          PAYMENT_METHOD_CODE,  --4552701
          DOC_CATEGORY_CODE,
          DOC_SEQUENCE_VALUE,
          DOC_SEQUENCE_ID,
          GL_DATE,
          WFAPPROVAL_STATUS,
          APPROVAL_READY_FLAG,
          ORG_ID,
          LAST_UPDATE_LOGIN,
          Legal_Entity_ID,
          AUTO_TAX_CALC_FLAG,    -- BUG 3007085
          PARTY_ID,  --4746599
          PARTY_SITE_ID, --4959918
	  --Start 8249618
	  remit_to_supplier_name,
          remit_to_supplier_id,
          remit_to_supplier_site,
          remit_to_supplier_site_id,
          relationship_id
	   -- End 8249618
	   )
  VALUES (
          P_int_invoice_id,
          sysdate,
          P_last_updated_by,
          P_vendor_id,
          P_int_invoice_num,
          P_interest_amount / P_payment_cross_rate,
          P_interest_base_amount,
          P_interest_amount,
          P_vendor_site_id,
          P_interest_amount,
          0,
          P_check_date,
          'INTEREST',
          NVL(P_invoice_description, 'Interest : Overdue Invoice ' ||
                 P_old_invoice_num),
          0,
          0,
          nvl(P_immed_terms_id, P_terms_id),
          P_terms_date,
          P_pay_group_lookup_code,
          P_set_of_books_id,
          P_interest_accts_pay_ccid,
          P_invoice_currency_code,
          P_payment_currency_code,
          decode(P_payment_cross_rate, 1, NULL, 'EMU FIXED'),
          P_check_date,
          'Y',
          'N',
          sysdate,
          P_last_updated_by,
          nvl(P_payment_cross_rate,1),
          nvl(P_exchange_rate,1),
          P_exchange_rate_type,
          P_exchange_date,
          'QuickCheck',
          P_payment_method_code, --4552701
          'INT INV',
          P_doc_sequence_value,
          P_doc_sequence_id,
          P_check_date,
          'NOT REQUIRED',
          'Y',
          P_org_id,
          P_last_update_login,
          P_legal_entity_id,
          'N',                -- BUG 3007085
          P_party_id,  --4746599
          P_party_site_id, -- 4959918
	  --Start 8249618
	  l_remit_to_supplier_name,
          l_remit_to_supplier_id,
          l_remit_to_supplier_site,
          l_remit_to_supplier_site_id,
          l_relationship_id
	  --End 8249618
          );
Line: 963

         ||', Last_updated_by = '||TO_CHAR(P_last_updated_by)
         ||', payment_dists_flag = '||P_payment_dists_flag
         ||', payment_mode = '||P_payment_mode
         ||', replace_flag = '||P_replace_flag);
Line: 973

END ap_int_inv_insert_ap_invoices;
Line: 977

  Insert AP_INVOICE_RELATIONSHIPS
 *=====================================================================*/

PROCEDURE ap_int_inv_insert_ap_inv_rel(
          P_invoice_id           IN   NUMBER,
          P_int_invoice_id       IN   NUMBER,
          P_checkrun_name        IN   VARCHAR2,
          P_last_updated_by      IN   NUMBER,
          P_payment_num          IN   NUMBER,
          P_payment_dists_flag   IN   VARCHAR2,
          P_payment_mode         IN   VARCHAR2,
          P_replace_flag         IN   VARCHAR2,
          P_calling_sequence     IN   VARCHAR2) IS

  debug_info                   VARCHAR2(100);
Line: 996

  current_calling_sequence := 'ap_int_inv_insert_ap_inv_rel<-'||
                              P_calling_sequence;
Line: 1001

    debug_info := 'Insert into ap_invoice_relations';
Line: 1003

    INSERT INTO  AP_INVOICE_RELATIONSHIPS(
          ORIGINAL_INVOICE_ID,
          RELATED_INVOICE_ID,
          CREATED_BY,
          CREATION_DATE,
          ORIGINAL_PAYMENT_NUM,
          LAST_UPDATED_BY,
          LAST_UPDATE_DATE,
          CHECKRUN_NAME)
   VALUES(
          P_invoice_id,
          P_int_invoice_id,
          P_last_updated_by,
          sysdate,
          P_payment_num,
          P_last_updated_by,
          sysdate,
          P_checkrun_name);
Line: 1035

         ||', Last_updated_by = '||TO_CHAR(P_last_updated_by)
         ||', payment_dists_flag = '||P_payment_dists_flag
         ||', payment_mode = '||P_payment_mode
         ||', replace_flag = '||P_replace_flag);
Line: 1044

END ap_int_inv_insert_ap_inv_rel;
Line: 1048

  Insert AP_INVOICE_LINES
 *=====================================================================*/

PROCEDURE ap_int_inv_insert_ap_inv_line(
          P_int_invoice_id                IN      NUMBER,
          P_accounting_date               IN      DATE,
          P_old_invoice_num               IN      VARCHAR2,
          P_interest_amount               IN      NUMBER,
          P_interest_base_amount          IN      NUMBER,
          P_period_name                   IN      VARCHAR2,
          P_set_of_books_id               IN      NUMBER,
          P_last_updated_by               IN      NUMBER,
          P_last_update_login             IN      NUMBER,
          P_asset_account_flag            IN      VARCHAR2,
          P_Payment_cross_rate            IN      NUMBER,
          P_payment_mode                  IN      VARCHAR2,
          p_type_1099                     IN      VARCHAR2,
          p_income_tax_region             IN      VARCHAR2,
          p_org_id                        IN      NUMBER,
          p_calling_sequence              IN      VARCHAR2)
IS

  debug_info                      VARCHAR2(100);
Line: 1081

  current_calling_sequence := 'ap_int_inv_insert_ap_inv_line<-'||
                               P_calling_sequence;
Line: 1086

    debug_info := 'Insert into ap_invoice_lines';
Line: 1088

    INSERT INTO AP_INVOICE_LINES
       (INVOICE_ID,
        LINE_NUMBER,
        LINE_TYPE_LOOKUP_CODE,
        LAST_UPDATE_DATE,
        LAST_UPDATED_BY,
        CREATION_DATE,
        CREATED_BY,
        LAST_UPDATE_LOGIN,
        ACCOUNTING_DATE,
        PERIOD_NAME,
        AMOUNT,
        BASE_AMOUNT,
        ROUNDING_AMT,
        DESCRIPTION,
        TYPE_1099,
        INCOME_TAX_REGION,
        SET_OF_BOOKS_ID,
        ASSETS_TRACKING_FLAG,
        ASSET_BOOK_TYPE_CODE,
        ASSET_CATEGORY_ID,
        LINE_SOURCE,
        GENERATE_DISTS,
        MATCH_TYPE,
        PRORATE_ACROSS_ALL_ITEMS,
        DEFERRED_ACCTG_FLAG,
        WFAPPROVAL_STATUS,
        DISCARDED_FLAG,
        CANCELLED_FLAG,
        FINAL_MATCH_FLAG,
        REQUESTER_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,*/
        ORG_ID)
   VALUES (
        P_int_invoice_id,             -- INVOICE_ID
        1,                            -- LINE_NUMBER
        'ITEM',                       -- LINE_TYPE_LOOKUP_CODE
        SYSDATE,                      -- LAST_UPDATE_DATE
        P_last_updated_by,            -- LAST_UPDATED_BY
        SYSDATE,                      -- CREATION_DATE
        P_last_updated_by,            -- CREATED_BY
        P_last_update_login,          -- LAST_UPDATE_LOGIN
        P_accounting_date,            -- ACCOUNTING_DATE
        P_period_name,                -- PERIOD_NAME
        P_interest_amount / nvl(P_payment_cross_rate,1),  -- AMOUNT
        P_interest_base_amount,       -- BASE_AMOUNT
        NULL,                         -- ROUNDING_AMT
        'Interest : Overdue Invoice ' || P_old_invoice_num,  -- DESCRIPTION
        p_type_1099,                  -- TYPE_1099
        p_income_tax_region,          -- INCOME_TAX_REGION
        P_set_of_books_id,            -- SET_OF_BOOKS_ID
        P_asset_account_flag,         -- ASSETS_TRACKING_FLAG
        NULL,                         -- ASSET_BOOK_TYPE_CODE
        NULL,                         -- ASSET_CATEGORY_ID
        'AUTO INVOICE CREATION',      -- LINE_SOURCE
        'D',                          -- GENERATE_DISTS
        'NOT_MATCHED',                -- MATCH_TYPE
        'N',                          -- PRORATE_ACROSS_ALL_ITEMS
        'N',                          -- DEFERRED_ACCTG_FLAG
        'NOT REQUIRED',               -- WFAPPROVAL_STATUS
        'N',                          -- DISCARDED_FLAG
        'N',                          -- CANCELLED_FLAG
        'N',                          -- FINAL_MATCH_FLAG
        NULL,                         -- REQUESTER_ID
        /*NULL,  -- Global Attributes NULLified for now.
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,  */
        P_org_id);                    -- ORG_ID
Line: 1212

                ||', Last_updated_by = '        ||TO_CHAR(P_last_updated_by)
                ||', payment_mode = '           ||P_payment_mode
                ||', type_1099 = '              ||P_type_1099
                ||', income_tax_region = '      ||p_income_tax_region);
Line: 1222

END ap_int_inv_insert_ap_inv_line;
Line: 1226

  Insert AP_INVOICE_DISTRIBUTIONS
 *=====================================================================*/

PROCEDURE ap_int_inv_insert_ap_inv_dist(
          P_int_invoice_id                IN   NUMBER,
          P_accounting_date               IN   DATE,
          P_vendor_id                     IN   NUMBER,
          P_old_invoice_num               IN   VARCHAR2,
          P_int_invoice_num               IN   VARCHAR2,
          P_interest_amount               IN   NUMBER,
          P_interest_base_amount          IN   NUMBER,
          P_period_name                   IN   VARCHAR2,
          P_set_of_books_id               IN   NUMBER,
          P_last_updated_by               IN   NUMBER,
          P_interest_accts_pay_ccid       IN   NUMBER,
          P_asset_account_flag            IN   VARCHAR2,
          P_Payment_cross_rate            IN   NUMBER,
          P_exchange_rate                 IN   NUMBER,
          P_exchange_rate_type            IN   VARCHAR2,
          P_exchange_date                 IN   DATE,
          P_payment_dists_flag            IN   VARCHAR2,
          P_payment_mode                  IN   VARCHAR2,
          P_replace_flag                  IN   VARCHAR2,
          P_invoice_id                    IN   NUMBER,
          P_calling_sequence              IN   VARCHAR2,
          P_invoice_currency_code         IN   VARCHAR2,
          P_base_currency_code            IN   VARCHAR2,
          P_type_1099                     IN   VARCHAR2,
          P_income_tax_region             IN   VARCHAR2,
          P_org_id                        IN   NUMBER,
          P_last_update_login             IN   NUMBER,
          p_accounting_event_id           IN   NUMBER DEFAULT NULL)
IS

  debug_info                      VARCHAR2(100);
Line: 1281

  SELECT ap_utilities_pkg.ap_round_currency
       (((amount * P_interest_amount)/l_proration_divisor),P_invoice_currency_code)
             prorated_dist_amount ,
       ap_utilities_pkg.ap_round_currency(
       nvl(P_exchange_rate,1) *
       ap_utilities_pkg.ap_round_currency
       (((amount * P_interest_amount)/l_proration_divisor),P_invoice_currency_code) -- amount rounded
       / nvl(P_payment_cross_rate, 1),
       P_base_currency_code) prorated_dist_base_amt,
         dist_code_combination_id,
         type_1099,
         income_tax_region
    FROM ap_invoice_distributions AID
   WHERE AID.invoice_id            = P_invoice_id
     AND AID.line_type_lookup_code IN ('ITEM', 'IPV','ACCRUAL')
   ORDER BY AID.invoice_distribution_id;
Line: 1329

  current_calling_sequence := 'ap_int_inv_insert_ap_inv_dist<-'||
                              P_calling_sequence;
Line: 1343

      select PRORATE_INT_INV_ACROSS_DISTS  --start of code for bug 7112849
  into l_account_from_ap_system from ap_system_parameters  ;
Line: 1346

    select   INTEREST_CODE_COMBINATION_ID into l_system_interest_account  from
    ap_system_parameters  ;
Line: 1348

debug_info := 'inserting tax dsitribution using system defined account in ap_system_parameters';
Line: 1351

      INSERT INTO AP_INVOICE_DISTRIBUTIONS
             (INVOICE_ID,
              DIST_CODE_COMBINATION_ID,
              INVOICE_DISTRIBUTION_ID,
              INVOICE_LINE_NUMBER,
              LAST_UPDATE_DATE,
              LAST_UPDATED_BY,
              CREATION_DATE,
              CREATED_BY,
              ACCOUNTING_DATE,
              PERIOD_NAME,
              AMOUNT,
              BASE_AMOUNT,
              DESCRIPTION,
              TYPE_1099,
              INCOME_TAX_REGION,
              POSTED_FLAG,
              ASSETS_ADDITION_FLAG,
              SET_OF_BOOKS_ID,
              DISTRIBUTION_LINE_NUMBER,
              LINE_TYPE_LOOKUP_CODE,
              ACCRUAL_POSTED_FLAG,
              CASH_POSTED_FLAG,
              MATCH_STATUS_FLAG,
              ASSETS_TRACKING_FLAG,
              PA_ADDITION_FLAG,
              ACCTS_PAY_CODE_COMBINATION_ID,
              dist_match_type,
              distribution_class,
              amount_to_post,
              base_amount_to_post,
              posted_amount,
              posted_base_amount,
              upgrade_posted_amt,
              upgrade_base_posted_amt,
              rounding_amt,
              accounting_event_id,
              encumbered_flag,
              packet_id,
              reversal_flag,
              parent_reversal_id,
              cancellation_flag,
              asset_book_type_code,
              asset_category_id,
              last_update_login,
              /* TAX_CODE_OVERRIDE_FLAG,  Waiting for e-tax
              TAX_RECOVERY_RATE,
              TAX_RECOVERY_OVERRIDE_FLAG,
              TAX_RECOVERABLE_FLAG, */
              ORG_ID,
	      --Freight and Special Charges
	      RCV_CHARGE_ADDITION_FLAG)
        VALUES (
               P_int_invoice_id,
               l_system_interest_account ,
               ap_invoice_distributions_s.NEXTVAL,
               1,
               SYSDATE,
               P_last_updated_by,
               SYSDATE,
               P_last_updated_by,
               P_accounting_date,
               P_period_name,
               P_interest_amount / nvl(P_payment_cross_rate,1),  -- AMOUNT
	       P_interest_base_amount,       -- BASE_AMOUNT
               'Interest : Overdue Invoice ' || P_old_invoice_num,
               p_type_1099,                  -- TYPE_1099
               p_income_tax_region,          -- INCOME_TAX_REGION
               'N',
               'U',
               P_set_of_books_id,
               l_inv_distribution_line_number,
               'ITEM',
               'N',
               'N',
               'A',
               P_asset_account_flag,
               'E',
               P_interest_accts_pay_ccid,
               'PERMANENT',
               null,
               null,
               null,
               null,
               null,
               null,
               null,
               null, -- rounding amount
               p_accounting_event_id, -- aid.accounting_event_id /* Bug 4742671, switching null and 'N' */
               'N',
               null,
               null,
               null,
               null,
               null,
               null,
               P_last_update_login,
            /*   'N',
               '',
               'N',
               'N',   */
               p_org_id,
	       'N')
           returning invoice_distribution_id
           into l_invoice_distribution_id;  --end  of code for bug 7112849
Line: 1458

    debug_info := 'Selecting distribution for proration';
Line: 1459

    SELECT   nvl(sum(AID.amount),0)
      INTO   l_proration_divisor
      FROM   ap_invoice_distributions AID
     WHERE   AID.invoice_id            =  P_invoice_id
       AND   AID.line_type_lookup_code IN ('ITEM', 'IPV','ACCRUAL');
Line: 1482

        debug_info := 'Inserting invoice ditsributions';
Line: 1483

        INSERT INTO AP_INVOICE_DISTRIBUTIONS
             (INVOICE_ID,
              DIST_CODE_COMBINATION_ID,
              INVOICE_DISTRIBUTION_ID,
              INVOICE_LINE_NUMBER,
              LAST_UPDATE_DATE,
              LAST_UPDATED_BY,
              CREATION_DATE,
              CREATED_BY,
              ACCOUNTING_DATE,
              PERIOD_NAME,
              AMOUNT,
              BASE_AMOUNT,
              DESCRIPTION,
              TYPE_1099,
              INCOME_TAX_REGION,
              POSTED_FLAG,
              ASSETS_ADDITION_FLAG,
              SET_OF_BOOKS_ID,
              DISTRIBUTION_LINE_NUMBER,
              LINE_TYPE_LOOKUP_CODE,
              ACCRUAL_POSTED_FLAG,
              CASH_POSTED_FLAG,
              MATCH_STATUS_FLAG,
              ASSETS_TRACKING_FLAG,
              PA_ADDITION_FLAG,
              ACCTS_PAY_CODE_COMBINATION_ID,
              dist_match_type,
              distribution_class,
              amount_to_post,
              base_amount_to_post,
              posted_amount,
              posted_base_amount,
              upgrade_posted_amt,
              upgrade_base_posted_amt,
              rounding_amt,
              accounting_event_id,
              encumbered_flag,
              packet_id,
              reversal_flag,
              parent_reversal_id,
              cancellation_flag,
              asset_book_type_code,
              asset_category_id,
              last_update_login,
              /* TAX_CODE_OVERRIDE_FLAG,  Waiting for e-tax
              TAX_RECOVERY_RATE,
              TAX_RECOVERY_OVERRIDE_FLAG,
              TAX_RECOVERABLE_FLAG, */
              ORG_ID,
	      --Freight and Special Charges
	      RCV_CHARGE_ADDITION_FLAG)
        VALUES (
               P_int_invoice_id,
               rec_prorate_int_inv.dist_code_combination_id,
               ap_invoice_distributions_s.NEXTVAL,
               1,
               SYSDATE,
               P_last_updated_by,
               SYSDATE,
               P_last_updated_by,
               P_accounting_date,
               P_period_name,
               rec_prorate_int_inv.prorated_dist_amount,
               rec_prorate_int_inv.prorated_dist_base_amt,
               'Interest : Overdue Invoice ' || P_old_invoice_num,
               rec_prorate_int_inv.type_1099,
               rec_prorate_int_inv.income_tax_region,
               'N',
               'U',
               P_set_of_books_id,
               l_inv_distribution_line_number,
               'ITEM',
               'N',
               'N',
               'A',
               P_asset_account_flag,
               'E',
               P_interest_accts_pay_ccid,
               'PERMANENT',
               null,
               null,
               null,
               null,
               null,
               null,
               null,
               null, -- rounding amount
               p_accounting_event_id, -- aid.accounting_event_id /* Bug 4742671, switching null and 'N' */
               'N',
               null,
               null,
               null,
               null,
               null,
               null,
               P_last_update_login,
            /*   'N',
               '',
               'N',
               'N',   */
               p_org_id,
	       'N')
           returning invoice_distribution_id
           into l_invoice_distribution_id;
Line: 1610

      debug_info := 'Update AP_INVOICE_DISTRIBUTIONS (invoice_id = '||
                    p_int_invoice_id||')';
Line: 1615

      UPDATE ap_invoice_distributions_all aid
             set amount = amount - l_distribution_total + p_interest_amount,
             base_amount = base_amount - l_distribution_base_total
                           + p_interest_base_amount
         WHERE aid.rowid =(
               select row_id from
                (
                  select rowid row_id,
                         rank() over(order by abs(aid3.amount) desc,
                         aid3.distribution_line_number desc) r
                  from ap_invoice_distributions aid3
                  WHERE aid3.invoice_id = p_int_invoice_id
                )
               where r=1 )
     RETURNING aid.invoice_distribution_id
     BULK COLLECT INTO l_dbi_key_value_list;  -- bug 4539462
Line: 1632

/*   -- Perf Bug 5059000 - commented older UPDATE below
      UPDATE ap_invoice_distributions aid1
         SET amount = amount -
                        l_distribution_total +
                        p_interest_amount,
             base_amount = base_amount -
                        l_distribution_base_total +
                        p_interest_base_amount
       WHERE invoice_id = p_int_invoice_id
         AND distribution_line_number =
                 (SELECT MAX(distribution_line_number)
                    FROM ap_invoice_distributions aid2
                   WHERE aid2.invoice_id = p_int_invoice_id
                     AND ABS(aid2.amount) =
                         (SELECT MAX(ABS(aid3.amount))
                            FROM ap_invoice_distributions aid3
                           WHERE aid3.invoice_id = p_int_invoice_id))
	RETURNING aid1.invoice_distribution_id
        BULK COLLECT INTO l_dbi_key_value_list;  -- bug 4539462
Line: 1685

         ||', Last_updated_by = '||TO_CHAR(P_last_updated_by)
         ||', payment_dists_flag = '||P_payment_dists_flag
         ||', payment_mode = '||P_payment_mode
         ||', replace_flag = '||P_replace_flag);
Line: 1694

END ap_int_inv_insert_ap_inv_dist;
Line: 1698

 Insert AP_PAYMENT_SCHEDULES
 *==========================================================================*/

PROCEDURE ap_int_inv_insert_ap_pay_sche(
          P_int_invoice_id              IN   NUMBER,
          P_check_date                  IN   DATE,
          P_interest_amount             IN   NUMBER,
          P_payment_method_code         IN   VARCHAR2, --4552701
          P_last_updated_by             IN   NUMBER,
          P_payment_cross_rate          IN   NUMBER,
          P_payment_priority            IN   NUMBER,
          P_payment_dists_flag          IN   VARCHAR2,
          P_payment_mode                IN   VARCHAR2,
          P_replace_flag                IN   VARCHAR2,
          P_calling_sequence            IN   VARCHAR2,
          P_External_Bank_Account_Id    IN   NUMBER,
          P_org_id                      IN   NUMBER,
          P_last_update_login           IN   NUMBER) IS

  debug_info                   VARCHAR2(100);
Line: 1727

  current_calling_sequence := 'ap_int_inv_insert_ap_pay_sche<-'||
                              P_calling_sequence;
Line: 1731

    debug_info := 'Insert into ap_payment_schedules';
Line: 1733

    INSERT INTO  AP_PAYMENT_SCHEDULES(
          INVOICE_ID,
          PAYMENT_NUM,
          LAST_UPDATE_DATE,
          LAST_UPDATED_BY,
          CREATION_DATE,
          CREATED_BY,
          DUE_DATE,
          DISCOUNT_DATE,
          GROSS_AMOUNT,
          INV_CURR_GROSS_AMOUNT,
          DISCOUNT_AMOUNT_AVAILABLE,
          AMOUNT_REMAINING,
          DISCOUNT_AMOUNT_REMAINING,
          PAYMENT_PRIORITY,
          PAYMENT_STATUS_FLAG,
          PAYMENT_CROSS_RATE,
          PAYMENT_METHOD_CODE, --4552701
          External_Bank_Account_Id,
          ORG_ID,
          LAST_UPDATE_LOGIN)
    VALUES  (
          P_int_invoice_id,
          1,
          sysdate,
          P_last_updated_by,
          sysdate,
          P_last_updated_by,
          P_check_date,
          NULL,
          P_interest_amount,
          P_interest_amount /P_payment_cross_rate,
          0,
          0,
          0,
          P_payment_priority,
          'Y',
          P_payment_cross_rate,
          P_payment_method_code, --4552701
          P_External_Bank_Account_Id,
          P_org_id,
          P_last_update_login);
Line: 1799

         ||', Last_updated_by = '||TO_CHAR(P_last_updated_by)
         ||', payment_dists_flag = '||P_payment_dists_flag
         ||', payment_mode = '||P_payment_mode
         ||', replace_flag = '||P_replace_flag);
Line: 1809

END ap_int_inv_insert_ap_pay_sche;
Line: 1821

          P_Last_Updated_By     IN   NUMBER,
          P_Calling_Sequence    IN   VARCHAR2,
          P_last_update_login   IN   NUMBER DEFAULT NULL )
IS

  l_Sys_Auto_Calc_Int_Flag    VARCHAR2(1);
Line: 1836

  SELECT  AID.invoice_id                               Invoice_Id,
          AID.dist_code_combination_id                 Dist_Code_Combination_Id,
          ap_invoice_distributions_s.NEXTVAL           Invoice_Distribution_Id,
          AID.invoice_line_number                      Invoice_Line_Number,
          AID.set_of_books_id                          Set_Of_Books_Id,
          0-AID.amount                                 Amount,
          AID.line_type_lookup_code                    Line_Type_Lookup_code,
          0-AID.base_amount                            Base_Amount,
          ALC.displayed_field || ' '||AID.description  Description,
          DECODE(GL.account_type, 'A', 'Y', 'N')       Assets_Tracking_Flag,
          AID.accts_pay_code_combination_id            Accts_Pay_Code_Combination_Id,
          AID.org_id                                   Org_Id
     FROM ap_invoice_distributions AID,
          gl_code_combinations GL,
          ap_invoice_payments AIP,
          ap_invoice_relationships AIR,
          ap_lookup_codes ALC
    WHERE AIR.related_invoice_id = AID.invoice_id
      AND GL.code_combination_id = AID.dist_code_combination_id
      AND AID.invoice_id         = AIP.invoice_id
      AND AIP.invoice_payment_id = P_Invoice_Payment_Id
      AND AIP.amount             > 0
      AND ALC.lookup_type        = 'NLS TRANSLATION'
      AND ALC.lookup_code        = 'VOID';
Line: 1884

  SELECT APS.auto_calculate_interest_flag,
         PV.auto_calculate_interest_flag
    INTO l_Sys_Auto_Calc_Int_Flag,
         l_Vendor_Auto_Calc_Int_Flag
    FROM
         ap_product_setup aps,
         po_vendors PV,
         ap_checks AC
   WHERE AC.check_id  = P_Check_Id
     AND AC.vendor_id = PV.vendor_id;
Line: 1902

    UPDATE ap_payment_schedules_all APS
       SET APS.last_updated_by = P_Last_Updated_By,
           APS.gross_amount = 0,
           APS.inv_curr_gross_amount = 0,
           APS.last_update_date = sysdate,
           APS.amount_remaining = 0
     WHERE  APS.invoice_id IN
      (SELECT AIR.related_invoice_id
         FROM ap_invoice_relationships AIR,
              ap_invoice_payments_all AIP
        WHERE AIP.invoice_payment_id = P_Invoice_Payment_Id
          AND AIR.related_invoice_id = AIP.invoice_id)
     RETURNING APS.invoice_id
     BULK COLLECT INTO l_dbi_key_value_list1;
Line: 1933

    UPDATE ap_invoices_all AI
       SET AI.description='VOID '||AI.description,
           AI.invoice_amount = 0,
           AI.pay_curr_invoice_amount = 0,
           AI.amount_paid = 0,
           AI.invoice_distribution_total = 0
    WHERE  AI.invoice_id IN
      (SELECT /*+ UNNEST */ AIR.related_invoice_id
         FROM ap_invoice_relationships AIR,
              ap_invoice_payments_all AIP
        WHERE AIP.invoice_payment_id  = P_Invoice_Payment_Id
          AND AIR.related_invoice_id  = AIP.invoice_id)
     RETURNING invoice_id
     BULK COLLECT INTO l_dbi_key_value_list2;
Line: 1961

    UPDATE ap_invoice_lines_all AIL
       SET AIL.description     = 'VOID '||AIL.description,
           AIL.amount          = 0,
           AIL.base_amount     = 0
     WHERE AIL.invoice_id IN
                (SELECT /*+ UNNEST */ AIR.related_invoice_id
                 FROM   ap_invoice_relationships AIR,
                        ap_invoice_payments_all AIP
                 WHERE  AIP.invoice_payment_id = P_Invoice_Payment_Id
                   AND  AIR.related_invoice_id = AIP.invoice_id);
Line: 1979

    SELECT max(aid.distribution_line_number)
      INTO   l_max_dist_line_num
      FROM   ap_invoice_distributions aid,
             gl_code_combinations gl,
             ap_invoice_payments aip,
             ap_invoice_relationships air,
             ap_lookup_codes alc
     WHERE   AIR.related_invoice_id = AID.invoice_id
       AND   GL.code_combination_id = AID.dist_code_combination_id
       AND   AID.invoice_id         = AIP.invoice_id
       AND   AIP.invoice_payment_id = P_Invoice_Payment_Id
       AND   AIP.amount             > 0
       AND   ALC.lookup_type        = 'NLS TRANSLATION'
       AND   ALC.lookup_code        = 'VOID';
Line: 2002

        INSERT INTO ap_invoice_distributions(
          INVOICE_ID,
          DIST_CODE_COMBINATION_ID,
          INVOICE_DISTRIBUTION_ID,
          INVOICE_LINE_NUMBER,
          LAST_UPDATED_BY,
          ASSETS_ADDITION_FLAG,
          ACCOUNTING_DATE,
          PERIOD_NAME,
          SET_OF_BOOKS_ID,
          AMOUNT,
          POSTED_FLAG,
          CASH_POSTED_FLAG,
          ACCRUAL_POSTED_FLAG,
          MATCH_STATUS_FLAG,
          DISTRIBUTION_LINE_NUMBER,
          LINE_TYPE_LOOKUP_CODE,
          BASE_AMOUNT,
          LAST_UPDATE_DATE,
          DESCRIPTION,
          PA_ADDITION_FLAG,
          CREATED_BY,
          CREATION_DATE,
          ASSETS_TRACKING_FLAG,
          ACCTS_PAY_CODE_COMBINATION_ID,
          ORG_ID,
          DIST_MATCH_TYPE,
          DISTRIBUTION_CLASS,
          AMOUNT_TO_POST,
          BASE_AMOUNT_TO_POST,
          POSTED_AMOUNT,
          POSTED_BASE_AMOUNT,
          UPGRADE_POSTED_AMT,
          UPGRADE_BASE_POSTED_AMT,
          ROUNDING_AMT,
          ACCOUNTING_EVENT_ID,
          ENCUMBERED_FLAG,
          PACKET_ID,
          REVERSAL_FLAG,
          PARENT_REVERSAL_ID,
          CANCELLATION_FLAG,
          ASSET_BOOK_TYPE_CODE,
          ASSET_CATEGORY_ID,
          LAST_UPDATE_LOGIN,
	  --Freight and Special Charges
	  RCV_CHARGE_ADDITION_FLAG)
    VALUES (
          Interest_Inv_Cur.invoice_id,
          Interest_Inv_Cur.dist_code_combination_id,
          Interest_Inv_Cur.invoice_distribution_id,
          Interest_Inv_Cur.invoice_line_number,
          P_Last_Updated_By,
          'U',
          P_Check_Date,
          P_Period_Name,
          Interest_Inv_Cur.set_of_books_id,
          0-Interest_Inv_Cur.amount,
          'N',
          'N',
          'N',
          'A',
          l_max_dist_line_num,
          Interest_Inv_Cur.line_type_lookup_code,
          0-Interest_Inv_Cur.base_amount,
          sysdate,
          Interest_Inv_Cur.description,
          'N',
          P_Last_Updated_By,
          sysdate,
          Interest_Inv_Cur.Assets_Tracking_Flag,
          Interest_Inv_Cur.accts_pay_code_combination_id,
          Interest_Inv_Cur.org_id,
          'MATCH_STATUS',
          'PERMANENT',
          NULL,
          NULL,
          NULL,
          NULL,
          NULL,
          NULL,
          NULL,
          NULL,
          'N',
          NULL,
          NULL,
          NULL,
          NULL,
          NULL,
          NULL,
          P_last_update_login,
	  'N');
Line: 2109

      ||', LAST_UPDATED_BY = '   || TO_CHAR(P_Last_Updated_By));
Line: 2203

  SELECT nvl(interest_tolerance_amount,0)
    INTO C_interest_tolerance_amount
    FROM ap_system_parameters_all asp,
         ap_invoices_all ai
    WHERE ai.org_id = asp.org_id
    AND   ai.invoice_id = p_invoice_id;
Line: 2216

  SELECT  count(*)
    INTO  C_int_inv_num_ext
    FROM  ap_invoice_relationships
   WHERE  original_invoice_id = P_invoice_id;
Line: 2227

  SELECT  count(*)
    INTO  C_int_inv_num_ext2
    FROM  ap_selected_invoices
-- CHANGES FOR BUG - 3293874 ** STARTS **
   --WHERE  original_invoice_id = P_invoice_id;
Line: 2240

  SELECT invoice_num|| '-INT' ||
           to_char(nvl(C_int_inv_num_ext, 0) + nvl(C_int_inv_num_ext2, 0) + 1)
    INTO P_interest_invoice_num
    FROM ap_invoices
   WHERE invoice_id = P_invoice_id;
Line: 2251

  SELECT   due_date INTO C_due_date
    FROM   ap_payment_schedules
   WHERE   P_sys_auto_calc_int_flag       = 'Y'
     AND   P_auto_calculate_interest_flag = 'Y'
     AND   trunc(P_check_date)            > trunc(due_date)
     AND   payment_num                    = P_payment_num
     AND   invoice_id                     = P_invoice_id;
Line: 2296

     SELECT (NVL(P_amount_remaining -
             least(nvl(P_discount_taken, 0), P_discount_available), 0) *
                    power(1 + (annual_interest_rate / (12 * 100)),
                          trunc((least(P_check_date, add_months(due_date, 12))
                                 -due_date) / 30)) *
                    (1 + ((annual_interest_rate / (360 * 100)) *
                          mod((least(P_check_date, add_months(due_date, 12))
                               -due_date), 30)))) -
             NVL(P_amount_remaining - least(nvl(P_discount_taken, 0),
                                          P_discount_available), 0)
       INTO  C_interest_amount
       FROM  ap_payment_schedules, ap_interest_periods
      WHERE  P_sys_auto_calc_int_flag = 'Y'
        AND  P_auto_calculate_interest_flag = 'Y'
        AND  TRUNC(P_check_date) > TRUNC(due_date)
        AND  payment_num = P_payment_num
        AND  invoice_id = P_invoice_id
        AND  TRUNC(due_date+1) BETWEEN TRUNC(start_date) AND TRUNC(end_date)
        AND  (NVL(P_amount_remaining -
             least(nvl(P_discount_taken, 0), P_discount_available), 0) *
                    power(1 + (annual_interest_rate / (12 * 100)),
                          trunc((least(P_check_date, add_months(due_date, 12))
                                 -due_date) / 30)) *
                    (1 + ((annual_interest_rate / (360 * 100)) *
                          mod((least(P_check_date, add_months(due_date, 12))
                               -due_date), 30)))) -
             nvl(P_amount_remaining - least(nvl(P_discount_taken, 0),
                                       P_discount_available), 0)
                           >= C_interest_tolerance_amount;
Line: 2394

PROCEDURE ap_pay_insert_invoice_payments(
          P_reference_invoice_id          IN      NUMBER,
          P_reference_invoice_num         IN      VARCHAR2,
          P_reference_nls_int             IN      VARCHAR2,
          P_checkrun_name                 IN      VARCHAR2,
          P_vendor_id                     IN      NUMBER,
          P_vendor_site_id                IN      NUMBER,
          P_vendor_num                    IN      VARCHAR2,
          P_vendor_name                   IN      VARCHAR2,
          P_vendor_site_code              IN      VARCHAR2,
          P_address_line1                 IN      VARCHAR2,
          P_address_line2                 IN      VARCHAR2,
          P_address_line3                 IN      VARCHAR2,
          P_city                          IN      VARCHAR2,
          P_state                         IN      VARCHAR2,
          P_zip                           IN      VARCHAR2,
          P_voucher_num                   IN      VARCHAR2,
          P_ap_ccid                       IN      NUMBER,
          P_payment_priority              IN      NUMBER,
          P_province                      IN      VARCHAR2,
          P_country                       IN      VARCHAR2,
          P_withholding_status_lookup     IN      VARCHAR2,
          P_attention_ar_flag             IN      VARCHAR2,
          P_set_of_books_id               IN      NUMBER,
          P_invoice_exchange_rate         IN      NUMBER,
          P_payment_cross_rate            IN      NUMBER,
          P_customer_num                  IN      VARCHAR2,
          P_payment_num                   IN      NUMBER,
          P_last_update_date              IN      DATE,
          P_last_updated_by               IN      NUMBER,
          P_creation_date                 IN      DATE,
          P_created_by                    IN      NUMBER,
          P_invoice_date                  IN      DATE,
          P_invoice_amount                IN      NUMBER,
          P_amount_remaining              IN      NUMBER,
          P_amount_paid                   IN      NUMBER,
          P_discount_amount_taken         IN      NUMBER,
          P_due_date                      IN      DATE,
          P_invoice_description           IN      VARCHAR2,
          P_discount_amount_remaining     IN      NUMBER,
          P_payment_amount                IN      NUMBER,
          P_proposed_payment_amount       IN      NUMBER,
          P_discount_amount               IN      NUMBER,
          P_ok_to_pay_flag                IN      VARCHAR2,
          P_always_take_discount_flag     IN      VARCHAR2,
          P_amount_modified_flag          IN      VARCHAR2,
          P_original_invoice_id           IN      VARCHAR2,
          P_bank_account_num              IN      VARCHAR2,
          P_bank_account_type             IN      VARCHAR2,
          P_bank_num                      IN      VARCHAR2,
          P_original_payment_num          IN      NUMBER,
          P_sequence_num                  IN      NUMBER,
          P_pay_selected_check_id         IN      NUMBER,
          P_calling_sequence              IN      VARCHAR2,
          P_org_id                        IN      NUMBER DEFAULT NULL,
          P_last_update_login             IN      NUMBER DEFAULT NULL) IS

  current_calling_sequence        VARCHAR2(2000);
Line: 2473

  debug_info := 'Count from ap_selected_invoices for P_reference_invoice_id';
Line: 2476

    SELECT COUNT(*)
      INTO C_int_num1
      FROM ap_selected_invoices
-- CHANGES FOR BUG - 3293874 ** STARTS **
     --WHERE original_invoice_id = P_reference_invoice_id;
Line: 2492

    SELECT count(*)
      INTO C_int_num2
      FROM ap_invoice_relationships
     WHERE original_invoice_id = P_reference_invoice_id;
Line: 2513

  debug_info := 'Insert ap_selected_invoices';
Line: 2515

  INSERT INTO AP_SELECTED_INVOICES (
                checkrun_name,
                invoice_id,
                vendor_id,
                vendor_site_id,
                vendor_num,
                vendor_name,
                vendor_site_code,
                address_line1,
                address_line2,
                address_line3,
                city,
                state,
                zip,
                invoice_num,
                voucher_num,
                ap_ccid,
                payment_priority,
                province,country,
                withholding_status_lookup_code,
                attention_ar_flag,
                set_of_books_id,
                invoice_exchange_rate,
                payment_cross_rate,
                customer_num,
                payment_num,
                last_update_date,
                last_updated_by,
                creation_date,
                created_by,
                invoice_date,
                invoice_amount,
                amount_remaining,
                amount_paid,
                discount_amount_taken,
                due_date,
                invoice_description,
                discount_amount_remaining,
                payment_amount,
                proposed_payment_amount,
                discount_amount,
                ok_to_pay_flag,
                always_take_discount_flag,
                amount_modified_flag,
                original_invoice_id,
                bank_account_num,
                bank_account_type,
                bank_num,
                original_payment_num,
                sequence_num,
                pay_selected_check_id,
                org_id,
                last_update_login)
        VALUES (
                P_checkrun_name,
                ap_invoices_s.NEXTVAL,
                P_vendor_id,
                P_vendor_site_id,
                P_vendor_num,
                P_vendor_name,
                P_vendor_site_code,
                P_address_line1,
                P_address_line2,
                P_address_line3,
                P_city,
                P_state,
                P_zip,
                C_invoice_num,
                P_voucher_num,
                P_ap_ccid,
                P_payment_priority,
                P_province,
                P_country,
                P_withholding_status_lookup,
                P_attention_ar_flag,
                P_set_of_books_id,
                P_invoice_exchange_rate,
                P_payment_cross_rate,
                P_customer_num,
                P_payment_num,
                P_last_update_date,
                P_last_updated_by,
                P_creation_date,
                P_created_by,
                P_invoice_date,
                P_invoice_amount,
                P_amount_remaining,
                P_amount_paid,
                P_discount_amount_taken,
                P_due_date,
                P_invoice_description,
                P_discount_amount_remaining,
                P_payment_amount,
                P_proposed_payment_amount,
                P_discount_amount,
                P_ok_to_pay_flag,
                P_always_take_discount_flag,
                P_amount_modified_flag,
                P_original_invoice_id,
                P_bank_account_num,
                P_bank_account_type,
                P_bank_num,
                P_original_payment_num,
                P_sequence_num,
                P_pay_selected_check_id,
                P_org_id,
                P_last_update_login);
Line: 2646

END ap_pay_insert_invoice_payments;
Line: 2658

          P_last_updated_by                IN NUMBER,
          P_period_name                    IN VARCHAR2,
          P_asset_account_flag             IN VARCHAR2,
          P_calling_sequence               IN VARCHAR2,
          p_checkrun_id                    in number,
          p_completed_pmts_group_id        in number,
          p_org_id                         in number) IS

  CURSOR c_select_interest_invoices is
  SELECT new.invoice_id            P_int_invoice_id,
         new.due_date              P_accounting_date,
         pv.vendor_id              P_vendor_id,
         orig.invoice_num          P_old_invoice_num,
         new.invoice_num           P_int_invoice_num,
         new.payment_amount        P_interest_amount,
         decode(orig.invoice_currency_code, P_base_currency_code, NULL,
           decode(base.minimum_accountable_unit, null,
                  round(new.payment_amount / orig.payment_cross_rate *
                        nvl(orig.exchange_rate,1), base.precision),
                  round( ((new.payment_amount / orig.payment_cross_rate *
                        nvl(orig.exchange_rate,1)) /
                        base.minimum_accountable_unit) *
                        base.minimum_accountable_unit ) ) )
                                   P_interest_base_amount,
        orig.set_of_books_id       P_set_of_books_id,
        orig.payment_cross_rate    P_payment_cross_rate,
        orig.exchange_rate         P_exchange_rate,
        orig.exchange_rate_type    P_exchange_rate_type,
        orig.exchange_date         P_exchange_date,
        orig.invoice_id            P_invoice_id,
        orig.invoice_currency_code P_invoice_currency_code,
        orig.org_id                P_org_id
  FROM  po_vendors pv,
        ap_invoices_all orig,
        ap_selected_invoices_all new,
        fnd_currencies base,
        fnd_currencies fcinv,
        iby_fd_docs_payable_v ibydocs
 WHERE  new.original_invoice_id = orig.invoice_id --4346023, reverted 3293874
   AND  new.vendor_id = pv.vendor_id
   AND  new.checkrun_name = p_checkrun_name
   AND  new.checkrun_id = p_checkrun_id
   AND  base.currency_code = p_base_currency_code
   AND  fcinv.currency_code = orig.invoice_currency_code
   and  ibydocs.calling_app_doc_unique_ref1 = new.checkrun_id
   AND  ibydocs.calling_app_doc_unique_ref2 = new.invoice_id
   AND  ibydocs.calling_app_doc_unique_ref3 = new.payment_num
   and  ibydocs.completed_pmts_group_id = p_completed_pmts_group_id
   and  ibydocs.org_id = p_org_id
   and  new.org_id = p_org_id;
Line: 2710

  rec_select_int_invoices  c_select_interest_invoices%rowtype;
Line: 2712

  l_login_id               ap_invoice_distributions.last_update_login%TYPE;
Line: 2722

  debug_info := 'Fetch from cursor c_select_interest_invoices';
Line: 2724

  OPEN c_select_interest_invoices;
Line: 2727

      FETCH c_select_interest_invoices into rec_select_int_invoices;
Line: 2729

      EXIT WHEN c_select_interest_invoices%NOTFOUND;
Line: 2731

        AP_INTEREST_INVOICE_PKG.ap_int_inv_insert_ap_inv_dist(
          rec_select_int_invoices.P_int_invoice_id,
          rec_select_int_invoices.P_accounting_date,
          rec_select_int_invoices.P_vendor_id,
          rec_select_int_invoices.P_old_invoice_num,
          rec_select_int_invoices.P_int_invoice_num,
          rec_select_int_invoices.P_interest_amount,
          rec_select_int_invoices.P_interest_base_amount,
          P_period_name,
          rec_select_int_invoices.P_set_of_books_id,
          P_last_updated_by,
          P_interest_accts_pay_ccid,
          P_asset_account_flag,
          rec_select_int_invoices.p_payment_cross_rate,
          rec_select_int_invoices.P_exchange_rate,
          rec_select_int_invoices.P_exchange_rate_type,
          rec_select_int_invoices.P_exchange_date,
          null,
          'PAYMENTBATCH',
          null,
          rec_select_int_invoices.P_invoice_id,
          P_calling_sequence,
          rec_select_int_invoices.P_invoice_currency_code,
          P_base_currency_code,
          NULL,
          NULL,
          rec_select_int_invoices.P_org_id,
          l_login_id);
Line: 2761

    CLOSE c_select_interest_invoices;