2332: --
2333: -- bulk performance
2334: --
2335: l_balance_type_code VARCHAR2(1);
2336: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
2337: l_log_module VARCHAR2(240);
2338:
2339: --
2340: -- Upgrade strategy
2402: ') <> 'ENDORSEMENT'
2403: THEN
2404:
2405: --
2406: XLA_AE_LINES_PKG.SetNewLine;
2407:
2408: p_balance_type_code := l_balance_type_code;
2409: -- set the flag so later we will know whether the gain loss line needs to be created
2410:
2414:
2415: --
2416: -- bulk performance
2417: --
2418: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
2419: p_header_num => 0); -- 4262811
2420: --
2421: -- set accounting line options
2422: --
2419: p_header_num => 0); -- 4262811
2420: --
2421: -- set accounting line options
2422: --
2423: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
2424: p_natural_side_code => 'C'
2425: , p_gain_or_loss_flag => 'N'
2426: , p_gl_transfer_mode_code => 'S'
2427: , p_acct_entry_type_code => 'A'
2433: --
2434: --
2435: -- set accounting line type info
2436: --
2437: xla_ae_lines_pkg.SetAcctLineType
2438: (p_component_type => l_component_type
2439: ,p_event_type_code => l_event_type_code
2440: ,p_line_definition_owner_code => l_line_definition_owner_code
2441: ,p_line_definition_code => l_line_definition_code
2447: ,p_event_class_code => l_event_class_code);
2448: --
2449: -- set accounting class
2450: --
2451: xla_ae_lines_pkg.SetAcctClass(
2452: p_accounting_class_code => 'ADJ'
2453: , p_ae_header_id => l_ae_header_id
2454: );
2455:
2455:
2456: --
2457: -- set rounding class
2458: --
2459: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
2460: 'RECEIVABLE';
2461:
2462: --
2463: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2459: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
2460: 'RECEIVABLE';
2461:
2462: --
2463: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2464: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2465: --
2466: -- bulk performance
2467: --
2460: 'RECEIVABLE';
2461:
2462: --
2463: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
2464: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2465: --
2466: -- bulk performance
2467: --
2468: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2464: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
2465: --
2466: -- bulk performance
2467: --
2468: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2469:
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2471: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2472:
2466: -- bulk performance
2467: --
2468: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
2469:
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2471: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2472:
2473: -- 4955764
2474: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2470: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
2471: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
2472:
2473: -- 4955764
2474: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2475: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
2476:
2477: -- 4458381 Public Sector Enh
2478:
2504: l_rec_acct_attrs.array_num_value(10) := p_source_26;
2505: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
2506: l_rec_acct_attrs.array_char_value(11) := p_source_27;
2507:
2508: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2509: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2510:
2511: ---------------------------------------------------------------------------------------------------------------
2512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2505: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
2506: l_rec_acct_attrs.array_char_value(11) := p_source_27;
2507:
2508: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2509: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2510:
2511: ---------------------------------------------------------------------------------------------------------------
2512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2513: ---------------------------------------------------------------------------------------------------------------
2508: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
2509: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
2510:
2511: ---------------------------------------------------------------------------------------------------------------
2512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2513: ---------------------------------------------------------------------------------------------------------------
2514: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2515:
2516: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2510:
2511: ---------------------------------------------------------------------------------------------------------------
2512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2513: ---------------------------------------------------------------------------------------------------------------
2514: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2515:
2516: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2517: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2518:
2512: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
2513: ---------------------------------------------------------------------------------------------------------------
2514: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2515:
2516: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2517: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2518:
2519: IF xla_accounting_cache_pkg.GetValueChar
2520: (p_source_code => 'LEDGER_CATEGORY_CODE'
2513: ---------------------------------------------------------------------------------------------------------------
2514: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
2515:
2516: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2517: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
2518:
2519: IF xla_accounting_cache_pkg.GetValueChar
2520: (p_source_code => 'LEDGER_CATEGORY_CODE'
2521: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
2524: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
2525: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
2526: )
2527: THEN
2528: xla_ae_lines_pkg.BflowUpgEntry
2529: (p_business_method_code => l_bflow_method_code
2530: ,p_business_class_code => l_bflow_class_code
2531: ,p_balance_type => l_balance_type_code);
2532: ELSE
2564: , x_value_type_code => l_adr_value_type_code
2565: , p_side => 'NA'
2566: );
2567:
2568: xla_ae_lines_pkg.set_ccid(
2569: p_code_combination_id => l_ccid
2570: , p_value_type_code => l_adr_value_type_code
2571: , p_transaction_coa_id => l_adr_transaction_coa_id
2572: , p_accounting_coa_id => l_adr_accounting_coa_id
2600: xla_accounting_err_pkg.build_message
2601: (p_appli_s_name => 'XLA'
2602: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
2603: ,p_token_1 => 'LINE_NUMBER'
2604: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
2605: ,p_token_2 => 'LINE_TYPE_NAME'
2606: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
2607: l_component_type
2608: ,l_component_code
2636: --
2637: --
2638: ------------------------------------------------------------------------------------------------
2639: -- 4219869 Business Flow
2640: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
2641: -- Prior Entry. Currently, the following code is always generated.
2642: ------------------------------------------------------------------------------------------------
2643: XLA_AE_LINES_PKG.ValidateCurrentLine;
2644:
2639: -- 4219869 Business Flow
2640: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
2641: -- Prior Entry. Currently, the following code is always generated.
2642: ------------------------------------------------------------------------------------------------
2643: XLA_AE_LINES_PKG.ValidateCurrentLine;
2644:
2645: ------------------------------------------------------------------------------------
2646: -- 4219869 Business Flow
2647: -- Populated credit and debit amounts -- Need to generate this within IF
2645: ------------------------------------------------------------------------------------
2646: -- 4219869 Business Flow
2647: -- Populated credit and debit amounts -- Need to generate this within IF
2648: ------------------------------------------------------------------------------------
2649: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
2650:
2651: ----------------------------------------------------------------------------------
2652: -- 4219869 Business Flow
2653: -- Update journal entry status -- Need to generate this within IF
2677: -- To allow MPA report to determine if it should generate report process
2678: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
2679: ------------------------------------------------------------------------------------------
2680:
2681: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
2682: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
2683: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
2684: -- call ADRs
2685: -- Bug 4922099
2678: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
2679: ------------------------------------------------------------------------------------------
2680:
2681: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
2682: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
2683: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
2684: -- call ADRs
2685: -- Bug 4922099
2686: --
2702: , x_value_type_code => l_adr_value_type_code
2703: , p_side => 'NA'
2704: );
2705:
2706: xla_ae_lines_pkg.set_ccid(
2707: p_code_combination_id => l_ccid
2708: , p_value_type_code => l_adr_value_type_code
2709: , p_transaction_coa_id => l_adr_transaction_coa_id
2710: , p_accounting_coa_id => l_adr_accounting_coa_id
2725:
2726: --
2727: -- Update the line information that should be overwritten
2728: --
2729: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
2730: p_header_num => 1);
2731: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
2732:
2733: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
2727: -- Update the line information that should be overwritten
2728: --
2729: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
2730: p_header_num => 1);
2731: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
2732:
2733: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
2734:
2735: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
2729: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
2730: p_header_num => 1);
2731: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
2732:
2733: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
2734:
2735: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
2736: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
2737: END IF;
2732:
2733: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
2734:
2735: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
2736: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
2737: END IF;
2738:
2739: --
2740: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
2739: --
2740: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
2741: --
2742: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
2743: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
2744: ELSE
2745: ---------------------------------------------------------------------------------------------------
2746: -- 4262811a Switch Sign
2747: ---------------------------------------------------------------------------------------------------
2744: ELSE
2745: ---------------------------------------------------------------------------------------------------
2746: -- 4262811a Switch Sign
2747: ---------------------------------------------------------------------------------------------------
2748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2745: ---------------------------------------------------------------------------------------------------
2746: -- 4262811a Switch Sign
2747: ---------------------------------------------------------------------------------------------------
2748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2753: -- 5132302
2746: -- 4262811a Switch Sign
2747: ---------------------------------------------------------------------------------------------------
2748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2753: -- 5132302
2754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2747: ---------------------------------------------------------------------------------------------------
2748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2753: -- 5132302
2754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2748: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
2749: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2753: -- 5132302
2754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2756:
2750: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2753: -- 5132302
2754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2756:
2757: END IF;
2758:
2751: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
2752: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2753: -- 5132302
2754: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
2755: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
2756:
2757: END IF;
2758:
2759: -- 4955764
2756:
2757: END IF;
2758:
2759: -- 4955764
2760: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2761: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
2762:
2763:
2764: XLA_AE_LINES_PKG.ValidateCurrentLine;
2760: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
2761: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
2762:
2763:
2764: XLA_AE_LINES_PKG.ValidateCurrentLine;
2765: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
2766:
2767: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
2768: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
2761: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
2762:
2763:
2764: XLA_AE_LINES_PKG.ValidateCurrentLine;
2765: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
2766:
2767: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
2768: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
2769: ,p_balance_type_code => l_balance_type_code);
2902: --
2903: -- bulk performance
2904: --
2905: l_balance_type_code VARCHAR2(1);
2906: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
2907: l_log_module VARCHAR2(240);
2908:
2909: --
2910: -- Upgrade strategy
2972: ') = 'ENDORSEMENT'
2973: THEN
2974:
2975: --
2976: XLA_AE_LINES_PKG.SetNewLine;
2977:
2978: p_balance_type_code := l_balance_type_code;
2979: -- set the flag so later we will know whether the gain loss line needs to be created
2980:
2984:
2985: --
2986: -- bulk performance
2987: --
2988: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
2989: p_header_num => 0); -- 4262811
2990: --
2991: -- set accounting line options
2992: --
2989: p_header_num => 0); -- 4262811
2990: --
2991: -- set accounting line options
2992: --
2993: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
2994: p_natural_side_code => 'C'
2995: , p_gain_or_loss_flag => 'N'
2996: , p_gl_transfer_mode_code => 'S'
2997: , p_acct_entry_type_code => 'A'
3003: --
3004: --
3005: -- set accounting line type info
3006: --
3007: xla_ae_lines_pkg.SetAcctLineType
3008: (p_component_type => l_component_type
3009: ,p_event_type_code => l_event_type_code
3010: ,p_line_definition_owner_code => l_line_definition_owner_code
3011: ,p_line_definition_code => l_line_definition_code
3017: ,p_event_class_code => l_event_class_code);
3018: --
3019: -- set accounting class
3020: --
3021: xla_ae_lines_pkg.SetAcctClass(
3022: p_accounting_class_code => 'ENDORSEMENT'
3023: , p_ae_header_id => l_ae_header_id
3024: );
3025:
3025:
3026: --
3027: -- set rounding class
3028: --
3029: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3030: 'RECEIVABLE';
3031:
3032: --
3033: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3029: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3030: 'RECEIVABLE';
3031:
3032: --
3033: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3034: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3035: --
3036: -- bulk performance
3037: --
3030: 'RECEIVABLE';
3031:
3032: --
3033: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3034: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3035: --
3036: -- bulk performance
3037: --
3038: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3034: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3035: --
3036: -- bulk performance
3037: --
3038: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3039:
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3041: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3042:
3036: -- bulk performance
3037: --
3038: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3039:
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3041: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3042:
3043: -- 4955764
3044: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3040: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3041: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3042:
3043: -- 4955764
3044: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3045: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
3046:
3047: -- 4458381 Public Sector Enh
3048:
3074: l_rec_acct_attrs.array_num_value(10) := p_source_26;
3075: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3076: l_rec_acct_attrs.array_char_value(11) := p_source_27;
3077:
3078: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3079: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3080:
3081: ---------------------------------------------------------------------------------------------------------------
3082: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3075: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3076: l_rec_acct_attrs.array_char_value(11) := p_source_27;
3077:
3078: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3079: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3080:
3081: ---------------------------------------------------------------------------------------------------------------
3082: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3083: ---------------------------------------------------------------------------------------------------------------
3078: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3079: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3080:
3081: ---------------------------------------------------------------------------------------------------------------
3082: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3083: ---------------------------------------------------------------------------------------------------------------
3084: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3085:
3086: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3080:
3081: ---------------------------------------------------------------------------------------------------------------
3082: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3083: ---------------------------------------------------------------------------------------------------------------
3084: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3085:
3086: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3087: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3088:
3082: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3083: ---------------------------------------------------------------------------------------------------------------
3084: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3085:
3086: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3087: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3088:
3089: IF xla_accounting_cache_pkg.GetValueChar
3090: (p_source_code => 'LEDGER_CATEGORY_CODE'
3083: ---------------------------------------------------------------------------------------------------------------
3084: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3085:
3086: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3087: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3088:
3089: IF xla_accounting_cache_pkg.GetValueChar
3090: (p_source_code => 'LEDGER_CATEGORY_CODE'
3091: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
3094: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
3095: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
3096: )
3097: THEN
3098: xla_ae_lines_pkg.BflowUpgEntry
3099: (p_business_method_code => l_bflow_method_code
3100: ,p_business_class_code => l_bflow_class_code
3101: ,p_balance_type => l_balance_type_code);
3102: ELSE
3134: , x_value_type_code => l_adr_value_type_code
3135: , p_side => 'NA'
3136: );
3137:
3138: xla_ae_lines_pkg.set_ccid(
3139: p_code_combination_id => l_ccid
3140: , p_value_type_code => l_adr_value_type_code
3141: , p_transaction_coa_id => l_adr_transaction_coa_id
3142: , p_accounting_coa_id => l_adr_accounting_coa_id
3170: xla_accounting_err_pkg.build_message
3171: (p_appli_s_name => 'XLA'
3172: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
3173: ,p_token_1 => 'LINE_NUMBER'
3174: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
3175: ,p_token_2 => 'LINE_TYPE_NAME'
3176: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
3177: l_component_type
3178: ,l_component_code
3206: --
3207: --
3208: ------------------------------------------------------------------------------------------------
3209: -- 4219869 Business Flow
3210: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
3211: -- Prior Entry. Currently, the following code is always generated.
3212: ------------------------------------------------------------------------------------------------
3213: XLA_AE_LINES_PKG.ValidateCurrentLine;
3214:
3209: -- 4219869 Business Flow
3210: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
3211: -- Prior Entry. Currently, the following code is always generated.
3212: ------------------------------------------------------------------------------------------------
3213: XLA_AE_LINES_PKG.ValidateCurrentLine;
3214:
3215: ------------------------------------------------------------------------------------
3216: -- 4219869 Business Flow
3217: -- Populated credit and debit amounts -- Need to generate this within IF
3215: ------------------------------------------------------------------------------------
3216: -- 4219869 Business Flow
3217: -- Populated credit and debit amounts -- Need to generate this within IF
3218: ------------------------------------------------------------------------------------
3219: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3220:
3221: ----------------------------------------------------------------------------------
3222: -- 4219869 Business Flow
3223: -- Update journal entry status -- Need to generate this within IF
3247: -- To allow MPA report to determine if it should generate report process
3248: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
3249: ------------------------------------------------------------------------------------------
3250:
3251: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
3252: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
3253: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
3254: -- call ADRs
3255: -- Bug 4922099
3248: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
3249: ------------------------------------------------------------------------------------------
3250:
3251: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
3252: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
3253: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
3254: -- call ADRs
3255: -- Bug 4922099
3256: --
3272: , x_value_type_code => l_adr_value_type_code
3273: , p_side => 'NA'
3274: );
3275:
3276: xla_ae_lines_pkg.set_ccid(
3277: p_code_combination_id => l_ccid
3278: , p_value_type_code => l_adr_value_type_code
3279: , p_transaction_coa_id => l_adr_transaction_coa_id
3280: , p_accounting_coa_id => l_adr_accounting_coa_id
3295:
3296: --
3297: -- Update the line information that should be overwritten
3298: --
3299: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3300: p_header_num => 1);
3301: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3302:
3303: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3297: -- Update the line information that should be overwritten
3298: --
3299: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3300: p_header_num => 1);
3301: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3302:
3303: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3304:
3305: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3299: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3300: p_header_num => 1);
3301: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3302:
3303: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3304:
3305: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3306: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3307: END IF;
3302:
3303: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3304:
3305: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3306: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3307: END IF;
3308:
3309: --
3310: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3309: --
3310: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3311: --
3312: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
3313: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
3314: ELSE
3315: ---------------------------------------------------------------------------------------------------
3316: -- 4262811a Switch Sign
3317: ---------------------------------------------------------------------------------------------------
3314: ELSE
3315: ---------------------------------------------------------------------------------------------------
3316: -- 4262811a Switch Sign
3317: ---------------------------------------------------------------------------------------------------
3318: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3315: ---------------------------------------------------------------------------------------------------
3316: -- 4262811a Switch Sign
3317: ---------------------------------------------------------------------------------------------------
3318: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3323: -- 5132302
3316: -- 4262811a Switch Sign
3317: ---------------------------------------------------------------------------------------------------
3318: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3323: -- 5132302
3324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3317: ---------------------------------------------------------------------------------------------------
3318: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3323: -- 5132302
3324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3318: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3323: -- 5132302
3324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3326:
3320: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3323: -- 5132302
3324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3326:
3327: END IF;
3328:
3321: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3322: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3323: -- 5132302
3324: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3325: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3326:
3327: END IF;
3328:
3329: -- 4955764
3326:
3327: END IF;
3328:
3329: -- 4955764
3330: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3331: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3332:
3333:
3334: XLA_AE_LINES_PKG.ValidateCurrentLine;
3330: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3331: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3332:
3333:
3334: XLA_AE_LINES_PKG.ValidateCurrentLine;
3335: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3336:
3337: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3338: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3331: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3332:
3333:
3334: XLA_AE_LINES_PKG.ValidateCurrentLine;
3335: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3336:
3337: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3338: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3339: ,p_balance_type_code => l_balance_type_code);
3470: --
3471: -- bulk performance
3472: --
3473: l_balance_type_code VARCHAR2(1);
3474: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
3475: l_log_module VARCHAR2(240);
3476:
3477: --
3478: -- Upgrade strategy
3540: ') = 'FINCHRG_NON_REC_TAX'
3541: THEN
3542:
3543: --
3544: XLA_AE_LINES_PKG.SetNewLine;
3545:
3546: p_balance_type_code := l_balance_type_code;
3547: -- set the flag so later we will know whether the gain loss line needs to be created
3548:
3552:
3553: --
3554: -- bulk performance
3555: --
3556: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
3557: p_header_num => 0); -- 4262811
3558: --
3559: -- set accounting line options
3560: --
3557: p_header_num => 0); -- 4262811
3558: --
3559: -- set accounting line options
3560: --
3561: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
3562: p_natural_side_code => 'C'
3563: , p_gain_or_loss_flag => 'N'
3564: , p_gl_transfer_mode_code => 'S'
3565: , p_acct_entry_type_code => 'A'
3571: --
3572: --
3573: -- set accounting line type info
3574: --
3575: xla_ae_lines_pkg.SetAcctLineType
3576: (p_component_type => l_component_type
3577: ,p_event_type_code => l_event_type_code
3578: ,p_line_definition_owner_code => l_line_definition_owner_code
3579: ,p_line_definition_code => l_line_definition_code
3585: ,p_event_class_code => l_event_class_code);
3586: --
3587: -- set accounting class
3588: --
3589: xla_ae_lines_pkg.SetAcctClass(
3590: p_accounting_class_code => 'CHARGES'
3591: , p_ae_header_id => l_ae_header_id
3592: );
3593:
3593:
3594: --
3595: -- set rounding class
3596: --
3597: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3598: 'RECEIVABLE';
3599:
3600: --
3601: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3597: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
3598: 'RECEIVABLE';
3599:
3600: --
3601: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3602: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3603: --
3604: -- bulk performance
3605: --
3598: 'RECEIVABLE';
3599:
3600: --
3601: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
3602: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3603: --
3604: -- bulk performance
3605: --
3606: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3602: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
3603: --
3604: -- bulk performance
3605: --
3606: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3607:
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3609: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3610:
3604: -- bulk performance
3605: --
3606: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
3607:
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3609: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3610:
3611: -- 4955764
3612: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3608: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
3609: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
3610:
3611: -- 4955764
3612: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3613: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
3614:
3615: -- 4458381 Public Sector Enh
3616:
3642: l_rec_acct_attrs.array_num_value(10) := p_source_26;
3643: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3644: l_rec_acct_attrs.array_char_value(11) := p_source_27;
3645:
3646: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3647: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3648:
3649: ---------------------------------------------------------------------------------------------------------------
3650: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3643: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
3644: l_rec_acct_attrs.array_char_value(11) := p_source_27;
3645:
3646: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3647: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3648:
3649: ---------------------------------------------------------------------------------------------------------------
3650: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3651: ---------------------------------------------------------------------------------------------------------------
3646: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
3647: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
3648:
3649: ---------------------------------------------------------------------------------------------------------------
3650: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3651: ---------------------------------------------------------------------------------------------------------------
3652: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3653:
3654: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3648:
3649: ---------------------------------------------------------------------------------------------------------------
3650: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3651: ---------------------------------------------------------------------------------------------------------------
3652: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3653:
3654: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3655: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3656:
3650: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
3651: ---------------------------------------------------------------------------------------------------------------
3652: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3653:
3654: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3655: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3656:
3657: IF xla_accounting_cache_pkg.GetValueChar
3658: (p_source_code => 'LEDGER_CATEGORY_CODE'
3651: ---------------------------------------------------------------------------------------------------------------
3652: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
3653:
3654: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3655: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
3656:
3657: IF xla_accounting_cache_pkg.GetValueChar
3658: (p_source_code => 'LEDGER_CATEGORY_CODE'
3659: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
3662: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
3663: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
3664: )
3665: THEN
3666: xla_ae_lines_pkg.BflowUpgEntry
3667: (p_business_method_code => l_bflow_method_code
3668: ,p_business_class_code => l_bflow_class_code
3669: ,p_balance_type => l_balance_type_code);
3670: ELSE
3702: , x_value_type_code => l_adr_value_type_code
3703: , p_side => 'NA'
3704: );
3705:
3706: xla_ae_lines_pkg.set_ccid(
3707: p_code_combination_id => l_ccid
3708: , p_value_type_code => l_adr_value_type_code
3709: , p_transaction_coa_id => l_adr_transaction_coa_id
3710: , p_accounting_coa_id => l_adr_accounting_coa_id
3738: xla_accounting_err_pkg.build_message
3739: (p_appli_s_name => 'XLA'
3740: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
3741: ,p_token_1 => 'LINE_NUMBER'
3742: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
3743: ,p_token_2 => 'LINE_TYPE_NAME'
3744: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
3745: l_component_type
3746: ,l_component_code
3774: --
3775: --
3776: ------------------------------------------------------------------------------------------------
3777: -- 4219869 Business Flow
3778: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
3779: -- Prior Entry. Currently, the following code is always generated.
3780: ------------------------------------------------------------------------------------------------
3781: XLA_AE_LINES_PKG.ValidateCurrentLine;
3782:
3777: -- 4219869 Business Flow
3778: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
3779: -- Prior Entry. Currently, the following code is always generated.
3780: ------------------------------------------------------------------------------------------------
3781: XLA_AE_LINES_PKG.ValidateCurrentLine;
3782:
3783: ------------------------------------------------------------------------------------
3784: -- 4219869 Business Flow
3785: -- Populated credit and debit amounts -- Need to generate this within IF
3783: ------------------------------------------------------------------------------------
3784: -- 4219869 Business Flow
3785: -- Populated credit and debit amounts -- Need to generate this within IF
3786: ------------------------------------------------------------------------------------
3787: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3788:
3789: ----------------------------------------------------------------------------------
3790: -- 4219869 Business Flow
3791: -- Update journal entry status -- Need to generate this within IF
3815: -- To allow MPA report to determine if it should generate report process
3816: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
3817: ------------------------------------------------------------------------------------------
3818:
3819: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
3820: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
3821: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
3822: -- call ADRs
3823: -- Bug 4922099
3816: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
3817: ------------------------------------------------------------------------------------------
3818:
3819: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
3820: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
3821: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
3822: -- call ADRs
3823: -- Bug 4922099
3824: --
3840: , x_value_type_code => l_adr_value_type_code
3841: , p_side => 'NA'
3842: );
3843:
3844: xla_ae_lines_pkg.set_ccid(
3845: p_code_combination_id => l_ccid
3846: , p_value_type_code => l_adr_value_type_code
3847: , p_transaction_coa_id => l_adr_transaction_coa_id
3848: , p_accounting_coa_id => l_adr_accounting_coa_id
3863:
3864: --
3865: -- Update the line information that should be overwritten
3866: --
3867: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3868: p_header_num => 1);
3869: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3870:
3871: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3865: -- Update the line information that should be overwritten
3866: --
3867: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3868: p_header_num => 1);
3869: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3870:
3871: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3872:
3873: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3867: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
3868: p_header_num => 1);
3869: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
3870:
3871: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3872:
3873: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3874: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3875: END IF;
3870:
3871: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
3872:
3873: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
3874: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
3875: END IF;
3876:
3877: --
3878: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3877: --
3878: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
3879: --
3880: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
3881: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
3882: ELSE
3883: ---------------------------------------------------------------------------------------------------
3884: -- 4262811a Switch Sign
3885: ---------------------------------------------------------------------------------------------------
3882: ELSE
3883: ---------------------------------------------------------------------------------------------------
3884: -- 4262811a Switch Sign
3885: ---------------------------------------------------------------------------------------------------
3886: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3887: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3889: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3883: ---------------------------------------------------------------------------------------------------
3884: -- 4262811a Switch Sign
3885: ---------------------------------------------------------------------------------------------------
3886: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3887: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3889: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3891: -- 5132302
3884: -- 4262811a Switch Sign
3885: ---------------------------------------------------------------------------------------------------
3886: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3887: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3889: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3891: -- 5132302
3892: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3885: ---------------------------------------------------------------------------------------------------
3886: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3887: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3889: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3891: -- 5132302
3892: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3886: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
3887: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3889: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3891: -- 5132302
3892: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3894:
3888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3889: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3891: -- 5132302
3892: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3894:
3895: END IF;
3896:
3889: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
3890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3891: -- 5132302
3892: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
3893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
3894:
3895: END IF;
3896:
3897: -- 4955764
3894:
3895: END IF;
3896:
3897: -- 4955764
3898: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3899: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3900:
3901:
3902: XLA_AE_LINES_PKG.ValidateCurrentLine;
3898: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
3899: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3900:
3901:
3902: XLA_AE_LINES_PKG.ValidateCurrentLine;
3903: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3904:
3905: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3906: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3899: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
3900:
3901:
3902: XLA_AE_LINES_PKG.ValidateCurrentLine;
3903: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
3904:
3905: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
3906: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
3907: ,p_balance_type_code => l_balance_type_code);
4038: --
4039: -- bulk performance
4040: --
4041: l_balance_type_code VARCHAR2(1);
4042: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
4043: l_log_module VARCHAR2(240);
4044:
4045: --
4046: -- Upgrade strategy
4106: ') = 'TAX'
4107: THEN
4108:
4109: --
4110: XLA_AE_LINES_PKG.SetNewLine;
4111:
4112: p_balance_type_code := l_balance_type_code;
4113: -- set the flag so later we will know whether the gain loss line needs to be created
4114:
4118:
4119: --
4120: -- bulk performance
4121: --
4122: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
4123: p_header_num => 0); -- 4262811
4124: --
4125: -- set accounting line options
4126: --
4123: p_header_num => 0); -- 4262811
4124: --
4125: -- set accounting line options
4126: --
4127: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
4128: p_natural_side_code => 'C'
4129: , p_gain_or_loss_flag => 'N'
4130: , p_gl_transfer_mode_code => 'S'
4131: , p_acct_entry_type_code => 'A'
4137: --
4138: --
4139: -- set accounting line type info
4140: --
4141: xla_ae_lines_pkg.SetAcctLineType
4142: (p_component_type => l_component_type
4143: ,p_event_type_code => l_event_type_code
4144: ,p_line_definition_owner_code => l_line_definition_owner_code
4145: ,p_line_definition_code => l_line_definition_code
4151: ,p_event_class_code => l_event_class_code);
4152: --
4153: -- set accounting class
4154: --
4155: xla_ae_lines_pkg.SetAcctClass(
4156: p_accounting_class_code => 'TAX'
4157: , p_ae_header_id => l_ae_header_id
4158: );
4159:
4159:
4160: --
4161: -- set rounding class
4162: --
4163: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4164: 'RECEIVABLE';
4165:
4166: --
4167: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4163: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4164: 'RECEIVABLE';
4165:
4166: --
4167: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4168: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4169: --
4170: -- bulk performance
4171: --
4164: 'RECEIVABLE';
4165:
4166: --
4167: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4168: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4169: --
4170: -- bulk performance
4171: --
4172: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4168: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4169: --
4170: -- bulk performance
4171: --
4172: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4173:
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4175: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4176:
4170: -- bulk performance
4171: --
4172: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4173:
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4175: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4176:
4177: -- 4955764
4178: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4174: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4175: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4176:
4177: -- 4955764
4178: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4179: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
4180:
4181: -- 4458381 Public Sector Enh
4182:
4208: l_rec_acct_attrs.array_num_value(10) := p_source_26;
4209: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4210: l_rec_acct_attrs.array_char_value(11) := p_source_27;
4211:
4212: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4213: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4214:
4215: ---------------------------------------------------------------------------------------------------------------
4216: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4209: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4210: l_rec_acct_attrs.array_char_value(11) := p_source_27;
4211:
4212: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4213: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4214:
4215: ---------------------------------------------------------------------------------------------------------------
4216: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4217: ---------------------------------------------------------------------------------------------------------------
4212: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4213: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4214:
4215: ---------------------------------------------------------------------------------------------------------------
4216: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4217: ---------------------------------------------------------------------------------------------------------------
4218: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4219:
4220: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4214:
4215: ---------------------------------------------------------------------------------------------------------------
4216: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4217: ---------------------------------------------------------------------------------------------------------------
4218: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4219:
4220: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4221: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4222:
4216: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4217: ---------------------------------------------------------------------------------------------------------------
4218: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4219:
4220: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4221: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4222:
4223: IF xla_accounting_cache_pkg.GetValueChar
4224: (p_source_code => 'LEDGER_CATEGORY_CODE'
4217: ---------------------------------------------------------------------------------------------------------------
4218: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4219:
4220: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4221: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4222:
4223: IF xla_accounting_cache_pkg.GetValueChar
4224: (p_source_code => 'LEDGER_CATEGORY_CODE'
4225: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
4228: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
4229: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
4230: )
4231: THEN
4232: xla_ae_lines_pkg.BflowUpgEntry
4233: (p_business_method_code => l_bflow_method_code
4234: ,p_business_class_code => l_bflow_class_code
4235: ,p_balance_type => l_balance_type_code);
4236: ELSE
4268: , x_value_type_code => l_adr_value_type_code
4269: , p_side => 'NA'
4270: );
4271:
4272: xla_ae_lines_pkg.set_ccid(
4273: p_code_combination_id => l_ccid
4274: , p_value_type_code => l_adr_value_type_code
4275: , p_transaction_coa_id => l_adr_transaction_coa_id
4276: , p_accounting_coa_id => l_adr_accounting_coa_id
4304: xla_accounting_err_pkg.build_message
4305: (p_appli_s_name => 'XLA'
4306: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
4307: ,p_token_1 => 'LINE_NUMBER'
4308: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
4309: ,p_token_2 => 'LINE_TYPE_NAME'
4310: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
4311: l_component_type
4312: ,l_component_code
4340: --
4341: --
4342: ------------------------------------------------------------------------------------------------
4343: -- 4219869 Business Flow
4344: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4345: -- Prior Entry. Currently, the following code is always generated.
4346: ------------------------------------------------------------------------------------------------
4347: XLA_AE_LINES_PKG.ValidateCurrentLine;
4348:
4343: -- 4219869 Business Flow
4344: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4345: -- Prior Entry. Currently, the following code is always generated.
4346: ------------------------------------------------------------------------------------------------
4347: XLA_AE_LINES_PKG.ValidateCurrentLine;
4348:
4349: ------------------------------------------------------------------------------------
4350: -- 4219869 Business Flow
4351: -- Populated credit and debit amounts -- Need to generate this within IF
4349: ------------------------------------------------------------------------------------
4350: -- 4219869 Business Flow
4351: -- Populated credit and debit amounts -- Need to generate this within IF
4352: ------------------------------------------------------------------------------------
4353: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4354:
4355: ----------------------------------------------------------------------------------
4356: -- 4219869 Business Flow
4357: -- Update journal entry status -- Need to generate this within IF
4381: -- To allow MPA report to determine if it should generate report process
4382: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4383: ------------------------------------------------------------------------------------------
4384:
4385: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4386: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4387: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4388: -- call ADRs
4389: -- Bug 4922099
4382: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4383: ------------------------------------------------------------------------------------------
4384:
4385: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4386: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4387: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4388: -- call ADRs
4389: -- Bug 4922099
4390: --
4406: , x_value_type_code => l_adr_value_type_code
4407: , p_side => 'NA'
4408: );
4409:
4410: xla_ae_lines_pkg.set_ccid(
4411: p_code_combination_id => l_ccid
4412: , p_value_type_code => l_adr_value_type_code
4413: , p_transaction_coa_id => l_adr_transaction_coa_id
4414: , p_accounting_coa_id => l_adr_accounting_coa_id
4429:
4430: --
4431: -- Update the line information that should be overwritten
4432: --
4433: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4434: p_header_num => 1);
4435: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4436:
4437: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4431: -- Update the line information that should be overwritten
4432: --
4433: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4434: p_header_num => 1);
4435: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4436:
4437: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4438:
4439: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4433: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
4434: p_header_num => 1);
4435: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
4436:
4437: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4438:
4439: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4440: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4441: END IF;
4436:
4437: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4438:
4439: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4440: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
4441: END IF;
4442:
4443: --
4444: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4443: --
4444: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
4445: --
4446: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
4447: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
4448: ELSE
4449: ---------------------------------------------------------------------------------------------------
4450: -- 4262811a Switch Sign
4451: ---------------------------------------------------------------------------------------------------
4448: ELSE
4449: ---------------------------------------------------------------------------------------------------
4450: -- 4262811a Switch Sign
4451: ---------------------------------------------------------------------------------------------------
4452: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4453: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4455: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4449: ---------------------------------------------------------------------------------------------------
4450: -- 4262811a Switch Sign
4451: ---------------------------------------------------------------------------------------------------
4452: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4453: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4455: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4457: -- 5132302
4450: -- 4262811a Switch Sign
4451: ---------------------------------------------------------------------------------------------------
4452: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4453: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4455: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4457: -- 5132302
4458: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4451: ---------------------------------------------------------------------------------------------------
4452: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4453: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4455: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4457: -- 5132302
4458: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4452: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
4453: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4455: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4457: -- 5132302
4458: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4460:
4454: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4455: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4457: -- 5132302
4458: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4460:
4461: END IF;
4462:
4455: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
4456: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4457: -- 5132302
4458: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
4459: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
4460:
4461: END IF;
4462:
4463: -- 4955764
4460:
4461: END IF;
4462:
4463: -- 4955764
4464: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4465: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4466:
4467:
4468: XLA_AE_LINES_PKG.ValidateCurrentLine;
4464: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4465: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4466:
4467:
4468: XLA_AE_LINES_PKG.ValidateCurrentLine;
4469: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4470:
4471: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4472: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4465: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
4466:
4467:
4468: XLA_AE_LINES_PKG.ValidateCurrentLine;
4469: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4470:
4471: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
4472: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
4473: ,p_balance_type_code => l_balance_type_code);
4604: --
4605: -- bulk performance
4606: --
4607: l_balance_type_code VARCHAR2(1);
4608: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
4609: l_log_module VARCHAR2(240);
4610:
4611: --
4612: -- Upgrade strategy
4672: ') = 'REC'
4673: THEN
4674:
4675: --
4676: XLA_AE_LINES_PKG.SetNewLine;
4677:
4678: p_balance_type_code := l_balance_type_code;
4679: -- set the flag so later we will know whether the gain loss line needs to be created
4680:
4684:
4685: --
4686: -- bulk performance
4687: --
4688: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
4689: p_header_num => 0); -- 4262811
4690: --
4691: -- set accounting line options
4692: --
4689: p_header_num => 0); -- 4262811
4690: --
4691: -- set accounting line options
4692: --
4693: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
4694: p_natural_side_code => 'D'
4695: , p_gain_or_loss_flag => 'N'
4696: , p_gl_transfer_mode_code => 'S'
4697: , p_acct_entry_type_code => 'A'
4703: --
4704: --
4705: -- set accounting line type info
4706: --
4707: xla_ae_lines_pkg.SetAcctLineType
4708: (p_component_type => l_component_type
4709: ,p_event_type_code => l_event_type_code
4710: ,p_line_definition_owner_code => l_line_definition_owner_code
4711: ,p_line_definition_code => l_line_definition_code
4717: ,p_event_class_code => l_event_class_code);
4718: --
4719: -- set accounting class
4720: --
4721: xla_ae_lines_pkg.SetAcctClass(
4722: p_accounting_class_code => 'RECEIVABLE'
4723: , p_ae_header_id => l_ae_header_id
4724: );
4725:
4725:
4726: --
4727: -- set rounding class
4728: --
4729: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4730: 'RECEIVABLE';
4731:
4732: --
4733: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4729: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
4730: 'RECEIVABLE';
4731:
4732: --
4733: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4734: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4735: --
4736: -- bulk performance
4737: --
4730: 'RECEIVABLE';
4731:
4732: --
4733: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
4734: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4735: --
4736: -- bulk performance
4737: --
4738: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4734: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
4735: --
4736: -- bulk performance
4737: --
4738: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4739:
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4741: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4742:
4736: -- bulk performance
4737: --
4738: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
4739:
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4741: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4742:
4743: -- 4955764
4744: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4740: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
4741: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
4742:
4743: -- 4955764
4744: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
4745: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
4746:
4747: -- 4458381 Public Sector Enh
4748:
4774: l_rec_acct_attrs.array_num_value(10) := p_source_26;
4775: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4776: l_rec_acct_attrs.array_char_value(11) := p_source_27;
4777:
4778: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4779: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4780:
4781: ---------------------------------------------------------------------------------------------------------------
4782: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4775: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
4776: l_rec_acct_attrs.array_char_value(11) := p_source_27;
4777:
4778: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4779: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4780:
4781: ---------------------------------------------------------------------------------------------------------------
4782: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4783: ---------------------------------------------------------------------------------------------------------------
4778: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
4779: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
4780:
4781: ---------------------------------------------------------------------------------------------------------------
4782: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4783: ---------------------------------------------------------------------------------------------------------------
4784: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4785:
4786: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4780:
4781: ---------------------------------------------------------------------------------------------------------------
4782: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4783: ---------------------------------------------------------------------------------------------------------------
4784: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4785:
4786: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4787: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4788:
4782: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
4783: ---------------------------------------------------------------------------------------------------------------
4784: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4785:
4786: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4787: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4788:
4789: IF xla_accounting_cache_pkg.GetValueChar
4790: (p_source_code => 'LEDGER_CATEGORY_CODE'
4783: ---------------------------------------------------------------------------------------------------------------
4784: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
4785:
4786: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4787: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
4788:
4789: IF xla_accounting_cache_pkg.GetValueChar
4790: (p_source_code => 'LEDGER_CATEGORY_CODE'
4791: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
4794: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
4795: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
4796: )
4797: THEN
4798: xla_ae_lines_pkg.BflowUpgEntry
4799: (p_business_method_code => l_bflow_method_code
4800: ,p_business_class_code => l_bflow_class_code
4801: ,p_balance_type => l_balance_type_code);
4802: ELSE
4834: , x_value_type_code => l_adr_value_type_code
4835: , p_side => 'NA'
4836: );
4837:
4838: xla_ae_lines_pkg.set_ccid(
4839: p_code_combination_id => l_ccid
4840: , p_value_type_code => l_adr_value_type_code
4841: , p_transaction_coa_id => l_adr_transaction_coa_id
4842: , p_accounting_coa_id => l_adr_accounting_coa_id
4870: xla_accounting_err_pkg.build_message
4871: (p_appli_s_name => 'XLA'
4872: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
4873: ,p_token_1 => 'LINE_NUMBER'
4874: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
4875: ,p_token_2 => 'LINE_TYPE_NAME'
4876: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
4877: l_component_type
4878: ,l_component_code
4906: --
4907: --
4908: ------------------------------------------------------------------------------------------------
4909: -- 4219869 Business Flow
4910: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4911: -- Prior Entry. Currently, the following code is always generated.
4912: ------------------------------------------------------------------------------------------------
4913: XLA_AE_LINES_PKG.ValidateCurrentLine;
4914:
4909: -- 4219869 Business Flow
4910: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
4911: -- Prior Entry. Currently, the following code is always generated.
4912: ------------------------------------------------------------------------------------------------
4913: XLA_AE_LINES_PKG.ValidateCurrentLine;
4914:
4915: ------------------------------------------------------------------------------------
4916: -- 4219869 Business Flow
4917: -- Populated credit and debit amounts -- Need to generate this within IF
4915: ------------------------------------------------------------------------------------
4916: -- 4219869 Business Flow
4917: -- Populated credit and debit amounts -- Need to generate this within IF
4918: ------------------------------------------------------------------------------------
4919: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
4920:
4921: ----------------------------------------------------------------------------------
4922: -- 4219869 Business Flow
4923: -- Update journal entry status -- Need to generate this within IF
4947: -- To allow MPA report to determine if it should generate report process
4948: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4949: ------------------------------------------------------------------------------------------
4950:
4951: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4952: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4953: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4954: -- call ADRs
4955: -- Bug 4922099
4948: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
4949: ------------------------------------------------------------------------------------------
4950:
4951: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
4952: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
4953: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
4954: -- call ADRs
4955: -- Bug 4922099
4956: --
4972: , x_value_type_code => l_adr_value_type_code
4973: , p_side => 'NA'
4974: );
4975:
4976: xla_ae_lines_pkg.set_ccid(
4977: p_code_combination_id => l_ccid
4978: , p_value_type_code => l_adr_value_type_code
4979: , p_transaction_coa_id => l_adr_transaction_coa_id
4980: , p_accounting_coa_id => l_adr_accounting_coa_id
4995:
4996: --
4997: -- Update the line information that should be overwritten
4998: --
4999: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5000: p_header_num => 1);
5001: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5002:
5003: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
4997: -- Update the line information that should be overwritten
4998: --
4999: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5000: p_header_num => 1);
5001: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5002:
5003: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5004:
5005: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
4999: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5000: p_header_num => 1);
5001: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5002:
5003: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5004:
5005: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5006: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5007: END IF;
5002:
5003: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5004:
5005: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5006: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5007: END IF;
5008:
5009: --
5010: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5009: --
5010: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5011: --
5012: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
5013: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
5014: ELSE
5015: ---------------------------------------------------------------------------------------------------
5016: -- 4262811a Switch Sign
5017: ---------------------------------------------------------------------------------------------------
5014: ELSE
5015: ---------------------------------------------------------------------------------------------------
5016: -- 4262811a Switch Sign
5017: ---------------------------------------------------------------------------------------------------
5018: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5019: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5021: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5015: ---------------------------------------------------------------------------------------------------
5016: -- 4262811a Switch Sign
5017: ---------------------------------------------------------------------------------------------------
5018: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5019: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5021: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5023: -- 5132302
5016: -- 4262811a Switch Sign
5017: ---------------------------------------------------------------------------------------------------
5018: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5019: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5021: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5023: -- 5132302
5024: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5017: ---------------------------------------------------------------------------------------------------
5018: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5019: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5021: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5023: -- 5132302
5024: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5018: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5019: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5021: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5023: -- 5132302
5024: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5026:
5020: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5021: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5023: -- 5132302
5024: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5026:
5027: END IF;
5028:
5021: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5022: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5023: -- 5132302
5024: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5025: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5026:
5027: END IF;
5028:
5029: -- 4955764
5026:
5027: END IF;
5028:
5029: -- 4955764
5030: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5031: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5032:
5033:
5034: XLA_AE_LINES_PKG.ValidateCurrentLine;
5030: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5031: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5032:
5033:
5034: XLA_AE_LINES_PKG.ValidateCurrentLine;
5035: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5036:
5037: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5038: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5031: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5032:
5033:
5034: XLA_AE_LINES_PKG.ValidateCurrentLine;
5035: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5036:
5037: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5038: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5039: ,p_balance_type_code => l_balance_type_code);
5170: --
5171: -- bulk performance
5172: --
5173: l_balance_type_code VARCHAR2(1);
5174: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
5175: l_log_module VARCHAR2(240);
5176:
5177: --
5178: -- Upgrade strategy
5238: ') = 'REV'
5239: THEN
5240:
5241: --
5242: XLA_AE_LINES_PKG.SetNewLine;
5243:
5244: p_balance_type_code := l_balance_type_code;
5245: -- set the flag so later we will know whether the gain loss line needs to be created
5246:
5250:
5251: --
5252: -- bulk performance
5253: --
5254: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
5255: p_header_num => 0); -- 4262811
5256: --
5257: -- set accounting line options
5258: --
5255: p_header_num => 0); -- 4262811
5256: --
5257: -- set accounting line options
5258: --
5259: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
5260: p_natural_side_code => 'C'
5261: , p_gain_or_loss_flag => 'N'
5262: , p_gl_transfer_mode_code => 'S'
5263: , p_acct_entry_type_code => 'A'
5269: --
5270: --
5271: -- set accounting line type info
5272: --
5273: xla_ae_lines_pkg.SetAcctLineType
5274: (p_component_type => l_component_type
5275: ,p_event_type_code => l_event_type_code
5276: ,p_line_definition_owner_code => l_line_definition_owner_code
5277: ,p_line_definition_code => l_line_definition_code
5283: ,p_event_class_code => l_event_class_code);
5284: --
5285: -- set accounting class
5286: --
5287: xla_ae_lines_pkg.SetAcctClass(
5288: p_accounting_class_code => 'REVENUE'
5289: , p_ae_header_id => l_ae_header_id
5290: );
5291:
5291:
5292: --
5293: -- set rounding class
5294: --
5295: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5296: 'RECEIVABLE';
5297:
5298: --
5299: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5295: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5296: 'RECEIVABLE';
5297:
5298: --
5299: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5300: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5301: --
5302: -- bulk performance
5303: --
5296: 'RECEIVABLE';
5297:
5298: --
5299: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5300: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5301: --
5302: -- bulk performance
5303: --
5304: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5300: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5301: --
5302: -- bulk performance
5303: --
5304: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5305:
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5307: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5308:
5302: -- bulk performance
5303: --
5304: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5305:
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5307: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5308:
5309: -- 4955764
5310: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5306: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5307: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5308:
5309: -- 4955764
5310: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5311: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
5312:
5313: -- 4458381 Public Sector Enh
5314:
5340: l_rec_acct_attrs.array_num_value(10) := p_source_26;
5341: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5342: l_rec_acct_attrs.array_char_value(11) := p_source_27;
5343:
5344: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5345: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5346:
5347: ---------------------------------------------------------------------------------------------------------------
5348: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5341: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
5342: l_rec_acct_attrs.array_char_value(11) := p_source_27;
5343:
5344: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5345: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5346:
5347: ---------------------------------------------------------------------------------------------------------------
5348: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5349: ---------------------------------------------------------------------------------------------------------------
5344: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5345: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5346:
5347: ---------------------------------------------------------------------------------------------------------------
5348: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5349: ---------------------------------------------------------------------------------------------------------------
5350: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5351:
5352: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5346:
5347: ---------------------------------------------------------------------------------------------------------------
5348: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5349: ---------------------------------------------------------------------------------------------------------------
5350: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5351:
5352: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5353: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5354:
5348: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5349: ---------------------------------------------------------------------------------------------------------------
5350: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5351:
5352: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5353: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5354:
5355: IF xla_accounting_cache_pkg.GetValueChar
5356: (p_source_code => 'LEDGER_CATEGORY_CODE'
5349: ---------------------------------------------------------------------------------------------------------------
5350: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5351:
5352: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5353: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5354:
5355: IF xla_accounting_cache_pkg.GetValueChar
5356: (p_source_code => 'LEDGER_CATEGORY_CODE'
5357: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
5360: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
5361: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
5362: )
5363: THEN
5364: xla_ae_lines_pkg.BflowUpgEntry
5365: (p_business_method_code => l_bflow_method_code
5366: ,p_business_class_code => l_bflow_class_code
5367: ,p_balance_type => l_balance_type_code);
5368: ELSE
5400: , x_value_type_code => l_adr_value_type_code
5401: , p_side => 'NA'
5402: );
5403:
5404: xla_ae_lines_pkg.set_ccid(
5405: p_code_combination_id => l_ccid
5406: , p_value_type_code => l_adr_value_type_code
5407: , p_transaction_coa_id => l_adr_transaction_coa_id
5408: , p_accounting_coa_id => l_adr_accounting_coa_id
5436: xla_accounting_err_pkg.build_message
5437: (p_appli_s_name => 'XLA'
5438: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
5439: ,p_token_1 => 'LINE_NUMBER'
5440: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
5441: ,p_token_2 => 'LINE_TYPE_NAME'
5442: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
5443: l_component_type
5444: ,l_component_code
5472: --
5473: --
5474: ------------------------------------------------------------------------------------------------
5475: -- 4219869 Business Flow
5476: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5477: -- Prior Entry. Currently, the following code is always generated.
5478: ------------------------------------------------------------------------------------------------
5479: XLA_AE_LINES_PKG.ValidateCurrentLine;
5480:
5475: -- 4219869 Business Flow
5476: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
5477: -- Prior Entry. Currently, the following code is always generated.
5478: ------------------------------------------------------------------------------------------------
5479: XLA_AE_LINES_PKG.ValidateCurrentLine;
5480:
5481: ------------------------------------------------------------------------------------
5482: -- 4219869 Business Flow
5483: -- Populated credit and debit amounts -- Need to generate this within IF
5481: ------------------------------------------------------------------------------------
5482: -- 4219869 Business Flow
5483: -- Populated credit and debit amounts -- Need to generate this within IF
5484: ------------------------------------------------------------------------------------
5485: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5486:
5487: ----------------------------------------------------------------------------------
5488: -- 4219869 Business Flow
5489: -- Update journal entry status -- Need to generate this within IF
5513: -- To allow MPA report to determine if it should generate report process
5514: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5515: ------------------------------------------------------------------------------------------
5516:
5517: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5518: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5519: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5520: -- call ADRs
5521: -- Bug 4922099
5514: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
5515: ------------------------------------------------------------------------------------------
5516:
5517: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
5518: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
5519: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
5520: -- call ADRs
5521: -- Bug 4922099
5522: --
5538: , x_value_type_code => l_adr_value_type_code
5539: , p_side => 'NA'
5540: );
5541:
5542: xla_ae_lines_pkg.set_ccid(
5543: p_code_combination_id => l_ccid
5544: , p_value_type_code => l_adr_value_type_code
5545: , p_transaction_coa_id => l_adr_transaction_coa_id
5546: , p_accounting_coa_id => l_adr_accounting_coa_id
5561:
5562: --
5563: -- Update the line information that should be overwritten
5564: --
5565: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5566: p_header_num => 1);
5567: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5568:
5569: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5563: -- Update the line information that should be overwritten
5564: --
5565: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5566: p_header_num => 1);
5567: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5568:
5569: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5570:
5571: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5565: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
5566: p_header_num => 1);
5567: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
5568:
5569: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5570:
5571: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5572: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5573: END IF;
5568:
5569: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
5570:
5571: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
5572: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
5573: END IF;
5574:
5575: --
5576: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5575: --
5576: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
5577: --
5578: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
5579: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
5580: ELSE
5581: ---------------------------------------------------------------------------------------------------
5582: -- 4262811a Switch Sign
5583: ---------------------------------------------------------------------------------------------------
5580: ELSE
5581: ---------------------------------------------------------------------------------------------------
5582: -- 4262811a Switch Sign
5583: ---------------------------------------------------------------------------------------------------
5584: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5585: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5587: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5581: ---------------------------------------------------------------------------------------------------
5582: -- 4262811a Switch Sign
5583: ---------------------------------------------------------------------------------------------------
5584: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5585: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5587: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5589: -- 5132302
5582: -- 4262811a Switch Sign
5583: ---------------------------------------------------------------------------------------------------
5584: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5585: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5587: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5589: -- 5132302
5590: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5583: ---------------------------------------------------------------------------------------------------
5584: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5585: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5587: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5589: -- 5132302
5590: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5584: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
5585: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5587: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5589: -- 5132302
5590: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5592:
5586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5587: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5589: -- 5132302
5590: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5592:
5593: END IF;
5594:
5587: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
5588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5589: -- 5132302
5590: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
5591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
5592:
5593: END IF;
5594:
5595: -- 4955764
5592:
5593: END IF;
5594:
5595: -- 4955764
5596: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5597: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5598:
5599:
5600: XLA_AE_LINES_PKG.ValidateCurrentLine;
5596: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5597: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5598:
5599:
5600: XLA_AE_LINES_PKG.ValidateCurrentLine;
5601: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5602:
5603: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5604: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5597: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
5598:
5599:
5600: XLA_AE_LINES_PKG.ValidateCurrentLine;
5601: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
5602:
5603: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
5604: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
5605: ,p_balance_type_code => l_balance_type_code);
5740: --
5741: -- bulk performance
5742: --
5743: l_balance_type_code VARCHAR2(1);
5744: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
5745: l_log_module VARCHAR2(240);
5746:
5747: --
5748: -- Upgrade strategy
5808: ') = 'REC'
5809: THEN
5810:
5811: --
5812: XLA_AE_LINES_PKG.SetNewLine;
5813:
5814: p_balance_type_code := l_balance_type_code;
5815: -- set the flag so later we will know whether the gain loss line needs to be created
5816:
5820:
5821: --
5822: -- bulk performance
5823: --
5824: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
5825: p_header_num => 0); -- 4262811
5826: --
5827: -- set accounting line options
5828: --
5825: p_header_num => 0); -- 4262811
5826: --
5827: -- set accounting line options
5828: --
5829: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
5830: p_natural_side_code => 'C'
5831: , p_gain_or_loss_flag => 'N'
5832: , p_gl_transfer_mode_code => 'S'
5833: , p_acct_entry_type_code => 'A'
5839: --
5840: --
5841: -- set accounting line type info
5842: --
5843: xla_ae_lines_pkg.SetAcctLineType
5844: (p_component_type => l_component_type
5845: ,p_event_type_code => l_event_type_code
5846: ,p_line_definition_owner_code => l_line_definition_owner_code
5847: ,p_line_definition_code => l_line_definition_code
5853: ,p_event_class_code => l_event_class_code);
5854: --
5855: -- set accounting class
5856: --
5857: xla_ae_lines_pkg.SetAcctClass(
5858: p_accounting_class_code => 'RECEIVABLE'
5859: , p_ae_header_id => l_ae_header_id
5860: );
5861:
5861:
5862: --
5863: -- set rounding class
5864: --
5865: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5866: 'RECEIVABLE';
5867:
5868: --
5869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5865: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
5866: 'RECEIVABLE';
5867:
5868: --
5869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5871: --
5872: -- bulk performance
5873: --
5866: 'RECEIVABLE';
5867:
5868: --
5869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
5870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5871: --
5872: -- bulk performance
5873: --
5874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
5871: --
5872: -- bulk performance
5873: --
5874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5875:
5876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5878:
5872: -- bulk performance
5873: --
5874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
5875:
5876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5878:
5879: -- 4955764
5880: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
5877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
5878:
5879: -- 4955764
5880: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
5881: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
5882:
5883: -- 4458381 Public Sector Enh
5884:
5914: l_rec_acct_attrs.array_char_value(12) := p_source_27;
5915: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
5916: l_rec_acct_attrs.array_num_value(13) := p_source_47;
5917:
5918: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5919: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5920:
5921: ---------------------------------------------------------------------------------------------------------------
5922: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5915: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
5916: l_rec_acct_attrs.array_num_value(13) := p_source_47;
5917:
5918: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5919: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5920:
5921: ---------------------------------------------------------------------------------------------------------------
5922: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5923: ---------------------------------------------------------------------------------------------------------------
5918: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
5919: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
5920:
5921: ---------------------------------------------------------------------------------------------------------------
5922: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5923: ---------------------------------------------------------------------------------------------------------------
5924: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5925:
5926: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5920:
5921: ---------------------------------------------------------------------------------------------------------------
5922: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5923: ---------------------------------------------------------------------------------------------------------------
5924: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5925:
5926: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5927: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5928:
5922: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
5923: ---------------------------------------------------------------------------------------------------------------
5924: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5925:
5926: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5927: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5928:
5929: IF xla_accounting_cache_pkg.GetValueChar
5930: (p_source_code => 'LEDGER_CATEGORY_CODE'
5923: ---------------------------------------------------------------------------------------------------------------
5924: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
5925:
5926: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5927: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
5928:
5929: IF xla_accounting_cache_pkg.GetValueChar
5930: (p_source_code => 'LEDGER_CATEGORY_CODE'
5931: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
5934: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
5935: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
5936: )
5937: THEN
5938: xla_ae_lines_pkg.BflowUpgEntry
5939: (p_business_method_code => l_bflow_method_code
5940: ,p_business_class_code => l_bflow_class_code
5941: ,p_balance_type => l_balance_type_code);
5942: ELSE
5974: , x_value_type_code => l_adr_value_type_code
5975: , p_side => 'NA'
5976: );
5977:
5978: xla_ae_lines_pkg.set_ccid(
5979: p_code_combination_id => l_ccid
5980: , p_value_type_code => l_adr_value_type_code
5981: , p_transaction_coa_id => l_adr_transaction_coa_id
5982: , p_accounting_coa_id => l_adr_accounting_coa_id
6010: xla_accounting_err_pkg.build_message
6011: (p_appli_s_name => 'XLA'
6012: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
6013: ,p_token_1 => 'LINE_NUMBER'
6014: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
6015: ,p_token_2 => 'LINE_TYPE_NAME'
6016: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
6017: l_component_type
6018: ,l_component_code
6046: --
6047: --
6048: ------------------------------------------------------------------------------------------------
6049: -- 4219869 Business Flow
6050: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6051: -- Prior Entry. Currently, the following code is always generated.
6052: ------------------------------------------------------------------------------------------------
6053: XLA_AE_LINES_PKG.ValidateCurrentLine;
6054:
6049: -- 4219869 Business Flow
6050: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6051: -- Prior Entry. Currently, the following code is always generated.
6052: ------------------------------------------------------------------------------------------------
6053: XLA_AE_LINES_PKG.ValidateCurrentLine;
6054:
6055: ------------------------------------------------------------------------------------
6056: -- 4219869 Business Flow
6057: -- Populated credit and debit amounts -- Need to generate this within IF
6055: ------------------------------------------------------------------------------------
6056: -- 4219869 Business Flow
6057: -- Populated credit and debit amounts -- Need to generate this within IF
6058: ------------------------------------------------------------------------------------
6059: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6060:
6061: ----------------------------------------------------------------------------------
6062: -- 4219869 Business Flow
6063: -- Update journal entry status -- Need to generate this within IF
6087: -- To allow MPA report to determine if it should generate report process
6088: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6089: ------------------------------------------------------------------------------------------
6090:
6091: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6092: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6093: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6094: -- call ADRs
6095: -- Bug 4922099
6088: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6089: ------------------------------------------------------------------------------------------
6090:
6091: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6092: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6093: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6094: -- call ADRs
6095: -- Bug 4922099
6096: --
6112: , x_value_type_code => l_adr_value_type_code
6113: , p_side => 'NA'
6114: );
6115:
6116: xla_ae_lines_pkg.set_ccid(
6117: p_code_combination_id => l_ccid
6118: , p_value_type_code => l_adr_value_type_code
6119: , p_transaction_coa_id => l_adr_transaction_coa_id
6120: , p_accounting_coa_id => l_adr_accounting_coa_id
6135:
6136: --
6137: -- Update the line information that should be overwritten
6138: --
6139: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6140: p_header_num => 1);
6141: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6142:
6143: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6137: -- Update the line information that should be overwritten
6138: --
6139: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6140: p_header_num => 1);
6141: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6142:
6143: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6144:
6145: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6139: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6140: p_header_num => 1);
6141: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6142:
6143: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6144:
6145: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6146: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6147: END IF;
6142:
6143: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6144:
6145: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6146: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6147: END IF;
6148:
6149: --
6150: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6149: --
6150: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6151: --
6152: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
6153: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
6154: ELSE
6155: ---------------------------------------------------------------------------------------------------
6156: -- 4262811a Switch Sign
6157: ---------------------------------------------------------------------------------------------------
6154: ELSE
6155: ---------------------------------------------------------------------------------------------------
6156: -- 4262811a Switch Sign
6157: ---------------------------------------------------------------------------------------------------
6158: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6159: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6161: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6155: ---------------------------------------------------------------------------------------------------
6156: -- 4262811a Switch Sign
6157: ---------------------------------------------------------------------------------------------------
6158: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6159: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6161: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6163: -- 5132302
6156: -- 4262811a Switch Sign
6157: ---------------------------------------------------------------------------------------------------
6158: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6159: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6161: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6163: -- 5132302
6164: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6157: ---------------------------------------------------------------------------------------------------
6158: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6159: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6161: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6163: -- 5132302
6164: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6158: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6159: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6161: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6163: -- 5132302
6164: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6166:
6160: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6161: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6163: -- 5132302
6164: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6166:
6167: END IF;
6168:
6161: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6162: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6163: -- 5132302
6164: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6165: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6166:
6167: END IF;
6168:
6169: -- 4955764
6166:
6167: END IF;
6168:
6169: -- 4955764
6170: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6171: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6172:
6173:
6174: XLA_AE_LINES_PKG.ValidateCurrentLine;
6170: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6171: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6172:
6173:
6174: XLA_AE_LINES_PKG.ValidateCurrentLine;
6175: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6176:
6177: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6178: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6171: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6172:
6173:
6174: XLA_AE_LINES_PKG.ValidateCurrentLine;
6175: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6176:
6177: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6178: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6179: ,p_balance_type_code => l_balance_type_code);
6316: --
6317: -- bulk performance
6318: --
6319: l_balance_type_code VARCHAR2(1);
6320: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
6321: l_log_module VARCHAR2(240);
6322:
6323: --
6324: -- Upgrade strategy
6390: ') = 'CM_REFUND')
6391: THEN
6392:
6393: --
6394: XLA_AE_LINES_PKG.SetNewLine;
6395:
6396: p_balance_type_code := l_balance_type_code;
6397: -- set the flag so later we will know whether the gain loss line needs to be created
6398:
6402:
6403: --
6404: -- bulk performance
6405: --
6406: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
6407: p_header_num => 0); -- 4262811
6408: --
6409: -- set accounting line options
6410: --
6407: p_header_num => 0); -- 4262811
6408: --
6409: -- set accounting line options
6410: --
6411: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
6412: p_natural_side_code => 'C'
6413: , p_gain_or_loss_flag => 'N'
6414: , p_gl_transfer_mode_code => 'S'
6415: , p_acct_entry_type_code => 'A'
6421: --
6422: --
6423: -- set accounting line type info
6424: --
6425: xla_ae_lines_pkg.SetAcctLineType
6426: (p_component_type => l_component_type
6427: ,p_event_type_code => l_event_type_code
6428: ,p_line_definition_owner_code => l_line_definition_owner_code
6429: ,p_line_definition_code => l_line_definition_code
6435: ,p_event_class_code => l_event_class_code);
6436: --
6437: -- set accounting class
6438: --
6439: xla_ae_lines_pkg.SetAcctClass(
6440: p_accounting_class_code => 'REFUND'
6441: , p_ae_header_id => l_ae_header_id
6442: );
6443:
6443:
6444: --
6445: -- set rounding class
6446: --
6447: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: 'REFUND';
6449:
6450: --
6451: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6447: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
6448: 'REFUND';
6449:
6450: --
6451: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6452: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6453: --
6454: -- bulk performance
6455: --
6448: 'REFUND';
6449:
6450: --
6451: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
6452: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6453: --
6454: -- bulk performance
6455: --
6456: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6452: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
6453: --
6454: -- bulk performance
6455: --
6456: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6457:
6458: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6459: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6460:
6454: -- bulk performance
6455: --
6456: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
6457:
6458: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6459: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6460:
6461: -- 4955764
6462: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6458: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
6459: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
6460:
6461: -- 4955764
6462: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6463: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
6464:
6465: -- 4458381 Public Sector Enh
6466:
6496: l_rec_acct_attrs.array_char_value(12) := p_source_27;
6497: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
6498: l_rec_acct_attrs.array_num_value(13) := p_source_47;
6499:
6500: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6501: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6502:
6503: ---------------------------------------------------------------------------------------------------------------
6504: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6497: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
6498: l_rec_acct_attrs.array_num_value(13) := p_source_47;
6499:
6500: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6501: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6502:
6503: ---------------------------------------------------------------------------------------------------------------
6504: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6505: ---------------------------------------------------------------------------------------------------------------
6500: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
6501: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
6502:
6503: ---------------------------------------------------------------------------------------------------------------
6504: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6505: ---------------------------------------------------------------------------------------------------------------
6506: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6507:
6508: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6502:
6503: ---------------------------------------------------------------------------------------------------------------
6504: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6505: ---------------------------------------------------------------------------------------------------------------
6506: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6507:
6508: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6509: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6510:
6504: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
6505: ---------------------------------------------------------------------------------------------------------------
6506: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6507:
6508: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6509: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6510:
6511: IF xla_accounting_cache_pkg.GetValueChar
6512: (p_source_code => 'LEDGER_CATEGORY_CODE'
6505: ---------------------------------------------------------------------------------------------------------------
6506: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
6507:
6508: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6509: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
6510:
6511: IF xla_accounting_cache_pkg.GetValueChar
6512: (p_source_code => 'LEDGER_CATEGORY_CODE'
6513: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
6516: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
6517: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
6518: )
6519: THEN
6520: xla_ae_lines_pkg.BflowUpgEntry
6521: (p_business_method_code => l_bflow_method_code
6522: ,p_business_class_code => l_bflow_class_code
6523: ,p_balance_type => l_balance_type_code);
6524: ELSE
6556: , x_value_type_code => l_adr_value_type_code
6557: , p_side => 'NA'
6558: );
6559:
6560: xla_ae_lines_pkg.set_ccid(
6561: p_code_combination_id => l_ccid
6562: , p_value_type_code => l_adr_value_type_code
6563: , p_transaction_coa_id => l_adr_transaction_coa_id
6564: , p_accounting_coa_id => l_adr_accounting_coa_id
6592: xla_accounting_err_pkg.build_message
6593: (p_appli_s_name => 'XLA'
6594: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
6595: ,p_token_1 => 'LINE_NUMBER'
6596: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
6597: ,p_token_2 => 'LINE_TYPE_NAME'
6598: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
6599: l_component_type
6600: ,l_component_code
6628: --
6629: --
6630: ------------------------------------------------------------------------------------------------
6631: -- 4219869 Business Flow
6632: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6633: -- Prior Entry. Currently, the following code is always generated.
6634: ------------------------------------------------------------------------------------------------
6635: XLA_AE_LINES_PKG.ValidateCurrentLine;
6636:
6631: -- 4219869 Business Flow
6632: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
6633: -- Prior Entry. Currently, the following code is always generated.
6634: ------------------------------------------------------------------------------------------------
6635: XLA_AE_LINES_PKG.ValidateCurrentLine;
6636:
6637: ------------------------------------------------------------------------------------
6638: -- 4219869 Business Flow
6639: -- Populated credit and debit amounts -- Need to generate this within IF
6637: ------------------------------------------------------------------------------------
6638: -- 4219869 Business Flow
6639: -- Populated credit and debit amounts -- Need to generate this within IF
6640: ------------------------------------------------------------------------------------
6641: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6642:
6643: ----------------------------------------------------------------------------------
6644: -- 4219869 Business Flow
6645: -- Update journal entry status -- Need to generate this within IF
6669: -- To allow MPA report to determine if it should generate report process
6670: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6671: ------------------------------------------------------------------------------------------
6672:
6673: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6674: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6675: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6676: -- call ADRs
6677: -- Bug 4922099
6670: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
6671: ------------------------------------------------------------------------------------------
6672:
6673: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
6674: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
6675: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
6676: -- call ADRs
6677: -- Bug 4922099
6678: --
6694: , x_value_type_code => l_adr_value_type_code
6695: , p_side => 'NA'
6696: );
6697:
6698: xla_ae_lines_pkg.set_ccid(
6699: p_code_combination_id => l_ccid
6700: , p_value_type_code => l_adr_value_type_code
6701: , p_transaction_coa_id => l_adr_transaction_coa_id
6702: , p_accounting_coa_id => l_adr_accounting_coa_id
6717:
6718: --
6719: -- Update the line information that should be overwritten
6720: --
6721: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6722: p_header_num => 1);
6723: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6724:
6725: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6719: -- Update the line information that should be overwritten
6720: --
6721: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6722: p_header_num => 1);
6723: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6724:
6725: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6726:
6727: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6721: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
6722: p_header_num => 1);
6723: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
6724:
6725: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6726:
6727: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6728: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6729: END IF;
6724:
6725: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
6726:
6727: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
6728: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
6729: END IF;
6730:
6731: --
6732: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6731: --
6732: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
6733: --
6734: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
6735: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
6736: ELSE
6737: ---------------------------------------------------------------------------------------------------
6738: -- 4262811a Switch Sign
6739: ---------------------------------------------------------------------------------------------------
6736: ELSE
6737: ---------------------------------------------------------------------------------------------------
6738: -- 4262811a Switch Sign
6739: ---------------------------------------------------------------------------------------------------
6740: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6741: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6742: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6743: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6744: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6737: ---------------------------------------------------------------------------------------------------
6738: -- 4262811a Switch Sign
6739: ---------------------------------------------------------------------------------------------------
6740: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6741: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6742: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6743: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6744: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6745: -- 5132302
6738: -- 4262811a Switch Sign
6739: ---------------------------------------------------------------------------------------------------
6740: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6741: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6742: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6743: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6744: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6745: -- 5132302
6746: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6739: ---------------------------------------------------------------------------------------------------
6740: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6741: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6742: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6743: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6744: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6745: -- 5132302
6746: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6747: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6740: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
6741: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6742: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6743: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6744: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6745: -- 5132302
6746: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6747: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6748:
6742: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6743: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6744: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6745: -- 5132302
6746: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6747: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6748:
6749: END IF;
6750:
6743: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
6744: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6745: -- 5132302
6746: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
6747: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
6748:
6749: END IF;
6750:
6751: -- 4955764
6748:
6749: END IF;
6750:
6751: -- 4955764
6752: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6753: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6754:
6755:
6756: XLA_AE_LINES_PKG.ValidateCurrentLine;
6752: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
6753: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6754:
6755:
6756: XLA_AE_LINES_PKG.ValidateCurrentLine;
6757: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6758:
6759: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6760: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6753: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
6754:
6755:
6756: XLA_AE_LINES_PKG.ValidateCurrentLine;
6757: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
6758:
6759: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
6760: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
6761: ,p_balance_type_code => l_balance_type_code);
6896: --
6897: -- bulk performance
6898: --
6899: l_balance_type_code VARCHAR2(1);
6900: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
6901: l_log_module VARCHAR2(240);
6902:
6903: --
6904: -- Upgrade strategy
6964: ') = 'CHARGES'
6965: THEN
6966:
6967: --
6968: XLA_AE_LINES_PKG.SetNewLine;
6969:
6970: p_balance_type_code := l_balance_type_code;
6971: -- set the flag so later we will know whether the gain loss line needs to be created
6972:
6976:
6977: --
6978: -- bulk performance
6979: --
6980: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
6981: p_header_num => 0); -- 4262811
6982: --
6983: -- set accounting line options
6984: --
6981: p_header_num => 0); -- 4262811
6982: --
6983: -- set accounting line options
6984: --
6985: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
6986: p_natural_side_code => 'C'
6987: , p_gain_or_loss_flag => 'N'
6988: , p_gl_transfer_mode_code => 'S'
6989: , p_acct_entry_type_code => 'A'
6995: --
6996: --
6997: -- set accounting line type info
6998: --
6999: xla_ae_lines_pkg.SetAcctLineType
7000: (p_component_type => l_component_type
7001: ,p_event_type_code => l_event_type_code
7002: ,p_line_definition_owner_code => l_line_definition_owner_code
7003: ,p_line_definition_code => l_line_definition_code
7009: ,p_event_class_code => l_event_class_code);
7010: --
7011: -- set accounting class
7012: --
7013: xla_ae_lines_pkg.SetAcctClass(
7014: p_accounting_class_code => 'CHARGES'
7015: , p_ae_header_id => l_ae_header_id
7016: );
7017:
7017:
7018: --
7019: -- set rounding class
7020: --
7021: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7022: 'RECEIVABLE';
7023:
7024: --
7025: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7021: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7022: 'RECEIVABLE';
7023:
7024: --
7025: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7026: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7027: --
7028: -- bulk performance
7029: --
7022: 'RECEIVABLE';
7023:
7024: --
7025: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7026: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7027: --
7028: -- bulk performance
7029: --
7030: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7026: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7027: --
7028: -- bulk performance
7029: --
7030: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7031:
7032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7033: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7034:
7028: -- bulk performance
7029: --
7030: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7031:
7032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7033: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7034:
7035: -- 4955764
7036: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7033: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7034:
7035: -- 4955764
7036: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7037: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
7038:
7039: -- 4458381 Public Sector Enh
7040:
7070: l_rec_acct_attrs.array_char_value(12) := p_source_27;
7071: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
7072: l_rec_acct_attrs.array_num_value(13) := p_source_47;
7073:
7074: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7075: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7076:
7077: ---------------------------------------------------------------------------------------------------------------
7078: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7071: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
7072: l_rec_acct_attrs.array_num_value(13) := p_source_47;
7073:
7074: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7075: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7076:
7077: ---------------------------------------------------------------------------------------------------------------
7078: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7079: ---------------------------------------------------------------------------------------------------------------
7074: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7075: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7076:
7077: ---------------------------------------------------------------------------------------------------------------
7078: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7079: ---------------------------------------------------------------------------------------------------------------
7080: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7081:
7082: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7076:
7077: ---------------------------------------------------------------------------------------------------------------
7078: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7079: ---------------------------------------------------------------------------------------------------------------
7080: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7081:
7082: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7083: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7084:
7078: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7079: ---------------------------------------------------------------------------------------------------------------
7080: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7081:
7082: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7083: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7084:
7085: IF xla_accounting_cache_pkg.GetValueChar
7086: (p_source_code => 'LEDGER_CATEGORY_CODE'
7079: ---------------------------------------------------------------------------------------------------------------
7080: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7081:
7082: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7083: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7084:
7085: IF xla_accounting_cache_pkg.GetValueChar
7086: (p_source_code => 'LEDGER_CATEGORY_CODE'
7087: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
7090: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
7091: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
7092: )
7093: THEN
7094: xla_ae_lines_pkg.BflowUpgEntry
7095: (p_business_method_code => l_bflow_method_code
7096: ,p_business_class_code => l_bflow_class_code
7097: ,p_balance_type => l_balance_type_code);
7098: ELSE
7130: , x_value_type_code => l_adr_value_type_code
7131: , p_side => 'NA'
7132: );
7133:
7134: xla_ae_lines_pkg.set_ccid(
7135: p_code_combination_id => l_ccid
7136: , p_value_type_code => l_adr_value_type_code
7137: , p_transaction_coa_id => l_adr_transaction_coa_id
7138: , p_accounting_coa_id => l_adr_accounting_coa_id
7166: xla_accounting_err_pkg.build_message
7167: (p_appli_s_name => 'XLA'
7168: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
7169: ,p_token_1 => 'LINE_NUMBER'
7170: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
7171: ,p_token_2 => 'LINE_TYPE_NAME'
7172: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
7173: l_component_type
7174: ,l_component_code
7202: --
7203: --
7204: ------------------------------------------------------------------------------------------------
7205: -- 4219869 Business Flow
7206: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7207: -- Prior Entry. Currently, the following code is always generated.
7208: ------------------------------------------------------------------------------------------------
7209: XLA_AE_LINES_PKG.ValidateCurrentLine;
7210:
7205: -- 4219869 Business Flow
7206: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7207: -- Prior Entry. Currently, the following code is always generated.
7208: ------------------------------------------------------------------------------------------------
7209: XLA_AE_LINES_PKG.ValidateCurrentLine;
7210:
7211: ------------------------------------------------------------------------------------
7212: -- 4219869 Business Flow
7213: -- Populated credit and debit amounts -- Need to generate this within IF
7211: ------------------------------------------------------------------------------------
7212: -- 4219869 Business Flow
7213: -- Populated credit and debit amounts -- Need to generate this within IF
7214: ------------------------------------------------------------------------------------
7215: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7216:
7217: ----------------------------------------------------------------------------------
7218: -- 4219869 Business Flow
7219: -- Update journal entry status -- Need to generate this within IF
7243: -- To allow MPA report to determine if it should generate report process
7244: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7245: ------------------------------------------------------------------------------------------
7246:
7247: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7248: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7249: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7250: -- call ADRs
7251: -- Bug 4922099
7244: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7245: ------------------------------------------------------------------------------------------
7246:
7247: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7248: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7249: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7250: -- call ADRs
7251: -- Bug 4922099
7252: --
7268: , x_value_type_code => l_adr_value_type_code
7269: , p_side => 'NA'
7270: );
7271:
7272: xla_ae_lines_pkg.set_ccid(
7273: p_code_combination_id => l_ccid
7274: , p_value_type_code => l_adr_value_type_code
7275: , p_transaction_coa_id => l_adr_transaction_coa_id
7276: , p_accounting_coa_id => l_adr_accounting_coa_id
7291:
7292: --
7293: -- Update the line information that should be overwritten
7294: --
7295: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7296: p_header_num => 1);
7297: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7298:
7299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7293: -- Update the line information that should be overwritten
7294: --
7295: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7296: p_header_num => 1);
7297: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7298:
7299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7300:
7301: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7295: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7296: p_header_num => 1);
7297: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7298:
7299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7300:
7301: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7302: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7303: END IF;
7298:
7299: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7300:
7301: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7302: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7303: END IF;
7304:
7305: --
7306: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7305: --
7306: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7307: --
7308: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
7309: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
7310: ELSE
7311: ---------------------------------------------------------------------------------------------------
7312: -- 4262811a Switch Sign
7313: ---------------------------------------------------------------------------------------------------
7310: ELSE
7311: ---------------------------------------------------------------------------------------------------
7312: -- 4262811a Switch Sign
7313: ---------------------------------------------------------------------------------------------------
7314: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7315: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7317: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7318: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7311: ---------------------------------------------------------------------------------------------------
7312: -- 4262811a Switch Sign
7313: ---------------------------------------------------------------------------------------------------
7314: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7315: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7317: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7318: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7319: -- 5132302
7312: -- 4262811a Switch Sign
7313: ---------------------------------------------------------------------------------------------------
7314: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7315: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7317: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7318: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7319: -- 5132302
7320: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7313: ---------------------------------------------------------------------------------------------------
7314: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7315: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7317: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7318: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7319: -- 5132302
7320: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7321: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7314: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7315: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7317: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7318: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7319: -- 5132302
7320: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7321: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7322:
7316: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7317: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7318: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7319: -- 5132302
7320: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7321: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7322:
7323: END IF;
7324:
7317: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7318: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7319: -- 5132302
7320: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7321: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7322:
7323: END IF;
7324:
7325: -- 4955764
7322:
7323: END IF;
7324:
7325: -- 4955764
7326: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7328:
7329:
7330: XLA_AE_LINES_PKG.ValidateCurrentLine;
7326: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7327: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7328:
7329:
7330: XLA_AE_LINES_PKG.ValidateCurrentLine;
7331: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7332:
7333: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7334: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7327: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7328:
7329:
7330: XLA_AE_LINES_PKG.ValidateCurrentLine;
7331: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7332:
7333: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7334: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7335: ,p_balance_type_code => l_balance_type_code);
7470: --
7471: -- bulk performance
7472: --
7473: l_balance_type_code VARCHAR2(1);
7474: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
7475: l_log_module VARCHAR2(240);
7476:
7477: --
7478: -- Upgrade strategy
7538: ') = 'FREIGHT'
7539: THEN
7540:
7541: --
7542: XLA_AE_LINES_PKG.SetNewLine;
7543:
7544: p_balance_type_code := l_balance_type_code;
7545: -- set the flag so later we will know whether the gain loss line needs to be created
7546:
7550:
7551: --
7552: -- bulk performance
7553: --
7554: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
7555: p_header_num => 0); -- 4262811
7556: --
7557: -- set accounting line options
7558: --
7555: p_header_num => 0); -- 4262811
7556: --
7557: -- set accounting line options
7558: --
7559: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
7560: p_natural_side_code => 'C'
7561: , p_gain_or_loss_flag => 'N'
7562: , p_gl_transfer_mode_code => 'S'
7563: , p_acct_entry_type_code => 'A'
7569: --
7570: --
7571: -- set accounting line type info
7572: --
7573: xla_ae_lines_pkg.SetAcctLineType
7574: (p_component_type => l_component_type
7575: ,p_event_type_code => l_event_type_code
7576: ,p_line_definition_owner_code => l_line_definition_owner_code
7577: ,p_line_definition_code => l_line_definition_code
7583: ,p_event_class_code => l_event_class_code);
7584: --
7585: -- set accounting class
7586: --
7587: xla_ae_lines_pkg.SetAcctClass(
7588: p_accounting_class_code => 'FREIGHT'
7589: , p_ae_header_id => l_ae_header_id
7590: );
7591:
7591:
7592: --
7593: -- set rounding class
7594: --
7595: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7596: 'RECEIVABLE';
7597:
7598: --
7599: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7595: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
7596: 'RECEIVABLE';
7597:
7598: --
7599: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7600: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7601: --
7602: -- bulk performance
7603: --
7596: 'RECEIVABLE';
7597:
7598: --
7599: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
7600: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7601: --
7602: -- bulk performance
7603: --
7604: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7600: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
7601: --
7602: -- bulk performance
7603: --
7604: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7605:
7606: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7607: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7608:
7602: -- bulk performance
7603: --
7604: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
7605:
7606: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7607: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7608:
7609: -- 4955764
7610: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7606: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
7607: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
7608:
7609: -- 4955764
7610: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7611: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
7612:
7613: -- 4458381 Public Sector Enh
7614:
7644: l_rec_acct_attrs.array_char_value(12) := p_source_27;
7645: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
7646: l_rec_acct_attrs.array_num_value(13) := p_source_47;
7647:
7648: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7649: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7650:
7651: ---------------------------------------------------------------------------------------------------------------
7652: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7645: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
7646: l_rec_acct_attrs.array_num_value(13) := p_source_47;
7647:
7648: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7649: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7650:
7651: ---------------------------------------------------------------------------------------------------------------
7652: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7653: ---------------------------------------------------------------------------------------------------------------
7648: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
7649: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
7650:
7651: ---------------------------------------------------------------------------------------------------------------
7652: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7653: ---------------------------------------------------------------------------------------------------------------
7654: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7655:
7656: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7650:
7651: ---------------------------------------------------------------------------------------------------------------
7652: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7653: ---------------------------------------------------------------------------------------------------------------
7654: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7655:
7656: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7657: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7658:
7652: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
7653: ---------------------------------------------------------------------------------------------------------------
7654: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7655:
7656: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7657: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7658:
7659: IF xla_accounting_cache_pkg.GetValueChar
7660: (p_source_code => 'LEDGER_CATEGORY_CODE'
7653: ---------------------------------------------------------------------------------------------------------------
7654: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
7655:
7656: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7657: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
7658:
7659: IF xla_accounting_cache_pkg.GetValueChar
7660: (p_source_code => 'LEDGER_CATEGORY_CODE'
7661: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
7664: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
7665: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
7666: )
7667: THEN
7668: xla_ae_lines_pkg.BflowUpgEntry
7669: (p_business_method_code => l_bflow_method_code
7670: ,p_business_class_code => l_bflow_class_code
7671: ,p_balance_type => l_balance_type_code);
7672: ELSE
7704: , x_value_type_code => l_adr_value_type_code
7705: , p_side => 'NA'
7706: );
7707:
7708: xla_ae_lines_pkg.set_ccid(
7709: p_code_combination_id => l_ccid
7710: , p_value_type_code => l_adr_value_type_code
7711: , p_transaction_coa_id => l_adr_transaction_coa_id
7712: , p_accounting_coa_id => l_adr_accounting_coa_id
7740: xla_accounting_err_pkg.build_message
7741: (p_appli_s_name => 'XLA'
7742: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
7743: ,p_token_1 => 'LINE_NUMBER'
7744: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
7745: ,p_token_2 => 'LINE_TYPE_NAME'
7746: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
7747: l_component_type
7748: ,l_component_code
7776: --
7777: --
7778: ------------------------------------------------------------------------------------------------
7779: -- 4219869 Business Flow
7780: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7781: -- Prior Entry. Currently, the following code is always generated.
7782: ------------------------------------------------------------------------------------------------
7783: XLA_AE_LINES_PKG.ValidateCurrentLine;
7784:
7779: -- 4219869 Business Flow
7780: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
7781: -- Prior Entry. Currently, the following code is always generated.
7782: ------------------------------------------------------------------------------------------------
7783: XLA_AE_LINES_PKG.ValidateCurrentLine;
7784:
7785: ------------------------------------------------------------------------------------
7786: -- 4219869 Business Flow
7787: -- Populated credit and debit amounts -- Need to generate this within IF
7785: ------------------------------------------------------------------------------------
7786: -- 4219869 Business Flow
7787: -- Populated credit and debit amounts -- Need to generate this within IF
7788: ------------------------------------------------------------------------------------
7789: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7790:
7791: ----------------------------------------------------------------------------------
7792: -- 4219869 Business Flow
7793: -- Update journal entry status -- Need to generate this within IF
7817: -- To allow MPA report to determine if it should generate report process
7818: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7819: ------------------------------------------------------------------------------------------
7820:
7821: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7822: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7823: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7824: -- call ADRs
7825: -- Bug 4922099
7818: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
7819: ------------------------------------------------------------------------------------------
7820:
7821: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
7822: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
7823: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
7824: -- call ADRs
7825: -- Bug 4922099
7826: --
7842: , x_value_type_code => l_adr_value_type_code
7843: , p_side => 'NA'
7844: );
7845:
7846: xla_ae_lines_pkg.set_ccid(
7847: p_code_combination_id => l_ccid
7848: , p_value_type_code => l_adr_value_type_code
7849: , p_transaction_coa_id => l_adr_transaction_coa_id
7850: , p_accounting_coa_id => l_adr_accounting_coa_id
7865:
7866: --
7867: -- Update the line information that should be overwritten
7868: --
7869: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7870: p_header_num => 1);
7871: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7872:
7873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7867: -- Update the line information that should be overwritten
7868: --
7869: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7870: p_header_num => 1);
7871: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7872:
7873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7874:
7875: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7869: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
7870: p_header_num => 1);
7871: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
7872:
7873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7874:
7875: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7876: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7877: END IF;
7872:
7873: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
7874:
7875: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
7876: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
7877: END IF;
7878:
7879: --
7880: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7879: --
7880: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
7881: --
7882: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
7883: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
7884: ELSE
7885: ---------------------------------------------------------------------------------------------------
7886: -- 4262811a Switch Sign
7887: ---------------------------------------------------------------------------------------------------
7884: ELSE
7885: ---------------------------------------------------------------------------------------------------
7886: -- 4262811a Switch Sign
7887: ---------------------------------------------------------------------------------------------------
7888: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7885: ---------------------------------------------------------------------------------------------------
7886: -- 4262811a Switch Sign
7887: ---------------------------------------------------------------------------------------------------
7888: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7893: -- 5132302
7886: -- 4262811a Switch Sign
7887: ---------------------------------------------------------------------------------------------------
7888: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7893: -- 5132302
7894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7887: ---------------------------------------------------------------------------------------------------
7888: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7893: -- 5132302
7894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7888: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
7889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7893: -- 5132302
7894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7896:
7890: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7893: -- 5132302
7894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7896:
7897: END IF;
7898:
7891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
7892: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7893: -- 5132302
7894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
7895: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
7896:
7897: END IF;
7898:
7899: -- 4955764
7896:
7897: END IF;
7898:
7899: -- 4955764
7900: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7901: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7902:
7903:
7904: XLA_AE_LINES_PKG.ValidateCurrentLine;
7900: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
7901: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7902:
7903:
7904: XLA_AE_LINES_PKG.ValidateCurrentLine;
7905: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7906:
7907: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7908: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7901: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
7902:
7903:
7904: XLA_AE_LINES_PKG.ValidateCurrentLine;
7905: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
7906:
7907: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
7908: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
7909: ,p_balance_type_code => l_balance_type_code);
8044: --
8045: -- bulk performance
8046: --
8047: l_balance_type_code VARCHAR2(1);
8048: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
8049: l_log_module VARCHAR2(240);
8050:
8051: --
8052: -- Upgrade strategy
8112: ') = 'REV'
8113: THEN
8114:
8115: --
8116: XLA_AE_LINES_PKG.SetNewLine;
8117:
8118: p_balance_type_code := l_balance_type_code;
8119: -- set the flag so later we will know whether the gain loss line needs to be created
8120:
8124:
8125: --
8126: -- bulk performance
8127: --
8128: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
8129: p_header_num => 0); -- 4262811
8130: --
8131: -- set accounting line options
8132: --
8129: p_header_num => 0); -- 4262811
8130: --
8131: -- set accounting line options
8132: --
8133: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
8134: p_natural_side_code => 'C'
8135: , p_gain_or_loss_flag => 'N'
8136: , p_gl_transfer_mode_code => 'S'
8137: , p_acct_entry_type_code => 'A'
8143: --
8144: --
8145: -- set accounting line type info
8146: --
8147: xla_ae_lines_pkg.SetAcctLineType
8148: (p_component_type => l_component_type
8149: ,p_event_type_code => l_event_type_code
8150: ,p_line_definition_owner_code => l_line_definition_owner_code
8151: ,p_line_definition_code => l_line_definition_code
8157: ,p_event_class_code => l_event_class_code);
8158: --
8159: -- set accounting class
8160: --
8161: xla_ae_lines_pkg.SetAcctClass(
8162: p_accounting_class_code => 'REVENUE'
8163: , p_ae_header_id => l_ae_header_id
8164: );
8165:
8165:
8166: --
8167: -- set rounding class
8168: --
8169: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8170: 'RECEIVABLE';
8171:
8172: --
8173: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8169: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8170: 'RECEIVABLE';
8171:
8172: --
8173: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8174: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8175: --
8176: -- bulk performance
8177: --
8170: 'RECEIVABLE';
8171:
8172: --
8173: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8174: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8175: --
8176: -- bulk performance
8177: --
8178: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8174: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8175: --
8176: -- bulk performance
8177: --
8178: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8179:
8180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8181: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8182:
8176: -- bulk performance
8177: --
8178: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8179:
8180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8181: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8182:
8183: -- 4955764
8184: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8180: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8181: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8182:
8183: -- 4955764
8184: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8185: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
8186:
8187: -- 4458381 Public Sector Enh
8188:
8218: l_rec_acct_attrs.array_char_value(12) := p_source_27;
8219: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
8220: l_rec_acct_attrs.array_num_value(13) := p_source_47;
8221:
8222: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8223: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8224:
8225: ---------------------------------------------------------------------------------------------------------------
8226: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8219: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
8220: l_rec_acct_attrs.array_num_value(13) := p_source_47;
8221:
8222: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8223: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8224:
8225: ---------------------------------------------------------------------------------------------------------------
8226: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8227: ---------------------------------------------------------------------------------------------------------------
8222: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8223: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8224:
8225: ---------------------------------------------------------------------------------------------------------------
8226: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8227: ---------------------------------------------------------------------------------------------------------------
8228: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8229:
8230: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8224:
8225: ---------------------------------------------------------------------------------------------------------------
8226: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8227: ---------------------------------------------------------------------------------------------------------------
8228: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8229:
8230: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8231: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8232:
8226: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8227: ---------------------------------------------------------------------------------------------------------------
8228: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8229:
8230: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8231: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8232:
8233: IF xla_accounting_cache_pkg.GetValueChar
8234: (p_source_code => 'LEDGER_CATEGORY_CODE'
8227: ---------------------------------------------------------------------------------------------------------------
8228: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8229:
8230: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8231: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8232:
8233: IF xla_accounting_cache_pkg.GetValueChar
8234: (p_source_code => 'LEDGER_CATEGORY_CODE'
8235: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
8238: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
8239: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
8240: )
8241: THEN
8242: xla_ae_lines_pkg.BflowUpgEntry
8243: (p_business_method_code => l_bflow_method_code
8244: ,p_business_class_code => l_bflow_class_code
8245: ,p_balance_type => l_balance_type_code);
8246: ELSE
8278: , x_value_type_code => l_adr_value_type_code
8279: , p_side => 'NA'
8280: );
8281:
8282: xla_ae_lines_pkg.set_ccid(
8283: p_code_combination_id => l_ccid
8284: , p_value_type_code => l_adr_value_type_code
8285: , p_transaction_coa_id => l_adr_transaction_coa_id
8286: , p_accounting_coa_id => l_adr_accounting_coa_id
8314: xla_accounting_err_pkg.build_message
8315: (p_appli_s_name => 'XLA'
8316: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
8317: ,p_token_1 => 'LINE_NUMBER'
8318: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
8319: ,p_token_2 => 'LINE_TYPE_NAME'
8320: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
8321: l_component_type
8322: ,l_component_code
8350: --
8351: --
8352: ------------------------------------------------------------------------------------------------
8353: -- 4219869 Business Flow
8354: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8355: -- Prior Entry. Currently, the following code is always generated.
8356: ------------------------------------------------------------------------------------------------
8357: XLA_AE_LINES_PKG.ValidateCurrentLine;
8358:
8353: -- 4219869 Business Flow
8354: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8355: -- Prior Entry. Currently, the following code is always generated.
8356: ------------------------------------------------------------------------------------------------
8357: XLA_AE_LINES_PKG.ValidateCurrentLine;
8358:
8359: ------------------------------------------------------------------------------------
8360: -- 4219869 Business Flow
8361: -- Populated credit and debit amounts -- Need to generate this within IF
8359: ------------------------------------------------------------------------------------
8360: -- 4219869 Business Flow
8361: -- Populated credit and debit amounts -- Need to generate this within IF
8362: ------------------------------------------------------------------------------------
8363: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8364:
8365: ----------------------------------------------------------------------------------
8366: -- 4219869 Business Flow
8367: -- Update journal entry status -- Need to generate this within IF
8391: -- To allow MPA report to determine if it should generate report process
8392: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8393: ------------------------------------------------------------------------------------------
8394:
8395: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8396: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8397: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8398: -- call ADRs
8399: -- Bug 4922099
8392: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8393: ------------------------------------------------------------------------------------------
8394:
8395: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8396: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8397: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8398: -- call ADRs
8399: -- Bug 4922099
8400: --
8416: , x_value_type_code => l_adr_value_type_code
8417: , p_side => 'NA'
8418: );
8419:
8420: xla_ae_lines_pkg.set_ccid(
8421: p_code_combination_id => l_ccid
8422: , p_value_type_code => l_adr_value_type_code
8423: , p_transaction_coa_id => l_adr_transaction_coa_id
8424: , p_accounting_coa_id => l_adr_accounting_coa_id
8439:
8440: --
8441: -- Update the line information that should be overwritten
8442: --
8443: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8444: p_header_num => 1);
8445: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8446:
8447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8441: -- Update the line information that should be overwritten
8442: --
8443: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8444: p_header_num => 1);
8445: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8446:
8447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8448:
8449: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8443: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
8444: p_header_num => 1);
8445: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
8446:
8447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8448:
8449: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8450: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8451: END IF;
8446:
8447: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
8448:
8449: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
8450: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
8451: END IF;
8452:
8453: --
8454: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8453: --
8454: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
8455: --
8456: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
8457: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
8458: ELSE
8459: ---------------------------------------------------------------------------------------------------
8460: -- 4262811a Switch Sign
8461: ---------------------------------------------------------------------------------------------------
8458: ELSE
8459: ---------------------------------------------------------------------------------------------------
8460: -- 4262811a Switch Sign
8461: ---------------------------------------------------------------------------------------------------
8462: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8463: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8464: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8465: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8466: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8459: ---------------------------------------------------------------------------------------------------
8460: -- 4262811a Switch Sign
8461: ---------------------------------------------------------------------------------------------------
8462: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8463: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8464: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8465: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8466: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8467: -- 5132302
8460: -- 4262811a Switch Sign
8461: ---------------------------------------------------------------------------------------------------
8462: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8463: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8464: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8465: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8466: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8467: -- 5132302
8468: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8461: ---------------------------------------------------------------------------------------------------
8462: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8463: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8464: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8465: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8466: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8467: -- 5132302
8468: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8469: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8462: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
8463: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8464: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8465: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8466: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8467: -- 5132302
8468: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8469: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8470:
8464: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8465: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8466: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8467: -- 5132302
8468: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8469: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8470:
8471: END IF;
8472:
8465: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
8466: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8467: -- 5132302
8468: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
8469: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
8470:
8471: END IF;
8472:
8473: -- 4955764
8470:
8471: END IF;
8472:
8473: -- 4955764
8474: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8475: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8476:
8477:
8478: XLA_AE_LINES_PKG.ValidateCurrentLine;
8474: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8475: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8476:
8477:
8478: XLA_AE_LINES_PKG.ValidateCurrentLine;
8479: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8480:
8481: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8482: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8475: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
8476:
8477:
8478: XLA_AE_LINES_PKG.ValidateCurrentLine;
8479: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8480:
8481: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
8482: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
8483: ,p_balance_type_code => l_balance_type_code);
8618: --
8619: -- bulk performance
8620: --
8621: l_balance_type_code VARCHAR2(1);
8622: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
8623: l_log_module VARCHAR2(240);
8624:
8625: --
8626: -- Upgrade strategy
8686: ') = 'TAX'
8687: THEN
8688:
8689: --
8690: XLA_AE_LINES_PKG.SetNewLine;
8691:
8692: p_balance_type_code := l_balance_type_code;
8693: -- set the flag so later we will know whether the gain loss line needs to be created
8694:
8698:
8699: --
8700: -- bulk performance
8701: --
8702: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
8703: p_header_num => 0); -- 4262811
8704: --
8705: -- set accounting line options
8706: --
8703: p_header_num => 0); -- 4262811
8704: --
8705: -- set accounting line options
8706: --
8707: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
8708: p_natural_side_code => 'C'
8709: , p_gain_or_loss_flag => 'N'
8710: , p_gl_transfer_mode_code => 'S'
8711: , p_acct_entry_type_code => 'A'
8717: --
8718: --
8719: -- set accounting line type info
8720: --
8721: xla_ae_lines_pkg.SetAcctLineType
8722: (p_component_type => l_component_type
8723: ,p_event_type_code => l_event_type_code
8724: ,p_line_definition_owner_code => l_line_definition_owner_code
8725: ,p_line_definition_code => l_line_definition_code
8731: ,p_event_class_code => l_event_class_code);
8732: --
8733: -- set accounting class
8734: --
8735: xla_ae_lines_pkg.SetAcctClass(
8736: p_accounting_class_code => 'TAX'
8737: , p_ae_header_id => l_ae_header_id
8738: );
8739:
8739:
8740: --
8741: -- set rounding class
8742: --
8743: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8744: 'RECEIVABLE';
8745:
8746: --
8747: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8743: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
8744: 'RECEIVABLE';
8745:
8746: --
8747: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8748: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8749: --
8750: -- bulk performance
8751: --
8744: 'RECEIVABLE';
8745:
8746: --
8747: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
8748: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8749: --
8750: -- bulk performance
8751: --
8752: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8748: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
8749: --
8750: -- bulk performance
8751: --
8752: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8753:
8754: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8755: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8756:
8750: -- bulk performance
8751: --
8752: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
8753:
8754: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8755: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8756:
8757: -- 4955764
8758: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8754: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
8755: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
8756:
8757: -- 4955764
8758: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
8759: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
8760:
8761: -- 4458381 Public Sector Enh
8762:
8792: l_rec_acct_attrs.array_char_value(12) := p_source_27;
8793: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
8794: l_rec_acct_attrs.array_num_value(13) := p_source_47;
8795:
8796: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8797: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8798:
8799: ---------------------------------------------------------------------------------------------------------------
8800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8793: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
8794: l_rec_acct_attrs.array_num_value(13) := p_source_47;
8795:
8796: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8797: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8798:
8799: ---------------------------------------------------------------------------------------------------------------
8800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8801: ---------------------------------------------------------------------------------------------------------------
8796: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
8797: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
8798:
8799: ---------------------------------------------------------------------------------------------------------------
8800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8801: ---------------------------------------------------------------------------------------------------------------
8802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8803:
8804: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8798:
8799: ---------------------------------------------------------------------------------------------------------------
8800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8801: ---------------------------------------------------------------------------------------------------------------
8802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8803:
8804: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8805: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8806:
8800: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
8801: ---------------------------------------------------------------------------------------------------------------
8802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8803:
8804: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8805: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8806:
8807: IF xla_accounting_cache_pkg.GetValueChar
8808: (p_source_code => 'LEDGER_CATEGORY_CODE'
8801: ---------------------------------------------------------------------------------------------------------------
8802: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
8803:
8804: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8805: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
8806:
8807: IF xla_accounting_cache_pkg.GetValueChar
8808: (p_source_code => 'LEDGER_CATEGORY_CODE'
8809: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
8812: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
8813: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
8814: )
8815: THEN
8816: xla_ae_lines_pkg.BflowUpgEntry
8817: (p_business_method_code => l_bflow_method_code
8818: ,p_business_class_code => l_bflow_class_code
8819: ,p_balance_type => l_balance_type_code);
8820: ELSE
8852: , x_value_type_code => l_adr_value_type_code
8853: , p_side => 'NA'
8854: );
8855:
8856: xla_ae_lines_pkg.set_ccid(
8857: p_code_combination_id => l_ccid
8858: , p_value_type_code => l_adr_value_type_code
8859: , p_transaction_coa_id => l_adr_transaction_coa_id
8860: , p_accounting_coa_id => l_adr_accounting_coa_id
8888: xla_accounting_err_pkg.build_message
8889: (p_appli_s_name => 'XLA'
8890: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
8891: ,p_token_1 => 'LINE_NUMBER'
8892: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
8893: ,p_token_2 => 'LINE_TYPE_NAME'
8894: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
8895: l_component_type
8896: ,l_component_code
8924: --
8925: --
8926: ------------------------------------------------------------------------------------------------
8927: -- 4219869 Business Flow
8928: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8929: -- Prior Entry. Currently, the following code is always generated.
8930: ------------------------------------------------------------------------------------------------
8931: XLA_AE_LINES_PKG.ValidateCurrentLine;
8932:
8927: -- 4219869 Business Flow
8928: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
8929: -- Prior Entry. Currently, the following code is always generated.
8930: ------------------------------------------------------------------------------------------------
8931: XLA_AE_LINES_PKG.ValidateCurrentLine;
8932:
8933: ------------------------------------------------------------------------------------
8934: -- 4219869 Business Flow
8935: -- Populated credit and debit amounts -- Need to generate this within IF
8933: ------------------------------------------------------------------------------------
8934: -- 4219869 Business Flow
8935: -- Populated credit and debit amounts -- Need to generate this within IF
8936: ------------------------------------------------------------------------------------
8937: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
8938:
8939: ----------------------------------------------------------------------------------
8940: -- 4219869 Business Flow
8941: -- Update journal entry status -- Need to generate this within IF
8965: -- To allow MPA report to determine if it should generate report process
8966: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8967: ------------------------------------------------------------------------------------------
8968:
8969: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8970: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8971: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8972: -- call ADRs
8973: -- Bug 4922099
8966: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
8967: ------------------------------------------------------------------------------------------
8968:
8969: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
8970: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
8971: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
8972: -- call ADRs
8973: -- Bug 4922099
8974: --
8990: , x_value_type_code => l_adr_value_type_code
8991: , p_side => 'NA'
8992: );
8993:
8994: xla_ae_lines_pkg.set_ccid(
8995: p_code_combination_id => l_ccid
8996: , p_value_type_code => l_adr_value_type_code
8997: , p_transaction_coa_id => l_adr_transaction_coa_id
8998: , p_accounting_coa_id => l_adr_accounting_coa_id
9013:
9014: --
9015: -- Update the line information that should be overwritten
9016: --
9017: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9018: p_header_num => 1);
9019: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9020:
9021: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9015: -- Update the line information that should be overwritten
9016: --
9017: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9018: p_header_num => 1);
9019: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9020:
9021: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9022:
9023: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9017: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9018: p_header_num => 1);
9019: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9020:
9021: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9022:
9023: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9024: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9025: END IF;
9020:
9021: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9022:
9023: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9024: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9025: END IF;
9026:
9027: --
9028: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9027: --
9028: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9029: --
9030: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
9031: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
9032: ELSE
9033: ---------------------------------------------------------------------------------------------------
9034: -- 4262811a Switch Sign
9035: ---------------------------------------------------------------------------------------------------
9032: ELSE
9033: ---------------------------------------------------------------------------------------------------
9034: -- 4262811a Switch Sign
9035: ---------------------------------------------------------------------------------------------------
9036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9033: ---------------------------------------------------------------------------------------------------
9034: -- 4262811a Switch Sign
9035: ---------------------------------------------------------------------------------------------------
9036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9041: -- 5132302
9034: -- 4262811a Switch Sign
9035: ---------------------------------------------------------------------------------------------------
9036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9041: -- 5132302
9042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9035: ---------------------------------------------------------------------------------------------------
9036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9041: -- 5132302
9042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9043: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9036: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9037: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9041: -- 5132302
9042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9043: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9044:
9038: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9041: -- 5132302
9042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9043: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9044:
9045: END IF;
9046:
9039: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9040: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9041: -- 5132302
9042: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9043: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9044:
9045: END IF;
9046:
9047: -- 4955764
9044:
9045: END IF;
9046:
9047: -- 4955764
9048: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9049: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9050:
9051:
9052: XLA_AE_LINES_PKG.ValidateCurrentLine;
9048: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9049: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9050:
9051:
9052: XLA_AE_LINES_PKG.ValidateCurrentLine;
9053: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9054:
9055: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9056: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9049: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9050:
9051:
9052: XLA_AE_LINES_PKG.ValidateCurrentLine;
9053: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9054:
9055: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9056: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9057: ,p_balance_type_code => l_balance_type_code);
9182: --
9183: -- bulk performance
9184: --
9185: l_balance_type_code VARCHAR2(1);
9186: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
9187: l_log_module VARCHAR2(240);
9188:
9189: --
9190: -- Upgrade strategy
9251: IF XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id = XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id OR
9252: l_balance_type_code <> 'B' THEN
9253:
9254: --
9255: XLA_AE_LINES_PKG.SetNewLine;
9256:
9257: p_balance_type_code := l_balance_type_code;
9258: -- set the flag so later we will know whether the gain loss line needs to be created
9259:
9263:
9264: --
9265: -- bulk performance
9266: --
9267: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
9268: p_header_num => 0); -- 4262811
9269: --
9270: -- set accounting line options
9271: --
9268: p_header_num => 0); -- 4262811
9269: --
9270: -- set accounting line options
9271: --
9272: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
9273: p_natural_side_code => 'G'
9274: , p_gain_or_loss_flag => 'N'
9275: , p_gl_transfer_mode_code => 'S'
9276: , p_acct_entry_type_code => 'A'
9282: --
9283: --
9284: -- set accounting line type info
9285: --
9286: xla_ae_lines_pkg.SetAcctLineType
9287: (p_component_type => l_component_type
9288: ,p_event_type_code => l_event_type_code
9289: ,p_line_definition_owner_code => l_line_definition_owner_code
9290: ,p_line_definition_code => l_line_definition_code
9296: ,p_event_class_code => l_event_class_code);
9297: --
9298: -- set accounting class
9299: --
9300: xla_ae_lines_pkg.SetAcctClass(
9301: p_accounting_class_code => 'EXCHANGE_GAIN_LOSS'
9302: , p_ae_header_id => l_ae_header_id
9303: );
9304:
9304:
9305: --
9306: -- set rounding class
9307: --
9308: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9309: 'EXCHANGE_GAIN_LOSS';
9310:
9311: --
9312: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9308: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9309: 'EXCHANGE_GAIN_LOSS';
9310:
9311: --
9312: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9313: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9314: --
9315: -- bulk performance
9316: --
9309: 'EXCHANGE_GAIN_LOSS';
9310:
9311: --
9312: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9313: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9314: --
9315: -- bulk performance
9316: --
9317: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9313: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9314: --
9315: -- bulk performance
9316: --
9317: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9318:
9319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9320: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9321:
9315: -- bulk performance
9316: --
9317: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9318:
9319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9320: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9321:
9322: -- 4955764
9323: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9319: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9320: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9321:
9322: -- 4955764
9323: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9324: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
9325:
9326: -- 4458381 Public Sector Enh
9327:
9347: l_rec_acct_attrs.array_char_value(7) := p_source_27;
9348: l_rec_acct_attrs.array_acct_attr_code(8) := 'TAX_LINE_REF_ID';
9349: l_rec_acct_attrs.array_num_value(8) := p_source_47;
9350:
9351: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9352: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9353:
9354: ---------------------------------------------------------------------------------------------------------------
9355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9348: l_rec_acct_attrs.array_acct_attr_code(8) := 'TAX_LINE_REF_ID';
9349: l_rec_acct_attrs.array_num_value(8) := p_source_47;
9350:
9351: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9352: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9353:
9354: ---------------------------------------------------------------------------------------------------------------
9355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9356: ---------------------------------------------------------------------------------------------------------------
9351: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9352: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9353:
9354: ---------------------------------------------------------------------------------------------------------------
9355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9356: ---------------------------------------------------------------------------------------------------------------
9357: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9358:
9359: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9353:
9354: ---------------------------------------------------------------------------------------------------------------
9355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9356: ---------------------------------------------------------------------------------------------------------------
9357: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9358:
9359: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9360: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9361:
9355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9356: ---------------------------------------------------------------------------------------------------------------
9357: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9358:
9359: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9360: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9361:
9362: IF xla_accounting_cache_pkg.GetValueChar
9363: (p_source_code => 'LEDGER_CATEGORY_CODE'
9356: ---------------------------------------------------------------------------------------------------------------
9357: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9358:
9359: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9360: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9361:
9362: IF xla_accounting_cache_pkg.GetValueChar
9363: (p_source_code => 'LEDGER_CATEGORY_CODE'
9364: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
9367: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
9368: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
9369: )
9370: THEN
9371: xla_ae_lines_pkg.BflowUpgEntry
9372: (p_business_method_code => l_bflow_method_code
9373: ,p_business_class_code => l_bflow_class_code
9374: ,p_balance_type => l_balance_type_code);
9375: ELSE
9407: , x_value_type_code => l_adr_value_type_code
9408: , p_side => 'CREDIT'
9409: );
9410:
9411: xla_ae_lines_pkg.set_ccid(
9412: p_code_combination_id => l_ccid
9413: , p_value_type_code => l_adr_value_type_code
9414: , p_transaction_coa_id => l_adr_transaction_coa_id
9415: , p_accounting_coa_id => l_adr_accounting_coa_id
9433: , x_value_type_code => l_adr_value_type_code
9434: , p_side => 'DEBIT'
9435: );
9436:
9437: xla_ae_lines_pkg.set_ccid(
9438: p_code_combination_id => l_ccid
9439: , p_value_type_code => l_adr_value_type_code
9440: , p_transaction_coa_id => l_adr_transaction_coa_id
9441: , p_accounting_coa_id => l_adr_accounting_coa_id
9469: xla_accounting_err_pkg.build_message
9470: (p_appli_s_name => 'XLA'
9471: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
9472: ,p_token_1 => 'LINE_NUMBER'
9473: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
9474: ,p_token_2 => 'LINE_TYPE_NAME'
9475: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
9476: l_component_type
9477: ,l_component_code
9505: --
9506: --
9507: ------------------------------------------------------------------------------------------------
9508: -- 4219869 Business Flow
9509: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9510: -- Prior Entry. Currently, the following code is always generated.
9511: ------------------------------------------------------------------------------------------------
9512: XLA_AE_LINES_PKG.ValidateCurrentLine;
9513:
9508: -- 4219869 Business Flow
9509: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
9510: -- Prior Entry. Currently, the following code is always generated.
9511: ------------------------------------------------------------------------------------------------
9512: XLA_AE_LINES_PKG.ValidateCurrentLine;
9513:
9514: ------------------------------------------------------------------------------------
9515: -- 4219869 Business Flow
9516: -- Populated credit and debit amounts -- Need to generate this within IF
9514: ------------------------------------------------------------------------------------
9515: -- 4219869 Business Flow
9516: -- Populated credit and debit amounts -- Need to generate this within IF
9517: ------------------------------------------------------------------------------------
9518: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9519:
9520: ----------------------------------------------------------------------------------
9521: -- 4219869 Business Flow
9522: -- Update journal entry status -- Need to generate this within IF
9546: -- To allow MPA report to determine if it should generate report process
9547: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9548: ------------------------------------------------------------------------------------------
9549:
9550: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9551: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9552: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9553: -- call ADRs
9554: -- Bug 4922099
9547: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
9548: ------------------------------------------------------------------------------------------
9549:
9550: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
9551: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
9552: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
9553: -- call ADRs
9554: -- Bug 4922099
9555: --
9571: , x_value_type_code => l_adr_value_type_code
9572: , p_side => 'CREDIT'
9573: );
9574:
9575: xla_ae_lines_pkg.set_ccid(
9576: p_code_combination_id => l_ccid
9577: , p_value_type_code => l_adr_value_type_code
9578: , p_transaction_coa_id => l_adr_transaction_coa_id
9579: , p_accounting_coa_id => l_adr_accounting_coa_id
9597: , x_value_type_code => l_adr_value_type_code
9598: , p_side => 'DEBIT'
9599: );
9600:
9601: xla_ae_lines_pkg.set_ccid(
9602: p_code_combination_id => l_ccid
9603: , p_value_type_code => l_adr_value_type_code
9604: , p_transaction_coa_id => l_adr_transaction_coa_id
9605: , p_accounting_coa_id => l_adr_accounting_coa_id
9620:
9621: --
9622: -- Update the line information that should be overwritten
9623: --
9624: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9625: p_header_num => 1);
9626: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9627:
9628: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9622: -- Update the line information that should be overwritten
9623: --
9624: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9625: p_header_num => 1);
9626: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9627:
9628: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9629:
9630: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9624: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
9625: p_header_num => 1);
9626: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
9627:
9628: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9629:
9630: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9631: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9632: END IF;
9627:
9628: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
9629:
9630: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
9631: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
9632: END IF;
9633:
9634: --
9635: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9634: --
9635: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
9636: --
9637: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
9638: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
9639: ELSE
9640: ---------------------------------------------------------------------------------------------------
9641: -- 4262811a Switch Sign
9642: ---------------------------------------------------------------------------------------------------
9639: ELSE
9640: ---------------------------------------------------------------------------------------------------
9641: -- 4262811a Switch Sign
9642: ---------------------------------------------------------------------------------------------------
9643: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9645: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9647: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9640: ---------------------------------------------------------------------------------------------------
9641: -- 4262811a Switch Sign
9642: ---------------------------------------------------------------------------------------------------
9643: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9645: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9647: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9648: -- 5132302
9641: -- 4262811a Switch Sign
9642: ---------------------------------------------------------------------------------------------------
9643: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9645: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9647: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9648: -- 5132302
9649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9642: ---------------------------------------------------------------------------------------------------
9643: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9645: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9647: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9648: -- 5132302
9649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9650: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9643: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
9644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9645: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9647: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9648: -- 5132302
9649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9650: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9651:
9645: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9647: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9648: -- 5132302
9649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9650: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9651:
9652: END IF;
9653:
9646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
9647: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9648: -- 5132302
9649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
9650: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
9651:
9652: END IF;
9653:
9654: -- 4955764
9651:
9652: END IF;
9653:
9654: -- 4955764
9655: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9656: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9657:
9658:
9659: XLA_AE_LINES_PKG.ValidateCurrentLine;
9655: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9656: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9657:
9658:
9659: XLA_AE_LINES_PKG.ValidateCurrentLine;
9660: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9661:
9662: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9663: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9656: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
9657:
9658:
9659: XLA_AE_LINES_PKG.ValidateCurrentLine;
9660: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
9661:
9662: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
9663: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
9664: ,p_balance_type_code => l_balance_type_code);
9798: --
9799: -- bulk performance
9800: --
9801: l_balance_type_code VARCHAR2(1);
9802: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
9803: l_log_module VARCHAR2(240);
9804:
9805: --
9806: -- Upgrade strategy
9866: ') = 'ROUND'
9867: THEN
9868:
9869: --
9870: XLA_AE_LINES_PKG.SetNewLine;
9871:
9872: p_balance_type_code := l_balance_type_code;
9873: -- set the flag so later we will know whether the gain loss line needs to be created
9874:
9878:
9879: --
9880: -- bulk performance
9881: --
9882: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
9883: p_header_num => 0); -- 4262811
9884: --
9885: -- set accounting line options
9886: --
9883: p_header_num => 0); -- 4262811
9884: --
9885: -- set accounting line options
9886: --
9887: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
9888: p_natural_side_code => 'C'
9889: , p_gain_or_loss_flag => 'N'
9890: , p_gl_transfer_mode_code => 'S'
9891: , p_acct_entry_type_code => 'A'
9897: --
9898: --
9899: -- set accounting line type info
9900: --
9901: xla_ae_lines_pkg.SetAcctLineType
9902: (p_component_type => l_component_type
9903: ,p_event_type_code => l_event_type_code
9904: ,p_line_definition_owner_code => l_line_definition_owner_code
9905: ,p_line_definition_code => l_line_definition_code
9911: ,p_event_class_code => l_event_class_code);
9912: --
9913: -- set accounting class
9914: --
9915: xla_ae_lines_pkg.SetAcctClass(
9916: p_accounting_class_code => 'ROUNDING'
9917: , p_ae_header_id => l_ae_header_id
9918: );
9919:
9919:
9920: --
9921: -- set rounding class
9922: --
9923: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9924: 'RECEIVABLE';
9925:
9926: --
9927: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9923: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
9924: 'RECEIVABLE';
9925:
9926: --
9927: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9928: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9929: --
9930: -- bulk performance
9931: --
9924: 'RECEIVABLE';
9925:
9926: --
9927: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
9928: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9929: --
9930: -- bulk performance
9931: --
9932: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9928: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
9929: --
9930: -- bulk performance
9931: --
9932: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9933:
9934: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9935: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9936:
9930: -- bulk performance
9931: --
9932: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
9933:
9934: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9935: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9936:
9937: -- 4955764
9938: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9934: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
9935: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
9936:
9937: -- 4955764
9938: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
9939: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
9940:
9941: -- 4458381 Public Sector Enh
9942:
9972: l_rec_acct_attrs.array_char_value(12) := p_source_27;
9973: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
9974: l_rec_acct_attrs.array_num_value(13) := p_source_47;
9975:
9976: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9977: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9978:
9979: ---------------------------------------------------------------------------------------------------------------
9980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9973: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
9974: l_rec_acct_attrs.array_num_value(13) := p_source_47;
9975:
9976: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9977: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9978:
9979: ---------------------------------------------------------------------------------------------------------------
9980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9981: ---------------------------------------------------------------------------------------------------------------
9976: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
9977: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
9978:
9979: ---------------------------------------------------------------------------------------------------------------
9980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9981: ---------------------------------------------------------------------------------------------------------------
9982: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9983:
9984: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9978:
9979: ---------------------------------------------------------------------------------------------------------------
9980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9981: ---------------------------------------------------------------------------------------------------------------
9982: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9983:
9984: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9985: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9986:
9980: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
9981: ---------------------------------------------------------------------------------------------------------------
9982: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9983:
9984: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9985: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9986:
9987: IF xla_accounting_cache_pkg.GetValueChar
9988: (p_source_code => 'LEDGER_CATEGORY_CODE'
9981: ---------------------------------------------------------------------------------------------------------------
9982: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
9983:
9984: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9985: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
9986:
9987: IF xla_accounting_cache_pkg.GetValueChar
9988: (p_source_code => 'LEDGER_CATEGORY_CODE'
9989: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
9992: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
9993: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
9994: )
9995: THEN
9996: xla_ae_lines_pkg.BflowUpgEntry
9997: (p_business_method_code => l_bflow_method_code
9998: ,p_business_class_code => l_bflow_class_code
9999: ,p_balance_type => l_balance_type_code);
10000: ELSE
10032: , x_value_type_code => l_adr_value_type_code
10033: , p_side => 'NA'
10034: );
10035:
10036: xla_ae_lines_pkg.set_ccid(
10037: p_code_combination_id => l_ccid
10038: , p_value_type_code => l_adr_value_type_code
10039: , p_transaction_coa_id => l_adr_transaction_coa_id
10040: , p_accounting_coa_id => l_adr_accounting_coa_id
10068: xla_accounting_err_pkg.build_message
10069: (p_appli_s_name => 'XLA'
10070: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
10071: ,p_token_1 => 'LINE_NUMBER'
10072: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
10073: ,p_token_2 => 'LINE_TYPE_NAME'
10074: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
10075: l_component_type
10076: ,l_component_code
10104: --
10105: --
10106: ------------------------------------------------------------------------------------------------
10107: -- 4219869 Business Flow
10108: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10109: -- Prior Entry. Currently, the following code is always generated.
10110: ------------------------------------------------------------------------------------------------
10111: XLA_AE_LINES_PKG.ValidateCurrentLine;
10112:
10107: -- 4219869 Business Flow
10108: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10109: -- Prior Entry. Currently, the following code is always generated.
10110: ------------------------------------------------------------------------------------------------
10111: XLA_AE_LINES_PKG.ValidateCurrentLine;
10112:
10113: ------------------------------------------------------------------------------------
10114: -- 4219869 Business Flow
10115: -- Populated credit and debit amounts -- Need to generate this within IF
10113: ------------------------------------------------------------------------------------
10114: -- 4219869 Business Flow
10115: -- Populated credit and debit amounts -- Need to generate this within IF
10116: ------------------------------------------------------------------------------------
10117: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10118:
10119: ----------------------------------------------------------------------------------
10120: -- 4219869 Business Flow
10121: -- Update journal entry status -- Need to generate this within IF
10145: -- To allow MPA report to determine if it should generate report process
10146: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10147: ------------------------------------------------------------------------------------------
10148:
10149: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10150: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10151: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10152: -- call ADRs
10153: -- Bug 4922099
10146: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10147: ------------------------------------------------------------------------------------------
10148:
10149: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10150: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10151: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10152: -- call ADRs
10153: -- Bug 4922099
10154: --
10170: , x_value_type_code => l_adr_value_type_code
10171: , p_side => 'NA'
10172: );
10173:
10174: xla_ae_lines_pkg.set_ccid(
10175: p_code_combination_id => l_ccid
10176: , p_value_type_code => l_adr_value_type_code
10177: , p_transaction_coa_id => l_adr_transaction_coa_id
10178: , p_accounting_coa_id => l_adr_accounting_coa_id
10193:
10194: --
10195: -- Update the line information that should be overwritten
10196: --
10197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10198: p_header_num => 1);
10199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10200:
10201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10195: -- Update the line information that should be overwritten
10196: --
10197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10198: p_header_num => 1);
10199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10200:
10201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10202:
10203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10198: p_header_num => 1);
10199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10200:
10201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10202:
10203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10204: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10205: END IF;
10200:
10201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10202:
10203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10204: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10205: END IF;
10206:
10207: --
10208: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10207: --
10208: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10209: --
10210: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
10211: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
10212: ELSE
10213: ---------------------------------------------------------------------------------------------------
10214: -- 4262811a Switch Sign
10215: ---------------------------------------------------------------------------------------------------
10212: ELSE
10213: ---------------------------------------------------------------------------------------------------
10214: -- 4262811a Switch Sign
10215: ---------------------------------------------------------------------------------------------------
10216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10213: ---------------------------------------------------------------------------------------------------
10214: -- 4262811a Switch Sign
10215: ---------------------------------------------------------------------------------------------------
10216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10221: -- 5132302
10214: -- 4262811a Switch Sign
10215: ---------------------------------------------------------------------------------------------------
10216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10221: -- 5132302
10222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10215: ---------------------------------------------------------------------------------------------------
10216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10221: -- 5132302
10222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10221: -- 5132302
10222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10224:
10218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10221: -- 5132302
10222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10224:
10225: END IF;
10226:
10219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10221: -- 5132302
10222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10224:
10225: END IF;
10226:
10227: -- 4955764
10224:
10225: END IF;
10226:
10227: -- 4955764
10228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10230:
10231:
10232: XLA_AE_LINES_PKG.ValidateCurrentLine;
10228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10230:
10231:
10232: XLA_AE_LINES_PKG.ValidateCurrentLine;
10233: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10234:
10235: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10236: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10230:
10231:
10232: XLA_AE_LINES_PKG.ValidateCurrentLine;
10233: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10234:
10235: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10236: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10237: ,p_balance_type_code => l_balance_type_code);
10372: --
10373: -- bulk performance
10374: --
10375: l_balance_type_code VARCHAR2(1);
10376: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
10377: l_log_module VARCHAR2(240);
10378:
10379: --
10380: -- Upgrade strategy
10440: ') = 'UNBILL'
10441: THEN
10442:
10443: --
10444: XLA_AE_LINES_PKG.SetNewLine;
10445:
10446: p_balance_type_code := l_balance_type_code;
10447: -- set the flag so later we will know whether the gain loss line needs to be created
10448:
10452:
10453: --
10454: -- bulk performance
10455: --
10456: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
10457: p_header_num => 0); -- 4262811
10458: --
10459: -- set accounting line options
10460: --
10457: p_header_num => 0); -- 4262811
10458: --
10459: -- set accounting line options
10460: --
10461: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
10462: p_natural_side_code => 'C'
10463: , p_gain_or_loss_flag => 'N'
10464: , p_gl_transfer_mode_code => 'S'
10465: , p_acct_entry_type_code => 'A'
10471: --
10472: --
10473: -- set accounting line type info
10474: --
10475: xla_ae_lines_pkg.SetAcctLineType
10476: (p_component_type => l_component_type
10477: ,p_event_type_code => l_event_type_code
10478: ,p_line_definition_owner_code => l_line_definition_owner_code
10479: ,p_line_definition_code => l_line_definition_code
10485: ,p_event_class_code => l_event_class_code);
10486: --
10487: -- set accounting class
10488: --
10489: xla_ae_lines_pkg.SetAcctClass(
10490: p_accounting_class_code => 'UNBILL'
10491: , p_ae_header_id => l_ae_header_id
10492: );
10493:
10493:
10494: --
10495: -- set rounding class
10496: --
10497: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10498: 'RECEIVABLE';
10499:
10500: --
10501: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10497: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
10498: 'RECEIVABLE';
10499:
10500: --
10501: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10502: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10503: --
10504: -- bulk performance
10505: --
10498: 'RECEIVABLE';
10499:
10500: --
10501: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
10502: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10503: --
10504: -- bulk performance
10505: --
10506: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10502: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
10503: --
10504: -- bulk performance
10505: --
10506: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10507:
10508: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10509: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10510:
10504: -- bulk performance
10505: --
10506: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
10507:
10508: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10509: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10510:
10511: -- 4955764
10512: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10508: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
10509: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
10510:
10511: -- 4955764
10512: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10513: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
10514:
10515: -- 4458381 Public Sector Enh
10516:
10546: l_rec_acct_attrs.array_char_value(12) := p_source_27;
10547: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
10548: l_rec_acct_attrs.array_num_value(13) := p_source_47;
10549:
10550: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10551: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10552:
10553: ---------------------------------------------------------------------------------------------------------------
10554: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10547: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
10548: l_rec_acct_attrs.array_num_value(13) := p_source_47;
10549:
10550: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10551: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10552:
10553: ---------------------------------------------------------------------------------------------------------------
10554: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10555: ---------------------------------------------------------------------------------------------------------------
10550: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
10551: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
10552:
10553: ---------------------------------------------------------------------------------------------------------------
10554: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10555: ---------------------------------------------------------------------------------------------------------------
10556: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10557:
10558: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10552:
10553: ---------------------------------------------------------------------------------------------------------------
10554: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10555: ---------------------------------------------------------------------------------------------------------------
10556: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10557:
10558: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10559: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10560:
10554: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
10555: ---------------------------------------------------------------------------------------------------------------
10556: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10557:
10558: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10559: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10560:
10561: IF xla_accounting_cache_pkg.GetValueChar
10562: (p_source_code => 'LEDGER_CATEGORY_CODE'
10555: ---------------------------------------------------------------------------------------------------------------
10556: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
10557:
10558: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10559: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
10560:
10561: IF xla_accounting_cache_pkg.GetValueChar
10562: (p_source_code => 'LEDGER_CATEGORY_CODE'
10563: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
10566: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
10567: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
10568: )
10569: THEN
10570: xla_ae_lines_pkg.BflowUpgEntry
10571: (p_business_method_code => l_bflow_method_code
10572: ,p_business_class_code => l_bflow_class_code
10573: ,p_balance_type => l_balance_type_code);
10574: ELSE
10606: , x_value_type_code => l_adr_value_type_code
10607: , p_side => 'NA'
10608: );
10609:
10610: xla_ae_lines_pkg.set_ccid(
10611: p_code_combination_id => l_ccid
10612: , p_value_type_code => l_adr_value_type_code
10613: , p_transaction_coa_id => l_adr_transaction_coa_id
10614: , p_accounting_coa_id => l_adr_accounting_coa_id
10642: xla_accounting_err_pkg.build_message
10643: (p_appli_s_name => 'XLA'
10644: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
10645: ,p_token_1 => 'LINE_NUMBER'
10646: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
10647: ,p_token_2 => 'LINE_TYPE_NAME'
10648: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
10649: l_component_type
10650: ,l_component_code
10678: --
10679: --
10680: ------------------------------------------------------------------------------------------------
10681: -- 4219869 Business Flow
10682: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10683: -- Prior Entry. Currently, the following code is always generated.
10684: ------------------------------------------------------------------------------------------------
10685: XLA_AE_LINES_PKG.ValidateCurrentLine;
10686:
10681: -- 4219869 Business Flow
10682: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
10683: -- Prior Entry. Currently, the following code is always generated.
10684: ------------------------------------------------------------------------------------------------
10685: XLA_AE_LINES_PKG.ValidateCurrentLine;
10686:
10687: ------------------------------------------------------------------------------------
10688: -- 4219869 Business Flow
10689: -- Populated credit and debit amounts -- Need to generate this within IF
10687: ------------------------------------------------------------------------------------
10688: -- 4219869 Business Flow
10689: -- Populated credit and debit amounts -- Need to generate this within IF
10690: ------------------------------------------------------------------------------------
10691: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10692:
10693: ----------------------------------------------------------------------------------
10694: -- 4219869 Business Flow
10695: -- Update journal entry status -- Need to generate this within IF
10719: -- To allow MPA report to determine if it should generate report process
10720: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10721: ------------------------------------------------------------------------------------------
10722:
10723: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10724: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10725: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10726: -- call ADRs
10727: -- Bug 4922099
10720: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
10721: ------------------------------------------------------------------------------------------
10722:
10723: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
10724: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
10725: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
10726: -- call ADRs
10727: -- Bug 4922099
10728: --
10744: , x_value_type_code => l_adr_value_type_code
10745: , p_side => 'NA'
10746: );
10747:
10748: xla_ae_lines_pkg.set_ccid(
10749: p_code_combination_id => l_ccid
10750: , p_value_type_code => l_adr_value_type_code
10751: , p_transaction_coa_id => l_adr_transaction_coa_id
10752: , p_accounting_coa_id => l_adr_accounting_coa_id
10767:
10768: --
10769: -- Update the line information that should be overwritten
10770: --
10771: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10772: p_header_num => 1);
10773: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10774:
10775: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10769: -- Update the line information that should be overwritten
10770: --
10771: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10772: p_header_num => 1);
10773: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10774:
10775: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10776:
10777: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10771: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
10772: p_header_num => 1);
10773: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
10774:
10775: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10776:
10777: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10778: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10779: END IF;
10774:
10775: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
10776:
10777: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
10778: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
10779: END IF;
10780:
10781: --
10782: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10781: --
10782: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
10783: --
10784: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
10785: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
10786: ELSE
10787: ---------------------------------------------------------------------------------------------------
10788: -- 4262811a Switch Sign
10789: ---------------------------------------------------------------------------------------------------
10786: ELSE
10787: ---------------------------------------------------------------------------------------------------
10788: -- 4262811a Switch Sign
10789: ---------------------------------------------------------------------------------------------------
10790: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10791: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10793: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10794: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10787: ---------------------------------------------------------------------------------------------------
10788: -- 4262811a Switch Sign
10789: ---------------------------------------------------------------------------------------------------
10790: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10791: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10793: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10794: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10795: -- 5132302
10788: -- 4262811a Switch Sign
10789: ---------------------------------------------------------------------------------------------------
10790: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10791: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10793: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10794: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10795: -- 5132302
10796: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10789: ---------------------------------------------------------------------------------------------------
10790: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10791: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10793: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10794: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10795: -- 5132302
10796: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10797: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10790: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
10791: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10793: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10794: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10795: -- 5132302
10796: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10797: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10798:
10792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10793: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10794: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10795: -- 5132302
10796: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10797: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10798:
10799: END IF;
10800:
10793: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
10794: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10795: -- 5132302
10796: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
10797: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
10798:
10799: END IF;
10800:
10801: -- 4955764
10798:
10799: END IF;
10800:
10801: -- 4955764
10802: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10803: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10804:
10805:
10806: XLA_AE_LINES_PKG.ValidateCurrentLine;
10802: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
10803: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10804:
10805:
10806: XLA_AE_LINES_PKG.ValidateCurrentLine;
10807: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10808:
10809: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10810: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10803: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
10804:
10805:
10806: XLA_AE_LINES_PKG.ValidateCurrentLine;
10807: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
10808:
10809: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
10810: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
10811: ,p_balance_type_code => l_balance_type_code);
10946: --
10947: -- bulk performance
10948: --
10949: l_balance_type_code VARCHAR2(1);
10950: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
10951: l_log_module VARCHAR2(240);
10952:
10953: --
10954: -- Upgrade strategy
11014: ') = 'UNEARN'
11015: THEN
11016:
11017: --
11018: XLA_AE_LINES_PKG.SetNewLine;
11019:
11020: p_balance_type_code := l_balance_type_code;
11021: -- set the flag so later we will know whether the gain loss line needs to be created
11022:
11026:
11027: --
11028: -- bulk performance
11029: --
11030: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
11031: p_header_num => 0); -- 4262811
11032: --
11033: -- set accounting line options
11034: --
11031: p_header_num => 0); -- 4262811
11032: --
11033: -- set accounting line options
11034: --
11035: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
11036: p_natural_side_code => 'C'
11037: , p_gain_or_loss_flag => 'N'
11038: , p_gl_transfer_mode_code => 'S'
11039: , p_acct_entry_type_code => 'A'
11045: --
11046: --
11047: -- set accounting line type info
11048: --
11049: xla_ae_lines_pkg.SetAcctLineType
11050: (p_component_type => l_component_type
11051: ,p_event_type_code => l_event_type_code
11052: ,p_line_definition_owner_code => l_line_definition_owner_code
11053: ,p_line_definition_code => l_line_definition_code
11059: ,p_event_class_code => l_event_class_code);
11060: --
11061: -- set accounting class
11062: --
11063: xla_ae_lines_pkg.SetAcctClass(
11064: p_accounting_class_code => 'UNEARNED_REVENUE'
11065: , p_ae_header_id => l_ae_header_id
11066: );
11067:
11067:
11068: --
11069: -- set rounding class
11070: --
11071: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11072: 'RECEIVABLE';
11073:
11074: --
11075: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11071: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11072: 'RECEIVABLE';
11073:
11074: --
11075: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11076: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11077: --
11078: -- bulk performance
11079: --
11072: 'RECEIVABLE';
11073:
11074: --
11075: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11076: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11077: --
11078: -- bulk performance
11079: --
11080: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11076: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11077: --
11078: -- bulk performance
11079: --
11080: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11081:
11082: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11083: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11084:
11078: -- bulk performance
11079: --
11080: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11081:
11082: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11083: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11084:
11085: -- 4955764
11086: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11082: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11083: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11084:
11085: -- 4955764
11086: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11087: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
11088:
11089: -- 4458381 Public Sector Enh
11090:
11120: l_rec_acct_attrs.array_char_value(12) := p_source_27;
11121: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
11122: l_rec_acct_attrs.array_num_value(13) := p_source_47;
11123:
11124: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11125: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11126:
11127: ---------------------------------------------------------------------------------------------------------------
11128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11121: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
11122: l_rec_acct_attrs.array_num_value(13) := p_source_47;
11123:
11124: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11125: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11126:
11127: ---------------------------------------------------------------------------------------------------------------
11128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11129: ---------------------------------------------------------------------------------------------------------------
11124: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11125: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11126:
11127: ---------------------------------------------------------------------------------------------------------------
11128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11129: ---------------------------------------------------------------------------------------------------------------
11130: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11131:
11132: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11126:
11127: ---------------------------------------------------------------------------------------------------------------
11128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11129: ---------------------------------------------------------------------------------------------------------------
11130: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11131:
11132: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11133: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11134:
11128: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11129: ---------------------------------------------------------------------------------------------------------------
11130: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11131:
11132: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11133: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11134:
11135: IF xla_accounting_cache_pkg.GetValueChar
11136: (p_source_code => 'LEDGER_CATEGORY_CODE'
11129: ---------------------------------------------------------------------------------------------------------------
11130: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11131:
11132: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11133: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11134:
11135: IF xla_accounting_cache_pkg.GetValueChar
11136: (p_source_code => 'LEDGER_CATEGORY_CODE'
11137: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
11140: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
11141: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
11142: )
11143: THEN
11144: xla_ae_lines_pkg.BflowUpgEntry
11145: (p_business_method_code => l_bflow_method_code
11146: ,p_business_class_code => l_bflow_class_code
11147: ,p_balance_type => l_balance_type_code);
11148: ELSE
11180: , x_value_type_code => l_adr_value_type_code
11181: , p_side => 'NA'
11182: );
11183:
11184: xla_ae_lines_pkg.set_ccid(
11185: p_code_combination_id => l_ccid
11186: , p_value_type_code => l_adr_value_type_code
11187: , p_transaction_coa_id => l_adr_transaction_coa_id
11188: , p_accounting_coa_id => l_adr_accounting_coa_id
11216: xla_accounting_err_pkg.build_message
11217: (p_appli_s_name => 'XLA'
11218: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
11219: ,p_token_1 => 'LINE_NUMBER'
11220: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
11221: ,p_token_2 => 'LINE_TYPE_NAME'
11222: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
11223: l_component_type
11224: ,l_component_code
11252: --
11253: --
11254: ------------------------------------------------------------------------------------------------
11255: -- 4219869 Business Flow
11256: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11257: -- Prior Entry. Currently, the following code is always generated.
11258: ------------------------------------------------------------------------------------------------
11259: XLA_AE_LINES_PKG.ValidateCurrentLine;
11260:
11255: -- 4219869 Business Flow
11256: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11257: -- Prior Entry. Currently, the following code is always generated.
11258: ------------------------------------------------------------------------------------------------
11259: XLA_AE_LINES_PKG.ValidateCurrentLine;
11260:
11261: ------------------------------------------------------------------------------------
11262: -- 4219869 Business Flow
11263: -- Populated credit and debit amounts -- Need to generate this within IF
11261: ------------------------------------------------------------------------------------
11262: -- 4219869 Business Flow
11263: -- Populated credit and debit amounts -- Need to generate this within IF
11264: ------------------------------------------------------------------------------------
11265: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11266:
11267: ----------------------------------------------------------------------------------
11268: -- 4219869 Business Flow
11269: -- Update journal entry status -- Need to generate this within IF
11293: -- To allow MPA report to determine if it should generate report process
11294: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11295: ------------------------------------------------------------------------------------------
11296:
11297: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11298: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11299: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11300: -- call ADRs
11301: -- Bug 4922099
11294: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11295: ------------------------------------------------------------------------------------------
11296:
11297: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11298: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11299: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11300: -- call ADRs
11301: -- Bug 4922099
11302: --
11318: , x_value_type_code => l_adr_value_type_code
11319: , p_side => 'NA'
11320: );
11321:
11322: xla_ae_lines_pkg.set_ccid(
11323: p_code_combination_id => l_ccid
11324: , p_value_type_code => l_adr_value_type_code
11325: , p_transaction_coa_id => l_adr_transaction_coa_id
11326: , p_accounting_coa_id => l_adr_accounting_coa_id
11341:
11342: --
11343: -- Update the line information that should be overwritten
11344: --
11345: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11346: p_header_num => 1);
11347: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11348:
11349: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11343: -- Update the line information that should be overwritten
11344: --
11345: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11346: p_header_num => 1);
11347: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11348:
11349: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11350:
11351: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11345: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11346: p_header_num => 1);
11347: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11348:
11349: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11350:
11351: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11352: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11353: END IF;
11348:
11349: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11350:
11351: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11352: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11353: END IF;
11354:
11355: --
11356: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11355: --
11356: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11357: --
11358: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
11359: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
11360: ELSE
11361: ---------------------------------------------------------------------------------------------------
11362: -- 4262811a Switch Sign
11363: ---------------------------------------------------------------------------------------------------
11360: ELSE
11361: ---------------------------------------------------------------------------------------------------
11362: -- 4262811a Switch Sign
11363: ---------------------------------------------------------------------------------------------------
11364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11361: ---------------------------------------------------------------------------------------------------
11362: -- 4262811a Switch Sign
11363: ---------------------------------------------------------------------------------------------------
11364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11369: -- 5132302
11362: -- 4262811a Switch Sign
11363: ---------------------------------------------------------------------------------------------------
11364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11369: -- 5132302
11370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11363: ---------------------------------------------------------------------------------------------------
11364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11369: -- 5132302
11370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11364: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11365: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11369: -- 5132302
11370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11372:
11366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11369: -- 5132302
11370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11372:
11373: END IF;
11374:
11367: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11369: -- 5132302
11370: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11372:
11373: END IF;
11374:
11375: -- 4955764
11372:
11373: END IF;
11374:
11375: -- 4955764
11376: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11377: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11378:
11379:
11380: XLA_AE_LINES_PKG.ValidateCurrentLine;
11376: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11377: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11378:
11379:
11380: XLA_AE_LINES_PKG.ValidateCurrentLine;
11381: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11382:
11383: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11384: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11377: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11378:
11379:
11380: XLA_AE_LINES_PKG.ValidateCurrentLine;
11381: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11382:
11383: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11384: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11385: ,p_balance_type_code => l_balance_type_code);
11516: --
11517: -- bulk performance
11518: --
11519: l_balance_type_code VARCHAR2(1);
11520: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
11521: l_log_module VARCHAR2(240);
11522:
11523: --
11524: -- Upgrade strategy
11584: ') = 'REC'
11585: THEN
11586:
11587: --
11588: XLA_AE_LINES_PKG.SetNewLine;
11589:
11590: p_balance_type_code := l_balance_type_code;
11591: -- set the flag so later we will know whether the gain loss line needs to be created
11592:
11596:
11597: --
11598: -- bulk performance
11599: --
11600: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
11601: p_header_num => 0); -- 4262811
11602: --
11603: -- set accounting line options
11604: --
11601: p_header_num => 0); -- 4262811
11602: --
11603: -- set accounting line options
11604: --
11605: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
11606: p_natural_side_code => 'D'
11607: , p_gain_or_loss_flag => 'N'
11608: , p_gl_transfer_mode_code => 'S'
11609: , p_acct_entry_type_code => 'A'
11615: --
11616: --
11617: -- set accounting line type info
11618: --
11619: xla_ae_lines_pkg.SetAcctLineType
11620: (p_component_type => l_component_type
11621: ,p_event_type_code => l_event_type_code
11622: ,p_line_definition_owner_code => l_line_definition_owner_code
11623: ,p_line_definition_code => l_line_definition_code
11629: ,p_event_class_code => l_event_class_code);
11630: --
11631: -- set accounting class
11632: --
11633: xla_ae_lines_pkg.SetAcctClass(
11634: p_accounting_class_code => 'RECEIVABLE'
11635: , p_ae_header_id => l_ae_header_id
11636: );
11637:
11637:
11638: --
11639: -- set rounding class
11640: --
11641: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11642: 'RECEIVABLE';
11643:
11644: --
11645: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11641: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
11642: 'RECEIVABLE';
11643:
11644: --
11645: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11646: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11647: --
11648: -- bulk performance
11649: --
11642: 'RECEIVABLE';
11643:
11644: --
11645: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
11646: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11647: --
11648: -- bulk performance
11649: --
11650: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11646: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
11647: --
11648: -- bulk performance
11649: --
11650: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11651:
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11653: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11654:
11648: -- bulk performance
11649: --
11650: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
11651:
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11653: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11654:
11655: -- 4955764
11656: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11652: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
11653: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
11654:
11655: -- 4955764
11656: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11657: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
11658:
11659: -- 4458381 Public Sector Enh
11660:
11686: l_rec_acct_attrs.array_num_value(10) := p_source_26;
11687: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
11688: l_rec_acct_attrs.array_char_value(11) := p_source_27;
11689:
11690: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11691: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11692:
11693: ---------------------------------------------------------------------------------------------------------------
11694: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11687: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
11688: l_rec_acct_attrs.array_char_value(11) := p_source_27;
11689:
11690: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11691: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11692:
11693: ---------------------------------------------------------------------------------------------------------------
11694: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11695: ---------------------------------------------------------------------------------------------------------------
11690: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
11691: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
11692:
11693: ---------------------------------------------------------------------------------------------------------------
11694: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11695: ---------------------------------------------------------------------------------------------------------------
11696: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11697:
11698: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11692:
11693: ---------------------------------------------------------------------------------------------------------------
11694: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11695: ---------------------------------------------------------------------------------------------------------------
11696: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11697:
11698: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11699: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11700:
11694: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
11695: ---------------------------------------------------------------------------------------------------------------
11696: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11697:
11698: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11699: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11700:
11701: IF xla_accounting_cache_pkg.GetValueChar
11702: (p_source_code => 'LEDGER_CATEGORY_CODE'
11695: ---------------------------------------------------------------------------------------------------------------
11696: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
11697:
11698: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11699: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
11700:
11701: IF xla_accounting_cache_pkg.GetValueChar
11702: (p_source_code => 'LEDGER_CATEGORY_CODE'
11703: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
11706: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
11707: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
11708: )
11709: THEN
11710: xla_ae_lines_pkg.BflowUpgEntry
11711: (p_business_method_code => l_bflow_method_code
11712: ,p_business_class_code => l_bflow_class_code
11713: ,p_balance_type => l_balance_type_code);
11714: ELSE
11746: , x_value_type_code => l_adr_value_type_code
11747: , p_side => 'NA'
11748: );
11749:
11750: xla_ae_lines_pkg.set_ccid(
11751: p_code_combination_id => l_ccid
11752: , p_value_type_code => l_adr_value_type_code
11753: , p_transaction_coa_id => l_adr_transaction_coa_id
11754: , p_accounting_coa_id => l_adr_accounting_coa_id
11782: xla_accounting_err_pkg.build_message
11783: (p_appli_s_name => 'XLA'
11784: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
11785: ,p_token_1 => 'LINE_NUMBER'
11786: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
11787: ,p_token_2 => 'LINE_TYPE_NAME'
11788: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
11789: l_component_type
11790: ,l_component_code
11818: --
11819: --
11820: ------------------------------------------------------------------------------------------------
11821: -- 4219869 Business Flow
11822: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11823: -- Prior Entry. Currently, the following code is always generated.
11824: ------------------------------------------------------------------------------------------------
11825: XLA_AE_LINES_PKG.ValidateCurrentLine;
11826:
11821: -- 4219869 Business Flow
11822: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
11823: -- Prior Entry. Currently, the following code is always generated.
11824: ------------------------------------------------------------------------------------------------
11825: XLA_AE_LINES_PKG.ValidateCurrentLine;
11826:
11827: ------------------------------------------------------------------------------------
11828: -- 4219869 Business Flow
11829: -- Populated credit and debit amounts -- Need to generate this within IF
11827: ------------------------------------------------------------------------------------
11828: -- 4219869 Business Flow
11829: -- Populated credit and debit amounts -- Need to generate this within IF
11830: ------------------------------------------------------------------------------------
11831: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11832:
11833: ----------------------------------------------------------------------------------
11834: -- 4219869 Business Flow
11835: -- Update journal entry status -- Need to generate this within IF
11859: -- To allow MPA report to determine if it should generate report process
11860: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11861: ------------------------------------------------------------------------------------------
11862:
11863: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11864: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11865: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11866: -- call ADRs
11867: -- Bug 4922099
11860: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
11861: ------------------------------------------------------------------------------------------
11862:
11863: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
11864: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
11865: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
11866: -- call ADRs
11867: -- Bug 4922099
11868: --
11884: , x_value_type_code => l_adr_value_type_code
11885: , p_side => 'NA'
11886: );
11887:
11888: xla_ae_lines_pkg.set_ccid(
11889: p_code_combination_id => l_ccid
11890: , p_value_type_code => l_adr_value_type_code
11891: , p_transaction_coa_id => l_adr_transaction_coa_id
11892: , p_accounting_coa_id => l_adr_accounting_coa_id
11907:
11908: --
11909: -- Update the line information that should be overwritten
11910: --
11911: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11912: p_header_num => 1);
11913: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11914:
11915: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11909: -- Update the line information that should be overwritten
11910: --
11911: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11912: p_header_num => 1);
11913: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11914:
11915: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11916:
11917: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11911: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
11912: p_header_num => 1);
11913: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
11914:
11915: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11916:
11917: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11918: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11919: END IF;
11914:
11915: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
11916:
11917: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
11918: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
11919: END IF;
11920:
11921: --
11922: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11921: --
11922: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
11923: --
11924: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
11925: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
11926: ELSE
11927: ---------------------------------------------------------------------------------------------------
11928: -- 4262811a Switch Sign
11929: ---------------------------------------------------------------------------------------------------
11926: ELSE
11927: ---------------------------------------------------------------------------------------------------
11928: -- 4262811a Switch Sign
11929: ---------------------------------------------------------------------------------------------------
11930: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11927: ---------------------------------------------------------------------------------------------------
11928: -- 4262811a Switch Sign
11929: ---------------------------------------------------------------------------------------------------
11930: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11935: -- 5132302
11928: -- 4262811a Switch Sign
11929: ---------------------------------------------------------------------------------------------------
11930: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11935: -- 5132302
11936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11929: ---------------------------------------------------------------------------------------------------
11930: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11935: -- 5132302
11936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11930: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
11931: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11935: -- 5132302
11936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11938:
11932: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11935: -- 5132302
11936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11938:
11939: END IF;
11940:
11933: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
11934: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11935: -- 5132302
11936: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
11937: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
11938:
11939: END IF;
11940:
11941: -- 4955764
11938:
11939: END IF;
11940:
11941: -- 4955764
11942: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11943: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11944:
11945:
11946: XLA_AE_LINES_PKG.ValidateCurrentLine;
11942: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
11943: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11944:
11945:
11946: XLA_AE_LINES_PKG.ValidateCurrentLine;
11947: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11948:
11949: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11950: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11943: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
11944:
11945:
11946: XLA_AE_LINES_PKG.ValidateCurrentLine;
11947: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
11948:
11949: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
11950: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
11951: ,p_balance_type_code => l_balance_type_code);
12082: --
12083: -- bulk performance
12084: --
12085: l_balance_type_code VARCHAR2(1);
12086: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
12087: l_log_module VARCHAR2(240);
12088:
12089: --
12090: -- Upgrade strategy
12150: ') = 'REV'
12151: THEN
12152:
12153: --
12154: XLA_AE_LINES_PKG.SetNewLine;
12155:
12156: p_balance_type_code := l_balance_type_code;
12157: -- set the flag so later we will know whether the gain loss line needs to be created
12158:
12162:
12163: --
12164: -- bulk performance
12165: --
12166: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
12167: p_header_num => 0); -- 4262811
12168: --
12169: -- set accounting line options
12170: --
12167: p_header_num => 0); -- 4262811
12168: --
12169: -- set accounting line options
12170: --
12171: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
12172: p_natural_side_code => 'C'
12173: , p_gain_or_loss_flag => 'N'
12174: , p_gl_transfer_mode_code => 'S'
12175: , p_acct_entry_type_code => 'A'
12181: --
12182: --
12183: -- set accounting line type info
12184: --
12185: xla_ae_lines_pkg.SetAcctLineType
12186: (p_component_type => l_component_type
12187: ,p_event_type_code => l_event_type_code
12188: ,p_line_definition_owner_code => l_line_definition_owner_code
12189: ,p_line_definition_code => l_line_definition_code
12195: ,p_event_class_code => l_event_class_code);
12196: --
12197: -- set accounting class
12198: --
12199: xla_ae_lines_pkg.SetAcctClass(
12200: p_accounting_class_code => 'ACCRUAL'
12201: , p_ae_header_id => l_ae_header_id
12202: );
12203:
12203:
12204: --
12205: -- set rounding class
12206: --
12207: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12208: 'RECEIVABLE';
12209:
12210: --
12211: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12207: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12208: 'RECEIVABLE';
12209:
12210: --
12211: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12212: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12213: --
12214: -- bulk performance
12215: --
12208: 'RECEIVABLE';
12209:
12210: --
12211: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12212: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12213: --
12214: -- bulk performance
12215: --
12216: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12212: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12213: --
12214: -- bulk performance
12215: --
12216: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12217:
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12219: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12220:
12214: -- bulk performance
12215: --
12216: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12217:
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12219: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12220:
12221: -- 4955764
12222: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12219: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12220:
12221: -- 4955764
12222: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12223: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
12224:
12225: -- 4458381 Public Sector Enh
12226:
12252: l_rec_acct_attrs.array_num_value(10) := p_source_26;
12253: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
12254: l_rec_acct_attrs.array_char_value(11) := p_source_27;
12255:
12256: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12257: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12258:
12259: ---------------------------------------------------------------------------------------------------------------
12260: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12253: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
12254: l_rec_acct_attrs.array_char_value(11) := p_source_27;
12255:
12256: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12257: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12258:
12259: ---------------------------------------------------------------------------------------------------------------
12260: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12261: ---------------------------------------------------------------------------------------------------------------
12256: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12257: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12258:
12259: ---------------------------------------------------------------------------------------------------------------
12260: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12261: ---------------------------------------------------------------------------------------------------------------
12262: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12263:
12264: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12258:
12259: ---------------------------------------------------------------------------------------------------------------
12260: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12261: ---------------------------------------------------------------------------------------------------------------
12262: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12263:
12264: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12265: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12266:
12260: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12261: ---------------------------------------------------------------------------------------------------------------
12262: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12263:
12264: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12265: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12266:
12267: IF xla_accounting_cache_pkg.GetValueChar
12268: (p_source_code => 'LEDGER_CATEGORY_CODE'
12261: ---------------------------------------------------------------------------------------------------------------
12262: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12263:
12264: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12265: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12266:
12267: IF xla_accounting_cache_pkg.GetValueChar
12268: (p_source_code => 'LEDGER_CATEGORY_CODE'
12269: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
12272: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
12273: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
12274: )
12275: THEN
12276: xla_ae_lines_pkg.BflowUpgEntry
12277: (p_business_method_code => l_bflow_method_code
12278: ,p_business_class_code => l_bflow_class_code
12279: ,p_balance_type => l_balance_type_code);
12280: ELSE
12312: , x_value_type_code => l_adr_value_type_code
12313: , p_side => 'NA'
12314: );
12315:
12316: xla_ae_lines_pkg.set_ccid(
12317: p_code_combination_id => l_ccid
12318: , p_value_type_code => l_adr_value_type_code
12319: , p_transaction_coa_id => l_adr_transaction_coa_id
12320: , p_accounting_coa_id => l_adr_accounting_coa_id
12348: xla_accounting_err_pkg.build_message
12349: (p_appli_s_name => 'XLA'
12350: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
12351: ,p_token_1 => 'LINE_NUMBER'
12352: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
12353: ,p_token_2 => 'LINE_TYPE_NAME'
12354: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
12355: l_component_type
12356: ,l_component_code
12384: --
12385: --
12386: ------------------------------------------------------------------------------------------------
12387: -- 4219869 Business Flow
12388: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12389: -- Prior Entry. Currently, the following code is always generated.
12390: ------------------------------------------------------------------------------------------------
12391: XLA_AE_LINES_PKG.ValidateCurrentLine;
12392:
12387: -- 4219869 Business Flow
12388: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12389: -- Prior Entry. Currently, the following code is always generated.
12390: ------------------------------------------------------------------------------------------------
12391: XLA_AE_LINES_PKG.ValidateCurrentLine;
12392:
12393: ------------------------------------------------------------------------------------
12394: -- 4219869 Business Flow
12395: -- Populated credit and debit amounts -- Need to generate this within IF
12393: ------------------------------------------------------------------------------------
12394: -- 4219869 Business Flow
12395: -- Populated credit and debit amounts -- Need to generate this within IF
12396: ------------------------------------------------------------------------------------
12397: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12398:
12399: ----------------------------------------------------------------------------------
12400: -- 4219869 Business Flow
12401: -- Update journal entry status -- Need to generate this within IF
12425: -- To allow MPA report to determine if it should generate report process
12426: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12427: ------------------------------------------------------------------------------------------
12428:
12429: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12430: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12431: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12432: -- call ADRs
12433: -- Bug 4922099
12426: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12427: ------------------------------------------------------------------------------------------
12428:
12429: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
12430: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
12431: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
12432: -- call ADRs
12433: -- Bug 4922099
12434: --
12450: , x_value_type_code => l_adr_value_type_code
12451: , p_side => 'NA'
12452: );
12453:
12454: xla_ae_lines_pkg.set_ccid(
12455: p_code_combination_id => l_ccid
12456: , p_value_type_code => l_adr_value_type_code
12457: , p_transaction_coa_id => l_adr_transaction_coa_id
12458: , p_accounting_coa_id => l_adr_accounting_coa_id
12473:
12474: --
12475: -- Update the line information that should be overwritten
12476: --
12477: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12478: p_header_num => 1);
12479: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12480:
12481: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12475: -- Update the line information that should be overwritten
12476: --
12477: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12478: p_header_num => 1);
12479: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12480:
12481: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12482:
12483: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12477: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
12478: p_header_num => 1);
12479: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
12480:
12481: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12482:
12483: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12484: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12485: END IF;
12480:
12481: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
12482:
12483: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
12484: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
12485: END IF;
12486:
12487: --
12488: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12487: --
12488: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
12489: --
12490: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
12491: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
12492: ELSE
12493: ---------------------------------------------------------------------------------------------------
12494: -- 4262811a Switch Sign
12495: ---------------------------------------------------------------------------------------------------
12492: ELSE
12493: ---------------------------------------------------------------------------------------------------
12494: -- 4262811a Switch Sign
12495: ---------------------------------------------------------------------------------------------------
12496: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12497: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12499: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12500: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12493: ---------------------------------------------------------------------------------------------------
12494: -- 4262811a Switch Sign
12495: ---------------------------------------------------------------------------------------------------
12496: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12497: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12499: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12500: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12501: -- 5132302
12494: -- 4262811a Switch Sign
12495: ---------------------------------------------------------------------------------------------------
12496: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12497: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12499: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12500: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12501: -- 5132302
12502: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12495: ---------------------------------------------------------------------------------------------------
12496: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12497: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12499: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12500: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12501: -- 5132302
12502: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12503: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12496: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
12497: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12499: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12500: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12501: -- 5132302
12502: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12503: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12504:
12498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12499: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12500: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12501: -- 5132302
12502: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12503: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12504:
12505: END IF;
12506:
12499: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
12500: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12501: -- 5132302
12502: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
12503: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
12504:
12505: END IF;
12506:
12507: -- 4955764
12504:
12505: END IF;
12506:
12507: -- 4955764
12508: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12509: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12510:
12511:
12512: XLA_AE_LINES_PKG.ValidateCurrentLine;
12508: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12509: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12510:
12511:
12512: XLA_AE_LINES_PKG.ValidateCurrentLine;
12513: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12514:
12515: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12516: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12509: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
12510:
12511:
12512: XLA_AE_LINES_PKG.ValidateCurrentLine;
12513: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12514:
12515: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
12516: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
12517: ,p_balance_type_code => l_balance_type_code);
12650: --
12651: -- bulk performance
12652: --
12653: l_balance_type_code VARCHAR2(1);
12654: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
12655: l_log_module VARCHAR2(240);
12656:
12657: --
12658: -- Upgrade strategy
12718: ') = 'CHARGES'
12719: THEN
12720:
12721: --
12722: XLA_AE_LINES_PKG.SetNewLine;
12723:
12724: p_balance_type_code := l_balance_type_code;
12725: -- set the flag so later we will know whether the gain loss line needs to be created
12726:
12730:
12731: --
12732: -- bulk performance
12733: --
12734: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
12735: p_header_num => 0); -- 4262811
12736: --
12737: -- set accounting line options
12738: --
12735: p_header_num => 0); -- 4262811
12736: --
12737: -- set accounting line options
12738: --
12739: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
12740: p_natural_side_code => 'C'
12741: , p_gain_or_loss_flag => 'N'
12742: , p_gl_transfer_mode_code => 'S'
12743: , p_acct_entry_type_code => 'A'
12749: --
12750: --
12751: -- set accounting line type info
12752: --
12753: xla_ae_lines_pkg.SetAcctLineType
12754: (p_component_type => l_component_type
12755: ,p_event_type_code => l_event_type_code
12756: ,p_line_definition_owner_code => l_line_definition_owner_code
12757: ,p_line_definition_code => l_line_definition_code
12763: ,p_event_class_code => l_event_class_code);
12764: --
12765: -- set accounting class
12766: --
12767: xla_ae_lines_pkg.SetAcctClass(
12768: p_accounting_class_code => 'CHARGES'
12769: , p_ae_header_id => l_ae_header_id
12770: );
12771:
12771:
12772: --
12773: -- set rounding class
12774: --
12775: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12776: 'RECEIVABLE';
12777:
12778: --
12779: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12775: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
12776: 'RECEIVABLE';
12777:
12778: --
12779: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12780: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12781: --
12782: -- bulk performance
12783: --
12776: 'RECEIVABLE';
12777:
12778: --
12779: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
12780: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12781: --
12782: -- bulk performance
12783: --
12784: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12780: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
12781: --
12782: -- bulk performance
12783: --
12784: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12785:
12786: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12787: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12788:
12782: -- bulk performance
12783: --
12784: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
12785:
12786: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12787: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12788:
12789: -- 4955764
12790: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12786: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
12787: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
12788:
12789: -- 4955764
12790: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
12791: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
12792:
12793: -- 4458381 Public Sector Enh
12794:
12822: l_rec_acct_attrs.array_char_value(11) := p_source_27;
12823: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
12824: l_rec_acct_attrs.array_num_value(12) := p_source_50;
12825:
12826: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12827: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12828:
12829: ---------------------------------------------------------------------------------------------------------------
12830: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12823: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
12824: l_rec_acct_attrs.array_num_value(12) := p_source_50;
12825:
12826: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12827: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12828:
12829: ---------------------------------------------------------------------------------------------------------------
12830: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12831: ---------------------------------------------------------------------------------------------------------------
12826: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
12827: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
12828:
12829: ---------------------------------------------------------------------------------------------------------------
12830: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12831: ---------------------------------------------------------------------------------------------------------------
12832: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12833:
12834: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12828:
12829: ---------------------------------------------------------------------------------------------------------------
12830: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12831: ---------------------------------------------------------------------------------------------------------------
12832: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12833:
12834: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12835: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12836:
12830: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
12831: ---------------------------------------------------------------------------------------------------------------
12832: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12833:
12834: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12835: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12836:
12837: IF xla_accounting_cache_pkg.GetValueChar
12838: (p_source_code => 'LEDGER_CATEGORY_CODE'
12831: ---------------------------------------------------------------------------------------------------------------
12832: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
12833:
12834: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12835: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
12836:
12837: IF xla_accounting_cache_pkg.GetValueChar
12838: (p_source_code => 'LEDGER_CATEGORY_CODE'
12839: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
12842: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
12843: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
12844: )
12845: THEN
12846: xla_ae_lines_pkg.BflowUpgEntry
12847: (p_business_method_code => l_bflow_method_code
12848: ,p_business_class_code => l_bflow_class_code
12849: ,p_balance_type => l_balance_type_code);
12850: ELSE
12882: , x_value_type_code => l_adr_value_type_code
12883: , p_side => 'NA'
12884: );
12885:
12886: xla_ae_lines_pkg.set_ccid(
12887: p_code_combination_id => l_ccid
12888: , p_value_type_code => l_adr_value_type_code
12889: , p_transaction_coa_id => l_adr_transaction_coa_id
12890: , p_accounting_coa_id => l_adr_accounting_coa_id
12918: xla_accounting_err_pkg.build_message
12919: (p_appli_s_name => 'XLA'
12920: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
12921: ,p_token_1 => 'LINE_NUMBER'
12922: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
12923: ,p_token_2 => 'LINE_TYPE_NAME'
12924: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
12925: l_component_type
12926: ,l_component_code
12954: --
12955: --
12956: ------------------------------------------------------------------------------------------------
12957: -- 4219869 Business Flow
12958: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12959: -- Prior Entry. Currently, the following code is always generated.
12960: ------------------------------------------------------------------------------------------------
12961: XLA_AE_LINES_PKG.ValidateCurrentLine;
12962:
12957: -- 4219869 Business Flow
12958: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
12959: -- Prior Entry. Currently, the following code is always generated.
12960: ------------------------------------------------------------------------------------------------
12961: XLA_AE_LINES_PKG.ValidateCurrentLine;
12962:
12963: ------------------------------------------------------------------------------------
12964: -- 4219869 Business Flow
12965: -- Populated credit and debit amounts -- Need to generate this within IF
12963: ------------------------------------------------------------------------------------
12964: -- 4219869 Business Flow
12965: -- Populated credit and debit amounts -- Need to generate this within IF
12966: ------------------------------------------------------------------------------------
12967: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
12968:
12969: ----------------------------------------------------------------------------------
12970: -- 4219869 Business Flow
12971: -- Update journal entry status -- Need to generate this within IF
12995: -- To allow MPA report to determine if it should generate report process
12996: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12997: ------------------------------------------------------------------------------------------
12998:
12999: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13000: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13001: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13002: -- call ADRs
13003: -- Bug 4922099
12996: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
12997: ------------------------------------------------------------------------------------------
12998:
12999: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13000: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13001: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13002: -- call ADRs
13003: -- Bug 4922099
13004: --
13020: , x_value_type_code => l_adr_value_type_code
13021: , p_side => 'NA'
13022: );
13023:
13024: xla_ae_lines_pkg.set_ccid(
13025: p_code_combination_id => l_ccid
13026: , p_value_type_code => l_adr_value_type_code
13027: , p_transaction_coa_id => l_adr_transaction_coa_id
13028: , p_accounting_coa_id => l_adr_accounting_coa_id
13043:
13044: --
13045: -- Update the line information that should be overwritten
13046: --
13047: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13048: p_header_num => 1);
13049: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13050:
13051: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13045: -- Update the line information that should be overwritten
13046: --
13047: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13048: p_header_num => 1);
13049: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13050:
13051: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13052:
13053: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13047: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13048: p_header_num => 1);
13049: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13050:
13051: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13052:
13053: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13054: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13055: END IF;
13050:
13051: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13052:
13053: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13054: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13055: END IF;
13056:
13057: --
13058: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13057: --
13058: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13059: --
13060: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
13061: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
13062: ELSE
13063: ---------------------------------------------------------------------------------------------------
13064: -- 4262811a Switch Sign
13065: ---------------------------------------------------------------------------------------------------
13062: ELSE
13063: ---------------------------------------------------------------------------------------------------
13064: -- 4262811a Switch Sign
13065: ---------------------------------------------------------------------------------------------------
13066: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13067: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13069: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13063: ---------------------------------------------------------------------------------------------------
13064: -- 4262811a Switch Sign
13065: ---------------------------------------------------------------------------------------------------
13066: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13067: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13069: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13071: -- 5132302
13064: -- 4262811a Switch Sign
13065: ---------------------------------------------------------------------------------------------------
13066: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13067: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13069: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13071: -- 5132302
13072: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13065: ---------------------------------------------------------------------------------------------------
13066: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13067: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13069: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13071: -- 5132302
13072: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13066: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13067: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13069: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13071: -- 5132302
13072: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13074:
13068: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13069: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13071: -- 5132302
13072: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13074:
13075: END IF;
13076:
13069: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13070: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13071: -- 5132302
13072: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13073: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13074:
13075: END IF;
13076:
13077: -- 4955764
13074:
13075: END IF;
13076:
13077: -- 4955764
13078: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13079: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13080:
13081:
13082: XLA_AE_LINES_PKG.ValidateCurrentLine;
13078: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13079: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13080:
13081:
13082: XLA_AE_LINES_PKG.ValidateCurrentLine;
13083: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13084:
13085: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13086: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13079: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13080:
13081:
13082: XLA_AE_LINES_PKG.ValidateCurrentLine;
13083: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13084:
13085: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13086: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13087: ,p_balance_type_code => l_balance_type_code);
13220: --
13221: -- bulk performance
13222: --
13223: l_balance_type_code VARCHAR2(1);
13224: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
13225: l_log_module VARCHAR2(240);
13226:
13227: --
13228: -- Upgrade strategy
13288: ') = 'FREIGHT'
13289: THEN
13290:
13291: --
13292: XLA_AE_LINES_PKG.SetNewLine;
13293:
13294: p_balance_type_code := l_balance_type_code;
13295: -- set the flag so later we will know whether the gain loss line needs to be created
13296:
13300:
13301: --
13302: -- bulk performance
13303: --
13304: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
13305: p_header_num => 0); -- 4262811
13306: --
13307: -- set accounting line options
13308: --
13305: p_header_num => 0); -- 4262811
13306: --
13307: -- set accounting line options
13308: --
13309: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
13310: p_natural_side_code => 'C'
13311: , p_gain_or_loss_flag => 'N'
13312: , p_gl_transfer_mode_code => 'S'
13313: , p_acct_entry_type_code => 'A'
13319: --
13320: --
13321: -- set accounting line type info
13322: --
13323: xla_ae_lines_pkg.SetAcctLineType
13324: (p_component_type => l_component_type
13325: ,p_event_type_code => l_event_type_code
13326: ,p_line_definition_owner_code => l_line_definition_owner_code
13327: ,p_line_definition_code => l_line_definition_code
13333: ,p_event_class_code => l_event_class_code);
13334: --
13335: -- set accounting class
13336: --
13337: xla_ae_lines_pkg.SetAcctClass(
13338: p_accounting_class_code => 'FREIGHT'
13339: , p_ae_header_id => l_ae_header_id
13340: );
13341:
13341:
13342: --
13343: -- set rounding class
13344: --
13345: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13346: 'RECEIVABLE';
13347:
13348: --
13349: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13345: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13346: 'RECEIVABLE';
13347:
13348: --
13349: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13350: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13351: --
13352: -- bulk performance
13353: --
13346: 'RECEIVABLE';
13347:
13348: --
13349: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13350: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13351: --
13352: -- bulk performance
13353: --
13354: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13350: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13351: --
13352: -- bulk performance
13353: --
13354: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13355:
13356: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13357: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13358:
13352: -- bulk performance
13353: --
13354: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13355:
13356: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13357: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13358:
13359: -- 4955764
13360: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13356: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13357: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13358:
13359: -- 4955764
13360: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13361: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
13362:
13363: -- 4458381 Public Sector Enh
13364:
13392: l_rec_acct_attrs.array_char_value(11) := p_source_27;
13393: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
13394: l_rec_acct_attrs.array_num_value(12) := p_source_50;
13395:
13396: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13397: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13398:
13399: ---------------------------------------------------------------------------------------------------------------
13400: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13393: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
13394: l_rec_acct_attrs.array_num_value(12) := p_source_50;
13395:
13396: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13397: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13398:
13399: ---------------------------------------------------------------------------------------------------------------
13400: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13401: ---------------------------------------------------------------------------------------------------------------
13396: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13397: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13398:
13399: ---------------------------------------------------------------------------------------------------------------
13400: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13401: ---------------------------------------------------------------------------------------------------------------
13402: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13403:
13404: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13398:
13399: ---------------------------------------------------------------------------------------------------------------
13400: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13401: ---------------------------------------------------------------------------------------------------------------
13402: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13403:
13404: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13405: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13406:
13400: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13401: ---------------------------------------------------------------------------------------------------------------
13402: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13403:
13404: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13405: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13406:
13407: IF xla_accounting_cache_pkg.GetValueChar
13408: (p_source_code => 'LEDGER_CATEGORY_CODE'
13401: ---------------------------------------------------------------------------------------------------------------
13402: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13403:
13404: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13405: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13406:
13407: IF xla_accounting_cache_pkg.GetValueChar
13408: (p_source_code => 'LEDGER_CATEGORY_CODE'
13409: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
13412: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
13413: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
13414: )
13415: THEN
13416: xla_ae_lines_pkg.BflowUpgEntry
13417: (p_business_method_code => l_bflow_method_code
13418: ,p_business_class_code => l_bflow_class_code
13419: ,p_balance_type => l_balance_type_code);
13420: ELSE
13452: , x_value_type_code => l_adr_value_type_code
13453: , p_side => 'NA'
13454: );
13455:
13456: xla_ae_lines_pkg.set_ccid(
13457: p_code_combination_id => l_ccid
13458: , p_value_type_code => l_adr_value_type_code
13459: , p_transaction_coa_id => l_adr_transaction_coa_id
13460: , p_accounting_coa_id => l_adr_accounting_coa_id
13488: xla_accounting_err_pkg.build_message
13489: (p_appli_s_name => 'XLA'
13490: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
13491: ,p_token_1 => 'LINE_NUMBER'
13492: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
13493: ,p_token_2 => 'LINE_TYPE_NAME'
13494: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
13495: l_component_type
13496: ,l_component_code
13524: --
13525: --
13526: ------------------------------------------------------------------------------------------------
13527: -- 4219869 Business Flow
13528: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13529: -- Prior Entry. Currently, the following code is always generated.
13530: ------------------------------------------------------------------------------------------------
13531: XLA_AE_LINES_PKG.ValidateCurrentLine;
13532:
13527: -- 4219869 Business Flow
13528: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
13529: -- Prior Entry. Currently, the following code is always generated.
13530: ------------------------------------------------------------------------------------------------
13531: XLA_AE_LINES_PKG.ValidateCurrentLine;
13532:
13533: ------------------------------------------------------------------------------------
13534: -- 4219869 Business Flow
13535: -- Populated credit and debit amounts -- Need to generate this within IF
13533: ------------------------------------------------------------------------------------
13534: -- 4219869 Business Flow
13535: -- Populated credit and debit amounts -- Need to generate this within IF
13536: ------------------------------------------------------------------------------------
13537: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13538:
13539: ----------------------------------------------------------------------------------
13540: -- 4219869 Business Flow
13541: -- Update journal entry status -- Need to generate this within IF
13565: -- To allow MPA report to determine if it should generate report process
13566: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13567: ------------------------------------------------------------------------------------------
13568:
13569: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13570: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13571: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13572: -- call ADRs
13573: -- Bug 4922099
13566: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
13567: ------------------------------------------------------------------------------------------
13568:
13569: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
13570: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
13571: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
13572: -- call ADRs
13573: -- Bug 4922099
13574: --
13590: , x_value_type_code => l_adr_value_type_code
13591: , p_side => 'NA'
13592: );
13593:
13594: xla_ae_lines_pkg.set_ccid(
13595: p_code_combination_id => l_ccid
13596: , p_value_type_code => l_adr_value_type_code
13597: , p_transaction_coa_id => l_adr_transaction_coa_id
13598: , p_accounting_coa_id => l_adr_accounting_coa_id
13613:
13614: --
13615: -- Update the line information that should be overwritten
13616: --
13617: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13618: p_header_num => 1);
13619: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13620:
13621: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13615: -- Update the line information that should be overwritten
13616: --
13617: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13618: p_header_num => 1);
13619: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13620:
13621: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13622:
13623: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13617: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
13618: p_header_num => 1);
13619: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
13620:
13621: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13622:
13623: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13624: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13625: END IF;
13620:
13621: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
13622:
13623: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
13624: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
13625: END IF;
13626:
13627: --
13628: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13627: --
13628: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
13629: --
13630: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
13631: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
13632: ELSE
13633: ---------------------------------------------------------------------------------------------------
13634: -- 4262811a Switch Sign
13635: ---------------------------------------------------------------------------------------------------
13632: ELSE
13633: ---------------------------------------------------------------------------------------------------
13634: -- 4262811a Switch Sign
13635: ---------------------------------------------------------------------------------------------------
13636: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13637: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13633: ---------------------------------------------------------------------------------------------------
13634: -- 4262811a Switch Sign
13635: ---------------------------------------------------------------------------------------------------
13636: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13637: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13641: -- 5132302
13634: -- 4262811a Switch Sign
13635: ---------------------------------------------------------------------------------------------------
13636: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13637: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13641: -- 5132302
13642: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13635: ---------------------------------------------------------------------------------------------------
13636: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13637: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13641: -- 5132302
13642: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13636: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
13637: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13641: -- 5132302
13642: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13644:
13638: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13639: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13641: -- 5132302
13642: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13644:
13645: END IF;
13646:
13639: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
13640: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13641: -- 5132302
13642: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
13643: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
13644:
13645: END IF;
13646:
13647: -- 4955764
13644:
13645: END IF;
13646:
13647: -- 4955764
13648: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13649: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13650:
13651:
13652: XLA_AE_LINES_PKG.ValidateCurrentLine;
13648: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13649: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13650:
13651:
13652: XLA_AE_LINES_PKG.ValidateCurrentLine;
13653: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13654:
13655: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13656: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13649: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
13650:
13651:
13652: XLA_AE_LINES_PKG.ValidateCurrentLine;
13653: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
13654:
13655: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
13656: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
13657: ,p_balance_type_code => l_balance_type_code);
13790: --
13791: -- bulk performance
13792: --
13793: l_balance_type_code VARCHAR2(1);
13794: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
13795: l_log_module VARCHAR2(240);
13796:
13797: --
13798: -- Upgrade strategy
13858: ') = 'REV'
13859: THEN
13860:
13861: --
13862: XLA_AE_LINES_PKG.SetNewLine;
13863:
13864: p_balance_type_code := l_balance_type_code;
13865: -- set the flag so later we will know whether the gain loss line needs to be created
13866:
13870:
13871: --
13872: -- bulk performance
13873: --
13874: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
13875: p_header_num => 0); -- 4262811
13876: --
13877: -- set accounting line options
13878: --
13875: p_header_num => 0); -- 4262811
13876: --
13877: -- set accounting line options
13878: --
13879: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
13880: p_natural_side_code => 'C'
13881: , p_gain_or_loss_flag => 'N'
13882: , p_gl_transfer_mode_code => 'S'
13883: , p_acct_entry_type_code => 'A'
13889: --
13890: --
13891: -- set accounting line type info
13892: --
13893: xla_ae_lines_pkg.SetAcctLineType
13894: (p_component_type => l_component_type
13895: ,p_event_type_code => l_event_type_code
13896: ,p_line_definition_owner_code => l_line_definition_owner_code
13897: ,p_line_definition_code => l_line_definition_code
13903: ,p_event_class_code => l_event_class_code);
13904: --
13905: -- set accounting class
13906: --
13907: xla_ae_lines_pkg.SetAcctClass(
13908: p_accounting_class_code => 'REVENUE'
13909: , p_ae_header_id => l_ae_header_id
13910: );
13911:
13911:
13912: --
13913: -- set rounding class
13914: --
13915: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13916: 'RECEIVABLE';
13917:
13918: --
13919: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13915: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
13916: 'RECEIVABLE';
13917:
13918: --
13919: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13920: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13921: --
13922: -- bulk performance
13923: --
13916: 'RECEIVABLE';
13917:
13918: --
13919: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
13920: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13921: --
13922: -- bulk performance
13923: --
13924: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13920: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
13921: --
13922: -- bulk performance
13923: --
13924: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13925:
13926: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13927: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13928:
13922: -- bulk performance
13923: --
13924: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
13925:
13926: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13927: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13928:
13929: -- 4955764
13930: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13926: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
13927: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
13928:
13929: -- 4955764
13930: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
13931: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
13932:
13933: -- 4458381 Public Sector Enh
13934:
13962: l_rec_acct_attrs.array_char_value(11) := p_source_27;
13963: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
13964: l_rec_acct_attrs.array_num_value(12) := p_source_50;
13965:
13966: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13967: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13968:
13969: ---------------------------------------------------------------------------------------------------------------
13970: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13963: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
13964: l_rec_acct_attrs.array_num_value(12) := p_source_50;
13965:
13966: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13967: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13968:
13969: ---------------------------------------------------------------------------------------------------------------
13970: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13971: ---------------------------------------------------------------------------------------------------------------
13966: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
13967: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
13968:
13969: ---------------------------------------------------------------------------------------------------------------
13970: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13971: ---------------------------------------------------------------------------------------------------------------
13972: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13973:
13974: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13968:
13969: ---------------------------------------------------------------------------------------------------------------
13970: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13971: ---------------------------------------------------------------------------------------------------------------
13972: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13973:
13974: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13975: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13976:
13970: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
13971: ---------------------------------------------------------------------------------------------------------------
13972: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13973:
13974: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13975: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13976:
13977: IF xla_accounting_cache_pkg.GetValueChar
13978: (p_source_code => 'LEDGER_CATEGORY_CODE'
13971: ---------------------------------------------------------------------------------------------------------------
13972: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
13973:
13974: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13975: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
13976:
13977: IF xla_accounting_cache_pkg.GetValueChar
13978: (p_source_code => 'LEDGER_CATEGORY_CODE'
13979: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
13982: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
13983: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
13984: )
13985: THEN
13986: xla_ae_lines_pkg.BflowUpgEntry
13987: (p_business_method_code => l_bflow_method_code
13988: ,p_business_class_code => l_bflow_class_code
13989: ,p_balance_type => l_balance_type_code);
13990: ELSE
14022: , x_value_type_code => l_adr_value_type_code
14023: , p_side => 'NA'
14024: );
14025:
14026: xla_ae_lines_pkg.set_ccid(
14027: p_code_combination_id => l_ccid
14028: , p_value_type_code => l_adr_value_type_code
14029: , p_transaction_coa_id => l_adr_transaction_coa_id
14030: , p_accounting_coa_id => l_adr_accounting_coa_id
14058: xla_accounting_err_pkg.build_message
14059: (p_appli_s_name => 'XLA'
14060: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
14061: ,p_token_1 => 'LINE_NUMBER'
14062: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
14063: ,p_token_2 => 'LINE_TYPE_NAME'
14064: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
14065: l_component_type
14066: ,l_component_code
14094: --
14095: --
14096: ------------------------------------------------------------------------------------------------
14097: -- 4219869 Business Flow
14098: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14099: -- Prior Entry. Currently, the following code is always generated.
14100: ------------------------------------------------------------------------------------------------
14101: XLA_AE_LINES_PKG.ValidateCurrentLine;
14102:
14097: -- 4219869 Business Flow
14098: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14099: -- Prior Entry. Currently, the following code is always generated.
14100: ------------------------------------------------------------------------------------------------
14101: XLA_AE_LINES_PKG.ValidateCurrentLine;
14102:
14103: ------------------------------------------------------------------------------------
14104: -- 4219869 Business Flow
14105: -- Populated credit and debit amounts -- Need to generate this within IF
14103: ------------------------------------------------------------------------------------
14104: -- 4219869 Business Flow
14105: -- Populated credit and debit amounts -- Need to generate this within IF
14106: ------------------------------------------------------------------------------------
14107: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14108:
14109: ----------------------------------------------------------------------------------
14110: -- 4219869 Business Flow
14111: -- Update journal entry status -- Need to generate this within IF
14135: -- To allow MPA report to determine if it should generate report process
14136: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14137: ------------------------------------------------------------------------------------------
14138:
14139: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14140: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14141: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14142: -- call ADRs
14143: -- Bug 4922099
14136: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14137: ------------------------------------------------------------------------------------------
14138:
14139: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14140: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14141: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14142: -- call ADRs
14143: -- Bug 4922099
14144: --
14160: , x_value_type_code => l_adr_value_type_code
14161: , p_side => 'NA'
14162: );
14163:
14164: xla_ae_lines_pkg.set_ccid(
14165: p_code_combination_id => l_ccid
14166: , p_value_type_code => l_adr_value_type_code
14167: , p_transaction_coa_id => l_adr_transaction_coa_id
14168: , p_accounting_coa_id => l_adr_accounting_coa_id
14183:
14184: --
14185: -- Update the line information that should be overwritten
14186: --
14187: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14188: p_header_num => 1);
14189: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14190:
14191: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14185: -- Update the line information that should be overwritten
14186: --
14187: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14188: p_header_num => 1);
14189: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14190:
14191: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14192:
14193: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14187: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14188: p_header_num => 1);
14189: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14190:
14191: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14192:
14193: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14194: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14195: END IF;
14190:
14191: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14192:
14193: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14194: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14195: END IF;
14196:
14197: --
14198: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14197: --
14198: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14199: --
14200: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
14201: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
14202: ELSE
14203: ---------------------------------------------------------------------------------------------------
14204: -- 4262811a Switch Sign
14205: ---------------------------------------------------------------------------------------------------
14202: ELSE
14203: ---------------------------------------------------------------------------------------------------
14204: -- 4262811a Switch Sign
14205: ---------------------------------------------------------------------------------------------------
14206: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14210: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14203: ---------------------------------------------------------------------------------------------------
14204: -- 4262811a Switch Sign
14205: ---------------------------------------------------------------------------------------------------
14206: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14210: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14211: -- 5132302
14204: -- 4262811a Switch Sign
14205: ---------------------------------------------------------------------------------------------------
14206: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14210: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14211: -- 5132302
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14205: ---------------------------------------------------------------------------------------------------
14206: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14210: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14211: -- 5132302
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14213: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14206: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14207: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14210: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14211: -- 5132302
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14213: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14214:
14208: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14210: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14211: -- 5132302
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14213: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14214:
14215: END IF;
14216:
14209: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14210: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14211: -- 5132302
14212: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14213: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14214:
14215: END IF;
14216:
14217: -- 4955764
14214:
14215: END IF;
14216:
14217: -- 4955764
14218: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14219: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14220:
14221:
14222: XLA_AE_LINES_PKG.ValidateCurrentLine;
14218: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14219: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14220:
14221:
14222: XLA_AE_LINES_PKG.ValidateCurrentLine;
14223: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14224:
14225: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14226: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14219: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14220:
14221:
14222: XLA_AE_LINES_PKG.ValidateCurrentLine;
14223: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14224:
14225: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14226: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14227: ,p_balance_type_code => l_balance_type_code);
14360: --
14361: -- bulk performance
14362: --
14363: l_balance_type_code VARCHAR2(1);
14364: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
14365: l_log_module VARCHAR2(240);
14366:
14367: --
14368: -- Upgrade strategy
14428: ') = 'ROUND'
14429: THEN
14430:
14431: --
14432: XLA_AE_LINES_PKG.SetNewLine;
14433:
14434: p_balance_type_code := l_balance_type_code;
14435: -- set the flag so later we will know whether the gain loss line needs to be created
14436:
14440:
14441: --
14442: -- bulk performance
14443: --
14444: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
14445: p_header_num => 0); -- 4262811
14446: --
14447: -- set accounting line options
14448: --
14445: p_header_num => 0); -- 4262811
14446: --
14447: -- set accounting line options
14448: --
14449: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
14450: p_natural_side_code => 'C'
14451: , p_gain_or_loss_flag => 'N'
14452: , p_gl_transfer_mode_code => 'S'
14453: , p_acct_entry_type_code => 'A'
14459: --
14460: --
14461: -- set accounting line type info
14462: --
14463: xla_ae_lines_pkg.SetAcctLineType
14464: (p_component_type => l_component_type
14465: ,p_event_type_code => l_event_type_code
14466: ,p_line_definition_owner_code => l_line_definition_owner_code
14467: ,p_line_definition_code => l_line_definition_code
14473: ,p_event_class_code => l_event_class_code);
14474: --
14475: -- set accounting class
14476: --
14477: xla_ae_lines_pkg.SetAcctClass(
14478: p_accounting_class_code => 'ROUNDING'
14479: , p_ae_header_id => l_ae_header_id
14480: );
14481:
14481:
14482: --
14483: -- set rounding class
14484: --
14485: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14486: 'RECEIVABLE';
14487:
14488: --
14489: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14485: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
14486: 'RECEIVABLE';
14487:
14488: --
14489: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14490: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14491: --
14492: -- bulk performance
14493: --
14486: 'RECEIVABLE';
14487:
14488: --
14489: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
14490: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14491: --
14492: -- bulk performance
14493: --
14494: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14490: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
14491: --
14492: -- bulk performance
14493: --
14494: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14495:
14496: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14497: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14498:
14492: -- bulk performance
14493: --
14494: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
14495:
14496: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14497: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14498:
14499: -- 4955764
14500: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14496: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
14497: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
14498:
14499: -- 4955764
14500: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14501: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
14502:
14503: -- 4458381 Public Sector Enh
14504:
14532: l_rec_acct_attrs.array_char_value(11) := p_source_27;
14533: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
14534: l_rec_acct_attrs.array_num_value(12) := p_source_50;
14535:
14536: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14537: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14538:
14539: ---------------------------------------------------------------------------------------------------------------
14540: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14533: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
14534: l_rec_acct_attrs.array_num_value(12) := p_source_50;
14535:
14536: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14537: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14538:
14539: ---------------------------------------------------------------------------------------------------------------
14540: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14541: ---------------------------------------------------------------------------------------------------------------
14536: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
14537: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
14538:
14539: ---------------------------------------------------------------------------------------------------------------
14540: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14541: ---------------------------------------------------------------------------------------------------------------
14542: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14543:
14544: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14538:
14539: ---------------------------------------------------------------------------------------------------------------
14540: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14541: ---------------------------------------------------------------------------------------------------------------
14542: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14543:
14544: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14545: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14546:
14540: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
14541: ---------------------------------------------------------------------------------------------------------------
14542: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14543:
14544: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14545: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14546:
14547: IF xla_accounting_cache_pkg.GetValueChar
14548: (p_source_code => 'LEDGER_CATEGORY_CODE'
14541: ---------------------------------------------------------------------------------------------------------------
14542: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
14543:
14544: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14545: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
14546:
14547: IF xla_accounting_cache_pkg.GetValueChar
14548: (p_source_code => 'LEDGER_CATEGORY_CODE'
14549: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
14552: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
14553: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
14554: )
14555: THEN
14556: xla_ae_lines_pkg.BflowUpgEntry
14557: (p_business_method_code => l_bflow_method_code
14558: ,p_business_class_code => l_bflow_class_code
14559: ,p_balance_type => l_balance_type_code);
14560: ELSE
14592: , x_value_type_code => l_adr_value_type_code
14593: , p_side => 'NA'
14594: );
14595:
14596: xla_ae_lines_pkg.set_ccid(
14597: p_code_combination_id => l_ccid
14598: , p_value_type_code => l_adr_value_type_code
14599: , p_transaction_coa_id => l_adr_transaction_coa_id
14600: , p_accounting_coa_id => l_adr_accounting_coa_id
14628: xla_accounting_err_pkg.build_message
14629: (p_appli_s_name => 'XLA'
14630: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
14631: ,p_token_1 => 'LINE_NUMBER'
14632: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
14633: ,p_token_2 => 'LINE_TYPE_NAME'
14634: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
14635: l_component_type
14636: ,l_component_code
14664: --
14665: --
14666: ------------------------------------------------------------------------------------------------
14667: -- 4219869 Business Flow
14668: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14669: -- Prior Entry. Currently, the following code is always generated.
14670: ------------------------------------------------------------------------------------------------
14671: XLA_AE_LINES_PKG.ValidateCurrentLine;
14672:
14667: -- 4219869 Business Flow
14668: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
14669: -- Prior Entry. Currently, the following code is always generated.
14670: ------------------------------------------------------------------------------------------------
14671: XLA_AE_LINES_PKG.ValidateCurrentLine;
14672:
14673: ------------------------------------------------------------------------------------
14674: -- 4219869 Business Flow
14675: -- Populated credit and debit amounts -- Need to generate this within IF
14673: ------------------------------------------------------------------------------------
14674: -- 4219869 Business Flow
14675: -- Populated credit and debit amounts -- Need to generate this within IF
14676: ------------------------------------------------------------------------------------
14677: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14678:
14679: ----------------------------------------------------------------------------------
14680: -- 4219869 Business Flow
14681: -- Update journal entry status -- Need to generate this within IF
14705: -- To allow MPA report to determine if it should generate report process
14706: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14707: ------------------------------------------------------------------------------------------
14708:
14709: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14710: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14711: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14712: -- call ADRs
14713: -- Bug 4922099
14706: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
14707: ------------------------------------------------------------------------------------------
14708:
14709: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
14710: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
14711: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
14712: -- call ADRs
14713: -- Bug 4922099
14714: --
14730: , x_value_type_code => l_adr_value_type_code
14731: , p_side => 'NA'
14732: );
14733:
14734: xla_ae_lines_pkg.set_ccid(
14735: p_code_combination_id => l_ccid
14736: , p_value_type_code => l_adr_value_type_code
14737: , p_transaction_coa_id => l_adr_transaction_coa_id
14738: , p_accounting_coa_id => l_adr_accounting_coa_id
14753:
14754: --
14755: -- Update the line information that should be overwritten
14756: --
14757: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14758: p_header_num => 1);
14759: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14760:
14761: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14755: -- Update the line information that should be overwritten
14756: --
14757: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14758: p_header_num => 1);
14759: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14760:
14761: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14762:
14763: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14757: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
14758: p_header_num => 1);
14759: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
14760:
14761: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14762:
14763: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14764: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14765: END IF;
14760:
14761: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
14762:
14763: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
14764: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
14765: END IF;
14766:
14767: --
14768: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14767: --
14768: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
14769: --
14770: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
14771: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
14772: ELSE
14773: ---------------------------------------------------------------------------------------------------
14774: -- 4262811a Switch Sign
14775: ---------------------------------------------------------------------------------------------------
14772: ELSE
14773: ---------------------------------------------------------------------------------------------------
14774: -- 4262811a Switch Sign
14775: ---------------------------------------------------------------------------------------------------
14776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14773: ---------------------------------------------------------------------------------------------------
14774: -- 4262811a Switch Sign
14775: ---------------------------------------------------------------------------------------------------
14776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14781: -- 5132302
14774: -- 4262811a Switch Sign
14775: ---------------------------------------------------------------------------------------------------
14776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14781: -- 5132302
14782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14775: ---------------------------------------------------------------------------------------------------
14776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14781: -- 5132302
14782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14776: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
14777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14781: -- 5132302
14782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784:
14778: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14781: -- 5132302
14782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784:
14785: END IF;
14786:
14779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
14780: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14781: -- 5132302
14782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
14783: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
14784:
14785: END IF;
14786:
14787: -- 4955764
14784:
14785: END IF;
14786:
14787: -- 4955764
14788: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14789: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14790:
14791:
14792: XLA_AE_LINES_PKG.ValidateCurrentLine;
14788: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
14789: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14790:
14791:
14792: XLA_AE_LINES_PKG.ValidateCurrentLine;
14793: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14794:
14795: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14796: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14789: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
14790:
14791:
14792: XLA_AE_LINES_PKG.ValidateCurrentLine;
14793: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
14794:
14795: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
14796: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
14797: ,p_balance_type_code => l_balance_type_code);
14930: --
14931: -- bulk performance
14932: --
14933: l_balance_type_code VARCHAR2(1);
14934: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
14935: l_log_module VARCHAR2(240);
14936:
14937: --
14938: -- Upgrade strategy
14998: ') = 'TAX'
14999: THEN
15000:
15001: --
15002: XLA_AE_LINES_PKG.SetNewLine;
15003:
15004: p_balance_type_code := l_balance_type_code;
15005: -- set the flag so later we will know whether the gain loss line needs to be created
15006:
15010:
15011: --
15012: -- bulk performance
15013: --
15014: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
15015: p_header_num => 0); -- 4262811
15016: --
15017: -- set accounting line options
15018: --
15015: p_header_num => 0); -- 4262811
15016: --
15017: -- set accounting line options
15018: --
15019: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
15020: p_natural_side_code => 'C'
15021: , p_gain_or_loss_flag => 'N'
15022: , p_gl_transfer_mode_code => 'S'
15023: , p_acct_entry_type_code => 'A'
15029: --
15030: --
15031: -- set accounting line type info
15032: --
15033: xla_ae_lines_pkg.SetAcctLineType
15034: (p_component_type => l_component_type
15035: ,p_event_type_code => l_event_type_code
15036: ,p_line_definition_owner_code => l_line_definition_owner_code
15037: ,p_line_definition_code => l_line_definition_code
15043: ,p_event_class_code => l_event_class_code);
15044: --
15045: -- set accounting class
15046: --
15047: xla_ae_lines_pkg.SetAcctClass(
15048: p_accounting_class_code => 'TAX'
15049: , p_ae_header_id => l_ae_header_id
15050: );
15051:
15051:
15052: --
15053: -- set rounding class
15054: --
15055: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15056: 'RECEIVABLE';
15057:
15058: --
15059: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15055: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15056: 'RECEIVABLE';
15057:
15058: --
15059: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15060: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15061: --
15062: -- bulk performance
15063: --
15056: 'RECEIVABLE';
15057:
15058: --
15059: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15060: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15061: --
15062: -- bulk performance
15063: --
15064: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15060: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15061: --
15062: -- bulk performance
15063: --
15064: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15065:
15066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15067: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15068:
15062: -- bulk performance
15063: --
15064: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15065:
15066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15067: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15068:
15069: -- 4955764
15070: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15066: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15067: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15068:
15069: -- 4955764
15070: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15071: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
15072:
15073: -- 4458381 Public Sector Enh
15074:
15102: l_rec_acct_attrs.array_char_value(11) := p_source_27;
15103: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
15104: l_rec_acct_attrs.array_num_value(12) := p_source_50;
15105:
15106: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15107: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15108:
15109: ---------------------------------------------------------------------------------------------------------------
15110: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15103: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
15104: l_rec_acct_attrs.array_num_value(12) := p_source_50;
15105:
15106: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15107: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15108:
15109: ---------------------------------------------------------------------------------------------------------------
15110: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15111: ---------------------------------------------------------------------------------------------------------------
15106: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15107: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15108:
15109: ---------------------------------------------------------------------------------------------------------------
15110: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15111: ---------------------------------------------------------------------------------------------------------------
15112: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15113:
15114: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15108:
15109: ---------------------------------------------------------------------------------------------------------------
15110: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15111: ---------------------------------------------------------------------------------------------------------------
15112: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15113:
15114: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15115: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15116:
15110: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15111: ---------------------------------------------------------------------------------------------------------------
15112: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15113:
15114: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15115: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15116:
15117: IF xla_accounting_cache_pkg.GetValueChar
15118: (p_source_code => 'LEDGER_CATEGORY_CODE'
15111: ---------------------------------------------------------------------------------------------------------------
15112: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15113:
15114: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15115: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15116:
15117: IF xla_accounting_cache_pkg.GetValueChar
15118: (p_source_code => 'LEDGER_CATEGORY_CODE'
15119: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
15122: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
15123: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
15124: )
15125: THEN
15126: xla_ae_lines_pkg.BflowUpgEntry
15127: (p_business_method_code => l_bflow_method_code
15128: ,p_business_class_code => l_bflow_class_code
15129: ,p_balance_type => l_balance_type_code);
15130: ELSE
15162: , x_value_type_code => l_adr_value_type_code
15163: , p_side => 'NA'
15164: );
15165:
15166: xla_ae_lines_pkg.set_ccid(
15167: p_code_combination_id => l_ccid
15168: , p_value_type_code => l_adr_value_type_code
15169: , p_transaction_coa_id => l_adr_transaction_coa_id
15170: , p_accounting_coa_id => l_adr_accounting_coa_id
15198: xla_accounting_err_pkg.build_message
15199: (p_appli_s_name => 'XLA'
15200: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
15201: ,p_token_1 => 'LINE_NUMBER'
15202: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
15203: ,p_token_2 => 'LINE_TYPE_NAME'
15204: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
15205: l_component_type
15206: ,l_component_code
15234: --
15235: --
15236: ------------------------------------------------------------------------------------------------
15237: -- 4219869 Business Flow
15238: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15239: -- Prior Entry. Currently, the following code is always generated.
15240: ------------------------------------------------------------------------------------------------
15241: XLA_AE_LINES_PKG.ValidateCurrentLine;
15242:
15237: -- 4219869 Business Flow
15238: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15239: -- Prior Entry. Currently, the following code is always generated.
15240: ------------------------------------------------------------------------------------------------
15241: XLA_AE_LINES_PKG.ValidateCurrentLine;
15242:
15243: ------------------------------------------------------------------------------------
15244: -- 4219869 Business Flow
15245: -- Populated credit and debit amounts -- Need to generate this within IF
15243: ------------------------------------------------------------------------------------
15244: -- 4219869 Business Flow
15245: -- Populated credit and debit amounts -- Need to generate this within IF
15246: ------------------------------------------------------------------------------------
15247: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15248:
15249: ----------------------------------------------------------------------------------
15250: -- 4219869 Business Flow
15251: -- Update journal entry status -- Need to generate this within IF
15275: -- To allow MPA report to determine if it should generate report process
15276: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15277: ------------------------------------------------------------------------------------------
15278:
15279: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15280: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15281: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15282: -- call ADRs
15283: -- Bug 4922099
15276: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15277: ------------------------------------------------------------------------------------------
15278:
15279: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15280: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15281: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15282: -- call ADRs
15283: -- Bug 4922099
15284: --
15300: , x_value_type_code => l_adr_value_type_code
15301: , p_side => 'NA'
15302: );
15303:
15304: xla_ae_lines_pkg.set_ccid(
15305: p_code_combination_id => l_ccid
15306: , p_value_type_code => l_adr_value_type_code
15307: , p_transaction_coa_id => l_adr_transaction_coa_id
15308: , p_accounting_coa_id => l_adr_accounting_coa_id
15323:
15324: --
15325: -- Update the line information that should be overwritten
15326: --
15327: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15328: p_header_num => 1);
15329: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15330:
15331: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15325: -- Update the line information that should be overwritten
15326: --
15327: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15328: p_header_num => 1);
15329: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15330:
15331: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15332:
15333: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15327: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15328: p_header_num => 1);
15329: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15330:
15331: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15332:
15333: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15334: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15335: END IF;
15330:
15331: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15332:
15333: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15334: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15335: END IF;
15336:
15337: --
15338: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15337: --
15338: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15339: --
15340: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
15341: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
15342: ELSE
15343: ---------------------------------------------------------------------------------------------------
15344: -- 4262811a Switch Sign
15345: ---------------------------------------------------------------------------------------------------
15342: ELSE
15343: ---------------------------------------------------------------------------------------------------
15344: -- 4262811a Switch Sign
15345: ---------------------------------------------------------------------------------------------------
15346: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15347: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15348: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15349: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15350: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15343: ---------------------------------------------------------------------------------------------------
15344: -- 4262811a Switch Sign
15345: ---------------------------------------------------------------------------------------------------
15346: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15347: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15348: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15349: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15350: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15351: -- 5132302
15344: -- 4262811a Switch Sign
15345: ---------------------------------------------------------------------------------------------------
15346: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15347: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15348: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15349: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15350: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15351: -- 5132302
15352: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15345: ---------------------------------------------------------------------------------------------------
15346: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15347: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15348: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15349: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15350: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15351: -- 5132302
15352: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15353: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15346: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15347: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15348: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15349: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15350: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15351: -- 5132302
15352: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15353: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15354:
15348: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15349: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15350: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15351: -- 5132302
15352: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15353: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15354:
15355: END IF;
15356:
15349: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15350: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15351: -- 5132302
15352: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15353: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15354:
15355: END IF;
15356:
15357: -- 4955764
15354:
15355: END IF;
15356:
15357: -- 4955764
15358: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15359: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15360:
15361:
15362: XLA_AE_LINES_PKG.ValidateCurrentLine;
15358: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15359: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15360:
15361:
15362: XLA_AE_LINES_PKG.ValidateCurrentLine;
15363: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15364:
15365: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15366: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15359: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15360:
15361:
15362: XLA_AE_LINES_PKG.ValidateCurrentLine;
15363: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15364:
15365: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15366: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15367: ,p_balance_type_code => l_balance_type_code);
15500: --
15501: -- bulk performance
15502: --
15503: l_balance_type_code VARCHAR2(1);
15504: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
15505: l_log_module VARCHAR2(240);
15506:
15507: --
15508: -- Upgrade strategy
15568: ') = 'UNBILL'
15569: THEN
15570:
15571: --
15572: XLA_AE_LINES_PKG.SetNewLine;
15573:
15574: p_balance_type_code := l_balance_type_code;
15575: -- set the flag so later we will know whether the gain loss line needs to be created
15576:
15580:
15581: --
15582: -- bulk performance
15583: --
15584: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
15585: p_header_num => 0); -- 4262811
15586: --
15587: -- set accounting line options
15588: --
15585: p_header_num => 0); -- 4262811
15586: --
15587: -- set accounting line options
15588: --
15589: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
15590: p_natural_side_code => 'D'
15591: , p_gain_or_loss_flag => 'N'
15592: , p_gl_transfer_mode_code => 'S'
15593: , p_acct_entry_type_code => 'A'
15599: --
15600: --
15601: -- set accounting line type info
15602: --
15603: xla_ae_lines_pkg.SetAcctLineType
15604: (p_component_type => l_component_type
15605: ,p_event_type_code => l_event_type_code
15606: ,p_line_definition_owner_code => l_line_definition_owner_code
15607: ,p_line_definition_code => l_line_definition_code
15613: ,p_event_class_code => l_event_class_code);
15614: --
15615: -- set accounting class
15616: --
15617: xla_ae_lines_pkg.SetAcctClass(
15618: p_accounting_class_code => 'UNBILL'
15619: , p_ae_header_id => l_ae_header_id
15620: );
15621:
15621:
15622: --
15623: -- set rounding class
15624: --
15625: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15626: 'RECEIVABLE';
15627:
15628: --
15629: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15625: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
15626: 'RECEIVABLE';
15627:
15628: --
15629: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15630: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15631: --
15632: -- bulk performance
15633: --
15626: 'RECEIVABLE';
15627:
15628: --
15629: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
15630: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15631: --
15632: -- bulk performance
15633: --
15634: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15630: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
15631: --
15632: -- bulk performance
15633: --
15634: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15635:
15636: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15637: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15638:
15632: -- bulk performance
15633: --
15634: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
15635:
15636: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15637: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15638:
15639: -- 4955764
15640: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15636: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
15637: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
15638:
15639: -- 4955764
15640: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15641: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
15642:
15643: -- 4458381 Public Sector Enh
15644:
15672: l_rec_acct_attrs.array_char_value(11) := p_source_27;
15673: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
15674: l_rec_acct_attrs.array_num_value(12) := p_source_50;
15675:
15676: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15677: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15678:
15679: ---------------------------------------------------------------------------------------------------------------
15680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15673: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
15674: l_rec_acct_attrs.array_num_value(12) := p_source_50;
15675:
15676: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15677: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15678:
15679: ---------------------------------------------------------------------------------------------------------------
15680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15681: ---------------------------------------------------------------------------------------------------------------
15676: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
15677: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
15678:
15679: ---------------------------------------------------------------------------------------------------------------
15680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15681: ---------------------------------------------------------------------------------------------------------------
15682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15683:
15684: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15678:
15679: ---------------------------------------------------------------------------------------------------------------
15680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15681: ---------------------------------------------------------------------------------------------------------------
15682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15683:
15684: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15685: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15686:
15680: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
15681: ---------------------------------------------------------------------------------------------------------------
15682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15683:
15684: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15685: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15686:
15687: IF xla_accounting_cache_pkg.GetValueChar
15688: (p_source_code => 'LEDGER_CATEGORY_CODE'
15681: ---------------------------------------------------------------------------------------------------------------
15682: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
15683:
15684: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15685: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
15686:
15687: IF xla_accounting_cache_pkg.GetValueChar
15688: (p_source_code => 'LEDGER_CATEGORY_CODE'
15689: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
15692: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
15693: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
15694: )
15695: THEN
15696: xla_ae_lines_pkg.BflowUpgEntry
15697: (p_business_method_code => l_bflow_method_code
15698: ,p_business_class_code => l_bflow_class_code
15699: ,p_balance_type => l_balance_type_code);
15700: ELSE
15732: , x_value_type_code => l_adr_value_type_code
15733: , p_side => 'NA'
15734: );
15735:
15736: xla_ae_lines_pkg.set_ccid(
15737: p_code_combination_id => l_ccid
15738: , p_value_type_code => l_adr_value_type_code
15739: , p_transaction_coa_id => l_adr_transaction_coa_id
15740: , p_accounting_coa_id => l_adr_accounting_coa_id
15768: xla_accounting_err_pkg.build_message
15769: (p_appli_s_name => 'XLA'
15770: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
15771: ,p_token_1 => 'LINE_NUMBER'
15772: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
15773: ,p_token_2 => 'LINE_TYPE_NAME'
15774: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
15775: l_component_type
15776: ,l_component_code
15804: --
15805: --
15806: ------------------------------------------------------------------------------------------------
15807: -- 4219869 Business Flow
15808: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15809: -- Prior Entry. Currently, the following code is always generated.
15810: ------------------------------------------------------------------------------------------------
15811: XLA_AE_LINES_PKG.ValidateCurrentLine;
15812:
15807: -- 4219869 Business Flow
15808: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
15809: -- Prior Entry. Currently, the following code is always generated.
15810: ------------------------------------------------------------------------------------------------
15811: XLA_AE_LINES_PKG.ValidateCurrentLine;
15812:
15813: ------------------------------------------------------------------------------------
15814: -- 4219869 Business Flow
15815: -- Populated credit and debit amounts -- Need to generate this within IF
15813: ------------------------------------------------------------------------------------
15814: -- 4219869 Business Flow
15815: -- Populated credit and debit amounts -- Need to generate this within IF
15816: ------------------------------------------------------------------------------------
15817: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15818:
15819: ----------------------------------------------------------------------------------
15820: -- 4219869 Business Flow
15821: -- Update journal entry status -- Need to generate this within IF
15845: -- To allow MPA report to determine if it should generate report process
15846: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15847: ------------------------------------------------------------------------------------------
15848:
15849: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15850: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15851: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15852: -- call ADRs
15853: -- Bug 4922099
15846: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
15847: ------------------------------------------------------------------------------------------
15848:
15849: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
15850: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
15851: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
15852: -- call ADRs
15853: -- Bug 4922099
15854: --
15870: , x_value_type_code => l_adr_value_type_code
15871: , p_side => 'NA'
15872: );
15873:
15874: xla_ae_lines_pkg.set_ccid(
15875: p_code_combination_id => l_ccid
15876: , p_value_type_code => l_adr_value_type_code
15877: , p_transaction_coa_id => l_adr_transaction_coa_id
15878: , p_accounting_coa_id => l_adr_accounting_coa_id
15893:
15894: --
15895: -- Update the line information that should be overwritten
15896: --
15897: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15898: p_header_num => 1);
15899: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15900:
15901: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15895: -- Update the line information that should be overwritten
15896: --
15897: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15898: p_header_num => 1);
15899: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15900:
15901: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15902:
15903: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15897: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
15898: p_header_num => 1);
15899: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
15900:
15901: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15902:
15903: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15904: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15905: END IF;
15900:
15901: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
15902:
15903: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
15904: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
15905: END IF;
15906:
15907: --
15908: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15907: --
15908: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
15909: --
15910: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
15911: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
15912: ELSE
15913: ---------------------------------------------------------------------------------------------------
15914: -- 4262811a Switch Sign
15915: ---------------------------------------------------------------------------------------------------
15912: ELSE
15913: ---------------------------------------------------------------------------------------------------
15914: -- 4262811a Switch Sign
15915: ---------------------------------------------------------------------------------------------------
15916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15913: ---------------------------------------------------------------------------------------------------
15914: -- 4262811a Switch Sign
15915: ---------------------------------------------------------------------------------------------------
15916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15921: -- 5132302
15914: -- 4262811a Switch Sign
15915: ---------------------------------------------------------------------------------------------------
15916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15921: -- 5132302
15922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15915: ---------------------------------------------------------------------------------------------------
15916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15921: -- 5132302
15922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15923: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15916: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
15917: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15921: -- 5132302
15922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15923: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15924:
15918: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15921: -- 5132302
15922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15923: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15924:
15925: END IF;
15926:
15919: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
15920: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15921: -- 5132302
15922: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
15923: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
15924:
15925: END IF;
15926:
15927: -- 4955764
15924:
15925: END IF;
15926:
15927: -- 4955764
15928: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15929: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15930:
15931:
15932: XLA_AE_LINES_PKG.ValidateCurrentLine;
15928: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
15929: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15930:
15931:
15932: XLA_AE_LINES_PKG.ValidateCurrentLine;
15933: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15934:
15935: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15936: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15929: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
15930:
15931:
15932: XLA_AE_LINES_PKG.ValidateCurrentLine;
15933: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
15934:
15935: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
15936: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
15937: ,p_balance_type_code => l_balance_type_code);
16070: --
16071: -- bulk performance
16072: --
16073: l_balance_type_code VARCHAR2(1);
16074: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
16075: l_log_module VARCHAR2(240);
16076:
16077: --
16078: -- Upgrade strategy
16138: ') = 'UNEARN'
16139: THEN
16140:
16141: --
16142: XLA_AE_LINES_PKG.SetNewLine;
16143:
16144: p_balance_type_code := l_balance_type_code;
16145: -- set the flag so later we will know whether the gain loss line needs to be created
16146:
16150:
16151: --
16152: -- bulk performance
16153: --
16154: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
16155: p_header_num => 0); -- 4262811
16156: --
16157: -- set accounting line options
16158: --
16155: p_header_num => 0); -- 4262811
16156: --
16157: -- set accounting line options
16158: --
16159: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
16160: p_natural_side_code => 'C'
16161: , p_gain_or_loss_flag => 'N'
16162: , p_gl_transfer_mode_code => 'S'
16163: , p_acct_entry_type_code => 'A'
16169: --
16170: --
16171: -- set accounting line type info
16172: --
16173: xla_ae_lines_pkg.SetAcctLineType
16174: (p_component_type => l_component_type
16175: ,p_event_type_code => l_event_type_code
16176: ,p_line_definition_owner_code => l_line_definition_owner_code
16177: ,p_line_definition_code => l_line_definition_code
16183: ,p_event_class_code => l_event_class_code);
16184: --
16185: -- set accounting class
16186: --
16187: xla_ae_lines_pkg.SetAcctClass(
16188: p_accounting_class_code => 'UNEARNED_REVENUE'
16189: , p_ae_header_id => l_ae_header_id
16190: );
16191:
16191:
16192: --
16193: -- set rounding class
16194: --
16195: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16196: 'RECEIVABLE';
16197:
16198: --
16199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16195: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16196: 'RECEIVABLE';
16197:
16198: --
16199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16201: --
16202: -- bulk performance
16203: --
16196: 'RECEIVABLE';
16197:
16198: --
16199: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16201: --
16202: -- bulk performance
16203: --
16204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16200: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16201: --
16202: -- bulk performance
16203: --
16204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16205:
16206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16208:
16202: -- bulk performance
16203: --
16204: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16205:
16206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16208:
16209: -- 4955764
16210: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16206: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16207: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16208:
16209: -- 4955764
16210: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16211: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
16212:
16213: -- 4458381 Public Sector Enh
16214:
16242: l_rec_acct_attrs.array_char_value(11) := p_source_27;
16243: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
16244: l_rec_acct_attrs.array_num_value(12) := p_source_50;
16245:
16246: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16247: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16248:
16249: ---------------------------------------------------------------------------------------------------------------
16250: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16243: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
16244: l_rec_acct_attrs.array_num_value(12) := p_source_50;
16245:
16246: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16247: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16248:
16249: ---------------------------------------------------------------------------------------------------------------
16250: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16251: ---------------------------------------------------------------------------------------------------------------
16246: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16247: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16248:
16249: ---------------------------------------------------------------------------------------------------------------
16250: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16251: ---------------------------------------------------------------------------------------------------------------
16252: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16253:
16254: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16248:
16249: ---------------------------------------------------------------------------------------------------------------
16250: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16251: ---------------------------------------------------------------------------------------------------------------
16252: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16253:
16254: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16255: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16256:
16250: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16251: ---------------------------------------------------------------------------------------------------------------
16252: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16253:
16254: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16255: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16256:
16257: IF xla_accounting_cache_pkg.GetValueChar
16258: (p_source_code => 'LEDGER_CATEGORY_CODE'
16251: ---------------------------------------------------------------------------------------------------------------
16252: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16253:
16254: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16255: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16256:
16257: IF xla_accounting_cache_pkg.GetValueChar
16258: (p_source_code => 'LEDGER_CATEGORY_CODE'
16259: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
16262: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
16263: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
16264: )
16265: THEN
16266: xla_ae_lines_pkg.BflowUpgEntry
16267: (p_business_method_code => l_bflow_method_code
16268: ,p_business_class_code => l_bflow_class_code
16269: ,p_balance_type => l_balance_type_code);
16270: ELSE
16302: , x_value_type_code => l_adr_value_type_code
16303: , p_side => 'NA'
16304: );
16305:
16306: xla_ae_lines_pkg.set_ccid(
16307: p_code_combination_id => l_ccid
16308: , p_value_type_code => l_adr_value_type_code
16309: , p_transaction_coa_id => l_adr_transaction_coa_id
16310: , p_accounting_coa_id => l_adr_accounting_coa_id
16338: xla_accounting_err_pkg.build_message
16339: (p_appli_s_name => 'XLA'
16340: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
16341: ,p_token_1 => 'LINE_NUMBER'
16342: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
16343: ,p_token_2 => 'LINE_TYPE_NAME'
16344: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
16345: l_component_type
16346: ,l_component_code
16374: --
16375: --
16376: ------------------------------------------------------------------------------------------------
16377: -- 4219869 Business Flow
16378: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16379: -- Prior Entry. Currently, the following code is always generated.
16380: ------------------------------------------------------------------------------------------------
16381: XLA_AE_LINES_PKG.ValidateCurrentLine;
16382:
16377: -- 4219869 Business Flow
16378: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16379: -- Prior Entry. Currently, the following code is always generated.
16380: ------------------------------------------------------------------------------------------------
16381: XLA_AE_LINES_PKG.ValidateCurrentLine;
16382:
16383: ------------------------------------------------------------------------------------
16384: -- 4219869 Business Flow
16385: -- Populated credit and debit amounts -- Need to generate this within IF
16383: ------------------------------------------------------------------------------------
16384: -- 4219869 Business Flow
16385: -- Populated credit and debit amounts -- Need to generate this within IF
16386: ------------------------------------------------------------------------------------
16387: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16388:
16389: ----------------------------------------------------------------------------------
16390: -- 4219869 Business Flow
16391: -- Update journal entry status -- Need to generate this within IF
16415: -- To allow MPA report to determine if it should generate report process
16416: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16417: ------------------------------------------------------------------------------------------
16418:
16419: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16420: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16421: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16422: -- call ADRs
16423: -- Bug 4922099
16416: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16417: ------------------------------------------------------------------------------------------
16418:
16419: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16420: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16421: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16422: -- call ADRs
16423: -- Bug 4922099
16424: --
16440: , x_value_type_code => l_adr_value_type_code
16441: , p_side => 'NA'
16442: );
16443:
16444: xla_ae_lines_pkg.set_ccid(
16445: p_code_combination_id => l_ccid
16446: , p_value_type_code => l_adr_value_type_code
16447: , p_transaction_coa_id => l_adr_transaction_coa_id
16448: , p_accounting_coa_id => l_adr_accounting_coa_id
16463:
16464: --
16465: -- Update the line information that should be overwritten
16466: --
16467: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16468: p_header_num => 1);
16469: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16470:
16471: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16465: -- Update the line information that should be overwritten
16466: --
16467: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16468: p_header_num => 1);
16469: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16470:
16471: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16472:
16473: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16467: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
16468: p_header_num => 1);
16469: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
16470:
16471: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16472:
16473: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16474: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16475: END IF;
16470:
16471: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
16472:
16473: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
16474: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
16475: END IF;
16476:
16477: --
16478: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16477: --
16478: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
16479: --
16480: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
16481: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
16482: ELSE
16483: ---------------------------------------------------------------------------------------------------
16484: -- 4262811a Switch Sign
16485: ---------------------------------------------------------------------------------------------------
16482: ELSE
16483: ---------------------------------------------------------------------------------------------------
16484: -- 4262811a Switch Sign
16485: ---------------------------------------------------------------------------------------------------
16486: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16487: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16489: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16483: ---------------------------------------------------------------------------------------------------
16484: -- 4262811a Switch Sign
16485: ---------------------------------------------------------------------------------------------------
16486: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16487: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16489: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16491: -- 5132302
16484: -- 4262811a Switch Sign
16485: ---------------------------------------------------------------------------------------------------
16486: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16487: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16489: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16491: -- 5132302
16492: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16485: ---------------------------------------------------------------------------------------------------
16486: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16487: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16489: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16491: -- 5132302
16492: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16486: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
16487: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16489: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16491: -- 5132302
16492: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16494:
16488: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16489: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16491: -- 5132302
16492: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16494:
16495: END IF;
16496:
16489: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
16490: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16491: -- 5132302
16492: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
16493: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
16494:
16495: END IF;
16496:
16497: -- 4955764
16494:
16495: END IF;
16496:
16497: -- 4955764
16498: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16499: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16500:
16501:
16502: XLA_AE_LINES_PKG.ValidateCurrentLine;
16498: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16499: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16500:
16501:
16502: XLA_AE_LINES_PKG.ValidateCurrentLine;
16503: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16504:
16505: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16506: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16499: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
16500:
16501:
16502: XLA_AE_LINES_PKG.ValidateCurrentLine;
16503: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16504:
16505: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
16506: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
16507: ,p_balance_type_code => l_balance_type_code);
16638: --
16639: -- bulk performance
16640: --
16641: l_balance_type_code VARCHAR2(1);
16642: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
16643: l_log_module VARCHAR2(240);
16644:
16645: --
16646: -- Upgrade strategy
16706: ') = 'REC'
16707: THEN
16708:
16709: --
16710: XLA_AE_LINES_PKG.SetNewLine;
16711:
16712: p_balance_type_code := l_balance_type_code;
16713: -- set the flag so later we will know whether the gain loss line needs to be created
16714:
16718:
16719: --
16720: -- bulk performance
16721: --
16722: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
16723: p_header_num => 0); -- 4262811
16724: --
16725: -- set accounting line options
16726: --
16723: p_header_num => 0); -- 4262811
16724: --
16725: -- set accounting line options
16726: --
16727: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
16728: p_natural_side_code => 'D'
16729: , p_gain_or_loss_flag => 'N'
16730: , p_gl_transfer_mode_code => 'S'
16731: , p_acct_entry_type_code => 'A'
16737: --
16738: --
16739: -- set accounting line type info
16740: --
16741: xla_ae_lines_pkg.SetAcctLineType
16742: (p_component_type => l_component_type
16743: ,p_event_type_code => l_event_type_code
16744: ,p_line_definition_owner_code => l_line_definition_owner_code
16745: ,p_line_definition_code => l_line_definition_code
16751: ,p_event_class_code => l_event_class_code);
16752: --
16753: -- set accounting class
16754: --
16755: xla_ae_lines_pkg.SetAcctClass(
16756: p_accounting_class_code => 'RECEIVABLE'
16757: , p_ae_header_id => l_ae_header_id
16758: );
16759:
16759:
16760: --
16761: -- set rounding class
16762: --
16763: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16764: 'RECEIVABLE';
16765:
16766: --
16767: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16763: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
16764: 'RECEIVABLE';
16765:
16766: --
16767: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16768: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16769: --
16770: -- bulk performance
16771: --
16764: 'RECEIVABLE';
16765:
16766: --
16767: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
16768: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16769: --
16770: -- bulk performance
16771: --
16772: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16768: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
16769: --
16770: -- bulk performance
16771: --
16772: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16773:
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16775: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16776:
16770: -- bulk performance
16771: --
16772: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
16773:
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16775: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16776:
16777: -- 4955764
16778: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16774: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
16775: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
16776:
16777: -- 4955764
16778: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
16779: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
16780:
16781: -- 4458381 Public Sector Enh
16782:
16808: l_rec_acct_attrs.array_num_value(10) := p_source_26;
16809: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
16810: l_rec_acct_attrs.array_char_value(11) := p_source_27;
16811:
16812: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16813: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16814:
16815: ---------------------------------------------------------------------------------------------------------------
16816: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16809: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
16810: l_rec_acct_attrs.array_char_value(11) := p_source_27;
16811:
16812: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16813: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16814:
16815: ---------------------------------------------------------------------------------------------------------------
16816: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16817: ---------------------------------------------------------------------------------------------------------------
16812: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
16813: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
16814:
16815: ---------------------------------------------------------------------------------------------------------------
16816: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16817: ---------------------------------------------------------------------------------------------------------------
16818: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16819:
16820: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16814:
16815: ---------------------------------------------------------------------------------------------------------------
16816: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16817: ---------------------------------------------------------------------------------------------------------------
16818: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16819:
16820: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16821: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16822:
16816: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
16817: ---------------------------------------------------------------------------------------------------------------
16818: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16819:
16820: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16821: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16822:
16823: IF xla_accounting_cache_pkg.GetValueChar
16824: (p_source_code => 'LEDGER_CATEGORY_CODE'
16817: ---------------------------------------------------------------------------------------------------------------
16818: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
16819:
16820: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16821: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
16822:
16823: IF xla_accounting_cache_pkg.GetValueChar
16824: (p_source_code => 'LEDGER_CATEGORY_CODE'
16825: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
16828: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
16829: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
16830: )
16831: THEN
16832: xla_ae_lines_pkg.BflowUpgEntry
16833: (p_business_method_code => l_bflow_method_code
16834: ,p_business_class_code => l_bflow_class_code
16835: ,p_balance_type => l_balance_type_code);
16836: ELSE
16868: , x_value_type_code => l_adr_value_type_code
16869: , p_side => 'NA'
16870: );
16871:
16872: xla_ae_lines_pkg.set_ccid(
16873: p_code_combination_id => l_ccid
16874: , p_value_type_code => l_adr_value_type_code
16875: , p_transaction_coa_id => l_adr_transaction_coa_id
16876: , p_accounting_coa_id => l_adr_accounting_coa_id
16904: xla_accounting_err_pkg.build_message
16905: (p_appli_s_name => 'XLA'
16906: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
16907: ,p_token_1 => 'LINE_NUMBER'
16908: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
16909: ,p_token_2 => 'LINE_TYPE_NAME'
16910: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
16911: l_component_type
16912: ,l_component_code
16940: --
16941: --
16942: ------------------------------------------------------------------------------------------------
16943: -- 4219869 Business Flow
16944: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16945: -- Prior Entry. Currently, the following code is always generated.
16946: ------------------------------------------------------------------------------------------------
16947: XLA_AE_LINES_PKG.ValidateCurrentLine;
16948:
16943: -- 4219869 Business Flow
16944: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
16945: -- Prior Entry. Currently, the following code is always generated.
16946: ------------------------------------------------------------------------------------------------
16947: XLA_AE_LINES_PKG.ValidateCurrentLine;
16948:
16949: ------------------------------------------------------------------------------------
16950: -- 4219869 Business Flow
16951: -- Populated credit and debit amounts -- Need to generate this within IF
16949: ------------------------------------------------------------------------------------
16950: -- 4219869 Business Flow
16951: -- Populated credit and debit amounts -- Need to generate this within IF
16952: ------------------------------------------------------------------------------------
16953: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
16954:
16955: ----------------------------------------------------------------------------------
16956: -- 4219869 Business Flow
16957: -- Update journal entry status -- Need to generate this within IF
16981: -- To allow MPA report to determine if it should generate report process
16982: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16983: ------------------------------------------------------------------------------------------
16984:
16985: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16986: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16987: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16988: -- call ADRs
16989: -- Bug 4922099
16982: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
16983: ------------------------------------------------------------------------------------------
16984:
16985: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
16986: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
16987: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
16988: -- call ADRs
16989: -- Bug 4922099
16990: --
17006: , x_value_type_code => l_adr_value_type_code
17007: , p_side => 'NA'
17008: );
17009:
17010: xla_ae_lines_pkg.set_ccid(
17011: p_code_combination_id => l_ccid
17012: , p_value_type_code => l_adr_value_type_code
17013: , p_transaction_coa_id => l_adr_transaction_coa_id
17014: , p_accounting_coa_id => l_adr_accounting_coa_id
17029:
17030: --
17031: -- Update the line information that should be overwritten
17032: --
17033: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17034: p_header_num => 1);
17035: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17036:
17037: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17031: -- Update the line information that should be overwritten
17032: --
17033: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17034: p_header_num => 1);
17035: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17036:
17037: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17038:
17039: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17033: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17034: p_header_num => 1);
17035: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17036:
17037: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17038:
17039: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17040: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17041: END IF;
17036:
17037: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17038:
17039: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17040: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17041: END IF;
17042:
17043: --
17044: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17043: --
17044: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17045: --
17046: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
17047: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
17048: ELSE
17049: ---------------------------------------------------------------------------------------------------
17050: -- 4262811a Switch Sign
17051: ---------------------------------------------------------------------------------------------------
17048: ELSE
17049: ---------------------------------------------------------------------------------------------------
17050: -- 4262811a Switch Sign
17051: ---------------------------------------------------------------------------------------------------
17052: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17053: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17054: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17055: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17056: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17049: ---------------------------------------------------------------------------------------------------
17050: -- 4262811a Switch Sign
17051: ---------------------------------------------------------------------------------------------------
17052: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17053: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17054: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17055: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17056: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17057: -- 5132302
17050: -- 4262811a Switch Sign
17051: ---------------------------------------------------------------------------------------------------
17052: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17053: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17054: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17055: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17056: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17057: -- 5132302
17058: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17051: ---------------------------------------------------------------------------------------------------
17052: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17053: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17054: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17055: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17056: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17057: -- 5132302
17058: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17059: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17052: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17053: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17054: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17055: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17056: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17057: -- 5132302
17058: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17059: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17060:
17054: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17055: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17056: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17057: -- 5132302
17058: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17059: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17060:
17061: END IF;
17062:
17055: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17056: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17057: -- 5132302
17058: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17059: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17060:
17061: END IF;
17062:
17063: -- 4955764
17060:
17061: END IF;
17062:
17063: -- 4955764
17064: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17065: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17066:
17067:
17068: XLA_AE_LINES_PKG.ValidateCurrentLine;
17064: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17065: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17066:
17067:
17068: XLA_AE_LINES_PKG.ValidateCurrentLine;
17069: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17070:
17071: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17072: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17065: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17066:
17067:
17068: XLA_AE_LINES_PKG.ValidateCurrentLine;
17069: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17070:
17071: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17072: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17073: ,p_balance_type_code => l_balance_type_code);
17204: --
17205: -- bulk performance
17206: --
17207: l_balance_type_code VARCHAR2(1);
17208: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
17209: l_log_module VARCHAR2(240);
17210:
17211: --
17212: -- Upgrade strategy
17272: ') = 'REV'
17273: THEN
17274:
17275: --
17276: XLA_AE_LINES_PKG.SetNewLine;
17277:
17278: p_balance_type_code := l_balance_type_code;
17279: -- set the flag so later we will know whether the gain loss line needs to be created
17280:
17284:
17285: --
17286: -- bulk performance
17287: --
17288: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
17289: p_header_num => 0); -- 4262811
17290: --
17291: -- set accounting line options
17292: --
17289: p_header_num => 0); -- 4262811
17290: --
17291: -- set accounting line options
17292: --
17293: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
17294: p_natural_side_code => 'C'
17295: , p_gain_or_loss_flag => 'N'
17296: , p_gl_transfer_mode_code => 'S'
17297: , p_acct_entry_type_code => 'A'
17303: --
17304: --
17305: -- set accounting line type info
17306: --
17307: xla_ae_lines_pkg.SetAcctLineType
17308: (p_component_type => l_component_type
17309: ,p_event_type_code => l_event_type_code
17310: ,p_line_definition_owner_code => l_line_definition_owner_code
17311: ,p_line_definition_code => l_line_definition_code
17317: ,p_event_class_code => l_event_class_code);
17318: --
17319: -- set accounting class
17320: --
17321: xla_ae_lines_pkg.SetAcctClass(
17322: p_accounting_class_code => 'REVENUE'
17323: , p_ae_header_id => l_ae_header_id
17324: );
17325:
17325:
17326: --
17327: -- set rounding class
17328: --
17329: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17330: 'RECEIVABLE';
17331:
17332: --
17333: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17329: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17330: 'RECEIVABLE';
17331:
17332: --
17333: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17334: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17335: --
17336: -- bulk performance
17337: --
17330: 'RECEIVABLE';
17331:
17332: --
17333: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17334: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17335: --
17336: -- bulk performance
17337: --
17338: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17334: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17335: --
17336: -- bulk performance
17337: --
17338: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17339:
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17341: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17342:
17336: -- bulk performance
17337: --
17338: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17339:
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17341: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17342:
17343: -- 4955764
17344: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17340: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17341: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17342:
17343: -- 4955764
17344: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17345: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
17346:
17347: -- 4458381 Public Sector Enh
17348:
17374: l_rec_acct_attrs.array_num_value(10) := p_source_26;
17375: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
17376: l_rec_acct_attrs.array_char_value(11) := p_source_27;
17377:
17378: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17379: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17380:
17381: ---------------------------------------------------------------------------------------------------------------
17382: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17375: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
17376: l_rec_acct_attrs.array_char_value(11) := p_source_27;
17377:
17378: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17379: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17380:
17381: ---------------------------------------------------------------------------------------------------------------
17382: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17383: ---------------------------------------------------------------------------------------------------------------
17378: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17379: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17380:
17381: ---------------------------------------------------------------------------------------------------------------
17382: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17383: ---------------------------------------------------------------------------------------------------------------
17384: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17385:
17386: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17380:
17381: ---------------------------------------------------------------------------------------------------------------
17382: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17383: ---------------------------------------------------------------------------------------------------------------
17384: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17385:
17386: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17387: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17388:
17382: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17383: ---------------------------------------------------------------------------------------------------------------
17384: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17385:
17386: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17387: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17388:
17389: IF xla_accounting_cache_pkg.GetValueChar
17390: (p_source_code => 'LEDGER_CATEGORY_CODE'
17383: ---------------------------------------------------------------------------------------------------------------
17384: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17385:
17386: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17387: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17388:
17389: IF xla_accounting_cache_pkg.GetValueChar
17390: (p_source_code => 'LEDGER_CATEGORY_CODE'
17391: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
17394: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
17395: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
17396: )
17397: THEN
17398: xla_ae_lines_pkg.BflowUpgEntry
17399: (p_business_method_code => l_bflow_method_code
17400: ,p_business_class_code => l_bflow_class_code
17401: ,p_balance_type => l_balance_type_code);
17402: ELSE
17434: , x_value_type_code => l_adr_value_type_code
17435: , p_side => 'NA'
17436: );
17437:
17438: xla_ae_lines_pkg.set_ccid(
17439: p_code_combination_id => l_ccid
17440: , p_value_type_code => l_adr_value_type_code
17441: , p_transaction_coa_id => l_adr_transaction_coa_id
17442: , p_accounting_coa_id => l_adr_accounting_coa_id
17470: xla_accounting_err_pkg.build_message
17471: (p_appli_s_name => 'XLA'
17472: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
17473: ,p_token_1 => 'LINE_NUMBER'
17474: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
17475: ,p_token_2 => 'LINE_TYPE_NAME'
17476: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
17477: l_component_type
17478: ,l_component_code
17506: --
17507: --
17508: ------------------------------------------------------------------------------------------------
17509: -- 4219869 Business Flow
17510: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17511: -- Prior Entry. Currently, the following code is always generated.
17512: ------------------------------------------------------------------------------------------------
17513: XLA_AE_LINES_PKG.ValidateCurrentLine;
17514:
17509: -- 4219869 Business Flow
17510: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
17511: -- Prior Entry. Currently, the following code is always generated.
17512: ------------------------------------------------------------------------------------------------
17513: XLA_AE_LINES_PKG.ValidateCurrentLine;
17514:
17515: ------------------------------------------------------------------------------------
17516: -- 4219869 Business Flow
17517: -- Populated credit and debit amounts -- Need to generate this within IF
17515: ------------------------------------------------------------------------------------
17516: -- 4219869 Business Flow
17517: -- Populated credit and debit amounts -- Need to generate this within IF
17518: ------------------------------------------------------------------------------------
17519: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17520:
17521: ----------------------------------------------------------------------------------
17522: -- 4219869 Business Flow
17523: -- Update journal entry status -- Need to generate this within IF
17547: -- To allow MPA report to determine if it should generate report process
17548: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17549: ------------------------------------------------------------------------------------------
17550:
17551: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17552: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17553: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17554: -- call ADRs
17555: -- Bug 4922099
17548: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
17549: ------------------------------------------------------------------------------------------
17550:
17551: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
17552: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
17553: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
17554: -- call ADRs
17555: -- Bug 4922099
17556: --
17572: , x_value_type_code => l_adr_value_type_code
17573: , p_side => 'NA'
17574: );
17575:
17576: xla_ae_lines_pkg.set_ccid(
17577: p_code_combination_id => l_ccid
17578: , p_value_type_code => l_adr_value_type_code
17579: , p_transaction_coa_id => l_adr_transaction_coa_id
17580: , p_accounting_coa_id => l_adr_accounting_coa_id
17595:
17596: --
17597: -- Update the line information that should be overwritten
17598: --
17599: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17600: p_header_num => 1);
17601: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17602:
17603: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17597: -- Update the line information that should be overwritten
17598: --
17599: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17600: p_header_num => 1);
17601: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17602:
17603: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17604:
17605: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17599: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
17600: p_header_num => 1);
17601: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
17602:
17603: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17604:
17605: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17606: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17607: END IF;
17602:
17603: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
17604:
17605: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
17606: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
17607: END IF;
17608:
17609: --
17610: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17609: --
17610: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
17611: --
17612: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
17613: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
17614: ELSE
17615: ---------------------------------------------------------------------------------------------------
17616: -- 4262811a Switch Sign
17617: ---------------------------------------------------------------------------------------------------
17614: ELSE
17615: ---------------------------------------------------------------------------------------------------
17616: -- 4262811a Switch Sign
17617: ---------------------------------------------------------------------------------------------------
17618: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17620: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17622: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17615: ---------------------------------------------------------------------------------------------------
17616: -- 4262811a Switch Sign
17617: ---------------------------------------------------------------------------------------------------
17618: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17620: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17622: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17623: -- 5132302
17616: -- 4262811a Switch Sign
17617: ---------------------------------------------------------------------------------------------------
17618: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17620: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17622: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17623: -- 5132302
17624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17617: ---------------------------------------------------------------------------------------------------
17618: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17620: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17622: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17623: -- 5132302
17624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17625: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17618: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
17619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17620: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17622: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17623: -- 5132302
17624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17625: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17626:
17620: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17622: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17623: -- 5132302
17624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17625: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17626:
17627: END IF;
17628:
17621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
17622: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17623: -- 5132302
17624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
17625: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
17626:
17627: END IF;
17628:
17629: -- 4955764
17626:
17627: END IF;
17628:
17629: -- 4955764
17630: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17631: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17632:
17633:
17634: XLA_AE_LINES_PKG.ValidateCurrentLine;
17630: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17631: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17632:
17633:
17634: XLA_AE_LINES_PKG.ValidateCurrentLine;
17635: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17636:
17637: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17638: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17631: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
17632:
17633:
17634: XLA_AE_LINES_PKG.ValidateCurrentLine;
17635: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
17636:
17637: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
17638: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
17639: ,p_balance_type_code => l_balance_type_code);
17772: --
17773: -- bulk performance
17774: --
17775: l_balance_type_code VARCHAR2(1);
17776: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
17777: l_log_module VARCHAR2(240);
17778:
17779: --
17780: -- Upgrade strategy
17840: ') = 'CHARGES'
17841: THEN
17842:
17843: --
17844: XLA_AE_LINES_PKG.SetNewLine;
17845:
17846: p_balance_type_code := l_balance_type_code;
17847: -- set the flag so later we will know whether the gain loss line needs to be created
17848:
17852:
17853: --
17854: -- bulk performance
17855: --
17856: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
17857: p_header_num => 0); -- 4262811
17858: --
17859: -- set accounting line options
17860: --
17857: p_header_num => 0); -- 4262811
17858: --
17859: -- set accounting line options
17860: --
17861: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
17862: p_natural_side_code => 'C'
17863: , p_gain_or_loss_flag => 'N'
17864: , p_gl_transfer_mode_code => 'S'
17865: , p_acct_entry_type_code => 'A'
17871: --
17872: --
17873: -- set accounting line type info
17874: --
17875: xla_ae_lines_pkg.SetAcctLineType
17876: (p_component_type => l_component_type
17877: ,p_event_type_code => l_event_type_code
17878: ,p_line_definition_owner_code => l_line_definition_owner_code
17879: ,p_line_definition_code => l_line_definition_code
17885: ,p_event_class_code => l_event_class_code);
17886: --
17887: -- set accounting class
17888: --
17889: xla_ae_lines_pkg.SetAcctClass(
17890: p_accounting_class_code => 'CHARGES'
17891: , p_ae_header_id => l_ae_header_id
17892: );
17893:
17893:
17894: --
17895: -- set rounding class
17896: --
17897: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17898: 'RECEIVABLE';
17899:
17900: --
17901: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17897: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
17898: 'RECEIVABLE';
17899:
17900: --
17901: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17902: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17903: --
17904: -- bulk performance
17905: --
17898: 'RECEIVABLE';
17899:
17900: --
17901: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
17902: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17903: --
17904: -- bulk performance
17905: --
17906: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17902: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
17903: --
17904: -- bulk performance
17905: --
17906: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17907:
17908: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17909: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17910:
17904: -- bulk performance
17905: --
17906: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
17907:
17908: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17909: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17910:
17911: -- 4955764
17912: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17908: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
17909: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
17910:
17911: -- 4955764
17912: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
17913: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
17914:
17915: -- 4458381 Public Sector Enh
17916:
17944: l_rec_acct_attrs.array_char_value(11) := p_source_27;
17945: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
17946: l_rec_acct_attrs.array_num_value(12) := p_source_50;
17947:
17948: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17949: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17950:
17951: ---------------------------------------------------------------------------------------------------------------
17952: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17945: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
17946: l_rec_acct_attrs.array_num_value(12) := p_source_50;
17947:
17948: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17949: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17950:
17951: ---------------------------------------------------------------------------------------------------------------
17952: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17953: ---------------------------------------------------------------------------------------------------------------
17948: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
17949: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
17950:
17951: ---------------------------------------------------------------------------------------------------------------
17952: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17953: ---------------------------------------------------------------------------------------------------------------
17954: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17955:
17956: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17950:
17951: ---------------------------------------------------------------------------------------------------------------
17952: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17953: ---------------------------------------------------------------------------------------------------------------
17954: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17955:
17956: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17957: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17958:
17952: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
17953: ---------------------------------------------------------------------------------------------------------------
17954: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17955:
17956: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17957: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17958:
17959: IF xla_accounting_cache_pkg.GetValueChar
17960: (p_source_code => 'LEDGER_CATEGORY_CODE'
17953: ---------------------------------------------------------------------------------------------------------------
17954: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
17955:
17956: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17957: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
17958:
17959: IF xla_accounting_cache_pkg.GetValueChar
17960: (p_source_code => 'LEDGER_CATEGORY_CODE'
17961: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
17964: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
17965: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
17966: )
17967: THEN
17968: xla_ae_lines_pkg.BflowUpgEntry
17969: (p_business_method_code => l_bflow_method_code
17970: ,p_business_class_code => l_bflow_class_code
17971: ,p_balance_type => l_balance_type_code);
17972: ELSE
18004: , x_value_type_code => l_adr_value_type_code
18005: , p_side => 'NA'
18006: );
18007:
18008: xla_ae_lines_pkg.set_ccid(
18009: p_code_combination_id => l_ccid
18010: , p_value_type_code => l_adr_value_type_code
18011: , p_transaction_coa_id => l_adr_transaction_coa_id
18012: , p_accounting_coa_id => l_adr_accounting_coa_id
18040: xla_accounting_err_pkg.build_message
18041: (p_appli_s_name => 'XLA'
18042: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
18043: ,p_token_1 => 'LINE_NUMBER'
18044: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
18045: ,p_token_2 => 'LINE_TYPE_NAME'
18046: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
18047: l_component_type
18048: ,l_component_code
18076: --
18077: --
18078: ------------------------------------------------------------------------------------------------
18079: -- 4219869 Business Flow
18080: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18081: -- Prior Entry. Currently, the following code is always generated.
18082: ------------------------------------------------------------------------------------------------
18083: XLA_AE_LINES_PKG.ValidateCurrentLine;
18084:
18079: -- 4219869 Business Flow
18080: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18081: -- Prior Entry. Currently, the following code is always generated.
18082: ------------------------------------------------------------------------------------------------
18083: XLA_AE_LINES_PKG.ValidateCurrentLine;
18084:
18085: ------------------------------------------------------------------------------------
18086: -- 4219869 Business Flow
18087: -- Populated credit and debit amounts -- Need to generate this within IF
18085: ------------------------------------------------------------------------------------
18086: -- 4219869 Business Flow
18087: -- Populated credit and debit amounts -- Need to generate this within IF
18088: ------------------------------------------------------------------------------------
18089: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18090:
18091: ----------------------------------------------------------------------------------
18092: -- 4219869 Business Flow
18093: -- Update journal entry status -- Need to generate this within IF
18117: -- To allow MPA report to determine if it should generate report process
18118: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18119: ------------------------------------------------------------------------------------------
18120:
18121: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18122: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18123: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18124: -- call ADRs
18125: -- Bug 4922099
18118: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18119: ------------------------------------------------------------------------------------------
18120:
18121: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18122: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18123: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18124: -- call ADRs
18125: -- Bug 4922099
18126: --
18142: , x_value_type_code => l_adr_value_type_code
18143: , p_side => 'NA'
18144: );
18145:
18146: xla_ae_lines_pkg.set_ccid(
18147: p_code_combination_id => l_ccid
18148: , p_value_type_code => l_adr_value_type_code
18149: , p_transaction_coa_id => l_adr_transaction_coa_id
18150: , p_accounting_coa_id => l_adr_accounting_coa_id
18165:
18166: --
18167: -- Update the line information that should be overwritten
18168: --
18169: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18170: p_header_num => 1);
18171: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18172:
18173: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18167: -- Update the line information that should be overwritten
18168: --
18169: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18170: p_header_num => 1);
18171: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18172:
18173: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18174:
18175: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18169: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18170: p_header_num => 1);
18171: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18172:
18173: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18174:
18175: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18176: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18177: END IF;
18172:
18173: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18174:
18175: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18176: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18177: END IF;
18178:
18179: --
18180: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18179: --
18180: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18181: --
18182: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
18183: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
18184: ELSE
18185: ---------------------------------------------------------------------------------------------------
18186: -- 4262811a Switch Sign
18187: ---------------------------------------------------------------------------------------------------
18184: ELSE
18185: ---------------------------------------------------------------------------------------------------
18186: -- 4262811a Switch Sign
18187: ---------------------------------------------------------------------------------------------------
18188: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18192: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18185: ---------------------------------------------------------------------------------------------------
18186: -- 4262811a Switch Sign
18187: ---------------------------------------------------------------------------------------------------
18188: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18192: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18193: -- 5132302
18186: -- 4262811a Switch Sign
18187: ---------------------------------------------------------------------------------------------------
18188: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18192: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18193: -- 5132302
18194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18187: ---------------------------------------------------------------------------------------------------
18188: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18192: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18193: -- 5132302
18194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18195: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18188: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18189: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18192: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18193: -- 5132302
18194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18195: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18196:
18190: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18192: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18193: -- 5132302
18194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18195: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18196:
18197: END IF;
18198:
18191: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18192: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18193: -- 5132302
18194: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18195: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18196:
18197: END IF;
18198:
18199: -- 4955764
18196:
18197: END IF;
18198:
18199: -- 4955764
18200: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18201: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18202:
18203:
18204: XLA_AE_LINES_PKG.ValidateCurrentLine;
18200: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18201: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18202:
18203:
18204: XLA_AE_LINES_PKG.ValidateCurrentLine;
18205: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18206:
18207: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18208: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18201: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18202:
18203:
18204: XLA_AE_LINES_PKG.ValidateCurrentLine;
18205: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18206:
18207: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18208: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18209: ,p_balance_type_code => l_balance_type_code);
18342: --
18343: -- bulk performance
18344: --
18345: l_balance_type_code VARCHAR2(1);
18346: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
18347: l_log_module VARCHAR2(240);
18348:
18349: --
18350: -- Upgrade strategy
18410: ') = 'FREIGHT'
18411: THEN
18412:
18413: --
18414: XLA_AE_LINES_PKG.SetNewLine;
18415:
18416: p_balance_type_code := l_balance_type_code;
18417: -- set the flag so later we will know whether the gain loss line needs to be created
18418:
18422:
18423: --
18424: -- bulk performance
18425: --
18426: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
18427: p_header_num => 0); -- 4262811
18428: --
18429: -- set accounting line options
18430: --
18427: p_header_num => 0); -- 4262811
18428: --
18429: -- set accounting line options
18430: --
18431: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
18432: p_natural_side_code => 'C'
18433: , p_gain_or_loss_flag => 'N'
18434: , p_gl_transfer_mode_code => 'S'
18435: , p_acct_entry_type_code => 'A'
18441: --
18442: --
18443: -- set accounting line type info
18444: --
18445: xla_ae_lines_pkg.SetAcctLineType
18446: (p_component_type => l_component_type
18447: ,p_event_type_code => l_event_type_code
18448: ,p_line_definition_owner_code => l_line_definition_owner_code
18449: ,p_line_definition_code => l_line_definition_code
18455: ,p_event_class_code => l_event_class_code);
18456: --
18457: -- set accounting class
18458: --
18459: xla_ae_lines_pkg.SetAcctClass(
18460: p_accounting_class_code => 'FREIGHT'
18461: , p_ae_header_id => l_ae_header_id
18462: );
18463:
18463:
18464: --
18465: -- set rounding class
18466: --
18467: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18468: 'RECEIVABLE';
18469:
18470: --
18471: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18467: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
18468: 'RECEIVABLE';
18469:
18470: --
18471: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18472: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18473: --
18474: -- bulk performance
18475: --
18468: 'RECEIVABLE';
18469:
18470: --
18471: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
18472: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18473: --
18474: -- bulk performance
18475: --
18476: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18472: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
18473: --
18474: -- bulk performance
18475: --
18476: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18477:
18478: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18479: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18480:
18474: -- bulk performance
18475: --
18476: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
18477:
18478: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18479: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18480:
18481: -- 4955764
18482: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18478: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
18479: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
18480:
18481: -- 4955764
18482: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18483: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
18484:
18485: -- 4458381 Public Sector Enh
18486:
18514: l_rec_acct_attrs.array_char_value(11) := p_source_27;
18515: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
18516: l_rec_acct_attrs.array_num_value(12) := p_source_50;
18517:
18518: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18519: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18520:
18521: ---------------------------------------------------------------------------------------------------------------
18522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18515: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
18516: l_rec_acct_attrs.array_num_value(12) := p_source_50;
18517:
18518: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18519: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18520:
18521: ---------------------------------------------------------------------------------------------------------------
18522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18523: ---------------------------------------------------------------------------------------------------------------
18518: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
18519: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
18520:
18521: ---------------------------------------------------------------------------------------------------------------
18522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18523: ---------------------------------------------------------------------------------------------------------------
18524: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18525:
18526: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18520:
18521: ---------------------------------------------------------------------------------------------------------------
18522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18523: ---------------------------------------------------------------------------------------------------------------
18524: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18525:
18526: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18527: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18528:
18522: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
18523: ---------------------------------------------------------------------------------------------------------------
18524: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18525:
18526: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18527: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18528:
18529: IF xla_accounting_cache_pkg.GetValueChar
18530: (p_source_code => 'LEDGER_CATEGORY_CODE'
18523: ---------------------------------------------------------------------------------------------------------------
18524: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
18525:
18526: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18527: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
18528:
18529: IF xla_accounting_cache_pkg.GetValueChar
18530: (p_source_code => 'LEDGER_CATEGORY_CODE'
18531: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
18534: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
18535: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
18536: )
18537: THEN
18538: xla_ae_lines_pkg.BflowUpgEntry
18539: (p_business_method_code => l_bflow_method_code
18540: ,p_business_class_code => l_bflow_class_code
18541: ,p_balance_type => l_balance_type_code);
18542: ELSE
18574: , x_value_type_code => l_adr_value_type_code
18575: , p_side => 'NA'
18576: );
18577:
18578: xla_ae_lines_pkg.set_ccid(
18579: p_code_combination_id => l_ccid
18580: , p_value_type_code => l_adr_value_type_code
18581: , p_transaction_coa_id => l_adr_transaction_coa_id
18582: , p_accounting_coa_id => l_adr_accounting_coa_id
18610: xla_accounting_err_pkg.build_message
18611: (p_appli_s_name => 'XLA'
18612: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
18613: ,p_token_1 => 'LINE_NUMBER'
18614: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
18615: ,p_token_2 => 'LINE_TYPE_NAME'
18616: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
18617: l_component_type
18618: ,l_component_code
18646: --
18647: --
18648: ------------------------------------------------------------------------------------------------
18649: -- 4219869 Business Flow
18650: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18651: -- Prior Entry. Currently, the following code is always generated.
18652: ------------------------------------------------------------------------------------------------
18653: XLA_AE_LINES_PKG.ValidateCurrentLine;
18654:
18649: -- 4219869 Business Flow
18650: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
18651: -- Prior Entry. Currently, the following code is always generated.
18652: ------------------------------------------------------------------------------------------------
18653: XLA_AE_LINES_PKG.ValidateCurrentLine;
18654:
18655: ------------------------------------------------------------------------------------
18656: -- 4219869 Business Flow
18657: -- Populated credit and debit amounts -- Need to generate this within IF
18655: ------------------------------------------------------------------------------------
18656: -- 4219869 Business Flow
18657: -- Populated credit and debit amounts -- Need to generate this within IF
18658: ------------------------------------------------------------------------------------
18659: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18660:
18661: ----------------------------------------------------------------------------------
18662: -- 4219869 Business Flow
18663: -- Update journal entry status -- Need to generate this within IF
18687: -- To allow MPA report to determine if it should generate report process
18688: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18689: ------------------------------------------------------------------------------------------
18690:
18691: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18692: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18693: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18694: -- call ADRs
18695: -- Bug 4922099
18688: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
18689: ------------------------------------------------------------------------------------------
18690:
18691: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
18692: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
18693: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
18694: -- call ADRs
18695: -- Bug 4922099
18696: --
18712: , x_value_type_code => l_adr_value_type_code
18713: , p_side => 'NA'
18714: );
18715:
18716: xla_ae_lines_pkg.set_ccid(
18717: p_code_combination_id => l_ccid
18718: , p_value_type_code => l_adr_value_type_code
18719: , p_transaction_coa_id => l_adr_transaction_coa_id
18720: , p_accounting_coa_id => l_adr_accounting_coa_id
18735:
18736: --
18737: -- Update the line information that should be overwritten
18738: --
18739: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18740: p_header_num => 1);
18741: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18742:
18743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18737: -- Update the line information that should be overwritten
18738: --
18739: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18740: p_header_num => 1);
18741: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18742:
18743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18744:
18745: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18739: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
18740: p_header_num => 1);
18741: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
18742:
18743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18744:
18745: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18746: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18747: END IF;
18742:
18743: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
18744:
18745: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
18746: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
18747: END IF;
18748:
18749: --
18750: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18749: --
18750: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
18751: --
18752: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
18753: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
18754: ELSE
18755: ---------------------------------------------------------------------------------------------------
18756: -- 4262811a Switch Sign
18757: ---------------------------------------------------------------------------------------------------
18754: ELSE
18755: ---------------------------------------------------------------------------------------------------
18756: -- 4262811a Switch Sign
18757: ---------------------------------------------------------------------------------------------------
18758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18755: ---------------------------------------------------------------------------------------------------
18756: -- 4262811a Switch Sign
18757: ---------------------------------------------------------------------------------------------------
18758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18763: -- 5132302
18756: -- 4262811a Switch Sign
18757: ---------------------------------------------------------------------------------------------------
18758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18763: -- 5132302
18764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18757: ---------------------------------------------------------------------------------------------------
18758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18763: -- 5132302
18764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18765: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18758: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
18759: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18763: -- 5132302
18764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18765: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18766:
18760: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18763: -- 5132302
18764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18765: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18766:
18767: END IF;
18768:
18761: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
18762: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18763: -- 5132302
18764: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
18765: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
18766:
18767: END IF;
18768:
18769: -- 4955764
18766:
18767: END IF;
18768:
18769: -- 4955764
18770: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18771: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18772:
18773:
18774: XLA_AE_LINES_PKG.ValidateCurrentLine;
18770: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
18771: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18772:
18773:
18774: XLA_AE_LINES_PKG.ValidateCurrentLine;
18775: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18776:
18777: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18778: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18771: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
18772:
18773:
18774: XLA_AE_LINES_PKG.ValidateCurrentLine;
18775: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
18776:
18777: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
18778: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
18779: ,p_balance_type_code => l_balance_type_code);
18914: --
18915: -- bulk performance
18916: --
18917: l_balance_type_code VARCHAR2(1);
18918: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
18919: l_log_module VARCHAR2(240);
18920:
18921: --
18922: -- Upgrade strategy
18983: p_source_51 IS NULL
18984: THEN
18985:
18986: --
18987: XLA_AE_LINES_PKG.SetNewLine;
18988:
18989: p_balance_type_code := l_balance_type_code;
18990: -- set the flag so later we will know whether the gain loss line needs to be created
18991:
18995:
18996: --
18997: -- bulk performance
18998: --
18999: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
19000: p_header_num => 0); -- 4262811
19001: --
19002: -- set accounting line options
19003: --
19000: p_header_num => 0); -- 4262811
19001: --
19002: -- set accounting line options
19003: --
19004: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
19005: p_natural_side_code => 'C'
19006: , p_gain_or_loss_flag => 'N'
19007: , p_gl_transfer_mode_code => 'S'
19008: , p_acct_entry_type_code => 'A'
19014: --
19015: --
19016: -- set accounting line type info
19017: --
19018: xla_ae_lines_pkg.SetAcctLineType
19019: (p_component_type => l_component_type
19020: ,p_event_type_code => l_event_type_code
19021: ,p_line_definition_owner_code => l_line_definition_owner_code
19022: ,p_line_definition_code => l_line_definition_code
19028: ,p_event_class_code => l_event_class_code);
19029: --
19030: -- set accounting class
19031: --
19032: xla_ae_lines_pkg.SetAcctClass(
19033: p_accounting_class_code => 'REVENUE'
19034: , p_ae_header_id => l_ae_header_id
19035: );
19036:
19036:
19037: --
19038: -- set rounding class
19039: --
19040: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19041: 'RECEIVABLE';
19042:
19043: --
19044: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19040: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19041: 'RECEIVABLE';
19042:
19043: --
19044: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19045: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19046: --
19047: -- bulk performance
19048: --
19041: 'RECEIVABLE';
19042:
19043: --
19044: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19045: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19046: --
19047: -- bulk performance
19048: --
19049: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19045: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19046: --
19047: -- bulk performance
19048: --
19049: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19050:
19051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19052: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19053:
19047: -- bulk performance
19048: --
19049: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19050:
19051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19052: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19053:
19054: -- 4955764
19055: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19051: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19052: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19053:
19054: -- 4955764
19055: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19056: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
19057:
19058: -- 4458381 Public Sector Enh
19059:
19087: l_rec_acct_attrs.array_char_value(11) := p_source_27;
19088: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19089: l_rec_acct_attrs.array_num_value(12) := p_source_50;
19090:
19091: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19092: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19093:
19094: ---------------------------------------------------------------------------------------------------------------
19095: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19088: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19089: l_rec_acct_attrs.array_num_value(12) := p_source_50;
19090:
19091: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19092: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19093:
19094: ---------------------------------------------------------------------------------------------------------------
19095: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19096: ---------------------------------------------------------------------------------------------------------------
19091: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19092: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19093:
19094: ---------------------------------------------------------------------------------------------------------------
19095: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19096: ---------------------------------------------------------------------------------------------------------------
19097: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19098:
19099: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19093:
19094: ---------------------------------------------------------------------------------------------------------------
19095: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19096: ---------------------------------------------------------------------------------------------------------------
19097: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19098:
19099: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19100: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19101:
19095: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19096: ---------------------------------------------------------------------------------------------------------------
19097: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19098:
19099: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19100: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19101:
19102: IF xla_accounting_cache_pkg.GetValueChar
19103: (p_source_code => 'LEDGER_CATEGORY_CODE'
19096: ---------------------------------------------------------------------------------------------------------------
19097: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19098:
19099: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19100: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19101:
19102: IF xla_accounting_cache_pkg.GetValueChar
19103: (p_source_code => 'LEDGER_CATEGORY_CODE'
19104: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
19107: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
19108: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
19109: )
19110: THEN
19111: xla_ae_lines_pkg.BflowUpgEntry
19112: (p_business_method_code => l_bflow_method_code
19113: ,p_business_class_code => l_bflow_class_code
19114: ,p_balance_type => l_balance_type_code);
19115: ELSE
19147: , x_value_type_code => l_adr_value_type_code
19148: , p_side => 'NA'
19149: );
19150:
19151: xla_ae_lines_pkg.set_ccid(
19152: p_code_combination_id => l_ccid
19153: , p_value_type_code => l_adr_value_type_code
19154: , p_transaction_coa_id => l_adr_transaction_coa_id
19155: , p_accounting_coa_id => l_adr_accounting_coa_id
19183: xla_accounting_err_pkg.build_message
19184: (p_appli_s_name => 'XLA'
19185: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
19186: ,p_token_1 => 'LINE_NUMBER'
19187: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
19188: ,p_token_2 => 'LINE_TYPE_NAME'
19189: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
19190: l_component_type
19191: ,l_component_code
19219: --
19220: --
19221: ------------------------------------------------------------------------------------------------
19222: -- 4219869 Business Flow
19223: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19224: -- Prior Entry. Currently, the following code is always generated.
19225: ------------------------------------------------------------------------------------------------
19226: XLA_AE_LINES_PKG.ValidateCurrentLine;
19227:
19222: -- 4219869 Business Flow
19223: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19224: -- Prior Entry. Currently, the following code is always generated.
19225: ------------------------------------------------------------------------------------------------
19226: XLA_AE_LINES_PKG.ValidateCurrentLine;
19227:
19228: ------------------------------------------------------------------------------------
19229: -- 4219869 Business Flow
19230: -- Populated credit and debit amounts -- Need to generate this within IF
19228: ------------------------------------------------------------------------------------
19229: -- 4219869 Business Flow
19230: -- Populated credit and debit amounts -- Need to generate this within IF
19231: ------------------------------------------------------------------------------------
19232: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19233:
19234: ----------------------------------------------------------------------------------
19235: -- 4219869 Business Flow
19236: -- Update journal entry status -- Need to generate this within IF
19260: -- To allow MPA report to determine if it should generate report process
19261: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19262: ------------------------------------------------------------------------------------------
19263:
19264: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19265: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19266: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19267: -- call ADRs
19268: -- Bug 4922099
19261: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19262: ------------------------------------------------------------------------------------------
19263:
19264: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19265: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19266: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19267: -- call ADRs
19268: -- Bug 4922099
19269: --
19285: , x_value_type_code => l_adr_value_type_code
19286: , p_side => 'NA'
19287: );
19288:
19289: xla_ae_lines_pkg.set_ccid(
19290: p_code_combination_id => l_ccid
19291: , p_value_type_code => l_adr_value_type_code
19292: , p_transaction_coa_id => l_adr_transaction_coa_id
19293: , p_accounting_coa_id => l_adr_accounting_coa_id
19308:
19309: --
19310: -- Update the line information that should be overwritten
19311: --
19312: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19313: p_header_num => 1);
19314: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19315:
19316: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19310: -- Update the line information that should be overwritten
19311: --
19312: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19313: p_header_num => 1);
19314: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19315:
19316: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19317:
19318: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19312: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19313: p_header_num => 1);
19314: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19315:
19316: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19317:
19318: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19319: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19320: END IF;
19315:
19316: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19317:
19318: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19319: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19320: END IF;
19321:
19322: --
19323: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19322: --
19323: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19324: --
19325: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
19326: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
19327: ELSE
19328: ---------------------------------------------------------------------------------------------------
19329: -- 4262811a Switch Sign
19330: ---------------------------------------------------------------------------------------------------
19327: ELSE
19328: ---------------------------------------------------------------------------------------------------
19329: -- 4262811a Switch Sign
19330: ---------------------------------------------------------------------------------------------------
19331: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19333: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19335: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19328: ---------------------------------------------------------------------------------------------------
19329: -- 4262811a Switch Sign
19330: ---------------------------------------------------------------------------------------------------
19331: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19333: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19335: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19336: -- 5132302
19329: -- 4262811a Switch Sign
19330: ---------------------------------------------------------------------------------------------------
19331: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19333: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19335: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19336: -- 5132302
19337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19330: ---------------------------------------------------------------------------------------------------
19331: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19333: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19335: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19336: -- 5132302
19337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19331: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19332: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19333: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19335: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19336: -- 5132302
19337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19339:
19333: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19335: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19336: -- 5132302
19337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19339:
19340: END IF;
19341:
19334: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19335: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19336: -- 5132302
19337: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19338: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19339:
19340: END IF;
19341:
19342: -- 4955764
19339:
19340: END IF;
19341:
19342: -- 4955764
19343: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19344: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19345:
19346:
19347: XLA_AE_LINES_PKG.ValidateCurrentLine;
19343: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19344: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19345:
19346:
19347: XLA_AE_LINES_PKG.ValidateCurrentLine;
19348: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19349:
19350: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19351: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19344: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19345:
19346:
19347: XLA_AE_LINES_PKG.ValidateCurrentLine;
19348: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19349:
19350: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19351: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19352: ,p_balance_type_code => l_balance_type_code);
19485: --
19486: -- bulk performance
19487: --
19488: l_balance_type_code VARCHAR2(1);
19489: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
19490: l_log_module VARCHAR2(240);
19491:
19492: --
19493: -- Upgrade strategy
19553: ') = 'ROUND'
19554: THEN
19555:
19556: --
19557: XLA_AE_LINES_PKG.SetNewLine;
19558:
19559: p_balance_type_code := l_balance_type_code;
19560: -- set the flag so later we will know whether the gain loss line needs to be created
19561:
19565:
19566: --
19567: -- bulk performance
19568: --
19569: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
19570: p_header_num => 0); -- 4262811
19571: --
19572: -- set accounting line options
19573: --
19570: p_header_num => 0); -- 4262811
19571: --
19572: -- set accounting line options
19573: --
19574: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
19575: p_natural_side_code => 'C'
19576: , p_gain_or_loss_flag => 'N'
19577: , p_gl_transfer_mode_code => 'S'
19578: , p_acct_entry_type_code => 'A'
19584: --
19585: --
19586: -- set accounting line type info
19587: --
19588: xla_ae_lines_pkg.SetAcctLineType
19589: (p_component_type => l_component_type
19590: ,p_event_type_code => l_event_type_code
19591: ,p_line_definition_owner_code => l_line_definition_owner_code
19592: ,p_line_definition_code => l_line_definition_code
19598: ,p_event_class_code => l_event_class_code);
19599: --
19600: -- set accounting class
19601: --
19602: xla_ae_lines_pkg.SetAcctClass(
19603: p_accounting_class_code => 'ROUNDING'
19604: , p_ae_header_id => l_ae_header_id
19605: );
19606:
19606:
19607: --
19608: -- set rounding class
19609: --
19610: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19611: 'RECEIVABLE';
19612:
19613: --
19614: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19610: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
19611: 'RECEIVABLE';
19612:
19613: --
19614: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19615: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19616: --
19617: -- bulk performance
19618: --
19611: 'RECEIVABLE';
19612:
19613: --
19614: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
19615: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19616: --
19617: -- bulk performance
19618: --
19619: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19615: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
19616: --
19617: -- bulk performance
19618: --
19619: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19620:
19621: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19622: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19623:
19617: -- bulk performance
19618: --
19619: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
19620:
19621: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19622: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19623:
19624: -- 4955764
19625: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19621: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
19622: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
19623:
19624: -- 4955764
19625: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19626: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
19627:
19628: -- 4458381 Public Sector Enh
19629:
19657: l_rec_acct_attrs.array_char_value(11) := p_source_27;
19658: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19659: l_rec_acct_attrs.array_num_value(12) := p_source_50;
19660:
19661: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19662: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19663:
19664: ---------------------------------------------------------------------------------------------------------------
19665: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19658: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
19659: l_rec_acct_attrs.array_num_value(12) := p_source_50;
19660:
19661: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19662: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19663:
19664: ---------------------------------------------------------------------------------------------------------------
19665: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19666: ---------------------------------------------------------------------------------------------------------------
19661: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
19662: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
19663:
19664: ---------------------------------------------------------------------------------------------------------------
19665: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19666: ---------------------------------------------------------------------------------------------------------------
19667: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19668:
19669: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19663:
19664: ---------------------------------------------------------------------------------------------------------------
19665: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19666: ---------------------------------------------------------------------------------------------------------------
19667: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19668:
19669: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19670: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19671:
19665: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
19666: ---------------------------------------------------------------------------------------------------------------
19667: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19668:
19669: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19670: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19671:
19672: IF xla_accounting_cache_pkg.GetValueChar
19673: (p_source_code => 'LEDGER_CATEGORY_CODE'
19666: ---------------------------------------------------------------------------------------------------------------
19667: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
19668:
19669: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19670: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
19671:
19672: IF xla_accounting_cache_pkg.GetValueChar
19673: (p_source_code => 'LEDGER_CATEGORY_CODE'
19674: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
19677: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
19678: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
19679: )
19680: THEN
19681: xla_ae_lines_pkg.BflowUpgEntry
19682: (p_business_method_code => l_bflow_method_code
19683: ,p_business_class_code => l_bflow_class_code
19684: ,p_balance_type => l_balance_type_code);
19685: ELSE
19717: , x_value_type_code => l_adr_value_type_code
19718: , p_side => 'NA'
19719: );
19720:
19721: xla_ae_lines_pkg.set_ccid(
19722: p_code_combination_id => l_ccid
19723: , p_value_type_code => l_adr_value_type_code
19724: , p_transaction_coa_id => l_adr_transaction_coa_id
19725: , p_accounting_coa_id => l_adr_accounting_coa_id
19753: xla_accounting_err_pkg.build_message
19754: (p_appli_s_name => 'XLA'
19755: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
19756: ,p_token_1 => 'LINE_NUMBER'
19757: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
19758: ,p_token_2 => 'LINE_TYPE_NAME'
19759: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
19760: l_component_type
19761: ,l_component_code
19789: --
19790: --
19791: ------------------------------------------------------------------------------------------------
19792: -- 4219869 Business Flow
19793: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19794: -- Prior Entry. Currently, the following code is always generated.
19795: ------------------------------------------------------------------------------------------------
19796: XLA_AE_LINES_PKG.ValidateCurrentLine;
19797:
19792: -- 4219869 Business Flow
19793: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
19794: -- Prior Entry. Currently, the following code is always generated.
19795: ------------------------------------------------------------------------------------------------
19796: XLA_AE_LINES_PKG.ValidateCurrentLine;
19797:
19798: ------------------------------------------------------------------------------------
19799: -- 4219869 Business Flow
19800: -- Populated credit and debit amounts -- Need to generate this within IF
19798: ------------------------------------------------------------------------------------
19799: -- 4219869 Business Flow
19800: -- Populated credit and debit amounts -- Need to generate this within IF
19801: ------------------------------------------------------------------------------------
19802: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19803:
19804: ----------------------------------------------------------------------------------
19805: -- 4219869 Business Flow
19806: -- Update journal entry status -- Need to generate this within IF
19830: -- To allow MPA report to determine if it should generate report process
19831: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19832: ------------------------------------------------------------------------------------------
19833:
19834: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19835: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19836: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19837: -- call ADRs
19838: -- Bug 4922099
19831: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
19832: ------------------------------------------------------------------------------------------
19833:
19834: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
19835: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
19836: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
19837: -- call ADRs
19838: -- Bug 4922099
19839: --
19855: , x_value_type_code => l_adr_value_type_code
19856: , p_side => 'NA'
19857: );
19858:
19859: xla_ae_lines_pkg.set_ccid(
19860: p_code_combination_id => l_ccid
19861: , p_value_type_code => l_adr_value_type_code
19862: , p_transaction_coa_id => l_adr_transaction_coa_id
19863: , p_accounting_coa_id => l_adr_accounting_coa_id
19878:
19879: --
19880: -- Update the line information that should be overwritten
19881: --
19882: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19883: p_header_num => 1);
19884: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19885:
19886: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19880: -- Update the line information that should be overwritten
19881: --
19882: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19883: p_header_num => 1);
19884: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19885:
19886: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19887:
19888: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19882: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
19883: p_header_num => 1);
19884: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
19885:
19886: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19887:
19888: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19889: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19890: END IF;
19885:
19886: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
19887:
19888: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
19889: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
19890: END IF;
19891:
19892: --
19893: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19892: --
19893: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
19894: --
19895: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
19896: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
19897: ELSE
19898: ---------------------------------------------------------------------------------------------------
19899: -- 4262811a Switch Sign
19900: ---------------------------------------------------------------------------------------------------
19897: ELSE
19898: ---------------------------------------------------------------------------------------------------
19899: -- 4262811a Switch Sign
19900: ---------------------------------------------------------------------------------------------------
19901: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19902: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19903: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19904: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19905: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19898: ---------------------------------------------------------------------------------------------------
19899: -- 4262811a Switch Sign
19900: ---------------------------------------------------------------------------------------------------
19901: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19902: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19903: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19904: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19905: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19906: -- 5132302
19899: -- 4262811a Switch Sign
19900: ---------------------------------------------------------------------------------------------------
19901: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19902: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19903: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19904: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19905: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19906: -- 5132302
19907: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19900: ---------------------------------------------------------------------------------------------------
19901: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19902: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19903: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19904: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19905: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19906: -- 5132302
19907: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19908: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19901: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
19902: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19903: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19904: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19905: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19906: -- 5132302
19907: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19908: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19909:
19903: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19904: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19905: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19906: -- 5132302
19907: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19908: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19909:
19910: END IF;
19911:
19904: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
19905: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19906: -- 5132302
19907: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
19908: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
19909:
19910: END IF;
19911:
19912: -- 4955764
19909:
19910: END IF;
19911:
19912: -- 4955764
19913: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19914: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19915:
19916:
19917: XLA_AE_LINES_PKG.ValidateCurrentLine;
19913: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
19914: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19915:
19916:
19917: XLA_AE_LINES_PKG.ValidateCurrentLine;
19918: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19919:
19920: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19921: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19914: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
19915:
19916:
19917: XLA_AE_LINES_PKG.ValidateCurrentLine;
19918: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
19919:
19920: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
19921: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
19922: ,p_balance_type_code => l_balance_type_code);
20055: --
20056: -- bulk performance
20057: --
20058: l_balance_type_code VARCHAR2(1);
20059: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
20060: l_log_module VARCHAR2(240);
20061:
20062: --
20063: -- Upgrade strategy
20123: ') = 'TAX'
20124: THEN
20125:
20126: --
20127: XLA_AE_LINES_PKG.SetNewLine;
20128:
20129: p_balance_type_code := l_balance_type_code;
20130: -- set the flag so later we will know whether the gain loss line needs to be created
20131:
20135:
20136: --
20137: -- bulk performance
20138: --
20139: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
20140: p_header_num => 0); -- 4262811
20141: --
20142: -- set accounting line options
20143: --
20140: p_header_num => 0); -- 4262811
20141: --
20142: -- set accounting line options
20143: --
20144: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
20145: p_natural_side_code => 'C'
20146: , p_gain_or_loss_flag => 'N'
20147: , p_gl_transfer_mode_code => 'S'
20148: , p_acct_entry_type_code => 'A'
20154: --
20155: --
20156: -- set accounting line type info
20157: --
20158: xla_ae_lines_pkg.SetAcctLineType
20159: (p_component_type => l_component_type
20160: ,p_event_type_code => l_event_type_code
20161: ,p_line_definition_owner_code => l_line_definition_owner_code
20162: ,p_line_definition_code => l_line_definition_code
20168: ,p_event_class_code => l_event_class_code);
20169: --
20170: -- set accounting class
20171: --
20172: xla_ae_lines_pkg.SetAcctClass(
20173: p_accounting_class_code => 'TAX'
20174: , p_ae_header_id => l_ae_header_id
20175: );
20176:
20176:
20177: --
20178: -- set rounding class
20179: --
20180: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20181: 'RECEIVABLE';
20182:
20183: --
20184: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20180: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20181: 'RECEIVABLE';
20182:
20183: --
20184: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20185: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20186: --
20187: -- bulk performance
20188: --
20181: 'RECEIVABLE';
20182:
20183: --
20184: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20185: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20186: --
20187: -- bulk performance
20188: --
20189: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20185: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20186: --
20187: -- bulk performance
20188: --
20189: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20190:
20191: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20192: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20193:
20187: -- bulk performance
20188: --
20189: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20190:
20191: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20192: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20193:
20194: -- 4955764
20195: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20191: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20192: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20193:
20194: -- 4955764
20195: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20196: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
20197:
20198: -- 4458381 Public Sector Enh
20199:
20227: l_rec_acct_attrs.array_char_value(11) := p_source_27;
20228: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20229: l_rec_acct_attrs.array_num_value(12) := p_source_50;
20230:
20231: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20232: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20233:
20234: ---------------------------------------------------------------------------------------------------------------
20235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20228: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20229: l_rec_acct_attrs.array_num_value(12) := p_source_50;
20230:
20231: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20232: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20233:
20234: ---------------------------------------------------------------------------------------------------------------
20235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20236: ---------------------------------------------------------------------------------------------------------------
20231: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20232: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20233:
20234: ---------------------------------------------------------------------------------------------------------------
20235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20236: ---------------------------------------------------------------------------------------------------------------
20237: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20238:
20239: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20233:
20234: ---------------------------------------------------------------------------------------------------------------
20235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20236: ---------------------------------------------------------------------------------------------------------------
20237: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20238:
20239: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20240: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20241:
20235: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20236: ---------------------------------------------------------------------------------------------------------------
20237: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20238:
20239: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20240: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20241:
20242: IF xla_accounting_cache_pkg.GetValueChar
20243: (p_source_code => 'LEDGER_CATEGORY_CODE'
20236: ---------------------------------------------------------------------------------------------------------------
20237: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20238:
20239: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20240: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20241:
20242: IF xla_accounting_cache_pkg.GetValueChar
20243: (p_source_code => 'LEDGER_CATEGORY_CODE'
20244: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
20247: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
20248: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
20249: )
20250: THEN
20251: xla_ae_lines_pkg.BflowUpgEntry
20252: (p_business_method_code => l_bflow_method_code
20253: ,p_business_class_code => l_bflow_class_code
20254: ,p_balance_type => l_balance_type_code);
20255: ELSE
20287: , x_value_type_code => l_adr_value_type_code
20288: , p_side => 'NA'
20289: );
20290:
20291: xla_ae_lines_pkg.set_ccid(
20292: p_code_combination_id => l_ccid
20293: , p_value_type_code => l_adr_value_type_code
20294: , p_transaction_coa_id => l_adr_transaction_coa_id
20295: , p_accounting_coa_id => l_adr_accounting_coa_id
20323: xla_accounting_err_pkg.build_message
20324: (p_appli_s_name => 'XLA'
20325: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
20326: ,p_token_1 => 'LINE_NUMBER'
20327: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
20328: ,p_token_2 => 'LINE_TYPE_NAME'
20329: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
20330: l_component_type
20331: ,l_component_code
20359: --
20360: --
20361: ------------------------------------------------------------------------------------------------
20362: -- 4219869 Business Flow
20363: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20364: -- Prior Entry. Currently, the following code is always generated.
20365: ------------------------------------------------------------------------------------------------
20366: XLA_AE_LINES_PKG.ValidateCurrentLine;
20367:
20362: -- 4219869 Business Flow
20363: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20364: -- Prior Entry. Currently, the following code is always generated.
20365: ------------------------------------------------------------------------------------------------
20366: XLA_AE_LINES_PKG.ValidateCurrentLine;
20367:
20368: ------------------------------------------------------------------------------------
20369: -- 4219869 Business Flow
20370: -- Populated credit and debit amounts -- Need to generate this within IF
20368: ------------------------------------------------------------------------------------
20369: -- 4219869 Business Flow
20370: -- Populated credit and debit amounts -- Need to generate this within IF
20371: ------------------------------------------------------------------------------------
20372: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20373:
20374: ----------------------------------------------------------------------------------
20375: -- 4219869 Business Flow
20376: -- Update journal entry status -- Need to generate this within IF
20400: -- To allow MPA report to determine if it should generate report process
20401: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20402: ------------------------------------------------------------------------------------------
20403:
20404: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20405: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20406: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20407: -- call ADRs
20408: -- Bug 4922099
20401: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20402: ------------------------------------------------------------------------------------------
20403:
20404: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20405: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20406: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20407: -- call ADRs
20408: -- Bug 4922099
20409: --
20425: , x_value_type_code => l_adr_value_type_code
20426: , p_side => 'NA'
20427: );
20428:
20429: xla_ae_lines_pkg.set_ccid(
20430: p_code_combination_id => l_ccid
20431: , p_value_type_code => l_adr_value_type_code
20432: , p_transaction_coa_id => l_adr_transaction_coa_id
20433: , p_accounting_coa_id => l_adr_accounting_coa_id
20448:
20449: --
20450: -- Update the line information that should be overwritten
20451: --
20452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20453: p_header_num => 1);
20454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20455:
20456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20450: -- Update the line information that should be overwritten
20451: --
20452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20453: p_header_num => 1);
20454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20455:
20456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20457:
20458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20452: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
20453: p_header_num => 1);
20454: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
20455:
20456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20457:
20458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20459: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20460: END IF;
20455:
20456: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
20457:
20458: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
20459: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
20460: END IF;
20461:
20462: --
20463: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20462: --
20463: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
20464: --
20465: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
20466: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
20467: ELSE
20468: ---------------------------------------------------------------------------------------------------
20469: -- 4262811a Switch Sign
20470: ---------------------------------------------------------------------------------------------------
20467: ELSE
20468: ---------------------------------------------------------------------------------------------------
20469: -- 4262811a Switch Sign
20470: ---------------------------------------------------------------------------------------------------
20471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20468: ---------------------------------------------------------------------------------------------------
20469: -- 4262811a Switch Sign
20470: ---------------------------------------------------------------------------------------------------
20471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20476: -- 5132302
20469: -- 4262811a Switch Sign
20470: ---------------------------------------------------------------------------------------------------
20471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20476: -- 5132302
20477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20470: ---------------------------------------------------------------------------------------------------
20471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20476: -- 5132302
20477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20471: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
20472: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20476: -- 5132302
20477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20479:
20473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20476: -- 5132302
20477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20479:
20480: END IF;
20481:
20474: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
20475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20476: -- 5132302
20477: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
20478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
20479:
20480: END IF;
20481:
20482: -- 4955764
20479:
20480: END IF;
20481:
20482: -- 4955764
20483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20485:
20486:
20487: XLA_AE_LINES_PKG.ValidateCurrentLine;
20483: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20485:
20486:
20487: XLA_AE_LINES_PKG.ValidateCurrentLine;
20488: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20489:
20490: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20491: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20484: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
20485:
20486:
20487: XLA_AE_LINES_PKG.ValidateCurrentLine;
20488: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20489:
20490: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
20491: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
20492: ,p_balance_type_code => l_balance_type_code);
20627: --
20628: -- bulk performance
20629: --
20630: l_balance_type_code VARCHAR2(1);
20631: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
20632: l_log_module VARCHAR2(240);
20633:
20634: --
20635: -- Upgrade strategy
20696: p_source_51 IS NULL
20697: THEN
20698:
20699: --
20700: XLA_AE_LINES_PKG.SetNewLine;
20701:
20702: p_balance_type_code := l_balance_type_code;
20703: -- set the flag so later we will know whether the gain loss line needs to be created
20704:
20708:
20709: --
20710: -- bulk performance
20711: --
20712: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
20713: p_header_num => 0); -- 4262811
20714: --
20715: -- set accounting line options
20716: --
20713: p_header_num => 0); -- 4262811
20714: --
20715: -- set accounting line options
20716: --
20717: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
20718: p_natural_side_code => 'C'
20719: , p_gain_or_loss_flag => 'N'
20720: , p_gl_transfer_mode_code => 'S'
20721: , p_acct_entry_type_code => 'A'
20727: --
20728: --
20729: -- set accounting line type info
20730: --
20731: xla_ae_lines_pkg.SetAcctLineType
20732: (p_component_type => l_component_type
20733: ,p_event_type_code => l_event_type_code
20734: ,p_line_definition_owner_code => l_line_definition_owner_code
20735: ,p_line_definition_code => l_line_definition_code
20741: ,p_event_class_code => l_event_class_code);
20742: --
20743: -- set accounting class
20744: --
20745: xla_ae_lines_pkg.SetAcctClass(
20746: p_accounting_class_code => 'UNBILL'
20747: , p_ae_header_id => l_ae_header_id
20748: );
20749:
20749:
20750: --
20751: -- set rounding class
20752: --
20753: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20754: 'UNBILL';
20755:
20756: --
20757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20753: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
20754: 'UNBILL';
20755:
20756: --
20757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20759: --
20760: -- bulk performance
20761: --
20754: 'UNBILL';
20755:
20756: --
20757: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
20758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20759: --
20760: -- bulk performance
20761: --
20762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20758: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
20759: --
20760: -- bulk performance
20761: --
20762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20763:
20764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20766:
20760: -- bulk performance
20761: --
20762: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
20763:
20764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20766:
20767: -- 4955764
20768: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20764: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
20765: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
20766:
20767: -- 4955764
20768: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
20769: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
20770:
20771: -- 4458381 Public Sector Enh
20772:
20800: l_rec_acct_attrs.array_char_value(11) := p_source_27;
20801: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20802: l_rec_acct_attrs.array_num_value(12) := p_source_50;
20803:
20804: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20805: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20806:
20807: ---------------------------------------------------------------------------------------------------------------
20808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20801: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
20802: l_rec_acct_attrs.array_num_value(12) := p_source_50;
20803:
20804: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20805: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20806:
20807: ---------------------------------------------------------------------------------------------------------------
20808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20809: ---------------------------------------------------------------------------------------------------------------
20804: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
20805: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
20806:
20807: ---------------------------------------------------------------------------------------------------------------
20808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20809: ---------------------------------------------------------------------------------------------------------------
20810: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20811:
20812: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20806:
20807: ---------------------------------------------------------------------------------------------------------------
20808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20809: ---------------------------------------------------------------------------------------------------------------
20810: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20811:
20812: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20813: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20814:
20808: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
20809: ---------------------------------------------------------------------------------------------------------------
20810: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20811:
20812: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20813: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20814:
20815: IF xla_accounting_cache_pkg.GetValueChar
20816: (p_source_code => 'LEDGER_CATEGORY_CODE'
20809: ---------------------------------------------------------------------------------------------------------------
20810: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
20811:
20812: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20813: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
20814:
20815: IF xla_accounting_cache_pkg.GetValueChar
20816: (p_source_code => 'LEDGER_CATEGORY_CODE'
20817: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
20820: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
20821: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
20822: )
20823: THEN
20824: xla_ae_lines_pkg.BflowUpgEntry
20825: (p_business_method_code => l_bflow_method_code
20826: ,p_business_class_code => l_bflow_class_code
20827: ,p_balance_type => l_balance_type_code);
20828: ELSE
20860: , x_value_type_code => l_adr_value_type_code
20861: , p_side => 'NA'
20862: );
20863:
20864: xla_ae_lines_pkg.set_ccid(
20865: p_code_combination_id => l_ccid
20866: , p_value_type_code => l_adr_value_type_code
20867: , p_transaction_coa_id => l_adr_transaction_coa_id
20868: , p_accounting_coa_id => l_adr_accounting_coa_id
20896: xla_accounting_err_pkg.build_message
20897: (p_appli_s_name => 'XLA'
20898: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
20899: ,p_token_1 => 'LINE_NUMBER'
20900: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
20901: ,p_token_2 => 'LINE_TYPE_NAME'
20902: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
20903: l_component_type
20904: ,l_component_code
20932: --
20933: --
20934: ------------------------------------------------------------------------------------------------
20935: -- 4219869 Business Flow
20936: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20937: -- Prior Entry. Currently, the following code is always generated.
20938: ------------------------------------------------------------------------------------------------
20939: XLA_AE_LINES_PKG.ValidateCurrentLine;
20940:
20935: -- 4219869 Business Flow
20936: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
20937: -- Prior Entry. Currently, the following code is always generated.
20938: ------------------------------------------------------------------------------------------------
20939: XLA_AE_LINES_PKG.ValidateCurrentLine;
20940:
20941: ------------------------------------------------------------------------------------
20942: -- 4219869 Business Flow
20943: -- Populated credit and debit amounts -- Need to generate this within IF
20941: ------------------------------------------------------------------------------------
20942: -- 4219869 Business Flow
20943: -- Populated credit and debit amounts -- Need to generate this within IF
20944: ------------------------------------------------------------------------------------
20945: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
20946:
20947: ----------------------------------------------------------------------------------
20948: -- 4219869 Business Flow
20949: -- Update journal entry status -- Need to generate this within IF
20973: -- To allow MPA report to determine if it should generate report process
20974: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20975: ------------------------------------------------------------------------------------------
20976:
20977: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20978: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20979: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20980: -- call ADRs
20981: -- Bug 4922099
20974: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
20975: ------------------------------------------------------------------------------------------
20976:
20977: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
20978: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
20979: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
20980: -- call ADRs
20981: -- Bug 4922099
20982: --
20998: , x_value_type_code => l_adr_value_type_code
20999: , p_side => 'NA'
21000: );
21001:
21002: xla_ae_lines_pkg.set_ccid(
21003: p_code_combination_id => l_ccid
21004: , p_value_type_code => l_adr_value_type_code
21005: , p_transaction_coa_id => l_adr_transaction_coa_id
21006: , p_accounting_coa_id => l_adr_accounting_coa_id
21021:
21022: --
21023: -- Update the line information that should be overwritten
21024: --
21025: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21026: p_header_num => 1);
21027: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21028:
21029: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21023: -- Update the line information that should be overwritten
21024: --
21025: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21026: p_header_num => 1);
21027: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21028:
21029: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21030:
21031: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21025: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21026: p_header_num => 1);
21027: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21028:
21029: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21030:
21031: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21032: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21033: END IF;
21028:
21029: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21030:
21031: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21032: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21033: END IF;
21034:
21035: --
21036: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21035: --
21036: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21037: --
21038: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
21039: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
21040: ELSE
21041: ---------------------------------------------------------------------------------------------------
21042: -- 4262811a Switch Sign
21043: ---------------------------------------------------------------------------------------------------
21040: ELSE
21041: ---------------------------------------------------------------------------------------------------
21042: -- 4262811a Switch Sign
21043: ---------------------------------------------------------------------------------------------------
21044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21041: ---------------------------------------------------------------------------------------------------
21042: -- 4262811a Switch Sign
21043: ---------------------------------------------------------------------------------------------------
21044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21049: -- 5132302
21042: -- 4262811a Switch Sign
21043: ---------------------------------------------------------------------------------------------------
21044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21049: -- 5132302
21050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21043: ---------------------------------------------------------------------------------------------------
21044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21049: -- 5132302
21050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21051: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21044: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21049: -- 5132302
21050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21051: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21052:
21046: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21049: -- 5132302
21050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21051: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21052:
21053: END IF;
21054:
21047: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21048: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21049: -- 5132302
21050: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21051: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21052:
21053: END IF;
21054:
21055: -- 4955764
21052:
21053: END IF;
21054:
21055: -- 4955764
21056: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21057: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21058:
21059:
21060: XLA_AE_LINES_PKG.ValidateCurrentLine;
21056: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21057: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21058:
21059:
21060: XLA_AE_LINES_PKG.ValidateCurrentLine;
21061: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21062:
21063: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21064: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21057: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21058:
21059:
21060: XLA_AE_LINES_PKG.ValidateCurrentLine;
21061: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21062:
21063: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21064: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21065: ,p_balance_type_code => l_balance_type_code);
21200: --
21201: -- bulk performance
21202: --
21203: l_balance_type_code VARCHAR2(1);
21204: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
21205: l_log_module VARCHAR2(240);
21206:
21207: --
21208: -- Upgrade strategy
21269: p_source_51 IS NULL
21270: THEN
21271:
21272: --
21273: XLA_AE_LINES_PKG.SetNewLine;
21274:
21275: p_balance_type_code := l_balance_type_code;
21276: -- set the flag so later we will know whether the gain loss line needs to be created
21277:
21281:
21282: --
21283: -- bulk performance
21284: --
21285: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
21286: p_header_num => 0); -- 4262811
21287: --
21288: -- set accounting line options
21289: --
21286: p_header_num => 0); -- 4262811
21287: --
21288: -- set accounting line options
21289: --
21290: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
21291: p_natural_side_code => 'C'
21292: , p_gain_or_loss_flag => 'N'
21293: , p_gl_transfer_mode_code => 'S'
21294: , p_acct_entry_type_code => 'A'
21300: --
21301: --
21302: -- set accounting line type info
21303: --
21304: xla_ae_lines_pkg.SetAcctLineType
21305: (p_component_type => l_component_type
21306: ,p_event_type_code => l_event_type_code
21307: ,p_line_definition_owner_code => l_line_definition_owner_code
21308: ,p_line_definition_code => l_line_definition_code
21314: ,p_event_class_code => l_event_class_code);
21315: --
21316: -- set accounting class
21317: --
21318: xla_ae_lines_pkg.SetAcctClass(
21319: p_accounting_class_code => 'UNEARNED_REVENUE'
21320: , p_ae_header_id => l_ae_header_id
21321: );
21322:
21322:
21323: --
21324: -- set rounding class
21325: --
21326: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21327: 'RECEIVABLE';
21328:
21329: --
21330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21326: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21327: 'RECEIVABLE';
21328:
21329: --
21330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21332: --
21333: -- bulk performance
21334: --
21327: 'RECEIVABLE';
21328:
21329: --
21330: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21332: --
21333: -- bulk performance
21334: --
21335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21331: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21332: --
21333: -- bulk performance
21334: --
21335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21336:
21337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21339:
21333: -- bulk performance
21334: --
21335: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21336:
21337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21339:
21340: -- 4955764
21341: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21337: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21338: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21339:
21340: -- 4955764
21341: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21342: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
21343:
21344: -- 4458381 Public Sector Enh
21345:
21373: l_rec_acct_attrs.array_char_value(11) := p_source_27;
21374: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21375: l_rec_acct_attrs.array_num_value(12) := p_source_50;
21376:
21377: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21378: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21379:
21380: ---------------------------------------------------------------------------------------------------------------
21381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21374: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
21375: l_rec_acct_attrs.array_num_value(12) := p_source_50;
21376:
21377: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21378: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21379:
21380: ---------------------------------------------------------------------------------------------------------------
21381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21382: ---------------------------------------------------------------------------------------------------------------
21377: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21378: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21379:
21380: ---------------------------------------------------------------------------------------------------------------
21381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21382: ---------------------------------------------------------------------------------------------------------------
21383: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21384:
21385: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21379:
21380: ---------------------------------------------------------------------------------------------------------------
21381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21382: ---------------------------------------------------------------------------------------------------------------
21383: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21384:
21385: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21386: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21387:
21381: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21382: ---------------------------------------------------------------------------------------------------------------
21383: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21384:
21385: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21386: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21387:
21388: IF xla_accounting_cache_pkg.GetValueChar
21389: (p_source_code => 'LEDGER_CATEGORY_CODE'
21382: ---------------------------------------------------------------------------------------------------------------
21383: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21384:
21385: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21386: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21387:
21388: IF xla_accounting_cache_pkg.GetValueChar
21389: (p_source_code => 'LEDGER_CATEGORY_CODE'
21390: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
21393: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
21394: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
21395: )
21396: THEN
21397: xla_ae_lines_pkg.BflowUpgEntry
21398: (p_business_method_code => l_bflow_method_code
21399: ,p_business_class_code => l_bflow_class_code
21400: ,p_balance_type => l_balance_type_code);
21401: ELSE
21433: , x_value_type_code => l_adr_value_type_code
21434: , p_side => 'NA'
21435: );
21436:
21437: xla_ae_lines_pkg.set_ccid(
21438: p_code_combination_id => l_ccid
21439: , p_value_type_code => l_adr_value_type_code
21440: , p_transaction_coa_id => l_adr_transaction_coa_id
21441: , p_accounting_coa_id => l_adr_accounting_coa_id
21469: xla_accounting_err_pkg.build_message
21470: (p_appli_s_name => 'XLA'
21471: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
21472: ,p_token_1 => 'LINE_NUMBER'
21473: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
21474: ,p_token_2 => 'LINE_TYPE_NAME'
21475: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
21476: l_component_type
21477: ,l_component_code
21505: --
21506: --
21507: ------------------------------------------------------------------------------------------------
21508: -- 4219869 Business Flow
21509: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21510: -- Prior Entry. Currently, the following code is always generated.
21511: ------------------------------------------------------------------------------------------------
21512: XLA_AE_LINES_PKG.ValidateCurrentLine;
21513:
21508: -- 4219869 Business Flow
21509: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
21510: -- Prior Entry. Currently, the following code is always generated.
21511: ------------------------------------------------------------------------------------------------
21512: XLA_AE_LINES_PKG.ValidateCurrentLine;
21513:
21514: ------------------------------------------------------------------------------------
21515: -- 4219869 Business Flow
21516: -- Populated credit and debit amounts -- Need to generate this within IF
21514: ------------------------------------------------------------------------------------
21515: -- 4219869 Business Flow
21516: -- Populated credit and debit amounts -- Need to generate this within IF
21517: ------------------------------------------------------------------------------------
21518: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21519:
21520: ----------------------------------------------------------------------------------
21521: -- 4219869 Business Flow
21522: -- Update journal entry status -- Need to generate this within IF
21546: -- To allow MPA report to determine if it should generate report process
21547: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21548: ------------------------------------------------------------------------------------------
21549:
21550: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21551: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21552: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21553: -- call ADRs
21554: -- Bug 4922099
21547: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
21548: ------------------------------------------------------------------------------------------
21549:
21550: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
21551: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
21552: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
21553: -- call ADRs
21554: -- Bug 4922099
21555: --
21571: , x_value_type_code => l_adr_value_type_code
21572: , p_side => 'NA'
21573: );
21574:
21575: xla_ae_lines_pkg.set_ccid(
21576: p_code_combination_id => l_ccid
21577: , p_value_type_code => l_adr_value_type_code
21578: , p_transaction_coa_id => l_adr_transaction_coa_id
21579: , p_accounting_coa_id => l_adr_accounting_coa_id
21594:
21595: --
21596: -- Update the line information that should be overwritten
21597: --
21598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21599: p_header_num => 1);
21600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21601:
21602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21596: -- Update the line information that should be overwritten
21597: --
21598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21599: p_header_num => 1);
21600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21601:
21602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21603:
21604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
21599: p_header_num => 1);
21600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
21601:
21602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21603:
21604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21605: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21606: END IF;
21601:
21602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
21603:
21604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
21605: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
21606: END IF;
21607:
21608: --
21609: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21608: --
21609: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
21610: --
21611: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
21612: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
21613: ELSE
21614: ---------------------------------------------------------------------------------------------------
21615: -- 4262811a Switch Sign
21616: ---------------------------------------------------------------------------------------------------
21613: ELSE
21614: ---------------------------------------------------------------------------------------------------
21615: -- 4262811a Switch Sign
21616: ---------------------------------------------------------------------------------------------------
21617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21614: ---------------------------------------------------------------------------------------------------
21615: -- 4262811a Switch Sign
21616: ---------------------------------------------------------------------------------------------------
21617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21622: -- 5132302
21615: -- 4262811a Switch Sign
21616: ---------------------------------------------------------------------------------------------------
21617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21622: -- 5132302
21623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21616: ---------------------------------------------------------------------------------------------------
21617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21622: -- 5132302
21623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
21618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21622: -- 5132302
21623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21625:
21619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21622: -- 5132302
21623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21625:
21626: END IF;
21627:
21620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
21621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21622: -- 5132302
21623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
21624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
21625:
21626: END IF;
21627:
21628: -- 4955764
21625:
21626: END IF;
21627:
21628: -- 4955764
21629: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21631:
21632:
21633: XLA_AE_LINES_PKG.ValidateCurrentLine;
21629: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21631:
21632:
21633: XLA_AE_LINES_PKG.ValidateCurrentLine;
21634: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21635:
21636: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21637: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
21631:
21632:
21633: XLA_AE_LINES_PKG.ValidateCurrentLine;
21634: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
21635:
21636: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
21637: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
21638: ,p_balance_type_code => l_balance_type_code);
21773: --
21774: -- bulk performance
21775: --
21776: l_balance_type_code VARCHAR2(1);
21777: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
21778: l_log_module VARCHAR2(240);
21779:
21780: --
21781: -- Upgrade strategy
21853: ') <> 'ENDORSEMENT')
21854: THEN
21855:
21856: --
21857: XLA_AE_LINES_PKG.SetNewLine;
21858:
21859: p_balance_type_code := l_balance_type_code;
21860: -- set the flag so later we will know whether the gain loss line needs to be created
21861:
21865:
21866: --
21867: -- bulk performance
21868: --
21869: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
21870: p_header_num => 0); -- 4262811
21871: --
21872: -- set accounting line options
21873: --
21870: p_header_num => 0); -- 4262811
21871: --
21872: -- set accounting line options
21873: --
21874: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
21875: p_natural_side_code => 'D'
21876: , p_gain_or_loss_flag => 'N'
21877: , p_gl_transfer_mode_code => 'S'
21878: , p_acct_entry_type_code => 'A'
21884: --
21885: --
21886: -- set accounting line type info
21887: --
21888: xla_ae_lines_pkg.SetAcctLineType
21889: (p_component_type => l_component_type
21890: ,p_event_type_code => l_event_type_code
21891: ,p_line_definition_owner_code => l_line_definition_owner_code
21892: ,p_line_definition_code => l_line_definition_code
21898: ,p_event_class_code => l_event_class_code);
21899: --
21900: -- set accounting class
21901: --
21902: xla_ae_lines_pkg.SetAcctClass(
21903: p_accounting_class_code => 'RECEIVABLE'
21904: , p_ae_header_id => l_ae_header_id
21905: );
21906:
21906:
21907: --
21908: -- set rounding class
21909: --
21910: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21911: 'RECEIVABLE';
21912:
21913: --
21914: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21910: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
21911: 'RECEIVABLE';
21912:
21913: --
21914: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21915: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21916: --
21917: -- bulk performance
21918: --
21911: 'RECEIVABLE';
21912:
21913: --
21914: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
21915: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21916: --
21917: -- bulk performance
21918: --
21919: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21915: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
21916: --
21917: -- bulk performance
21918: --
21919: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21920:
21921: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21922: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21923:
21917: -- bulk performance
21918: --
21919: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
21920:
21921: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21922: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21923:
21924: -- 4955764
21925: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21921: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
21922: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
21923:
21924: -- 4955764
21925: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
21926: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
21927:
21928: -- 4458381 Public Sector Enh
21929:
21955: l_rec_acct_attrs.array_num_value(10) := p_source_26;
21956: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
21957: l_rec_acct_attrs.array_char_value(11) := p_source_27;
21958:
21959: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21960: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21961:
21962: ---------------------------------------------------------------------------------------------------------------
21963: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21956: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
21957: l_rec_acct_attrs.array_char_value(11) := p_source_27;
21958:
21959: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21960: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21961:
21962: ---------------------------------------------------------------------------------------------------------------
21963: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21964: ---------------------------------------------------------------------------------------------------------------
21959: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
21960: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
21961:
21962: ---------------------------------------------------------------------------------------------------------------
21963: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21964: ---------------------------------------------------------------------------------------------------------------
21965: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21966:
21967: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21961:
21962: ---------------------------------------------------------------------------------------------------------------
21963: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21964: ---------------------------------------------------------------------------------------------------------------
21965: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21966:
21967: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21968: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21969:
21963: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
21964: ---------------------------------------------------------------------------------------------------------------
21965: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21966:
21967: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21968: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21969:
21970: IF xla_accounting_cache_pkg.GetValueChar
21971: (p_source_code => 'LEDGER_CATEGORY_CODE'
21964: ---------------------------------------------------------------------------------------------------------------
21965: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
21966:
21967: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21968: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
21969:
21970: IF xla_accounting_cache_pkg.GetValueChar
21971: (p_source_code => 'LEDGER_CATEGORY_CODE'
21972: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
21975: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
21976: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
21977: )
21978: THEN
21979: xla_ae_lines_pkg.BflowUpgEntry
21980: (p_business_method_code => l_bflow_method_code
21981: ,p_business_class_code => l_bflow_class_code
21982: ,p_balance_type => l_balance_type_code);
21983: ELSE
21992: --
21993: -- call description
21994: --
21995:
21996: xla_ae_lines_pkg.SetLineDescription(
21997: p_ae_header_id => l_ae_header_id
21998: ,p_description => Description_1 (
21999: p_application_id => p_application_id
22000: , p_ae_header_id => l_ae_header_id
22024: , x_value_type_code => l_adr_value_type_code
22025: , p_side => 'NA'
22026: );
22027:
22028: xla_ae_lines_pkg.set_ccid(
22029: p_code_combination_id => l_ccid
22030: , p_value_type_code => l_adr_value_type_code
22031: , p_transaction_coa_id => l_adr_transaction_coa_id
22032: , p_accounting_coa_id => l_adr_accounting_coa_id
22057: );
22058:
22059: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
22060:
22061: xla_ae_lines_pkg.set_segment(
22062: p_to_segment_code => 'GL_ACCOUNT'
22063: , p_segment_value => l_segment
22064: , p_from_segment_code => l_adr_value_segment_code
22065: , p_from_combination_id => l_adr_value_combination_id
22101: xla_accounting_err_pkg.build_message
22102: (p_appli_s_name => 'XLA'
22103: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
22104: ,p_token_1 => 'LINE_NUMBER'
22105: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
22106: ,p_token_2 => 'LINE_TYPE_NAME'
22107: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
22108: l_component_type
22109: ,l_component_code
22137: --
22138: --
22139: ------------------------------------------------------------------------------------------------
22140: -- 4219869 Business Flow
22141: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22142: -- Prior Entry. Currently, the following code is always generated.
22143: ------------------------------------------------------------------------------------------------
22144: XLA_AE_LINES_PKG.ValidateCurrentLine;
22145:
22140: -- 4219869 Business Flow
22141: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22142: -- Prior Entry. Currently, the following code is always generated.
22143: ------------------------------------------------------------------------------------------------
22144: XLA_AE_LINES_PKG.ValidateCurrentLine;
22145:
22146: ------------------------------------------------------------------------------------
22147: -- 4219869 Business Flow
22148: -- Populated credit and debit amounts -- Need to generate this within IF
22146: ------------------------------------------------------------------------------------
22147: -- 4219869 Business Flow
22148: -- Populated credit and debit amounts -- Need to generate this within IF
22149: ------------------------------------------------------------------------------------
22150: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22151:
22152: ----------------------------------------------------------------------------------
22153: -- 4219869 Business Flow
22154: -- Update journal entry status -- Need to generate this within IF
22178: -- To allow MPA report to determine if it should generate report process
22179: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22180: ------------------------------------------------------------------------------------------
22181:
22182: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22183: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22184: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22185: -- call ADRs
22186: -- Bug 4922099
22179: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22180: ------------------------------------------------------------------------------------------
22181:
22182: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22183: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22184: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22185: -- call ADRs
22186: -- Bug 4922099
22187: --
22203: , x_value_type_code => l_adr_value_type_code
22204: , p_side => 'NA'
22205: );
22206:
22207: xla_ae_lines_pkg.set_ccid(
22208: p_code_combination_id => l_ccid
22209: , p_value_type_code => l_adr_value_type_code
22210: , p_transaction_coa_id => l_adr_transaction_coa_id
22211: , p_accounting_coa_id => l_adr_accounting_coa_id
22236: );
22237:
22238: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
22239:
22240: xla_ae_lines_pkg.set_segment(
22241: p_to_segment_code => 'GL_ACCOUNT'
22242: , p_segment_value => l_segment
22243: , p_from_segment_code => l_adr_value_segment_code
22244: , p_from_combination_id => l_adr_value_combination_id
22267:
22268: --
22269: -- Update the line information that should be overwritten
22270: --
22271: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22272: p_header_num => 1);
22273: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22274:
22275: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22269: -- Update the line information that should be overwritten
22270: --
22271: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22272: p_header_num => 1);
22273: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22274:
22275: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22276:
22277: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22271: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22272: p_header_num => 1);
22273: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22274:
22275: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22276:
22277: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22278: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22279: END IF;
22274:
22275: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22276:
22277: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22278: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22279: END IF;
22280:
22281: --
22282: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22281: --
22282: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22283: --
22284: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
22285: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
22286: ELSE
22287: ---------------------------------------------------------------------------------------------------
22288: -- 4262811a Switch Sign
22289: ---------------------------------------------------------------------------------------------------
22286: ELSE
22287: ---------------------------------------------------------------------------------------------------
22288: -- 4262811a Switch Sign
22289: ---------------------------------------------------------------------------------------------------
22290: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22292: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22294: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22287: ---------------------------------------------------------------------------------------------------
22288: -- 4262811a Switch Sign
22289: ---------------------------------------------------------------------------------------------------
22290: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22292: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22294: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22295: -- 5132302
22288: -- 4262811a Switch Sign
22289: ---------------------------------------------------------------------------------------------------
22290: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22292: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22294: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22295: -- 5132302
22296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22289: ---------------------------------------------------------------------------------------------------
22290: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22292: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22294: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22295: -- 5132302
22296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22297: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22290: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22291: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22292: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22294: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22295: -- 5132302
22296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22297: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22298:
22292: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22294: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22295: -- 5132302
22296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22297: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22298:
22299: END IF;
22300:
22293: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22294: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22295: -- 5132302
22296: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22297: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22298:
22299: END IF;
22300:
22301: -- 4955764
22298:
22299: END IF;
22300:
22301: -- 4955764
22302: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22303: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22304:
22305:
22306: XLA_AE_LINES_PKG.ValidateCurrentLine;
22302: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22303: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22304:
22305:
22306: XLA_AE_LINES_PKG.ValidateCurrentLine;
22307: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22308:
22309: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22310: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22303: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22304:
22305:
22306: XLA_AE_LINES_PKG.ValidateCurrentLine;
22307: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22308:
22309: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22310: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22311: ,p_balance_type_code => l_balance_type_code);
22450: --
22451: -- bulk performance
22452: --
22453: l_balance_type_code VARCHAR2(1);
22454: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
22455: l_log_module VARCHAR2(240);
22456:
22457: --
22458: -- Upgrade strategy
22527: ') = 'CHARGES')
22528: THEN
22529:
22530: --
22531: XLA_AE_LINES_PKG.SetNewLine;
22532:
22533: p_balance_type_code := l_balance_type_code;
22534: -- set the flag so later we will know whether the gain loss line needs to be created
22535:
22539:
22540: --
22541: -- bulk performance
22542: --
22543: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
22544: p_header_num => 0); -- 4262811
22545: --
22546: -- set accounting line options
22547: --
22544: p_header_num => 0); -- 4262811
22545: --
22546: -- set accounting line options
22547: --
22548: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
22549: p_natural_side_code => 'D'
22550: , p_gain_or_loss_flag => 'N'
22551: , p_gl_transfer_mode_code => 'S'
22552: , p_acct_entry_type_code => 'A'
22558: --
22559: --
22560: -- set accounting line type info
22561: --
22562: xla_ae_lines_pkg.SetAcctLineType
22563: (p_component_type => l_component_type
22564: ,p_event_type_code => l_event_type_code
22565: ,p_line_definition_owner_code => l_line_definition_owner_code
22566: ,p_line_definition_code => l_line_definition_code
22572: ,p_event_class_code => l_event_class_code);
22573: --
22574: -- set accounting class
22575: --
22576: xla_ae_lines_pkg.SetAcctClass(
22577: p_accounting_class_code => 'RECEIVABLE'
22578: , p_ae_header_id => l_ae_header_id
22579: );
22580:
22580:
22581: --
22582: -- set rounding class
22583: --
22584: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22585: 'RECEIVABLE';
22586:
22587: --
22588: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22584: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
22585: 'RECEIVABLE';
22586:
22587: --
22588: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22589: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22590: --
22591: -- bulk performance
22592: --
22585: 'RECEIVABLE';
22586:
22587: --
22588: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
22589: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22590: --
22591: -- bulk performance
22592: --
22593: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22589: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
22590: --
22591: -- bulk performance
22592: --
22593: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22594:
22595: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22596: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22597:
22591: -- bulk performance
22592: --
22593: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
22594:
22595: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22596: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22597:
22598: -- 4955764
22599: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22595: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
22596: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
22597:
22598: -- 4955764
22599: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22600: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
22601:
22602: -- 4458381 Public Sector Enh
22603:
22633: l_rec_acct_attrs.array_char_value(12) := p_source_27;
22634: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
22635: l_rec_acct_attrs.array_num_value(13) := p_source_47;
22636:
22637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22639:
22640: ---------------------------------------------------------------------------------------------------------------
22641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22634: l_rec_acct_attrs.array_acct_attr_code(13) := 'TAX_LINE_REF_ID';
22635: l_rec_acct_attrs.array_num_value(13) := p_source_47;
22636:
22637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22639:
22640: ---------------------------------------------------------------------------------------------------------------
22641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22642: ---------------------------------------------------------------------------------------------------------------
22637: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
22638: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
22639:
22640: ---------------------------------------------------------------------------------------------------------------
22641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22642: ---------------------------------------------------------------------------------------------------------------
22643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22644:
22645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22639:
22640: ---------------------------------------------------------------------------------------------------------------
22641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22642: ---------------------------------------------------------------------------------------------------------------
22643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22644:
22645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22647:
22641: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
22642: ---------------------------------------------------------------------------------------------------------------
22643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22644:
22645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22647:
22648: IF xla_accounting_cache_pkg.GetValueChar
22649: (p_source_code => 'LEDGER_CATEGORY_CODE'
22642: ---------------------------------------------------------------------------------------------------------------
22643: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
22644:
22645: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22646: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
22647:
22648: IF xla_accounting_cache_pkg.GetValueChar
22649: (p_source_code => 'LEDGER_CATEGORY_CODE'
22650: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
22653: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
22654: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
22655: )
22656: THEN
22657: xla_ae_lines_pkg.BflowUpgEntry
22658: (p_business_method_code => l_bflow_method_code
22659: ,p_business_class_code => l_bflow_class_code
22660: ,p_balance_type => l_balance_type_code);
22661: ELSE
22670: --
22671: -- call description
22672: --
22673:
22674: xla_ae_lines_pkg.SetLineDescription(
22675: p_ae_header_id => l_ae_header_id
22676: ,p_description => Description_1 (
22677: p_application_id => p_application_id
22678: , p_ae_header_id => l_ae_header_id
22702: , x_value_type_code => l_adr_value_type_code
22703: , p_side => 'NA'
22704: );
22705:
22706: xla_ae_lines_pkg.set_ccid(
22707: p_code_combination_id => l_ccid
22708: , p_value_type_code => l_adr_value_type_code
22709: , p_transaction_coa_id => l_adr_transaction_coa_id
22710: , p_accounting_coa_id => l_adr_accounting_coa_id
22735: );
22736:
22737: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
22738:
22739: xla_ae_lines_pkg.set_segment(
22740: p_to_segment_code => 'GL_ACCOUNT'
22741: , p_segment_value => l_segment
22742: , p_from_segment_code => l_adr_value_segment_code
22743: , p_from_combination_id => l_adr_value_combination_id
22779: xla_accounting_err_pkg.build_message
22780: (p_appli_s_name => 'XLA'
22781: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
22782: ,p_token_1 => 'LINE_NUMBER'
22783: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
22784: ,p_token_2 => 'LINE_TYPE_NAME'
22785: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
22786: l_component_type
22787: ,l_component_code
22815: --
22816: --
22817: ------------------------------------------------------------------------------------------------
22818: -- 4219869 Business Flow
22819: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22820: -- Prior Entry. Currently, the following code is always generated.
22821: ------------------------------------------------------------------------------------------------
22822: XLA_AE_LINES_PKG.ValidateCurrentLine;
22823:
22818: -- 4219869 Business Flow
22819: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
22820: -- Prior Entry. Currently, the following code is always generated.
22821: ------------------------------------------------------------------------------------------------
22822: XLA_AE_LINES_PKG.ValidateCurrentLine;
22823:
22824: ------------------------------------------------------------------------------------
22825: -- 4219869 Business Flow
22826: -- Populated credit and debit amounts -- Need to generate this within IF
22824: ------------------------------------------------------------------------------------
22825: -- 4219869 Business Flow
22826: -- Populated credit and debit amounts -- Need to generate this within IF
22827: ------------------------------------------------------------------------------------
22828: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22829:
22830: ----------------------------------------------------------------------------------
22831: -- 4219869 Business Flow
22832: -- Update journal entry status -- Need to generate this within IF
22856: -- To allow MPA report to determine if it should generate report process
22857: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22858: ------------------------------------------------------------------------------------------
22859:
22860: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22861: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22862: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22863: -- call ADRs
22864: -- Bug 4922099
22857: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
22858: ------------------------------------------------------------------------------------------
22859:
22860: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
22861: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
22862: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
22863: -- call ADRs
22864: -- Bug 4922099
22865: --
22881: , x_value_type_code => l_adr_value_type_code
22882: , p_side => 'NA'
22883: );
22884:
22885: xla_ae_lines_pkg.set_ccid(
22886: p_code_combination_id => l_ccid
22887: , p_value_type_code => l_adr_value_type_code
22888: , p_transaction_coa_id => l_adr_transaction_coa_id
22889: , p_accounting_coa_id => l_adr_accounting_coa_id
22914: );
22915:
22916: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
22917:
22918: xla_ae_lines_pkg.set_segment(
22919: p_to_segment_code => 'GL_ACCOUNT'
22920: , p_segment_value => l_segment
22921: , p_from_segment_code => l_adr_value_segment_code
22922: , p_from_combination_id => l_adr_value_combination_id
22945:
22946: --
22947: -- Update the line information that should be overwritten
22948: --
22949: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22950: p_header_num => 1);
22951: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22952:
22953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22947: -- Update the line information that should be overwritten
22948: --
22949: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22950: p_header_num => 1);
22951: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22952:
22953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22954:
22955: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22949: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
22950: p_header_num => 1);
22951: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
22952:
22953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22954:
22955: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22956: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22957: END IF;
22952:
22953: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
22954:
22955: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
22956: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
22957: END IF;
22958:
22959: --
22960: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22959: --
22960: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
22961: --
22962: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
22963: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
22964: ELSE
22965: ---------------------------------------------------------------------------------------------------
22966: -- 4262811a Switch Sign
22967: ---------------------------------------------------------------------------------------------------
22964: ELSE
22965: ---------------------------------------------------------------------------------------------------
22966: -- 4262811a Switch Sign
22967: ---------------------------------------------------------------------------------------------------
22968: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22965: ---------------------------------------------------------------------------------------------------
22966: -- 4262811a Switch Sign
22967: ---------------------------------------------------------------------------------------------------
22968: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22973: -- 5132302
22966: -- 4262811a Switch Sign
22967: ---------------------------------------------------------------------------------------------------
22968: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22973: -- 5132302
22974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22967: ---------------------------------------------------------------------------------------------------
22968: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22973: -- 5132302
22974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22968: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
22969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22973: -- 5132302
22974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22976:
22970: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22973: -- 5132302
22974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22976:
22977: END IF;
22978:
22971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
22972: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22973: -- 5132302
22974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
22975: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
22976:
22977: END IF;
22978:
22979: -- 4955764
22976:
22977: END IF;
22978:
22979: -- 4955764
22980: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22981: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22982:
22983:
22984: XLA_AE_LINES_PKG.ValidateCurrentLine;
22980: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
22981: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22982:
22983:
22984: XLA_AE_LINES_PKG.ValidateCurrentLine;
22985: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22986:
22987: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22988: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22981: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
22982:
22983:
22984: XLA_AE_LINES_PKG.ValidateCurrentLine;
22985: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
22986:
22987: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
22988: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
22989: ,p_balance_type_code => l_balance_type_code);
23126: --
23127: -- bulk performance
23128: --
23129: l_balance_type_code VARCHAR2(1);
23130: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
23131: l_log_module VARCHAR2(240);
23132:
23133: --
23134: -- Upgrade strategy
23203: ') = 'CHARGES')
23204: THEN
23205:
23206: --
23207: XLA_AE_LINES_PKG.SetNewLine;
23208:
23209: p_balance_type_code := l_balance_type_code;
23210: -- set the flag so later we will know whether the gain loss line needs to be created
23211:
23215:
23216: --
23217: -- bulk performance
23218: --
23219: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
23220: p_header_num => 0); -- 4262811
23221: --
23222: -- set accounting line options
23223: --
23220: p_header_num => 0); -- 4262811
23221: --
23222: -- set accounting line options
23223: --
23224: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
23225: p_natural_side_code => 'D'
23226: , p_gain_or_loss_flag => 'N'
23227: , p_gl_transfer_mode_code => 'S'
23228: , p_acct_entry_type_code => 'A'
23234: --
23235: --
23236: -- set accounting line type info
23237: --
23238: xla_ae_lines_pkg.SetAcctLineType
23239: (p_component_type => l_component_type
23240: ,p_event_type_code => l_event_type_code
23241: ,p_line_definition_owner_code => l_line_definition_owner_code
23242: ,p_line_definition_code => l_line_definition_code
23248: ,p_event_class_code => l_event_class_code);
23249: --
23250: -- set accounting class
23251: --
23252: xla_ae_lines_pkg.SetAcctClass(
23253: p_accounting_class_code => 'RECEIVABLE'
23254: , p_ae_header_id => l_ae_header_id
23255: );
23256:
23256:
23257: --
23258: -- set rounding class
23259: --
23260: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23261: 'RECEIVABLE';
23262:
23263: --
23264: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23260: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23261: 'RECEIVABLE';
23262:
23263: --
23264: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23265: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23266: --
23267: -- bulk performance
23268: --
23261: 'RECEIVABLE';
23262:
23263: --
23264: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23265: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23266: --
23267: -- bulk performance
23268: --
23269: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23265: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23266: --
23267: -- bulk performance
23268: --
23269: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23270:
23271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23272: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23273:
23267: -- bulk performance
23268: --
23269: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23270:
23271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23272: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23273:
23274: -- 4955764
23275: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23271: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23272: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23273:
23274: -- 4955764
23275: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23276: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
23277:
23278: -- 4458381 Public Sector Enh
23279:
23307: l_rec_acct_attrs.array_char_value(11) := p_source_27;
23308: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23309: l_rec_acct_attrs.array_num_value(12) := p_source_50;
23310:
23311: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23312: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23313:
23314: ---------------------------------------------------------------------------------------------------------------
23315: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23308: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23309: l_rec_acct_attrs.array_num_value(12) := p_source_50;
23310:
23311: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23312: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23313:
23314: ---------------------------------------------------------------------------------------------------------------
23315: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23316: ---------------------------------------------------------------------------------------------------------------
23311: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23312: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23313:
23314: ---------------------------------------------------------------------------------------------------------------
23315: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23316: ---------------------------------------------------------------------------------------------------------------
23317: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23318:
23319: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23313:
23314: ---------------------------------------------------------------------------------------------------------------
23315: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23316: ---------------------------------------------------------------------------------------------------------------
23317: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23318:
23319: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23320: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23321:
23315: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23316: ---------------------------------------------------------------------------------------------------------------
23317: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23318:
23319: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23320: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23321:
23322: IF xla_accounting_cache_pkg.GetValueChar
23323: (p_source_code => 'LEDGER_CATEGORY_CODE'
23316: ---------------------------------------------------------------------------------------------------------------
23317: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23318:
23319: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23320: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23321:
23322: IF xla_accounting_cache_pkg.GetValueChar
23323: (p_source_code => 'LEDGER_CATEGORY_CODE'
23324: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
23327: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
23328: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
23329: )
23330: THEN
23331: xla_ae_lines_pkg.BflowUpgEntry
23332: (p_business_method_code => l_bflow_method_code
23333: ,p_business_class_code => l_bflow_class_code
23334: ,p_balance_type => l_balance_type_code);
23335: ELSE
23344: --
23345: -- call description
23346: --
23347:
23348: xla_ae_lines_pkg.SetLineDescription(
23349: p_ae_header_id => l_ae_header_id
23350: ,p_description => Description_1 (
23351: p_application_id => p_application_id
23352: , p_ae_header_id => l_ae_header_id
23376: , x_value_type_code => l_adr_value_type_code
23377: , p_side => 'NA'
23378: );
23379:
23380: xla_ae_lines_pkg.set_ccid(
23381: p_code_combination_id => l_ccid
23382: , p_value_type_code => l_adr_value_type_code
23383: , p_transaction_coa_id => l_adr_transaction_coa_id
23384: , p_accounting_coa_id => l_adr_accounting_coa_id
23409: );
23410:
23411: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
23412:
23413: xla_ae_lines_pkg.set_segment(
23414: p_to_segment_code => 'GL_ACCOUNT'
23415: , p_segment_value => l_segment
23416: , p_from_segment_code => l_adr_value_segment_code
23417: , p_from_combination_id => l_adr_value_combination_id
23453: xla_accounting_err_pkg.build_message
23454: (p_appli_s_name => 'XLA'
23455: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
23456: ,p_token_1 => 'LINE_NUMBER'
23457: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
23458: ,p_token_2 => 'LINE_TYPE_NAME'
23459: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
23460: l_component_type
23461: ,l_component_code
23489: --
23490: --
23491: ------------------------------------------------------------------------------------------------
23492: -- 4219869 Business Flow
23493: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23494: -- Prior Entry. Currently, the following code is always generated.
23495: ------------------------------------------------------------------------------------------------
23496: XLA_AE_LINES_PKG.ValidateCurrentLine;
23497:
23492: -- 4219869 Business Flow
23493: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
23494: -- Prior Entry. Currently, the following code is always generated.
23495: ------------------------------------------------------------------------------------------------
23496: XLA_AE_LINES_PKG.ValidateCurrentLine;
23497:
23498: ------------------------------------------------------------------------------------
23499: -- 4219869 Business Flow
23500: -- Populated credit and debit amounts -- Need to generate this within IF
23498: ------------------------------------------------------------------------------------
23499: -- 4219869 Business Flow
23500: -- Populated credit and debit amounts -- Need to generate this within IF
23501: ------------------------------------------------------------------------------------
23502: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23503:
23504: ----------------------------------------------------------------------------------
23505: -- 4219869 Business Flow
23506: -- Update journal entry status -- Need to generate this within IF
23530: -- To allow MPA report to determine if it should generate report process
23531: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23532: ------------------------------------------------------------------------------------------
23533:
23534: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23535: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23536: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23537: -- call ADRs
23538: -- Bug 4922099
23531: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
23532: ------------------------------------------------------------------------------------------
23533:
23534: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
23535: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
23536: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
23537: -- call ADRs
23538: -- Bug 4922099
23539: --
23555: , x_value_type_code => l_adr_value_type_code
23556: , p_side => 'NA'
23557: );
23558:
23559: xla_ae_lines_pkg.set_ccid(
23560: p_code_combination_id => l_ccid
23561: , p_value_type_code => l_adr_value_type_code
23562: , p_transaction_coa_id => l_adr_transaction_coa_id
23563: , p_accounting_coa_id => l_adr_accounting_coa_id
23588: );
23589:
23590: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
23591:
23592: xla_ae_lines_pkg.set_segment(
23593: p_to_segment_code => 'GL_ACCOUNT'
23594: , p_segment_value => l_segment
23595: , p_from_segment_code => l_adr_value_segment_code
23596: , p_from_combination_id => l_adr_value_combination_id
23619:
23620: --
23621: -- Update the line information that should be overwritten
23622: --
23623: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23624: p_header_num => 1);
23625: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23626:
23627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23621: -- Update the line information that should be overwritten
23622: --
23623: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23624: p_header_num => 1);
23625: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23626:
23627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23628:
23629: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23623: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
23624: p_header_num => 1);
23625: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
23626:
23627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23628:
23629: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23630: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23631: END IF;
23626:
23627: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
23628:
23629: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
23630: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
23631: END IF;
23632:
23633: --
23634: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23633: --
23634: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
23635: --
23636: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
23637: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
23638: ELSE
23639: ---------------------------------------------------------------------------------------------------
23640: -- 4262811a Switch Sign
23641: ---------------------------------------------------------------------------------------------------
23638: ELSE
23639: ---------------------------------------------------------------------------------------------------
23640: -- 4262811a Switch Sign
23641: ---------------------------------------------------------------------------------------------------
23642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23639: ---------------------------------------------------------------------------------------------------
23640: -- 4262811a Switch Sign
23641: ---------------------------------------------------------------------------------------------------
23642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23647: -- 5132302
23640: -- 4262811a Switch Sign
23641: ---------------------------------------------------------------------------------------------------
23642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23647: -- 5132302
23648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23641: ---------------------------------------------------------------------------------------------------
23642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23647: -- 5132302
23648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23642: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
23643: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23647: -- 5132302
23648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23650:
23644: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23647: -- 5132302
23648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23650:
23651: END IF;
23652:
23645: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
23646: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23647: -- 5132302
23648: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
23649: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
23650:
23651: END IF;
23652:
23653: -- 4955764
23650:
23651: END IF;
23652:
23653: -- 4955764
23654: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23655: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23656:
23657:
23658: XLA_AE_LINES_PKG.ValidateCurrentLine;
23654: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23655: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23656:
23657:
23658: XLA_AE_LINES_PKG.ValidateCurrentLine;
23659: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23660:
23661: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23662: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23655: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
23656:
23657:
23658: XLA_AE_LINES_PKG.ValidateCurrentLine;
23659: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
23660:
23661: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
23662: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
23663: ,p_balance_type_code => l_balance_type_code);
23800: --
23801: -- bulk performance
23802: --
23803: l_balance_type_code VARCHAR2(1);
23804: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
23805: l_log_module VARCHAR2(240);
23806:
23807: --
23808: -- Upgrade strategy
23877: ') = 'CHARGES')
23878: THEN
23879:
23880: --
23881: XLA_AE_LINES_PKG.SetNewLine;
23882:
23883: p_balance_type_code := l_balance_type_code;
23884: -- set the flag so later we will know whether the gain loss line needs to be created
23885:
23889:
23890: --
23891: -- bulk performance
23892: --
23893: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
23894: p_header_num => 0); -- 4262811
23895: --
23896: -- set accounting line options
23897: --
23894: p_header_num => 0); -- 4262811
23895: --
23896: -- set accounting line options
23897: --
23898: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
23899: p_natural_side_code => 'D'
23900: , p_gain_or_loss_flag => 'N'
23901: , p_gl_transfer_mode_code => 'S'
23902: , p_acct_entry_type_code => 'A'
23908: --
23909: --
23910: -- set accounting line type info
23911: --
23912: xla_ae_lines_pkg.SetAcctLineType
23913: (p_component_type => l_component_type
23914: ,p_event_type_code => l_event_type_code
23915: ,p_line_definition_owner_code => l_line_definition_owner_code
23916: ,p_line_definition_code => l_line_definition_code
23922: ,p_event_class_code => l_event_class_code);
23923: --
23924: -- set accounting class
23925: --
23926: xla_ae_lines_pkg.SetAcctClass(
23927: p_accounting_class_code => 'RECEIVABLE'
23928: , p_ae_header_id => l_ae_header_id
23929: );
23930:
23930:
23931: --
23932: -- set rounding class
23933: --
23934: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23935: 'RECEIVABLE';
23936:
23937: --
23938: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23934: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
23935: 'RECEIVABLE';
23936:
23937: --
23938: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23939: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23940: --
23941: -- bulk performance
23942: --
23935: 'RECEIVABLE';
23936:
23937: --
23938: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
23939: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23940: --
23941: -- bulk performance
23942: --
23943: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23939: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
23940: --
23941: -- bulk performance
23942: --
23943: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23944:
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23946: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23947:
23941: -- bulk performance
23942: --
23943: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
23944:
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23946: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23947:
23948: -- 4955764
23949: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23945: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
23946: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
23947:
23948: -- 4955764
23949: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
23950: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
23951:
23952: -- 4458381 Public Sector Enh
23953:
23981: l_rec_acct_attrs.array_char_value(11) := p_source_27;
23982: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23983: l_rec_acct_attrs.array_num_value(12) := p_source_50;
23984:
23985: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23986: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23987:
23988: ---------------------------------------------------------------------------------------------------------------
23989: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23982: l_rec_acct_attrs.array_acct_attr_code(12) := 'TAX_LINE_REF_ID';
23983: l_rec_acct_attrs.array_num_value(12) := p_source_50;
23984:
23985: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23986: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23987:
23988: ---------------------------------------------------------------------------------------------------------------
23989: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23990: ---------------------------------------------------------------------------------------------------------------
23985: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
23986: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
23987:
23988: ---------------------------------------------------------------------------------------------------------------
23989: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23990: ---------------------------------------------------------------------------------------------------------------
23991: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23992:
23993: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23987:
23988: ---------------------------------------------------------------------------------------------------------------
23989: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23990: ---------------------------------------------------------------------------------------------------------------
23991: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23992:
23993: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23994: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23995:
23989: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
23990: ---------------------------------------------------------------------------------------------------------------
23991: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23992:
23993: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23994: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23995:
23996: IF xla_accounting_cache_pkg.GetValueChar
23997: (p_source_code => 'LEDGER_CATEGORY_CODE'
23990: ---------------------------------------------------------------------------------------------------------------
23991: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
23992:
23993: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23994: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
23995:
23996: IF xla_accounting_cache_pkg.GetValueChar
23997: (p_source_code => 'LEDGER_CATEGORY_CODE'
23998: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
24001: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
24002: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
24003: )
24004: THEN
24005: xla_ae_lines_pkg.BflowUpgEntry
24006: (p_business_method_code => l_bflow_method_code
24007: ,p_business_class_code => l_bflow_class_code
24008: ,p_balance_type => l_balance_type_code);
24009: ELSE
24018: --
24019: -- call description
24020: --
24021:
24022: xla_ae_lines_pkg.SetLineDescription(
24023: p_ae_header_id => l_ae_header_id
24024: ,p_description => Description_1 (
24025: p_application_id => p_application_id
24026: , p_ae_header_id => l_ae_header_id
24050: , x_value_type_code => l_adr_value_type_code
24051: , p_side => 'NA'
24052: );
24053:
24054: xla_ae_lines_pkg.set_ccid(
24055: p_code_combination_id => l_ccid
24056: , p_value_type_code => l_adr_value_type_code
24057: , p_transaction_coa_id => l_adr_transaction_coa_id
24058: , p_accounting_coa_id => l_adr_accounting_coa_id
24083: );
24084:
24085: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
24086:
24087: xla_ae_lines_pkg.set_segment(
24088: p_to_segment_code => 'GL_ACCOUNT'
24089: , p_segment_value => l_segment
24090: , p_from_segment_code => l_adr_value_segment_code
24091: , p_from_combination_id => l_adr_value_combination_id
24127: xla_accounting_err_pkg.build_message
24128: (p_appli_s_name => 'XLA'
24129: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
24130: ,p_token_1 => 'LINE_NUMBER'
24131: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
24132: ,p_token_2 => 'LINE_TYPE_NAME'
24133: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
24134: l_component_type
24135: ,l_component_code
24163: --
24164: --
24165: ------------------------------------------------------------------------------------------------
24166: -- 4219869 Business Flow
24167: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24168: -- Prior Entry. Currently, the following code is always generated.
24169: ------------------------------------------------------------------------------------------------
24170: XLA_AE_LINES_PKG.ValidateCurrentLine;
24171:
24166: -- 4219869 Business Flow
24167: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24168: -- Prior Entry. Currently, the following code is always generated.
24169: ------------------------------------------------------------------------------------------------
24170: XLA_AE_LINES_PKG.ValidateCurrentLine;
24171:
24172: ------------------------------------------------------------------------------------
24173: -- 4219869 Business Flow
24174: -- Populated credit and debit amounts -- Need to generate this within IF
24172: ------------------------------------------------------------------------------------
24173: -- 4219869 Business Flow
24174: -- Populated credit and debit amounts -- Need to generate this within IF
24175: ------------------------------------------------------------------------------------
24176: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24177:
24178: ----------------------------------------------------------------------------------
24179: -- 4219869 Business Flow
24180: -- Update journal entry status -- Need to generate this within IF
24204: -- To allow MPA report to determine if it should generate report process
24205: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24206: ------------------------------------------------------------------------------------------
24207:
24208: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24209: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24210: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24211: -- call ADRs
24212: -- Bug 4922099
24205: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24206: ------------------------------------------------------------------------------------------
24207:
24208: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24209: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24210: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24211: -- call ADRs
24212: -- Bug 4922099
24213: --
24229: , x_value_type_code => l_adr_value_type_code
24230: , p_side => 'NA'
24231: );
24232:
24233: xla_ae_lines_pkg.set_ccid(
24234: p_code_combination_id => l_ccid
24235: , p_value_type_code => l_adr_value_type_code
24236: , p_transaction_coa_id => l_adr_transaction_coa_id
24237: , p_accounting_coa_id => l_adr_accounting_coa_id
24262: );
24263:
24264: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
24265:
24266: xla_ae_lines_pkg.set_segment(
24267: p_to_segment_code => 'GL_ACCOUNT'
24268: , p_segment_value => l_segment
24269: , p_from_segment_code => l_adr_value_segment_code
24270: , p_from_combination_id => l_adr_value_combination_id
24293:
24294: --
24295: -- Update the line information that should be overwritten
24296: --
24297: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24298: p_header_num => 1);
24299: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24300:
24301: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24295: -- Update the line information that should be overwritten
24296: --
24297: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24298: p_header_num => 1);
24299: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24300:
24301: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24302:
24303: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24297: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24298: p_header_num => 1);
24299: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24300:
24301: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24302:
24303: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24304: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24305: END IF;
24300:
24301: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24302:
24303: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24304: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24305: END IF;
24306:
24307: --
24308: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24307: --
24308: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24309: --
24310: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
24311: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
24312: ELSE
24313: ---------------------------------------------------------------------------------------------------
24314: -- 4262811a Switch Sign
24315: ---------------------------------------------------------------------------------------------------
24312: ELSE
24313: ---------------------------------------------------------------------------------------------------
24314: -- 4262811a Switch Sign
24315: ---------------------------------------------------------------------------------------------------
24316: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24317: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24319: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24313: ---------------------------------------------------------------------------------------------------
24314: -- 4262811a Switch Sign
24315: ---------------------------------------------------------------------------------------------------
24316: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24317: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24319: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24321: -- 5132302
24314: -- 4262811a Switch Sign
24315: ---------------------------------------------------------------------------------------------------
24316: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24317: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24319: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24321: -- 5132302
24322: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24315: ---------------------------------------------------------------------------------------------------
24316: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24317: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24319: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24321: -- 5132302
24322: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24316: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24317: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24319: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24321: -- 5132302
24322: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24324:
24318: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24319: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24321: -- 5132302
24322: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24324:
24325: END IF;
24326:
24319: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24320: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24321: -- 5132302
24322: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24323: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24324:
24325: END IF;
24326:
24327: -- 4955764
24324:
24325: END IF;
24326:
24327: -- 4955764
24328: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24329: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24330:
24331:
24332: XLA_AE_LINES_PKG.ValidateCurrentLine;
24328: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24329: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24330:
24331:
24332: XLA_AE_LINES_PKG.ValidateCurrentLine;
24333: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24334:
24335: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24336: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24329: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24330:
24331:
24332: XLA_AE_LINES_PKG.ValidateCurrentLine;
24333: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24334:
24335: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24336: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24337: ,p_balance_type_code => l_balance_type_code);
24466: --
24467: -- bulk performance
24468: --
24469: l_balance_type_code VARCHAR2(1);
24470: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
24471: l_log_module VARCHAR2(240);
24472:
24473: --
24474: -- Upgrade strategy
24536: ') = 'N'
24537: THEN
24538:
24539: --
24540: XLA_AE_LINES_PKG.SetNewLine;
24541:
24542: p_balance_type_code := l_balance_type_code;
24543: -- set the flag so later we will know whether the gain loss line needs to be created
24544:
24548:
24549: --
24550: -- bulk performance
24551: --
24552: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
24553: p_header_num => 0); -- 4262811
24554: --
24555: -- set accounting line options
24556: --
24553: p_header_num => 0); -- 4262811
24554: --
24555: -- set accounting line options
24556: --
24557: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
24558: p_natural_side_code => 'D'
24559: , p_gain_or_loss_flag => 'N'
24560: , p_gl_transfer_mode_code => 'S'
24561: , p_acct_entry_type_code => 'A'
24567: --
24568: --
24569: -- set accounting line type info
24570: --
24571: xla_ae_lines_pkg.SetAcctLineType
24572: (p_component_type => l_component_type
24573: ,p_event_type_code => l_event_type_code
24574: ,p_line_definition_owner_code => l_line_definition_owner_code
24575: ,p_line_definition_code => l_line_definition_code
24581: ,p_event_class_code => l_event_class_code);
24582: --
24583: -- set accounting class
24584: --
24585: xla_ae_lines_pkg.SetAcctClass(
24586: p_accounting_class_code => 'BANK_CHG'
24587: , p_ae_header_id => l_ae_header_id
24588: );
24589:
24589:
24590: --
24591: -- set rounding class
24592: --
24593: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24594: 'RECEIVABLE';
24595:
24596: --
24597: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24593: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
24594: 'RECEIVABLE';
24595:
24596: --
24597: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24598: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24599: --
24600: -- bulk performance
24601: --
24594: 'RECEIVABLE';
24595:
24596: --
24597: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
24598: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24599: --
24600: -- bulk performance
24601: --
24602: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24598: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
24599: --
24600: -- bulk performance
24601: --
24602: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24603:
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24605: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24606:
24600: -- bulk performance
24601: --
24602: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
24603:
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24605: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24606:
24607: -- 4955764
24608: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24604: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
24605: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
24606:
24607: -- 4955764
24608: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24609: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
24610:
24611: -- 4458381 Public Sector Enh
24612:
24632: l_rec_acct_attrs.array_char_value(7) := p_source_23;
24633: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
24634: l_rec_acct_attrs.array_num_value(8) := p_source_24;
24635:
24636: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24637: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24638:
24639: ---------------------------------------------------------------------------------------------------------------
24640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24633: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
24634: l_rec_acct_attrs.array_num_value(8) := p_source_24;
24635:
24636: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24637: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24638:
24639: ---------------------------------------------------------------------------------------------------------------
24640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24641: ---------------------------------------------------------------------------------------------------------------
24636: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
24637: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
24638:
24639: ---------------------------------------------------------------------------------------------------------------
24640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24641: ---------------------------------------------------------------------------------------------------------------
24642: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24643:
24644: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24638:
24639: ---------------------------------------------------------------------------------------------------------------
24640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24641: ---------------------------------------------------------------------------------------------------------------
24642: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24643:
24644: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24645: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24646:
24640: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
24641: ---------------------------------------------------------------------------------------------------------------
24642: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24643:
24644: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24645: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24646:
24647: IF xla_accounting_cache_pkg.GetValueChar
24648: (p_source_code => 'LEDGER_CATEGORY_CODE'
24641: ---------------------------------------------------------------------------------------------------------------
24642: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
24643:
24644: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24645: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
24646:
24647: IF xla_accounting_cache_pkg.GetValueChar
24648: (p_source_code => 'LEDGER_CATEGORY_CODE'
24649: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
24652: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
24653: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
24654: )
24655: THEN
24656: xla_ae_lines_pkg.BflowUpgEntry
24657: (p_business_method_code => l_bflow_method_code
24658: ,p_business_class_code => l_bflow_class_code
24659: ,p_balance_type => l_balance_type_code);
24660: ELSE
24669: --
24670: -- call description
24671: --
24672:
24673: xla_ae_lines_pkg.SetLineDescription(
24674: p_ae_header_id => l_ae_header_id
24675: ,p_description => Description_1 (
24676: p_application_id => p_application_id
24677: , p_ae_header_id => l_ae_header_id
24701: , x_value_type_code => l_adr_value_type_code
24702: , p_side => 'NA'
24703: );
24704:
24705: xla_ae_lines_pkg.set_ccid(
24706: p_code_combination_id => l_ccid
24707: , p_value_type_code => l_adr_value_type_code
24708: , p_transaction_coa_id => l_adr_transaction_coa_id
24709: , p_accounting_coa_id => l_adr_accounting_coa_id
24734: );
24735:
24736: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
24737:
24738: xla_ae_lines_pkg.set_segment(
24739: p_to_segment_code => 'GL_ACCOUNT'
24740: , p_segment_value => l_segment
24741: , p_from_segment_code => l_adr_value_segment_code
24742: , p_from_combination_id => l_adr_value_combination_id
24778: xla_accounting_err_pkg.build_message
24779: (p_appli_s_name => 'XLA'
24780: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
24781: ,p_token_1 => 'LINE_NUMBER'
24782: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
24783: ,p_token_2 => 'LINE_TYPE_NAME'
24784: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
24785: l_component_type
24786: ,l_component_code
24814: --
24815: --
24816: ------------------------------------------------------------------------------------------------
24817: -- 4219869 Business Flow
24818: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24819: -- Prior Entry. Currently, the following code is always generated.
24820: ------------------------------------------------------------------------------------------------
24821: XLA_AE_LINES_PKG.ValidateCurrentLine;
24822:
24817: -- 4219869 Business Flow
24818: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
24819: -- Prior Entry. Currently, the following code is always generated.
24820: ------------------------------------------------------------------------------------------------
24821: XLA_AE_LINES_PKG.ValidateCurrentLine;
24822:
24823: ------------------------------------------------------------------------------------
24824: -- 4219869 Business Flow
24825: -- Populated credit and debit amounts -- Need to generate this within IF
24823: ------------------------------------------------------------------------------------
24824: -- 4219869 Business Flow
24825: -- Populated credit and debit amounts -- Need to generate this within IF
24826: ------------------------------------------------------------------------------------
24827: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24828:
24829: ----------------------------------------------------------------------------------
24830: -- 4219869 Business Flow
24831: -- Update journal entry status -- Need to generate this within IF
24855: -- To allow MPA report to determine if it should generate report process
24856: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24857: ------------------------------------------------------------------------------------------
24858:
24859: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24860: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24861: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24862: -- call ADRs
24863: -- Bug 4922099
24856: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
24857: ------------------------------------------------------------------------------------------
24858:
24859: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
24860: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
24861: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
24862: -- call ADRs
24863: -- Bug 4922099
24864: --
24880: , x_value_type_code => l_adr_value_type_code
24881: , p_side => 'NA'
24882: );
24883:
24884: xla_ae_lines_pkg.set_ccid(
24885: p_code_combination_id => l_ccid
24886: , p_value_type_code => l_adr_value_type_code
24887: , p_transaction_coa_id => l_adr_transaction_coa_id
24888: , p_accounting_coa_id => l_adr_accounting_coa_id
24913: );
24914:
24915: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
24916:
24917: xla_ae_lines_pkg.set_segment(
24918: p_to_segment_code => 'GL_ACCOUNT'
24919: , p_segment_value => l_segment
24920: , p_from_segment_code => l_adr_value_segment_code
24921: , p_from_combination_id => l_adr_value_combination_id
24944:
24945: --
24946: -- Update the line information that should be overwritten
24947: --
24948: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24949: p_header_num => 1);
24950: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24951:
24952: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24946: -- Update the line information that should be overwritten
24947: --
24948: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24949: p_header_num => 1);
24950: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24951:
24952: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24953:
24954: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24948: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
24949: p_header_num => 1);
24950: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
24951:
24952: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24953:
24954: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24955: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24956: END IF;
24951:
24952: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
24953:
24954: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
24955: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
24956: END IF;
24957:
24958: --
24959: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24958: --
24959: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
24960: --
24961: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
24962: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
24963: ELSE
24964: ---------------------------------------------------------------------------------------------------
24965: -- 4262811a Switch Sign
24966: ---------------------------------------------------------------------------------------------------
24963: ELSE
24964: ---------------------------------------------------------------------------------------------------
24965: -- 4262811a Switch Sign
24966: ---------------------------------------------------------------------------------------------------
24967: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24968: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24970: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24964: ---------------------------------------------------------------------------------------------------
24965: -- 4262811a Switch Sign
24966: ---------------------------------------------------------------------------------------------------
24967: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24968: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24970: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24972: -- 5132302
24965: -- 4262811a Switch Sign
24966: ---------------------------------------------------------------------------------------------------
24967: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24968: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24970: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24972: -- 5132302
24973: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24966: ---------------------------------------------------------------------------------------------------
24967: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24968: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24970: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24972: -- 5132302
24973: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24967: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
24968: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24970: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24972: -- 5132302
24973: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24975:
24969: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24970: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24972: -- 5132302
24973: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24975:
24976: END IF;
24977:
24970: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
24971: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24972: -- 5132302
24973: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
24974: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
24975:
24976: END IF;
24977:
24978: -- 4955764
24975:
24976: END IF;
24977:
24978: -- 4955764
24979: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24980: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24981:
24982:
24983: XLA_AE_LINES_PKG.ValidateCurrentLine;
24979: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
24980: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24981:
24982:
24983: XLA_AE_LINES_PKG.ValidateCurrentLine;
24984: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24985:
24986: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24987: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24980: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
24981:
24982:
24983: XLA_AE_LINES_PKG.ValidateCurrentLine;
24984: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
24985:
24986: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
24987: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
24988: ,p_balance_type_code => l_balance_type_code);
25121: --
25122: -- bulk performance
25123: --
25124: l_balance_type_code VARCHAR2(1);
25125: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
25126: l_log_module VARCHAR2(240);
25127:
25128: --
25129: -- Upgrade strategy
25197: ') = 'N'
25198: THEN
25199:
25200: --
25201: XLA_AE_LINES_PKG.SetNewLine;
25202:
25203: p_balance_type_code := l_balance_type_code;
25204: -- set the flag so later we will know whether the gain loss line needs to be created
25205:
25209:
25210: --
25211: -- bulk performance
25212: --
25213: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
25214: p_header_num => 0); -- 4262811
25215: --
25216: -- set accounting line options
25217: --
25214: p_header_num => 0); -- 4262811
25215: --
25216: -- set accounting line options
25217: --
25218: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
25219: p_natural_side_code => 'C'
25220: , p_gain_or_loss_flag => 'N'
25221: , p_gl_transfer_mode_code => 'S'
25222: , p_acct_entry_type_code => 'A'
25228: --
25229: --
25230: -- set accounting line type info
25231: --
25232: xla_ae_lines_pkg.SetAcctLineType
25233: (p_component_type => l_component_type
25234: ,p_event_type_code => l_event_type_code
25235: ,p_line_definition_owner_code => l_line_definition_owner_code
25236: ,p_line_definition_code => l_line_definition_code
25242: ,p_event_class_code => l_event_class_code);
25243: --
25244: -- set accounting class
25245: --
25246: xla_ae_lines_pkg.SetAcctClass(
25247: p_accounting_class_code => 'CASH'
25248: , p_ae_header_id => l_ae_header_id
25249: );
25250:
25250:
25251: --
25252: -- set rounding class
25253: --
25254: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25255: 'RECEIVABLE';
25256:
25257: --
25258: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25254: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25255: 'RECEIVABLE';
25256:
25257: --
25258: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25259: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25260: --
25261: -- bulk performance
25262: --
25255: 'RECEIVABLE';
25256:
25257: --
25258: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25259: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25260: --
25261: -- bulk performance
25262: --
25263: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25259: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25260: --
25261: -- bulk performance
25262: --
25263: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25264:
25265: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25266: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25267:
25261: -- bulk performance
25262: --
25263: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25264:
25265: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25266: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25267:
25268: -- 4955764
25269: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25265: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25266: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25267:
25268: -- 4955764
25269: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25270: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
25271:
25272: -- 4458381 Public Sector Enh
25273:
25293: l_rec_acct_attrs.array_char_value(7) := p_source_23;
25294: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
25295: l_rec_acct_attrs.array_num_value(8) := p_source_24;
25296:
25297: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25298: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25299:
25300: ---------------------------------------------------------------------------------------------------------------
25301: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25294: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
25295: l_rec_acct_attrs.array_num_value(8) := p_source_24;
25296:
25297: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25298: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25299:
25300: ---------------------------------------------------------------------------------------------------------------
25301: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25302: ---------------------------------------------------------------------------------------------------------------
25297: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25298: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25299:
25300: ---------------------------------------------------------------------------------------------------------------
25301: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25302: ---------------------------------------------------------------------------------------------------------------
25303: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25304:
25305: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25299:
25300: ---------------------------------------------------------------------------------------------------------------
25301: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25302: ---------------------------------------------------------------------------------------------------------------
25303: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25304:
25305: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25306: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25307:
25301: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25302: ---------------------------------------------------------------------------------------------------------------
25303: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25304:
25305: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25306: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25307:
25308: IF xla_accounting_cache_pkg.GetValueChar
25309: (p_source_code => 'LEDGER_CATEGORY_CODE'
25302: ---------------------------------------------------------------------------------------------------------------
25303: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25304:
25305: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25306: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25307:
25308: IF xla_accounting_cache_pkg.GetValueChar
25309: (p_source_code => 'LEDGER_CATEGORY_CODE'
25310: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
25313: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
25314: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
25315: )
25316: THEN
25317: xla_ae_lines_pkg.BflowUpgEntry
25318: (p_business_method_code => l_bflow_method_code
25319: ,p_business_class_code => l_bflow_class_code
25320: ,p_balance_type => l_balance_type_code);
25321: ELSE
25330: --
25331: -- call description
25332: --
25333:
25334: xla_ae_lines_pkg.SetLineDescription(
25335: p_ae_header_id => l_ae_header_id
25336: ,p_description => Description_1 (
25337: p_application_id => p_application_id
25338: , p_ae_header_id => l_ae_header_id
25362: , x_value_type_code => l_adr_value_type_code
25363: , p_side => 'NA'
25364: );
25365:
25366: xla_ae_lines_pkg.set_ccid(
25367: p_code_combination_id => l_ccid
25368: , p_value_type_code => l_adr_value_type_code
25369: , p_transaction_coa_id => l_adr_transaction_coa_id
25370: , p_accounting_coa_id => l_adr_accounting_coa_id
25395: );
25396:
25397: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25398:
25399: xla_ae_lines_pkg.set_segment(
25400: p_to_segment_code => 'GL_ACCOUNT'
25401: , p_segment_value => l_segment
25402: , p_from_segment_code => l_adr_value_segment_code
25403: , p_from_combination_id => l_adr_value_combination_id
25439: xla_accounting_err_pkg.build_message
25440: (p_appli_s_name => 'XLA'
25441: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
25442: ,p_token_1 => 'LINE_NUMBER'
25443: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
25444: ,p_token_2 => 'LINE_TYPE_NAME'
25445: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
25446: l_component_type
25447: ,l_component_code
25475: --
25476: --
25477: ------------------------------------------------------------------------------------------------
25478: -- 4219869 Business Flow
25479: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25480: -- Prior Entry. Currently, the following code is always generated.
25481: ------------------------------------------------------------------------------------------------
25482: XLA_AE_LINES_PKG.ValidateCurrentLine;
25483:
25478: -- 4219869 Business Flow
25479: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
25480: -- Prior Entry. Currently, the following code is always generated.
25481: ------------------------------------------------------------------------------------------------
25482: XLA_AE_LINES_PKG.ValidateCurrentLine;
25483:
25484: ------------------------------------------------------------------------------------
25485: -- 4219869 Business Flow
25486: -- Populated credit and debit amounts -- Need to generate this within IF
25484: ------------------------------------------------------------------------------------
25485: -- 4219869 Business Flow
25486: -- Populated credit and debit amounts -- Need to generate this within IF
25487: ------------------------------------------------------------------------------------
25488: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25489:
25490: ----------------------------------------------------------------------------------
25491: -- 4219869 Business Flow
25492: -- Update journal entry status -- Need to generate this within IF
25516: -- To allow MPA report to determine if it should generate report process
25517: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25518: ------------------------------------------------------------------------------------------
25519:
25520: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25521: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25522: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25523: -- call ADRs
25524: -- Bug 4922099
25517: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
25518: ------------------------------------------------------------------------------------------
25519:
25520: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
25521: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
25522: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
25523: -- call ADRs
25524: -- Bug 4922099
25525: --
25541: , x_value_type_code => l_adr_value_type_code
25542: , p_side => 'NA'
25543: );
25544:
25545: xla_ae_lines_pkg.set_ccid(
25546: p_code_combination_id => l_ccid
25547: , p_value_type_code => l_adr_value_type_code
25548: , p_transaction_coa_id => l_adr_transaction_coa_id
25549: , p_accounting_coa_id => l_adr_accounting_coa_id
25574: );
25575:
25576: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
25577:
25578: xla_ae_lines_pkg.set_segment(
25579: p_to_segment_code => 'GL_ACCOUNT'
25580: , p_segment_value => l_segment
25581: , p_from_segment_code => l_adr_value_segment_code
25582: , p_from_combination_id => l_adr_value_combination_id
25605:
25606: --
25607: -- Update the line information that should be overwritten
25608: --
25609: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25610: p_header_num => 1);
25611: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25612:
25613: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25607: -- Update the line information that should be overwritten
25608: --
25609: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25610: p_header_num => 1);
25611: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25612:
25613: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25614:
25615: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25609: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
25610: p_header_num => 1);
25611: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
25612:
25613: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25614:
25615: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25616: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25617: END IF;
25612:
25613: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
25614:
25615: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
25616: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
25617: END IF;
25618:
25619: --
25620: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25619: --
25620: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
25621: --
25622: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
25623: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
25624: ELSE
25625: ---------------------------------------------------------------------------------------------------
25626: -- 4262811a Switch Sign
25627: ---------------------------------------------------------------------------------------------------
25624: ELSE
25625: ---------------------------------------------------------------------------------------------------
25626: -- 4262811a Switch Sign
25627: ---------------------------------------------------------------------------------------------------
25628: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25629: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25630: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25631: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25632: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25625: ---------------------------------------------------------------------------------------------------
25626: -- 4262811a Switch Sign
25627: ---------------------------------------------------------------------------------------------------
25628: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25629: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25630: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25631: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25632: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25633: -- 5132302
25626: -- 4262811a Switch Sign
25627: ---------------------------------------------------------------------------------------------------
25628: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25629: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25630: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25631: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25632: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25633: -- 5132302
25634: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25627: ---------------------------------------------------------------------------------------------------
25628: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25629: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25630: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25631: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25632: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25633: -- 5132302
25634: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25635: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25628: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
25629: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25630: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25631: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25632: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25633: -- 5132302
25634: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25635: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25636:
25630: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25631: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25632: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25633: -- 5132302
25634: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25635: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25636:
25637: END IF;
25638:
25631: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
25632: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25633: -- 5132302
25634: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
25635: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
25636:
25637: END IF;
25638:
25639: -- 4955764
25636:
25637: END IF;
25638:
25639: -- 4955764
25640: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25641: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25642:
25643:
25644: XLA_AE_LINES_PKG.ValidateCurrentLine;
25640: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25641: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25642:
25643:
25644: XLA_AE_LINES_PKG.ValidateCurrentLine;
25645: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25646:
25647: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25648: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25641: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
25642:
25643:
25644: XLA_AE_LINES_PKG.ValidateCurrentLine;
25645: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
25646:
25647: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
25648: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
25649: ,p_balance_type_code => l_balance_type_code);
25780: --
25781: -- bulk performance
25782: --
25783: l_balance_type_code VARCHAR2(1);
25784: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
25785: l_log_module VARCHAR2(240);
25786:
25787: --
25788: -- Upgrade strategy
25852: ') = 'Y'
25853: THEN
25854:
25855: --
25856: XLA_AE_LINES_PKG.SetNewLine;
25857:
25858: p_balance_type_code := l_balance_type_code;
25859: -- set the flag so later we will know whether the gain loss line needs to be created
25860:
25864:
25865: --
25866: -- bulk performance
25867: --
25868: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
25869: p_header_num => 0); -- 4262811
25870: --
25871: -- set accounting line options
25872: --
25869: p_header_num => 0); -- 4262811
25870: --
25871: -- set accounting line options
25872: --
25873: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
25874: p_natural_side_code => 'C'
25875: , p_gain_or_loss_flag => 'N'
25876: , p_gl_transfer_mode_code => 'S'
25877: , p_acct_entry_type_code => 'A'
25883: --
25884: --
25885: -- set accounting line type info
25886: --
25887: xla_ae_lines_pkg.SetAcctLineType
25888: (p_component_type => l_component_type
25889: ,p_event_type_code => l_event_type_code
25890: ,p_line_definition_owner_code => l_line_definition_owner_code
25891: ,p_line_definition_code => l_line_definition_code
25897: ,p_event_class_code => l_event_class_code);
25898: --
25899: -- set accounting class
25900: --
25901: xla_ae_lines_pkg.SetAcctClass(
25902: p_accounting_class_code => 'CASH'
25903: , p_ae_header_id => l_ae_header_id
25904: );
25905:
25905:
25906: --
25907: -- set rounding class
25908: --
25909: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25910: 'RECEIVABLE';
25911:
25912: --
25913: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25909: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
25910: 'RECEIVABLE';
25911:
25912: --
25913: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25914: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25915: --
25916: -- bulk performance
25917: --
25910: 'RECEIVABLE';
25911:
25912: --
25913: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
25914: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25915: --
25916: -- bulk performance
25917: --
25918: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25914: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
25915: --
25916: -- bulk performance
25917: --
25918: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25919:
25920: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25921: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25922:
25916: -- bulk performance
25917: --
25918: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
25919:
25920: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25921: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25922:
25923: -- 4955764
25924: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25920: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
25921: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
25922:
25923: -- 4955764
25924: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
25925: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
25926:
25927: -- 4458381 Public Sector Enh
25928:
25948: l_rec_acct_attrs.array_char_value(7) := p_source_23;
25949: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
25950: l_rec_acct_attrs.array_num_value(8) := p_source_24;
25951:
25952: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25953: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25954:
25955: ---------------------------------------------------------------------------------------------------------------
25956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25949: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
25950: l_rec_acct_attrs.array_num_value(8) := p_source_24;
25951:
25952: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25953: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25954:
25955: ---------------------------------------------------------------------------------------------------------------
25956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25957: ---------------------------------------------------------------------------------------------------------------
25952: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
25953: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
25954:
25955: ---------------------------------------------------------------------------------------------------------------
25956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25957: ---------------------------------------------------------------------------------------------------------------
25958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25959:
25960: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25954:
25955: ---------------------------------------------------------------------------------------------------------------
25956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25957: ---------------------------------------------------------------------------------------------------------------
25958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25959:
25960: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25961: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25962:
25956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
25957: ---------------------------------------------------------------------------------------------------------------
25958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25959:
25960: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25961: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25962:
25963: IF xla_accounting_cache_pkg.GetValueChar
25964: (p_source_code => 'LEDGER_CATEGORY_CODE'
25957: ---------------------------------------------------------------------------------------------------------------
25958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
25959:
25960: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25961: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
25962:
25963: IF xla_accounting_cache_pkg.GetValueChar
25964: (p_source_code => 'LEDGER_CATEGORY_CODE'
25965: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
25968: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
25969: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
25970: )
25971: THEN
25972: xla_ae_lines_pkg.BflowUpgEntry
25973: (p_business_method_code => l_bflow_method_code
25974: ,p_business_class_code => l_bflow_class_code
25975: ,p_balance_type => l_balance_type_code);
25976: ELSE
25985: --
25986: -- call description
25987: --
25988:
25989: xla_ae_lines_pkg.SetLineDescription(
25990: p_ae_header_id => l_ae_header_id
25991: ,p_description => Description_1 (
25992: p_application_id => p_application_id
25993: , p_ae_header_id => l_ae_header_id
26017: , x_value_type_code => l_adr_value_type_code
26018: , p_side => 'NA'
26019: );
26020:
26021: xla_ae_lines_pkg.set_ccid(
26022: p_code_combination_id => l_ccid
26023: , p_value_type_code => l_adr_value_type_code
26024: , p_transaction_coa_id => l_adr_transaction_coa_id
26025: , p_accounting_coa_id => l_adr_accounting_coa_id
26050: );
26051:
26052: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26053:
26054: xla_ae_lines_pkg.set_segment(
26055: p_to_segment_code => 'GL_ACCOUNT'
26056: , p_segment_value => l_segment
26057: , p_from_segment_code => l_adr_value_segment_code
26058: , p_from_combination_id => l_adr_value_combination_id
26094: xla_accounting_err_pkg.build_message
26095: (p_appli_s_name => 'XLA'
26096: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
26097: ,p_token_1 => 'LINE_NUMBER'
26098: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
26099: ,p_token_2 => 'LINE_TYPE_NAME'
26100: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
26101: l_component_type
26102: ,l_component_code
26130: --
26131: --
26132: ------------------------------------------------------------------------------------------------
26133: -- 4219869 Business Flow
26134: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26135: -- Prior Entry. Currently, the following code is always generated.
26136: ------------------------------------------------------------------------------------------------
26137: XLA_AE_LINES_PKG.ValidateCurrentLine;
26138:
26133: -- 4219869 Business Flow
26134: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26135: -- Prior Entry. Currently, the following code is always generated.
26136: ------------------------------------------------------------------------------------------------
26137: XLA_AE_LINES_PKG.ValidateCurrentLine;
26138:
26139: ------------------------------------------------------------------------------------
26140: -- 4219869 Business Flow
26141: -- Populated credit and debit amounts -- Need to generate this within IF
26139: ------------------------------------------------------------------------------------
26140: -- 4219869 Business Flow
26141: -- Populated credit and debit amounts -- Need to generate this within IF
26142: ------------------------------------------------------------------------------------
26143: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26144:
26145: ----------------------------------------------------------------------------------
26146: -- 4219869 Business Flow
26147: -- Update journal entry status -- Need to generate this within IF
26171: -- To allow MPA report to determine if it should generate report process
26172: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26173: ------------------------------------------------------------------------------------------
26174:
26175: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26176: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26177: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26178: -- call ADRs
26179: -- Bug 4922099
26172: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26173: ------------------------------------------------------------------------------------------
26174:
26175: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26176: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26177: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26178: -- call ADRs
26179: -- Bug 4922099
26180: --
26196: , x_value_type_code => l_adr_value_type_code
26197: , p_side => 'NA'
26198: );
26199:
26200: xla_ae_lines_pkg.set_ccid(
26201: p_code_combination_id => l_ccid
26202: , p_value_type_code => l_adr_value_type_code
26203: , p_transaction_coa_id => l_adr_transaction_coa_id
26204: , p_accounting_coa_id => l_adr_accounting_coa_id
26229: );
26230:
26231: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26232:
26233: xla_ae_lines_pkg.set_segment(
26234: p_to_segment_code => 'GL_ACCOUNT'
26235: , p_segment_value => l_segment
26236: , p_from_segment_code => l_adr_value_segment_code
26237: , p_from_combination_id => l_adr_value_combination_id
26260:
26261: --
26262: -- Update the line information that should be overwritten
26263: --
26264: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26265: p_header_num => 1);
26266: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26267:
26268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26262: -- Update the line information that should be overwritten
26263: --
26264: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26265: p_header_num => 1);
26266: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26267:
26268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26269:
26270: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26264: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26265: p_header_num => 1);
26266: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26267:
26268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26269:
26270: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26271: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26272: END IF;
26267:
26268: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26269:
26270: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26271: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26272: END IF;
26273:
26274: --
26275: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26274: --
26275: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26276: --
26277: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
26278: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
26279: ELSE
26280: ---------------------------------------------------------------------------------------------------
26281: -- 4262811a Switch Sign
26282: ---------------------------------------------------------------------------------------------------
26279: ELSE
26280: ---------------------------------------------------------------------------------------------------
26281: -- 4262811a Switch Sign
26282: ---------------------------------------------------------------------------------------------------
26283: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26284: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26285: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26286: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26287: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26280: ---------------------------------------------------------------------------------------------------
26281: -- 4262811a Switch Sign
26282: ---------------------------------------------------------------------------------------------------
26283: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26284: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26285: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26286: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26287: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26288: -- 5132302
26281: -- 4262811a Switch Sign
26282: ---------------------------------------------------------------------------------------------------
26283: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26284: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26285: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26286: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26287: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26288: -- 5132302
26289: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26282: ---------------------------------------------------------------------------------------------------
26283: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26284: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26285: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26286: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26287: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26288: -- 5132302
26289: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26290: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26283: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26284: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26285: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26286: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26287: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26288: -- 5132302
26289: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26290: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26291:
26285: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26286: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26287: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26288: -- 5132302
26289: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26290: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26291:
26292: END IF;
26293:
26286: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26287: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26288: -- 5132302
26289: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26290: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26291:
26292: END IF;
26293:
26294: -- 4955764
26291:
26292: END IF;
26293:
26294: -- 4955764
26295: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26296: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26297:
26298:
26299: XLA_AE_LINES_PKG.ValidateCurrentLine;
26295: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26296: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26297:
26298:
26299: XLA_AE_LINES_PKG.ValidateCurrentLine;
26300: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26301:
26302: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26303: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26296: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26297:
26298:
26299: XLA_AE_LINES_PKG.ValidateCurrentLine;
26300: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26301:
26302: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26303: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26304: ,p_balance_type_code => l_balance_type_code);
26433: --
26434: -- bulk performance
26435: --
26436: l_balance_type_code VARCHAR2(1);
26437: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
26438: l_log_module VARCHAR2(240);
26439:
26440: --
26441: -- Upgrade strategy
26503: ') = 'Y'
26504: THEN
26505:
26506: --
26507: XLA_AE_LINES_PKG.SetNewLine;
26508:
26509: p_balance_type_code := l_balance_type_code;
26510: -- set the flag so later we will know whether the gain loss line needs to be created
26511:
26515:
26516: --
26517: -- bulk performance
26518: --
26519: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
26520: p_header_num => 0); -- 4262811
26521: --
26522: -- set accounting line options
26523: --
26520: p_header_num => 0); -- 4262811
26521: --
26522: -- set accounting line options
26523: --
26524: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
26525: p_natural_side_code => 'C'
26526: , p_gain_or_loss_flag => 'N'
26527: , p_gl_transfer_mode_code => 'S'
26528: , p_acct_entry_type_code => 'A'
26534: --
26535: --
26536: -- set accounting line type info
26537: --
26538: xla_ae_lines_pkg.SetAcctLineType
26539: (p_component_type => l_component_type
26540: ,p_event_type_code => l_event_type_code
26541: ,p_line_definition_owner_code => l_line_definition_owner_code
26542: ,p_line_definition_code => l_line_definition_code
26548: ,p_event_class_code => l_event_class_code);
26549: --
26550: -- set accounting class
26551: --
26552: xla_ae_lines_pkg.SetAcctClass(
26553: p_accounting_class_code => 'CONFIRMATION'
26554: , p_ae_header_id => l_ae_header_id
26555: );
26556:
26556:
26557: --
26558: -- set rounding class
26559: --
26560: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26561: 'RECEIVABLE';
26562:
26563: --
26564: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26560: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
26561: 'RECEIVABLE';
26562:
26563: --
26564: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26565: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26566: --
26567: -- bulk performance
26568: --
26561: 'RECEIVABLE';
26562:
26563: --
26564: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
26565: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26566: --
26567: -- bulk performance
26568: --
26569: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26565: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
26566: --
26567: -- bulk performance
26568: --
26569: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26570:
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26572: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26573:
26567: -- bulk performance
26568: --
26569: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
26570:
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26572: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26573:
26574: -- 4955764
26575: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26571: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
26572: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
26573:
26574: -- 4955764
26575: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26576: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
26577:
26578: -- 4458381 Public Sector Enh
26579:
26599: l_rec_acct_attrs.array_char_value(7) := p_source_23;
26600: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26601: l_rec_acct_attrs.array_num_value(8) := p_source_24;
26602:
26603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26605:
26606: ---------------------------------------------------------------------------------------------------------------
26607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26600: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
26601: l_rec_acct_attrs.array_num_value(8) := p_source_24;
26602:
26603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26605:
26606: ---------------------------------------------------------------------------------------------------------------
26607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26608: ---------------------------------------------------------------------------------------------------------------
26603: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
26604: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
26605:
26606: ---------------------------------------------------------------------------------------------------------------
26607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26608: ---------------------------------------------------------------------------------------------------------------
26609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26610:
26611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26605:
26606: ---------------------------------------------------------------------------------------------------------------
26607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26608: ---------------------------------------------------------------------------------------------------------------
26609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26610:
26611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26613:
26607: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
26608: ---------------------------------------------------------------------------------------------------------------
26609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26610:
26611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26613:
26614: IF xla_accounting_cache_pkg.GetValueChar
26615: (p_source_code => 'LEDGER_CATEGORY_CODE'
26608: ---------------------------------------------------------------------------------------------------------------
26609: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
26610:
26611: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26612: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
26613:
26614: IF xla_accounting_cache_pkg.GetValueChar
26615: (p_source_code => 'LEDGER_CATEGORY_CODE'
26616: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
26619: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
26620: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
26621: )
26622: THEN
26623: xla_ae_lines_pkg.BflowUpgEntry
26624: (p_business_method_code => l_bflow_method_code
26625: ,p_business_class_code => l_bflow_class_code
26626: ,p_balance_type => l_balance_type_code);
26627: ELSE
26636: --
26637: -- call description
26638: --
26639:
26640: xla_ae_lines_pkg.SetLineDescription(
26641: p_ae_header_id => l_ae_header_id
26642: ,p_description => Description_1 (
26643: p_application_id => p_application_id
26644: , p_ae_header_id => l_ae_header_id
26668: , x_value_type_code => l_adr_value_type_code
26669: , p_side => 'NA'
26670: );
26671:
26672: xla_ae_lines_pkg.set_ccid(
26673: p_code_combination_id => l_ccid
26674: , p_value_type_code => l_adr_value_type_code
26675: , p_transaction_coa_id => l_adr_transaction_coa_id
26676: , p_accounting_coa_id => l_adr_accounting_coa_id
26701: );
26702:
26703: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26704:
26705: xla_ae_lines_pkg.set_segment(
26706: p_to_segment_code => 'GL_ACCOUNT'
26707: , p_segment_value => l_segment
26708: , p_from_segment_code => l_adr_value_segment_code
26709: , p_from_combination_id => l_adr_value_combination_id
26745: xla_accounting_err_pkg.build_message
26746: (p_appli_s_name => 'XLA'
26747: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
26748: ,p_token_1 => 'LINE_NUMBER'
26749: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
26750: ,p_token_2 => 'LINE_TYPE_NAME'
26751: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
26752: l_component_type
26753: ,l_component_code
26781: --
26782: --
26783: ------------------------------------------------------------------------------------------------
26784: -- 4219869 Business Flow
26785: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26786: -- Prior Entry. Currently, the following code is always generated.
26787: ------------------------------------------------------------------------------------------------
26788: XLA_AE_LINES_PKG.ValidateCurrentLine;
26789:
26784: -- 4219869 Business Flow
26785: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
26786: -- Prior Entry. Currently, the following code is always generated.
26787: ------------------------------------------------------------------------------------------------
26788: XLA_AE_LINES_PKG.ValidateCurrentLine;
26789:
26790: ------------------------------------------------------------------------------------
26791: -- 4219869 Business Flow
26792: -- Populated credit and debit amounts -- Need to generate this within IF
26790: ------------------------------------------------------------------------------------
26791: -- 4219869 Business Flow
26792: -- Populated credit and debit amounts -- Need to generate this within IF
26793: ------------------------------------------------------------------------------------
26794: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26795:
26796: ----------------------------------------------------------------------------------
26797: -- 4219869 Business Flow
26798: -- Update journal entry status -- Need to generate this within IF
26822: -- To allow MPA report to determine if it should generate report process
26823: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26824: ------------------------------------------------------------------------------------------
26825:
26826: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26827: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26828: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26829: -- call ADRs
26830: -- Bug 4922099
26823: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
26824: ------------------------------------------------------------------------------------------
26825:
26826: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
26827: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
26828: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
26829: -- call ADRs
26830: -- Bug 4922099
26831: --
26847: , x_value_type_code => l_adr_value_type_code
26848: , p_side => 'NA'
26849: );
26850:
26851: xla_ae_lines_pkg.set_ccid(
26852: p_code_combination_id => l_ccid
26853: , p_value_type_code => l_adr_value_type_code
26854: , p_transaction_coa_id => l_adr_transaction_coa_id
26855: , p_accounting_coa_id => l_adr_accounting_coa_id
26880: );
26881:
26882: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
26883:
26884: xla_ae_lines_pkg.set_segment(
26885: p_to_segment_code => 'GL_ACCOUNT'
26886: , p_segment_value => l_segment
26887: , p_from_segment_code => l_adr_value_segment_code
26888: , p_from_combination_id => l_adr_value_combination_id
26911:
26912: --
26913: -- Update the line information that should be overwritten
26914: --
26915: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26916: p_header_num => 1);
26917: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26918:
26919: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26913: -- Update the line information that should be overwritten
26914: --
26915: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26916: p_header_num => 1);
26917: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26918:
26919: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26920:
26921: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26915: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
26916: p_header_num => 1);
26917: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
26918:
26919: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26920:
26921: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26922: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26923: END IF;
26918:
26919: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
26920:
26921: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
26922: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
26923: END IF;
26924:
26925: --
26926: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26925: --
26926: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
26927: --
26928: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
26929: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
26930: ELSE
26931: ---------------------------------------------------------------------------------------------------
26932: -- 4262811a Switch Sign
26933: ---------------------------------------------------------------------------------------------------
26930: ELSE
26931: ---------------------------------------------------------------------------------------------------
26932: -- 4262811a Switch Sign
26933: ---------------------------------------------------------------------------------------------------
26934: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26936: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26938: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26931: ---------------------------------------------------------------------------------------------------
26932: -- 4262811a Switch Sign
26933: ---------------------------------------------------------------------------------------------------
26934: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26936: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26938: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26939: -- 5132302
26932: -- 4262811a Switch Sign
26933: ---------------------------------------------------------------------------------------------------
26934: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26936: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26938: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26939: -- 5132302
26940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26933: ---------------------------------------------------------------------------------------------------
26934: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26936: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26938: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26939: -- 5132302
26940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26941: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26934: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
26935: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26936: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26938: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26939: -- 5132302
26940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26941: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26942:
26936: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26938: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26939: -- 5132302
26940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26941: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26942:
26943: END IF;
26944:
26937: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
26938: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26939: -- 5132302
26940: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
26941: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
26942:
26943: END IF;
26944:
26945: -- 4955764
26942:
26943: END IF;
26944:
26945: -- 4955764
26946: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26947: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26948:
26949:
26950: XLA_AE_LINES_PKG.ValidateCurrentLine;
26946: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
26947: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26948:
26949:
26950: XLA_AE_LINES_PKG.ValidateCurrentLine;
26951: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26952:
26953: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26954: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26947: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
26948:
26949:
26950: XLA_AE_LINES_PKG.ValidateCurrentLine;
26951: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
26952:
26953: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
26954: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
26955: ,p_balance_type_code => l_balance_type_code);
27084: --
27085: -- bulk performance
27086: --
27087: l_balance_type_code VARCHAR2(1);
27088: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
27089: l_log_module VARCHAR2(240);
27090:
27091: --
27092: -- Upgrade strategy
27154: ') = 'Y'
27155: THEN
27156:
27157: --
27158: XLA_AE_LINES_PKG.SetNewLine;
27159:
27160: p_balance_type_code := l_balance_type_code;
27161: -- set the flag so later we will know whether the gain loss line needs to be created
27162:
27166:
27167: --
27168: -- bulk performance
27169: --
27170: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
27171: p_header_num => 0); -- 4262811
27172: --
27173: -- set accounting line options
27174: --
27171: p_header_num => 0); -- 4262811
27172: --
27173: -- set accounting line options
27174: --
27175: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
27176: p_natural_side_code => 'C'
27177: , p_gain_or_loss_flag => 'N'
27178: , p_gl_transfer_mode_code => 'S'
27179: , p_acct_entry_type_code => 'A'
27185: --
27186: --
27187: -- set accounting line type info
27188: --
27189: xla_ae_lines_pkg.SetAcctLineType
27190: (p_component_type => l_component_type
27191: ,p_event_type_code => l_event_type_code
27192: ,p_line_definition_owner_code => l_line_definition_owner_code
27193: ,p_line_definition_code => l_line_definition_code
27199: ,p_event_class_code => l_event_class_code);
27200: --
27201: -- set accounting class
27202: --
27203: xla_ae_lines_pkg.SetAcctClass(
27204: p_accounting_class_code => 'REMITTANCE'
27205: , p_ae_header_id => l_ae_header_id
27206: );
27207:
27207:
27208: --
27209: -- set rounding class
27210: --
27211: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27212: 'RECEIVABLE';
27213:
27214: --
27215: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27211: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27212: 'RECEIVABLE';
27213:
27214: --
27215: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27216: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27217: --
27218: -- bulk performance
27219: --
27212: 'RECEIVABLE';
27213:
27214: --
27215: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27216: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27217: --
27218: -- bulk performance
27219: --
27220: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27216: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27217: --
27218: -- bulk performance
27219: --
27220: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27221:
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27223: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27224:
27218: -- bulk performance
27219: --
27220: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27221:
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27223: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27224:
27225: -- 4955764
27226: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27222: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27223: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27224:
27225: -- 4955764
27226: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27227: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
27228:
27229: -- 4458381 Public Sector Enh
27230:
27250: l_rec_acct_attrs.array_char_value(7) := p_source_23;
27251: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
27252: l_rec_acct_attrs.array_num_value(8) := p_source_24;
27253:
27254: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27255: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27256:
27257: ---------------------------------------------------------------------------------------------------------------
27258: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27251: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
27252: l_rec_acct_attrs.array_num_value(8) := p_source_24;
27253:
27254: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27255: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27256:
27257: ---------------------------------------------------------------------------------------------------------------
27258: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27259: ---------------------------------------------------------------------------------------------------------------
27254: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27255: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27256:
27257: ---------------------------------------------------------------------------------------------------------------
27258: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27259: ---------------------------------------------------------------------------------------------------------------
27260: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27261:
27262: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27256:
27257: ---------------------------------------------------------------------------------------------------------------
27258: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27259: ---------------------------------------------------------------------------------------------------------------
27260: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27261:
27262: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27263: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27264:
27258: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27259: ---------------------------------------------------------------------------------------------------------------
27260: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27261:
27262: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27263: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27264:
27265: IF xla_accounting_cache_pkg.GetValueChar
27266: (p_source_code => 'LEDGER_CATEGORY_CODE'
27259: ---------------------------------------------------------------------------------------------------------------
27260: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27261:
27262: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27263: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27264:
27265: IF xla_accounting_cache_pkg.GetValueChar
27266: (p_source_code => 'LEDGER_CATEGORY_CODE'
27267: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
27270: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
27271: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
27272: )
27273: THEN
27274: xla_ae_lines_pkg.BflowUpgEntry
27275: (p_business_method_code => l_bflow_method_code
27276: ,p_business_class_code => l_bflow_class_code
27277: ,p_balance_type => l_balance_type_code);
27278: ELSE
27287: --
27288: -- call description
27289: --
27290:
27291: xla_ae_lines_pkg.SetLineDescription(
27292: p_ae_header_id => l_ae_header_id
27293: ,p_description => Description_1 (
27294: p_application_id => p_application_id
27295: , p_ae_header_id => l_ae_header_id
27319: , x_value_type_code => l_adr_value_type_code
27320: , p_side => 'NA'
27321: );
27322:
27323: xla_ae_lines_pkg.set_ccid(
27324: p_code_combination_id => l_ccid
27325: , p_value_type_code => l_adr_value_type_code
27326: , p_transaction_coa_id => l_adr_transaction_coa_id
27327: , p_accounting_coa_id => l_adr_accounting_coa_id
27352: );
27353:
27354: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27355:
27356: xla_ae_lines_pkg.set_segment(
27357: p_to_segment_code => 'GL_ACCOUNT'
27358: , p_segment_value => l_segment
27359: , p_from_segment_code => l_adr_value_segment_code
27360: , p_from_combination_id => l_adr_value_combination_id
27396: xla_accounting_err_pkg.build_message
27397: (p_appli_s_name => 'XLA'
27398: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
27399: ,p_token_1 => 'LINE_NUMBER'
27400: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
27401: ,p_token_2 => 'LINE_TYPE_NAME'
27402: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
27403: l_component_type
27404: ,l_component_code
27432: --
27433: --
27434: ------------------------------------------------------------------------------------------------
27435: -- 4219869 Business Flow
27436: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27437: -- Prior Entry. Currently, the following code is always generated.
27438: ------------------------------------------------------------------------------------------------
27439: XLA_AE_LINES_PKG.ValidateCurrentLine;
27440:
27435: -- 4219869 Business Flow
27436: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
27437: -- Prior Entry. Currently, the following code is always generated.
27438: ------------------------------------------------------------------------------------------------
27439: XLA_AE_LINES_PKG.ValidateCurrentLine;
27440:
27441: ------------------------------------------------------------------------------------
27442: -- 4219869 Business Flow
27443: -- Populated credit and debit amounts -- Need to generate this within IF
27441: ------------------------------------------------------------------------------------
27442: -- 4219869 Business Flow
27443: -- Populated credit and debit amounts -- Need to generate this within IF
27444: ------------------------------------------------------------------------------------
27445: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27446:
27447: ----------------------------------------------------------------------------------
27448: -- 4219869 Business Flow
27449: -- Update journal entry status -- Need to generate this within IF
27473: -- To allow MPA report to determine if it should generate report process
27474: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27475: ------------------------------------------------------------------------------------------
27476:
27477: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27478: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27479: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27480: -- call ADRs
27481: -- Bug 4922099
27474: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
27475: ------------------------------------------------------------------------------------------
27476:
27477: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
27478: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
27479: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
27480: -- call ADRs
27481: -- Bug 4922099
27482: --
27498: , x_value_type_code => l_adr_value_type_code
27499: , p_side => 'NA'
27500: );
27501:
27502: xla_ae_lines_pkg.set_ccid(
27503: p_code_combination_id => l_ccid
27504: , p_value_type_code => l_adr_value_type_code
27505: , p_transaction_coa_id => l_adr_transaction_coa_id
27506: , p_accounting_coa_id => l_adr_accounting_coa_id
27531: );
27532:
27533: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
27534:
27535: xla_ae_lines_pkg.set_segment(
27536: p_to_segment_code => 'GL_ACCOUNT'
27537: , p_segment_value => l_segment
27538: , p_from_segment_code => l_adr_value_segment_code
27539: , p_from_combination_id => l_adr_value_combination_id
27562:
27563: --
27564: -- Update the line information that should be overwritten
27565: --
27566: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27567: p_header_num => 1);
27568: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27569:
27570: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27564: -- Update the line information that should be overwritten
27565: --
27566: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27567: p_header_num => 1);
27568: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27569:
27570: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27571:
27572: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27566: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
27567: p_header_num => 1);
27568: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
27569:
27570: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27571:
27572: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27573: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27574: END IF;
27569:
27570: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
27571:
27572: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
27573: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
27574: END IF;
27575:
27576: --
27577: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27576: --
27577: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
27578: --
27579: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
27580: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
27581: ELSE
27582: ---------------------------------------------------------------------------------------------------
27583: -- 4262811a Switch Sign
27584: ---------------------------------------------------------------------------------------------------
27581: ELSE
27582: ---------------------------------------------------------------------------------------------------
27583: -- 4262811a Switch Sign
27584: ---------------------------------------------------------------------------------------------------
27585: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27587: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27589: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27582: ---------------------------------------------------------------------------------------------------
27583: -- 4262811a Switch Sign
27584: ---------------------------------------------------------------------------------------------------
27585: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27587: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27589: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27590: -- 5132302
27583: -- 4262811a Switch Sign
27584: ---------------------------------------------------------------------------------------------------
27585: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27587: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27589: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27590: -- 5132302
27591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27584: ---------------------------------------------------------------------------------------------------
27585: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27587: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27589: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27590: -- 5132302
27591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27592: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27585: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
27586: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27587: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27589: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27590: -- 5132302
27591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27592: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27593:
27587: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27589: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27590: -- 5132302
27591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27592: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27593:
27594: END IF;
27595:
27588: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
27589: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27590: -- 5132302
27591: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
27592: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
27593:
27594: END IF;
27595:
27596: -- 4955764
27593:
27594: END IF;
27595:
27596: -- 4955764
27597: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27598: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27599:
27600:
27601: XLA_AE_LINES_PKG.ValidateCurrentLine;
27597: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27598: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27599:
27600:
27601: XLA_AE_LINES_PKG.ValidateCurrentLine;
27602: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27603:
27604: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27605: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27598: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
27599:
27600:
27601: XLA_AE_LINES_PKG.ValidateCurrentLine;
27602: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
27603:
27604: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
27605: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
27606: ,p_balance_type_code => l_balance_type_code);
27751: --
27752: -- bulk performance
27753: --
27754: l_balance_type_code VARCHAR2(1);
27755: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
27756: l_log_module VARCHAR2(240);
27757:
27758: --
27759: -- Upgrade strategy
27821: ') = 'N'
27822: THEN
27823:
27824: --
27825: XLA_AE_LINES_PKG.SetNewLine;
27826:
27827: p_balance_type_code := l_balance_type_code;
27828: -- set the flag so later we will know whether the gain loss line needs to be created
27829:
27833:
27834: --
27835: -- bulk performance
27836: --
27837: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
27838: p_header_num => 0); -- 4262811
27839: --
27840: -- set accounting line options
27841: --
27838: p_header_num => 0); -- 4262811
27839: --
27840: -- set accounting line options
27841: --
27842: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
27843: p_natural_side_code => 'D'
27844: , p_gain_or_loss_flag => 'N'
27845: , p_gl_transfer_mode_code => 'S'
27846: , p_acct_entry_type_code => 'A'
27852: --
27853: --
27854: -- set accounting line type info
27855: --
27856: xla_ae_lines_pkg.SetAcctLineType
27857: (p_component_type => l_component_type
27858: ,p_event_type_code => l_event_type_code
27859: ,p_line_definition_owner_code => l_line_definition_owner_code
27860: ,p_line_definition_code => l_line_definition_code
27866: ,p_event_class_code => l_event_class_code);
27867: --
27868: -- set accounting class
27869: --
27870: xla_ae_lines_pkg.SetAcctClass(
27871: p_accounting_class_code => 'CASH'
27872: , p_ae_header_id => l_ae_header_id
27873: );
27874:
27874:
27875: --
27876: -- set rounding class
27877: --
27878: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27879: 'RECEIVABLE';
27880:
27881: --
27882: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27878: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
27879: 'RECEIVABLE';
27880:
27881: --
27882: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27883: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27884: --
27885: -- bulk performance
27886: --
27879: 'RECEIVABLE';
27880:
27881: --
27882: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
27883: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27884: --
27885: -- bulk performance
27886: --
27887: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27883: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
27884: --
27885: -- bulk performance
27886: --
27887: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27888:
27889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27890: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27891:
27885: -- bulk performance
27886: --
27887: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
27888:
27889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27890: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27891:
27892: -- 4955764
27893: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
27890: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
27891:
27892: -- 4955764
27893: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
27894: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
27895:
27896: -- 4458381 Public Sector Enh
27897:
27933: l_rec_acct_attrs.array_num_value(15) := p_source_65;
27934: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
27935: l_rec_acct_attrs.array_char_value(16) := p_source_66;
27936:
27937: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27938: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27939:
27940: ---------------------------------------------------------------------------------------------------------------
27941: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27934: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
27935: l_rec_acct_attrs.array_char_value(16) := p_source_66;
27936:
27937: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27938: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27939:
27940: ---------------------------------------------------------------------------------------------------------------
27941: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27942: ---------------------------------------------------------------------------------------------------------------
27937: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
27938: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
27939:
27940: ---------------------------------------------------------------------------------------------------------------
27941: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27942: ---------------------------------------------------------------------------------------------------------------
27943: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27944:
27945: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27939:
27940: ---------------------------------------------------------------------------------------------------------------
27941: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27942: ---------------------------------------------------------------------------------------------------------------
27943: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27944:
27945: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27946: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27947:
27941: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
27942: ---------------------------------------------------------------------------------------------------------------
27943: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27944:
27945: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27946: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27947:
27948: IF xla_accounting_cache_pkg.GetValueChar
27949: (p_source_code => 'LEDGER_CATEGORY_CODE'
27942: ---------------------------------------------------------------------------------------------------------------
27943: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
27944:
27945: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27946: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
27947:
27948: IF xla_accounting_cache_pkg.GetValueChar
27949: (p_source_code => 'LEDGER_CATEGORY_CODE'
27950: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
27953: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
27954: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
27955: )
27956: THEN
27957: xla_ae_lines_pkg.BflowUpgEntry
27958: (p_business_method_code => l_bflow_method_code
27959: ,p_business_class_code => l_bflow_class_code
27960: ,p_balance_type => l_balance_type_code);
27961: ELSE
27970: --
27971: -- call description
27972: --
27973:
27974: xla_ae_lines_pkg.SetLineDescription(
27975: p_ae_header_id => l_ae_header_id
27976: ,p_description => Description_1 (
27977: p_application_id => p_application_id
27978: , p_ae_header_id => l_ae_header_id
28002: , x_value_type_code => l_adr_value_type_code
28003: , p_side => 'NA'
28004: );
28005:
28006: xla_ae_lines_pkg.set_ccid(
28007: p_code_combination_id => l_ccid
28008: , p_value_type_code => l_adr_value_type_code
28009: , p_transaction_coa_id => l_adr_transaction_coa_id
28010: , p_accounting_coa_id => l_adr_accounting_coa_id
28035: );
28036:
28037: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
28038:
28039: xla_ae_lines_pkg.set_segment(
28040: p_to_segment_code => 'GL_ACCOUNT'
28041: , p_segment_value => l_segment
28042: , p_from_segment_code => l_adr_value_segment_code
28043: , p_from_combination_id => l_adr_value_combination_id
28079: xla_accounting_err_pkg.build_message
28080: (p_appli_s_name => 'XLA'
28081: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
28082: ,p_token_1 => 'LINE_NUMBER'
28083: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
28084: ,p_token_2 => 'LINE_TYPE_NAME'
28085: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
28086: l_component_type
28087: ,l_component_code
28115: --
28116: --
28117: ------------------------------------------------------------------------------------------------
28118: -- 4219869 Business Flow
28119: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28120: -- Prior Entry. Currently, the following code is always generated.
28121: ------------------------------------------------------------------------------------------------
28122: XLA_AE_LINES_PKG.ValidateCurrentLine;
28123:
28118: -- 4219869 Business Flow
28119: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28120: -- Prior Entry. Currently, the following code is always generated.
28121: ------------------------------------------------------------------------------------------------
28122: XLA_AE_LINES_PKG.ValidateCurrentLine;
28123:
28124: ------------------------------------------------------------------------------------
28125: -- 4219869 Business Flow
28126: -- Populated credit and debit amounts -- Need to generate this within IF
28124: ------------------------------------------------------------------------------------
28125: -- 4219869 Business Flow
28126: -- Populated credit and debit amounts -- Need to generate this within IF
28127: ------------------------------------------------------------------------------------
28128: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28129:
28130: ----------------------------------------------------------------------------------
28131: -- 4219869 Business Flow
28132: -- Update journal entry status -- Need to generate this within IF
28156: -- To allow MPA report to determine if it should generate report process
28157: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28158: ------------------------------------------------------------------------------------------
28159:
28160: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28161: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28162: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28163: -- call ADRs
28164: -- Bug 4922099
28157: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28158: ------------------------------------------------------------------------------------------
28159:
28160: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28161: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28162: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28163: -- call ADRs
28164: -- Bug 4922099
28165: --
28181: , x_value_type_code => l_adr_value_type_code
28182: , p_side => 'NA'
28183: );
28184:
28185: xla_ae_lines_pkg.set_ccid(
28186: p_code_combination_id => l_ccid
28187: , p_value_type_code => l_adr_value_type_code
28188: , p_transaction_coa_id => l_adr_transaction_coa_id
28189: , p_accounting_coa_id => l_adr_accounting_coa_id
28214: );
28215:
28216: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
28217:
28218: xla_ae_lines_pkg.set_segment(
28219: p_to_segment_code => 'GL_ACCOUNT'
28220: , p_segment_value => l_segment
28221: , p_from_segment_code => l_adr_value_segment_code
28222: , p_from_combination_id => l_adr_value_combination_id
28245:
28246: --
28247: -- Update the line information that should be overwritten
28248: --
28249: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28250: p_header_num => 1);
28251: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28252:
28253: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28247: -- Update the line information that should be overwritten
28248: --
28249: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28250: p_header_num => 1);
28251: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28252:
28253: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28254:
28255: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28249: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28250: p_header_num => 1);
28251: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28252:
28253: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28254:
28255: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28256: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28257: END IF;
28252:
28253: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28254:
28255: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28256: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28257: END IF;
28258:
28259: --
28260: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28259: --
28260: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28261: --
28262: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
28263: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
28264: ELSE
28265: ---------------------------------------------------------------------------------------------------
28266: -- 4262811a Switch Sign
28267: ---------------------------------------------------------------------------------------------------
28264: ELSE
28265: ---------------------------------------------------------------------------------------------------
28266: -- 4262811a Switch Sign
28267: ---------------------------------------------------------------------------------------------------
28268: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28269: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28271: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28265: ---------------------------------------------------------------------------------------------------
28266: -- 4262811a Switch Sign
28267: ---------------------------------------------------------------------------------------------------
28268: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28269: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28271: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28273: -- 5132302
28266: -- 4262811a Switch Sign
28267: ---------------------------------------------------------------------------------------------------
28268: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28269: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28271: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28273: -- 5132302
28274: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28267: ---------------------------------------------------------------------------------------------------
28268: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28269: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28271: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28273: -- 5132302
28274: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28268: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28269: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28271: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28273: -- 5132302
28274: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28276:
28270: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28271: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28273: -- 5132302
28274: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28276:
28277: END IF;
28278:
28271: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28272: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28273: -- 5132302
28274: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28275: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28276:
28277: END IF;
28278:
28279: -- 4955764
28276:
28277: END IF;
28278:
28279: -- 4955764
28280: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28281: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28282:
28283:
28284: XLA_AE_LINES_PKG.ValidateCurrentLine;
28280: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28281: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28282:
28283:
28284: XLA_AE_LINES_PKG.ValidateCurrentLine;
28285: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28286:
28287: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28288: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28281: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28282:
28283:
28284: XLA_AE_LINES_PKG.ValidateCurrentLine;
28285: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28286:
28287: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28288: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28289: ,p_balance_type_code => l_balance_type_code);
28438: --
28439: -- bulk performance
28440: --
28441: l_balance_type_code VARCHAR2(1);
28442: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
28443: l_log_module VARCHAR2(240);
28444:
28445: --
28446: -- Upgrade strategy
28522: ') = 'N'
28523: THEN
28524:
28525: --
28526: XLA_AE_LINES_PKG.SetNewLine;
28527:
28528: p_balance_type_code := l_balance_type_code;
28529: -- set the flag so later we will know whether the gain loss line needs to be created
28530:
28534:
28535: --
28536: -- bulk performance
28537: --
28538: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
28539: p_header_num => 0); -- 4262811
28540: --
28541: -- set accounting line options
28542: --
28539: p_header_num => 0); -- 4262811
28540: --
28541: -- set accounting line options
28542: --
28543: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
28544: p_natural_side_code => 'C'
28545: , p_gain_or_loss_flag => 'N'
28546: , p_gl_transfer_mode_code => 'S'
28547: , p_acct_entry_type_code => 'A'
28553: --
28554: --
28555: -- set accounting line type info
28556: --
28557: xla_ae_lines_pkg.SetAcctLineType
28558: (p_component_type => l_component_type
28559: ,p_event_type_code => l_event_type_code
28560: ,p_line_definition_owner_code => l_line_definition_owner_code
28561: ,p_line_definition_code => l_line_definition_code
28567: ,p_event_class_code => l_event_class_code);
28568: --
28569: -- set accounting class
28570: --
28571: xla_ae_lines_pkg.SetAcctClass(
28572: p_accounting_class_code => 'CASH'
28573: , p_ae_header_id => l_ae_header_id
28574: );
28575:
28575:
28576: --
28577: -- set rounding class
28578: --
28579: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28580: 'RECEIVABLE';
28581:
28582: --
28583: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28579: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
28580: 'RECEIVABLE';
28581:
28582: --
28583: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28584: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28585: --
28586: -- bulk performance
28587: --
28580: 'RECEIVABLE';
28581:
28582: --
28583: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
28584: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28585: --
28586: -- bulk performance
28587: --
28588: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28584: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
28585: --
28586: -- bulk performance
28587: --
28588: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28589:
28590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28591: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28592:
28586: -- bulk performance
28587: --
28588: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
28589:
28590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28591: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28592:
28593: -- 4955764
28594: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28590: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
28591: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
28592:
28593: -- 4955764
28594: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28595: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
28596:
28597: -- 4458381 Public Sector Enh
28598:
28634: l_rec_acct_attrs.array_num_value(15) := p_source_65;
28635: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
28636: l_rec_acct_attrs.array_char_value(16) := p_source_66;
28637:
28638: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28639: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28640:
28641: ---------------------------------------------------------------------------------------------------------------
28642: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28635: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
28636: l_rec_acct_attrs.array_char_value(16) := p_source_66;
28637:
28638: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28639: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28640:
28641: ---------------------------------------------------------------------------------------------------------------
28642: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28643: ---------------------------------------------------------------------------------------------------------------
28638: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
28639: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
28640:
28641: ---------------------------------------------------------------------------------------------------------------
28642: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28643: ---------------------------------------------------------------------------------------------------------------
28644: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28645:
28646: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28640:
28641: ---------------------------------------------------------------------------------------------------------------
28642: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28643: ---------------------------------------------------------------------------------------------------------------
28644: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28645:
28646: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28647: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28648:
28642: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
28643: ---------------------------------------------------------------------------------------------------------------
28644: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28645:
28646: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28647: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28648:
28649: IF xla_accounting_cache_pkg.GetValueChar
28650: (p_source_code => 'LEDGER_CATEGORY_CODE'
28643: ---------------------------------------------------------------------------------------------------------------
28644: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
28645:
28646: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28647: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
28648:
28649: IF xla_accounting_cache_pkg.GetValueChar
28650: (p_source_code => 'LEDGER_CATEGORY_CODE'
28651: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
28654: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
28655: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
28656: )
28657: THEN
28658: xla_ae_lines_pkg.BflowUpgEntry
28659: (p_business_method_code => l_bflow_method_code
28660: ,p_business_class_code => l_bflow_class_code
28661: ,p_balance_type => l_balance_type_code);
28662: ELSE
28671: --
28672: -- call description
28673: --
28674:
28675: xla_ae_lines_pkg.SetLineDescription(
28676: p_ae_header_id => l_ae_header_id
28677: ,p_description => Description_1 (
28678: p_application_id => p_application_id
28679: , p_ae_header_id => l_ae_header_id
28703: , x_value_type_code => l_adr_value_type_code
28704: , p_side => 'NA'
28705: );
28706:
28707: xla_ae_lines_pkg.set_ccid(
28708: p_code_combination_id => l_ccid
28709: , p_value_type_code => l_adr_value_type_code
28710: , p_transaction_coa_id => l_adr_transaction_coa_id
28711: , p_accounting_coa_id => l_adr_accounting_coa_id
28739: xla_accounting_err_pkg.build_message
28740: (p_appli_s_name => 'XLA'
28741: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
28742: ,p_token_1 => 'LINE_NUMBER'
28743: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
28744: ,p_token_2 => 'LINE_TYPE_NAME'
28745: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
28746: l_component_type
28747: ,l_component_code
28775: --
28776: --
28777: ------------------------------------------------------------------------------------------------
28778: -- 4219869 Business Flow
28779: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28780: -- Prior Entry. Currently, the following code is always generated.
28781: ------------------------------------------------------------------------------------------------
28782: XLA_AE_LINES_PKG.ValidateCurrentLine;
28783:
28778: -- 4219869 Business Flow
28779: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
28780: -- Prior Entry. Currently, the following code is always generated.
28781: ------------------------------------------------------------------------------------------------
28782: XLA_AE_LINES_PKG.ValidateCurrentLine;
28783:
28784: ------------------------------------------------------------------------------------
28785: -- 4219869 Business Flow
28786: -- Populated credit and debit amounts -- Need to generate this within IF
28784: ------------------------------------------------------------------------------------
28785: -- 4219869 Business Flow
28786: -- Populated credit and debit amounts -- Need to generate this within IF
28787: ------------------------------------------------------------------------------------
28788: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28789:
28790: ----------------------------------------------------------------------------------
28791: -- 4219869 Business Flow
28792: -- Update journal entry status -- Need to generate this within IF
28816: -- To allow MPA report to determine if it should generate report process
28817: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28818: ------------------------------------------------------------------------------------------
28819:
28820: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28821: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28822: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28823: -- call ADRs
28824: -- Bug 4922099
28817: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
28818: ------------------------------------------------------------------------------------------
28819:
28820: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
28821: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
28822: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
28823: -- call ADRs
28824: -- Bug 4922099
28825: --
28841: , x_value_type_code => l_adr_value_type_code
28842: , p_side => 'NA'
28843: );
28844:
28845: xla_ae_lines_pkg.set_ccid(
28846: p_code_combination_id => l_ccid
28847: , p_value_type_code => l_adr_value_type_code
28848: , p_transaction_coa_id => l_adr_transaction_coa_id
28849: , p_accounting_coa_id => l_adr_accounting_coa_id
28864:
28865: --
28866: -- Update the line information that should be overwritten
28867: --
28868: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28869: p_header_num => 1);
28870: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28871:
28872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28866: -- Update the line information that should be overwritten
28867: --
28868: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28869: p_header_num => 1);
28870: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28871:
28872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28873:
28874: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28868: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
28869: p_header_num => 1);
28870: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
28871:
28872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28873:
28874: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28875: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28876: END IF;
28871:
28872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
28873:
28874: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
28875: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
28876: END IF;
28877:
28878: --
28879: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28878: --
28879: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
28880: --
28881: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
28882: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
28883: ELSE
28884: ---------------------------------------------------------------------------------------------------
28885: -- 4262811a Switch Sign
28886: ---------------------------------------------------------------------------------------------------
28883: ELSE
28884: ---------------------------------------------------------------------------------------------------
28885: -- 4262811a Switch Sign
28886: ---------------------------------------------------------------------------------------------------
28887: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28884: ---------------------------------------------------------------------------------------------------
28885: -- 4262811a Switch Sign
28886: ---------------------------------------------------------------------------------------------------
28887: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28892: -- 5132302
28885: -- 4262811a Switch Sign
28886: ---------------------------------------------------------------------------------------------------
28887: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28892: -- 5132302
28893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28886: ---------------------------------------------------------------------------------------------------
28887: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28892: -- 5132302
28893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28887: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
28888: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28892: -- 5132302
28893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28895:
28889: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28892: -- 5132302
28893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28895:
28896: END IF;
28897:
28890: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
28891: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28892: -- 5132302
28893: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
28894: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
28895:
28896: END IF;
28897:
28898: -- 4955764
28895:
28896: END IF;
28897:
28898: -- 4955764
28899: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28900: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28901:
28902:
28903: XLA_AE_LINES_PKG.ValidateCurrentLine;
28899: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
28900: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28901:
28902:
28903: XLA_AE_LINES_PKG.ValidateCurrentLine;
28904: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28905:
28906: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28907: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28900: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
28901:
28902:
28903: XLA_AE_LINES_PKG.ValidateCurrentLine;
28904: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
28905:
28906: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
28907: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
28908: ,p_balance_type_code => l_balance_type_code);
29053: --
29054: -- bulk performance
29055: --
29056: l_balance_type_code VARCHAR2(1);
29057: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
29058: l_log_module VARCHAR2(240);
29059:
29060: --
29061: -- Upgrade strategy
29125: ') = 'Y'
29126: THEN
29127:
29128: --
29129: XLA_AE_LINES_PKG.SetNewLine;
29130:
29131: p_balance_type_code := l_balance_type_code;
29132: -- set the flag so later we will know whether the gain loss line needs to be created
29133:
29137:
29138: --
29139: -- bulk performance
29140: --
29141: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
29142: p_header_num => 0); -- 4262811
29143: --
29144: -- set accounting line options
29145: --
29142: p_header_num => 0); -- 4262811
29143: --
29144: -- set accounting line options
29145: --
29146: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
29147: p_natural_side_code => 'D'
29148: , p_gain_or_loss_flag => 'N'
29149: , p_gl_transfer_mode_code => 'S'
29150: , p_acct_entry_type_code => 'A'
29156: --
29157: --
29158: -- set accounting line type info
29159: --
29160: xla_ae_lines_pkg.SetAcctLineType
29161: (p_component_type => l_component_type
29162: ,p_event_type_code => l_event_type_code
29163: ,p_line_definition_owner_code => l_line_definition_owner_code
29164: ,p_line_definition_code => l_line_definition_code
29170: ,p_event_class_code => l_event_class_code);
29171: --
29172: -- set accounting class
29173: --
29174: xla_ae_lines_pkg.SetAcctClass(
29175: p_accounting_class_code => 'CASH'
29176: , p_ae_header_id => l_ae_header_id
29177: );
29178:
29178:
29179: --
29180: -- set rounding class
29181: --
29182: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29183: 'RECEIVABLE';
29184:
29185: --
29186: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29182: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29183: 'RECEIVABLE';
29184:
29185: --
29186: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29187: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29188: --
29189: -- bulk performance
29190: --
29183: 'RECEIVABLE';
29184:
29185: --
29186: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29187: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29188: --
29189: -- bulk performance
29190: --
29191: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29187: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29188: --
29189: -- bulk performance
29190: --
29191: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29192:
29193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29194: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29195:
29189: -- bulk performance
29190: --
29191: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29192:
29193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29194: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29195:
29196: -- 4955764
29197: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29194: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29195:
29196: -- 4955764
29197: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29198: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
29199:
29200: -- 4458381 Public Sector Enh
29201:
29237: l_rec_acct_attrs.array_num_value(15) := p_source_65;
29238: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
29239: l_rec_acct_attrs.array_char_value(16) := p_source_66;
29240:
29241: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29242: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29243:
29244: ---------------------------------------------------------------------------------------------------------------
29245: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29238: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
29239: l_rec_acct_attrs.array_char_value(16) := p_source_66;
29240:
29241: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29242: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29243:
29244: ---------------------------------------------------------------------------------------------------------------
29245: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29246: ---------------------------------------------------------------------------------------------------------------
29241: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29242: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29243:
29244: ---------------------------------------------------------------------------------------------------------------
29245: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29246: ---------------------------------------------------------------------------------------------------------------
29247: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29248:
29249: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29243:
29244: ---------------------------------------------------------------------------------------------------------------
29245: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29246: ---------------------------------------------------------------------------------------------------------------
29247: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29248:
29249: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29250: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29251:
29245: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29246: ---------------------------------------------------------------------------------------------------------------
29247: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29248:
29249: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29250: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29251:
29252: IF xla_accounting_cache_pkg.GetValueChar
29253: (p_source_code => 'LEDGER_CATEGORY_CODE'
29246: ---------------------------------------------------------------------------------------------------------------
29247: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29248:
29249: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29250: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29251:
29252: IF xla_accounting_cache_pkg.GetValueChar
29253: (p_source_code => 'LEDGER_CATEGORY_CODE'
29254: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
29257: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
29258: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
29259: )
29260: THEN
29261: xla_ae_lines_pkg.BflowUpgEntry
29262: (p_business_method_code => l_bflow_method_code
29263: ,p_business_class_code => l_bflow_class_code
29264: ,p_balance_type => l_balance_type_code);
29265: ELSE
29274: --
29275: -- call description
29276: --
29277:
29278: xla_ae_lines_pkg.SetLineDescription(
29279: p_ae_header_id => l_ae_header_id
29280: ,p_description => Description_1 (
29281: p_application_id => p_application_id
29282: , p_ae_header_id => l_ae_header_id
29306: , x_value_type_code => l_adr_value_type_code
29307: , p_side => 'NA'
29308: );
29309:
29310: xla_ae_lines_pkg.set_ccid(
29311: p_code_combination_id => l_ccid
29312: , p_value_type_code => l_adr_value_type_code
29313: , p_transaction_coa_id => l_adr_transaction_coa_id
29314: , p_accounting_coa_id => l_adr_accounting_coa_id
29342: xla_accounting_err_pkg.build_message
29343: (p_appli_s_name => 'XLA'
29344: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
29345: ,p_token_1 => 'LINE_NUMBER'
29346: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
29347: ,p_token_2 => 'LINE_TYPE_NAME'
29348: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
29349: l_component_type
29350: ,l_component_code
29378: --
29379: --
29380: ------------------------------------------------------------------------------------------------
29381: -- 4219869 Business Flow
29382: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29383: -- Prior Entry. Currently, the following code is always generated.
29384: ------------------------------------------------------------------------------------------------
29385: XLA_AE_LINES_PKG.ValidateCurrentLine;
29386:
29381: -- 4219869 Business Flow
29382: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29383: -- Prior Entry. Currently, the following code is always generated.
29384: ------------------------------------------------------------------------------------------------
29385: XLA_AE_LINES_PKG.ValidateCurrentLine;
29386:
29387: ------------------------------------------------------------------------------------
29388: -- 4219869 Business Flow
29389: -- Populated credit and debit amounts -- Need to generate this within IF
29387: ------------------------------------------------------------------------------------
29388: -- 4219869 Business Flow
29389: -- Populated credit and debit amounts -- Need to generate this within IF
29390: ------------------------------------------------------------------------------------
29391: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29392:
29393: ----------------------------------------------------------------------------------
29394: -- 4219869 Business Flow
29395: -- Update journal entry status -- Need to generate this within IF
29419: -- To allow MPA report to determine if it should generate report process
29420: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29421: ------------------------------------------------------------------------------------------
29422:
29423: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29424: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29425: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29426: -- call ADRs
29427: -- Bug 4922099
29420: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
29421: ------------------------------------------------------------------------------------------
29422:
29423: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
29424: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
29425: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
29426: -- call ADRs
29427: -- Bug 4922099
29428: --
29444: , x_value_type_code => l_adr_value_type_code
29445: , p_side => 'NA'
29446: );
29447:
29448: xla_ae_lines_pkg.set_ccid(
29449: p_code_combination_id => l_ccid
29450: , p_value_type_code => l_adr_value_type_code
29451: , p_transaction_coa_id => l_adr_transaction_coa_id
29452: , p_accounting_coa_id => l_adr_accounting_coa_id
29467:
29468: --
29469: -- Update the line information that should be overwritten
29470: --
29471: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29472: p_header_num => 1);
29473: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29474:
29475: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29469: -- Update the line information that should be overwritten
29470: --
29471: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29472: p_header_num => 1);
29473: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29474:
29475: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29476:
29477: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29471: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
29472: p_header_num => 1);
29473: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
29474:
29475: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29476:
29477: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29478: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29479: END IF;
29474:
29475: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
29476:
29477: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
29478: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
29479: END IF;
29480:
29481: --
29482: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29481: --
29482: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
29483: --
29484: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
29485: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
29486: ELSE
29487: ---------------------------------------------------------------------------------------------------
29488: -- 4262811a Switch Sign
29489: ---------------------------------------------------------------------------------------------------
29486: ELSE
29487: ---------------------------------------------------------------------------------------------------
29488: -- 4262811a Switch Sign
29489: ---------------------------------------------------------------------------------------------------
29490: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29491: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29493: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29494: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29487: ---------------------------------------------------------------------------------------------------
29488: -- 4262811a Switch Sign
29489: ---------------------------------------------------------------------------------------------------
29490: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29491: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29493: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29494: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29495: -- 5132302
29488: -- 4262811a Switch Sign
29489: ---------------------------------------------------------------------------------------------------
29490: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29491: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29493: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29494: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29495: -- 5132302
29496: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29489: ---------------------------------------------------------------------------------------------------
29490: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29491: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29493: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29494: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29495: -- 5132302
29496: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29497: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29490: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
29491: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29493: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29494: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29495: -- 5132302
29496: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29497: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29498:
29492: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29493: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29494: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29495: -- 5132302
29496: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29497: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29498:
29499: END IF;
29500:
29493: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
29494: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29495: -- 5132302
29496: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
29497: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
29498:
29499: END IF;
29500:
29501: -- 4955764
29498:
29499: END IF;
29500:
29501: -- 4955764
29502: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29503: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29504:
29505:
29506: XLA_AE_LINES_PKG.ValidateCurrentLine;
29502: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29503: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29504:
29505:
29506: XLA_AE_LINES_PKG.ValidateCurrentLine;
29507: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29508:
29509: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29510: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29503: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
29504:
29505:
29506: XLA_AE_LINES_PKG.ValidateCurrentLine;
29507: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29508:
29509: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
29510: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
29511: ,p_balance_type_code => l_balance_type_code);
29654: --
29655: -- bulk performance
29656: --
29657: l_balance_type_code VARCHAR2(1);
29658: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
29659: l_log_module VARCHAR2(240);
29660:
29661: --
29662: -- Upgrade strategy
29724: ') = 'Y'
29725: THEN
29726:
29727: --
29728: XLA_AE_LINES_PKG.SetNewLine;
29729:
29730: p_balance_type_code := l_balance_type_code;
29731: -- set the flag so later we will know whether the gain loss line needs to be created
29732:
29736:
29737: --
29738: -- bulk performance
29739: --
29740: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
29741: p_header_num => 0); -- 4262811
29742: --
29743: -- set accounting line options
29744: --
29741: p_header_num => 0); -- 4262811
29742: --
29743: -- set accounting line options
29744: --
29745: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
29746: p_natural_side_code => 'D'
29747: , p_gain_or_loss_flag => 'N'
29748: , p_gl_transfer_mode_code => 'S'
29749: , p_acct_entry_type_code => 'A'
29755: --
29756: --
29757: -- set accounting line type info
29758: --
29759: xla_ae_lines_pkg.SetAcctLineType
29760: (p_component_type => l_component_type
29761: ,p_event_type_code => l_event_type_code
29762: ,p_line_definition_owner_code => l_line_definition_owner_code
29763: ,p_line_definition_code => l_line_definition_code
29769: ,p_event_class_code => l_event_class_code);
29770: --
29771: -- set accounting class
29772: --
29773: xla_ae_lines_pkg.SetAcctClass(
29774: p_accounting_class_code => 'CONFIRMATION'
29775: , p_ae_header_id => l_ae_header_id
29776: );
29777:
29777:
29778: --
29779: -- set rounding class
29780: --
29781: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29782: 'RECEIVABLE';
29783:
29784: --
29785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29781: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
29782: 'RECEIVABLE';
29783:
29784: --
29785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29787: --
29788: -- bulk performance
29789: --
29782: 'RECEIVABLE';
29783:
29784: --
29785: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
29786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29787: --
29788: -- bulk performance
29789: --
29790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29786: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
29787: --
29788: -- bulk performance
29789: --
29790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29791:
29792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29794:
29788: -- bulk performance
29789: --
29790: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
29791:
29792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29794:
29795: -- 4955764
29796: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29792: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
29793: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
29794:
29795: -- 4955764
29796: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
29797: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
29798:
29799: -- 4458381 Public Sector Enh
29800:
29836: l_rec_acct_attrs.array_num_value(15) := p_source_65;
29837: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
29838: l_rec_acct_attrs.array_char_value(16) := p_source_66;
29839:
29840: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29841: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29842:
29843: ---------------------------------------------------------------------------------------------------------------
29844: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29837: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
29838: l_rec_acct_attrs.array_char_value(16) := p_source_66;
29839:
29840: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29841: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29842:
29843: ---------------------------------------------------------------------------------------------------------------
29844: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29845: ---------------------------------------------------------------------------------------------------------------
29840: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
29841: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
29842:
29843: ---------------------------------------------------------------------------------------------------------------
29844: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29845: ---------------------------------------------------------------------------------------------------------------
29846: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29847:
29848: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29842:
29843: ---------------------------------------------------------------------------------------------------------------
29844: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29845: ---------------------------------------------------------------------------------------------------------------
29846: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29847:
29848: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29849: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29850:
29844: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
29845: ---------------------------------------------------------------------------------------------------------------
29846: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29847:
29848: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29849: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29850:
29851: IF xla_accounting_cache_pkg.GetValueChar
29852: (p_source_code => 'LEDGER_CATEGORY_CODE'
29845: ---------------------------------------------------------------------------------------------------------------
29846: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
29847:
29848: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29849: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
29850:
29851: IF xla_accounting_cache_pkg.GetValueChar
29852: (p_source_code => 'LEDGER_CATEGORY_CODE'
29853: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
29856: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
29857: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
29858: )
29859: THEN
29860: xla_ae_lines_pkg.BflowUpgEntry
29861: (p_business_method_code => l_bflow_method_code
29862: ,p_business_class_code => l_bflow_class_code
29863: ,p_balance_type => l_balance_type_code);
29864: ELSE
29873: --
29874: -- call description
29875: --
29876:
29877: xla_ae_lines_pkg.SetLineDescription(
29878: p_ae_header_id => l_ae_header_id
29879: ,p_description => Description_1 (
29880: p_application_id => p_application_id
29881: , p_ae_header_id => l_ae_header_id
29905: , x_value_type_code => l_adr_value_type_code
29906: , p_side => 'NA'
29907: );
29908:
29909: xla_ae_lines_pkg.set_ccid(
29910: p_code_combination_id => l_ccid
29911: , p_value_type_code => l_adr_value_type_code
29912: , p_transaction_coa_id => l_adr_transaction_coa_id
29913: , p_accounting_coa_id => l_adr_accounting_coa_id
29941: xla_accounting_err_pkg.build_message
29942: (p_appli_s_name => 'XLA'
29943: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
29944: ,p_token_1 => 'LINE_NUMBER'
29945: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
29946: ,p_token_2 => 'LINE_TYPE_NAME'
29947: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
29948: l_component_type
29949: ,l_component_code
29977: --
29978: --
29979: ------------------------------------------------------------------------------------------------
29980: -- 4219869 Business Flow
29981: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29982: -- Prior Entry. Currently, the following code is always generated.
29983: ------------------------------------------------------------------------------------------------
29984: XLA_AE_LINES_PKG.ValidateCurrentLine;
29985:
29980: -- 4219869 Business Flow
29981: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
29982: -- Prior Entry. Currently, the following code is always generated.
29983: ------------------------------------------------------------------------------------------------
29984: XLA_AE_LINES_PKG.ValidateCurrentLine;
29985:
29986: ------------------------------------------------------------------------------------
29987: -- 4219869 Business Flow
29988: -- Populated credit and debit amounts -- Need to generate this within IF
29986: ------------------------------------------------------------------------------------
29987: -- 4219869 Business Flow
29988: -- Populated credit and debit amounts -- Need to generate this within IF
29989: ------------------------------------------------------------------------------------
29990: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
29991:
29992: ----------------------------------------------------------------------------------
29993: -- 4219869 Business Flow
29994: -- Update journal entry status -- Need to generate this within IF
30018: -- To allow MPA report to determine if it should generate report process
30019: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30020: ------------------------------------------------------------------------------------------
30021:
30022: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30023: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30024: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30025: -- call ADRs
30026: -- Bug 4922099
30019: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30020: ------------------------------------------------------------------------------------------
30021:
30022: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30023: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30024: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30025: -- call ADRs
30026: -- Bug 4922099
30027: --
30043: , x_value_type_code => l_adr_value_type_code
30044: , p_side => 'NA'
30045: );
30046:
30047: xla_ae_lines_pkg.set_ccid(
30048: p_code_combination_id => l_ccid
30049: , p_value_type_code => l_adr_value_type_code
30050: , p_transaction_coa_id => l_adr_transaction_coa_id
30051: , p_accounting_coa_id => l_adr_accounting_coa_id
30066:
30067: --
30068: -- Update the line information that should be overwritten
30069: --
30070: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30071: p_header_num => 1);
30072: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30073:
30074: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30068: -- Update the line information that should be overwritten
30069: --
30070: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30071: p_header_num => 1);
30072: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30073:
30074: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30075:
30076: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30070: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30071: p_header_num => 1);
30072: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30073:
30074: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30075:
30076: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30077: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30078: END IF;
30073:
30074: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30075:
30076: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30077: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30078: END IF;
30079:
30080: --
30081: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30080: --
30081: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30082: --
30083: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
30084: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
30085: ELSE
30086: ---------------------------------------------------------------------------------------------------
30087: -- 4262811a Switch Sign
30088: ---------------------------------------------------------------------------------------------------
30085: ELSE
30086: ---------------------------------------------------------------------------------------------------
30087: -- 4262811a Switch Sign
30088: ---------------------------------------------------------------------------------------------------
30089: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30090: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30092: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30086: ---------------------------------------------------------------------------------------------------
30087: -- 4262811a Switch Sign
30088: ---------------------------------------------------------------------------------------------------
30089: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30090: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30092: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30094: -- 5132302
30087: -- 4262811a Switch Sign
30088: ---------------------------------------------------------------------------------------------------
30089: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30090: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30092: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30094: -- 5132302
30095: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30088: ---------------------------------------------------------------------------------------------------
30089: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30090: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30092: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30094: -- 5132302
30095: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30089: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30090: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30092: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30094: -- 5132302
30095: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30097:
30091: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30092: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30094: -- 5132302
30095: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30097:
30098: END IF;
30099:
30092: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30093: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30094: -- 5132302
30095: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30096: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30097:
30098: END IF;
30099:
30100: -- 4955764
30097:
30098: END IF;
30099:
30100: -- 4955764
30101: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30102: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30103:
30104:
30105: XLA_AE_LINES_PKG.ValidateCurrentLine;
30101: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30102: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30103:
30104:
30105: XLA_AE_LINES_PKG.ValidateCurrentLine;
30106: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30107:
30108: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30109: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30102: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30103:
30104:
30105: XLA_AE_LINES_PKG.ValidateCurrentLine;
30106: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30107:
30108: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30109: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30110: ,p_balance_type_code => l_balance_type_code);
30241: --
30242: -- bulk performance
30243: --
30244: l_balance_type_code VARCHAR2(1);
30245: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
30246: l_log_module VARCHAR2(240);
30247:
30248: --
30249: -- Upgrade strategy
30311: ') = 'N'
30312: THEN
30313:
30314: --
30315: XLA_AE_LINES_PKG.SetNewLine;
30316:
30317: p_balance_type_code := l_balance_type_code;
30318: -- set the flag so later we will know whether the gain loss line needs to be created
30319:
30323:
30324: --
30325: -- bulk performance
30326: --
30327: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
30328: p_header_num => 0); -- 4262811
30329: --
30330: -- set accounting line options
30331: --
30328: p_header_num => 0); -- 4262811
30329: --
30330: -- set accounting line options
30331: --
30332: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
30333: p_natural_side_code => 'D'
30334: , p_gain_or_loss_flag => 'N'
30335: , p_gl_transfer_mode_code => 'S'
30336: , p_acct_entry_type_code => 'A'
30342: --
30343: --
30344: -- set accounting line type info
30345: --
30346: xla_ae_lines_pkg.SetAcctLineType
30347: (p_component_type => l_component_type
30348: ,p_event_type_code => l_event_type_code
30349: ,p_line_definition_owner_code => l_line_definition_owner_code
30350: ,p_line_definition_code => l_line_definition_code
30356: ,p_event_class_code => l_event_class_code);
30357: --
30358: -- set accounting class
30359: --
30360: xla_ae_lines_pkg.SetAcctClass(
30361: p_accounting_class_code => 'RECEIVABLE'
30362: , p_ae_header_id => l_ae_header_id
30363: );
30364:
30364:
30365: --
30366: -- set rounding class
30367: --
30368: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30369: 'RECEIVABLE';
30370:
30371: --
30372: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30368: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30369: 'RECEIVABLE';
30370:
30371: --
30372: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30373: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30374: --
30375: -- bulk performance
30376: --
30369: 'RECEIVABLE';
30370:
30371: --
30372: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30373: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30374: --
30375: -- bulk performance
30376: --
30377: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30373: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30374: --
30375: -- bulk performance
30376: --
30377: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30378:
30379: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30380: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30381:
30375: -- bulk performance
30376: --
30377: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30378:
30379: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30380: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30381:
30382: -- 4955764
30383: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30379: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30380: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30381:
30382: -- 4955764
30383: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30384: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
30385:
30386: -- 4458381 Public Sector Enh
30387:
30413: l_rec_acct_attrs.array_num_value(10) := p_source_24;
30414: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
30415: l_rec_acct_attrs.array_char_value(11) := p_source_66;
30416:
30417: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30418: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30419:
30420: ---------------------------------------------------------------------------------------------------------------
30421: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30414: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
30415: l_rec_acct_attrs.array_char_value(11) := p_source_66;
30416:
30417: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30418: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30419:
30420: ---------------------------------------------------------------------------------------------------------------
30421: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30422: ---------------------------------------------------------------------------------------------------------------
30417: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30418: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30419:
30420: ---------------------------------------------------------------------------------------------------------------
30421: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30422: ---------------------------------------------------------------------------------------------------------------
30423: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30424:
30425: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30419:
30420: ---------------------------------------------------------------------------------------------------------------
30421: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30422: ---------------------------------------------------------------------------------------------------------------
30423: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30424:
30425: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30426: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30427:
30421: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30422: ---------------------------------------------------------------------------------------------------------------
30423: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30424:
30425: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30426: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30427:
30428: IF xla_accounting_cache_pkg.GetValueChar
30429: (p_source_code => 'LEDGER_CATEGORY_CODE'
30422: ---------------------------------------------------------------------------------------------------------------
30423: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30424:
30425: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30426: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30427:
30428: IF xla_accounting_cache_pkg.GetValueChar
30429: (p_source_code => 'LEDGER_CATEGORY_CODE'
30430: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
30433: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
30434: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
30435: )
30436: THEN
30437: xla_ae_lines_pkg.BflowUpgEntry
30438: (p_business_method_code => l_bflow_method_code
30439: ,p_business_class_code => l_bflow_class_code
30440: ,p_balance_type => l_balance_type_code);
30441: ELSE
30439: ,p_business_class_code => l_bflow_class_code
30440: ,p_balance_type => l_balance_type_code);
30441: ELSE
30442: NULL;
30443: XLA_AE_LINES_PKG.business_flow_validation(
30444: p_business_method_code => l_bflow_method_code
30445: ,p_business_class_code => l_bflow_class_code
30446: ,p_inherit_description_flag => l_inherit_desc_flag);
30447: END IF;
30453: --
30454: -- call description
30455: --
30456:
30457: xla_ae_lines_pkg.SetLineDescription(
30458: p_ae_header_id => l_ae_header_id
30459: ,p_description => Description_1 (
30460: p_application_id => p_application_id
30461: , p_ae_header_id => l_ae_header_id
30495: xla_accounting_err_pkg.build_message
30496: (p_appli_s_name => 'XLA'
30497: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
30498: ,p_token_1 => 'LINE_NUMBER'
30499: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
30500: ,p_token_2 => 'LINE_TYPE_NAME'
30501: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
30502: l_component_type
30503: ,l_component_code
30531: --
30532: --
30533: ------------------------------------------------------------------------------------------------
30534: -- 4219869 Business Flow
30535: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
30536: -- Prior Entry. Currently, the following code is always generated.
30537: ------------------------------------------------------------------------------------------------
30538: -- No ValidateCurrentLine for business flow method of Prior Entry
30539:
30540: ------------------------------------------------------------------------------------
30541: -- 4219869 Business Flow
30542: -- Populated credit and debit amounts -- Need to generate this within IF
30543: ------------------------------------------------------------------------------------
30544: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30545:
30546: ----------------------------------------------------------------------------------
30547: -- 4219869 Business Flow
30548: -- Update journal entry status -- Need to generate this within IF
30572: -- To allow MPA report to determine if it should generate report process
30573: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30574: ------------------------------------------------------------------------------------------
30575:
30576: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30577: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30578: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30579: -- call ADRs
30580: -- Bug 4922099
30573: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
30574: ------------------------------------------------------------------------------------------
30575:
30576: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
30577: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
30578: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
30579: -- call ADRs
30580: -- Bug 4922099
30581: --
30594:
30595: --
30596: -- Update the line information that should be overwritten
30597: --
30598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30599: p_header_num => 1);
30600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30601:
30602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30596: -- Update the line information that should be overwritten
30597: --
30598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30599: p_header_num => 1);
30600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30601:
30602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30603:
30604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30598: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
30599: p_header_num => 1);
30600: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
30601:
30602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30603:
30604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30605: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30606: END IF;
30601:
30602: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
30603:
30604: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
30605: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
30606: END IF;
30607:
30608: --
30609: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30608: --
30609: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
30610: --
30611: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
30612: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
30613: ELSE
30614: ---------------------------------------------------------------------------------------------------
30615: -- 4262811a Switch Sign
30616: ---------------------------------------------------------------------------------------------------
30613: ELSE
30614: ---------------------------------------------------------------------------------------------------
30615: -- 4262811a Switch Sign
30616: ---------------------------------------------------------------------------------------------------
30617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30614: ---------------------------------------------------------------------------------------------------
30615: -- 4262811a Switch Sign
30616: ---------------------------------------------------------------------------------------------------
30617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30622: -- 5132302
30615: -- 4262811a Switch Sign
30616: ---------------------------------------------------------------------------------------------------
30617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30622: -- 5132302
30623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30616: ---------------------------------------------------------------------------------------------------
30617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30622: -- 5132302
30623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30617: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
30618: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30622: -- 5132302
30623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30625:
30619: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30622: -- 5132302
30623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30625:
30626: END IF;
30627:
30620: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
30621: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30622: -- 5132302
30623: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
30624: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
30625:
30626: END IF;
30627:
30628: -- 4955764
30625:
30626: END IF;
30627:
30628: -- 4955764
30629: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30631:
30632:
30633: XLA_AE_LINES_PKG.ValidateCurrentLine;
30629: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30631:
30632:
30633: XLA_AE_LINES_PKG.ValidateCurrentLine;
30634: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30635:
30636: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30637: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30630: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
30631:
30632:
30633: XLA_AE_LINES_PKG.ValidateCurrentLine;
30634: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
30635:
30636: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
30637: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
30638: ,p_balance_type_code => l_balance_type_code);
30781: --
30782: -- bulk performance
30783: --
30784: l_balance_type_code VARCHAR2(1);
30785: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
30786: l_log_module VARCHAR2(240);
30787:
30788: --
30789: -- Upgrade strategy
30851: ') = 'Y'
30852: THEN
30853:
30854: --
30855: XLA_AE_LINES_PKG.SetNewLine;
30856:
30857: p_balance_type_code := l_balance_type_code;
30858: -- set the flag so later we will know whether the gain loss line needs to be created
30859:
30863:
30864: --
30865: -- bulk performance
30866: --
30867: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
30868: p_header_num => 0); -- 4262811
30869: --
30870: -- set accounting line options
30871: --
30868: p_header_num => 0); -- 4262811
30869: --
30870: -- set accounting line options
30871: --
30872: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
30873: p_natural_side_code => 'D'
30874: , p_gain_or_loss_flag => 'N'
30875: , p_gl_transfer_mode_code => 'S'
30876: , p_acct_entry_type_code => 'A'
30882: --
30883: --
30884: -- set accounting line type info
30885: --
30886: xla_ae_lines_pkg.SetAcctLineType
30887: (p_component_type => l_component_type
30888: ,p_event_type_code => l_event_type_code
30889: ,p_line_definition_owner_code => l_line_definition_owner_code
30890: ,p_line_definition_code => l_line_definition_code
30896: ,p_event_class_code => l_event_class_code);
30897: --
30898: -- set accounting class
30899: --
30900: xla_ae_lines_pkg.SetAcctClass(
30901: p_accounting_class_code => 'REMITTANCE'
30902: , p_ae_header_id => l_ae_header_id
30903: );
30904:
30904:
30905: --
30906: -- set rounding class
30907: --
30908: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30909: 'RECEIVABLE';
30910:
30911: --
30912: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30908: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
30909: 'RECEIVABLE';
30910:
30911: --
30912: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30913: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30914: --
30915: -- bulk performance
30916: --
30909: 'RECEIVABLE';
30910:
30911: --
30912: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
30913: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30914: --
30915: -- bulk performance
30916: --
30917: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30913: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
30914: --
30915: -- bulk performance
30916: --
30917: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30918:
30919: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30920: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30921:
30915: -- bulk performance
30916: --
30917: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
30918:
30919: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30920: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30921:
30922: -- 4955764
30923: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30919: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
30920: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
30921:
30922: -- 4955764
30923: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
30924: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
30925:
30926: -- 4458381 Public Sector Enh
30927:
30963: l_rec_acct_attrs.array_num_value(15) := p_source_65;
30964: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
30965: l_rec_acct_attrs.array_char_value(16) := p_source_66;
30966:
30967: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30968: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30969:
30970: ---------------------------------------------------------------------------------------------------------------
30971: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30964: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
30965: l_rec_acct_attrs.array_char_value(16) := p_source_66;
30966:
30967: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30968: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30969:
30970: ---------------------------------------------------------------------------------------------------------------
30971: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30972: ---------------------------------------------------------------------------------------------------------------
30967: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
30968: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
30969:
30970: ---------------------------------------------------------------------------------------------------------------
30971: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30972: ---------------------------------------------------------------------------------------------------------------
30973: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30974:
30975: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30969:
30970: ---------------------------------------------------------------------------------------------------------------
30971: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30972: ---------------------------------------------------------------------------------------------------------------
30973: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30974:
30975: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30976: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30977:
30971: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
30972: ---------------------------------------------------------------------------------------------------------------
30973: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30974:
30975: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30976: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30977:
30978: IF xla_accounting_cache_pkg.GetValueChar
30979: (p_source_code => 'LEDGER_CATEGORY_CODE'
30972: ---------------------------------------------------------------------------------------------------------------
30973: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
30974:
30975: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30976: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
30977:
30978: IF xla_accounting_cache_pkg.GetValueChar
30979: (p_source_code => 'LEDGER_CATEGORY_CODE'
30980: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
30983: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
30984: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
30985: )
30986: THEN
30987: xla_ae_lines_pkg.BflowUpgEntry
30988: (p_business_method_code => l_bflow_method_code
30989: ,p_business_class_code => l_bflow_class_code
30990: ,p_balance_type => l_balance_type_code);
30991: ELSE
31000: --
31001: -- call description
31002: --
31003:
31004: xla_ae_lines_pkg.SetLineDescription(
31005: p_ae_header_id => l_ae_header_id
31006: ,p_description => Description_1 (
31007: p_application_id => p_application_id
31008: , p_ae_header_id => l_ae_header_id
31032: , x_value_type_code => l_adr_value_type_code
31033: , p_side => 'NA'
31034: );
31035:
31036: xla_ae_lines_pkg.set_ccid(
31037: p_code_combination_id => l_ccid
31038: , p_value_type_code => l_adr_value_type_code
31039: , p_transaction_coa_id => l_adr_transaction_coa_id
31040: , p_accounting_coa_id => l_adr_accounting_coa_id
31068: xla_accounting_err_pkg.build_message
31069: (p_appli_s_name => 'XLA'
31070: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
31071: ,p_token_1 => 'LINE_NUMBER'
31072: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
31073: ,p_token_2 => 'LINE_TYPE_NAME'
31074: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
31075: l_component_type
31076: ,l_component_code
31104: --
31105: --
31106: ------------------------------------------------------------------------------------------------
31107: -- 4219869 Business Flow
31108: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31109: -- Prior Entry. Currently, the following code is always generated.
31110: ------------------------------------------------------------------------------------------------
31111: XLA_AE_LINES_PKG.ValidateCurrentLine;
31112:
31107: -- 4219869 Business Flow
31108: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31109: -- Prior Entry. Currently, the following code is always generated.
31110: ------------------------------------------------------------------------------------------------
31111: XLA_AE_LINES_PKG.ValidateCurrentLine;
31112:
31113: ------------------------------------------------------------------------------------
31114: -- 4219869 Business Flow
31115: -- Populated credit and debit amounts -- Need to generate this within IF
31113: ------------------------------------------------------------------------------------
31114: -- 4219869 Business Flow
31115: -- Populated credit and debit amounts -- Need to generate this within IF
31116: ------------------------------------------------------------------------------------
31117: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31118:
31119: ----------------------------------------------------------------------------------
31120: -- 4219869 Business Flow
31121: -- Update journal entry status -- Need to generate this within IF
31145: -- To allow MPA report to determine if it should generate report process
31146: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31147: ------------------------------------------------------------------------------------------
31148:
31149: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31150: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31151: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31152: -- call ADRs
31153: -- Bug 4922099
31146: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31147: ------------------------------------------------------------------------------------------
31148:
31149: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31150: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31151: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31152: -- call ADRs
31153: -- Bug 4922099
31154: --
31170: , x_value_type_code => l_adr_value_type_code
31171: , p_side => 'NA'
31172: );
31173:
31174: xla_ae_lines_pkg.set_ccid(
31175: p_code_combination_id => l_ccid
31176: , p_value_type_code => l_adr_value_type_code
31177: , p_transaction_coa_id => l_adr_transaction_coa_id
31178: , p_accounting_coa_id => l_adr_accounting_coa_id
31193:
31194: --
31195: -- Update the line information that should be overwritten
31196: --
31197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31198: p_header_num => 1);
31199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31200:
31201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31195: -- Update the line information that should be overwritten
31196: --
31197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31198: p_header_num => 1);
31199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31200:
31201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31202:
31203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31197: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31198: p_header_num => 1);
31199: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31200:
31201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31202:
31203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31204: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31205: END IF;
31200:
31201: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31202:
31203: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31204: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31205: END IF;
31206:
31207: --
31208: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31207: --
31208: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31209: --
31210: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
31211: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
31212: ELSE
31213: ---------------------------------------------------------------------------------------------------
31214: -- 4262811a Switch Sign
31215: ---------------------------------------------------------------------------------------------------
31212: ELSE
31213: ---------------------------------------------------------------------------------------------------
31214: -- 4262811a Switch Sign
31215: ---------------------------------------------------------------------------------------------------
31216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31213: ---------------------------------------------------------------------------------------------------
31214: -- 4262811a Switch Sign
31215: ---------------------------------------------------------------------------------------------------
31216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31221: -- 5132302
31214: -- 4262811a Switch Sign
31215: ---------------------------------------------------------------------------------------------------
31216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31221: -- 5132302
31222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31215: ---------------------------------------------------------------------------------------------------
31216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31221: -- 5132302
31222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31216: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31217: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31221: -- 5132302
31222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31224:
31218: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31221: -- 5132302
31222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31224:
31225: END IF;
31226:
31219: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31220: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31221: -- 5132302
31222: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31223: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31224:
31225: END IF;
31226:
31227: -- 4955764
31224:
31225: END IF;
31226:
31227: -- 4955764
31228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31230:
31231:
31232: XLA_AE_LINES_PKG.ValidateCurrentLine;
31228: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31230:
31231:
31232: XLA_AE_LINES_PKG.ValidateCurrentLine;
31233: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31234:
31235: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31236: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31229: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31230:
31231:
31232: XLA_AE_LINES_PKG.ValidateCurrentLine;
31233: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31234:
31235: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31236: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31237: ,p_balance_type_code => l_balance_type_code);
31368: --
31369: -- bulk performance
31370: --
31371: l_balance_type_code VARCHAR2(1);
31372: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
31373: l_log_module VARCHAR2(240);
31374:
31375: --
31376: -- Upgrade strategy
31438: ') = 'N'
31439: THEN
31440:
31441: --
31442: XLA_AE_LINES_PKG.SetNewLine;
31443:
31444: p_balance_type_code := l_balance_type_code;
31445: -- set the flag so later we will know whether the gain loss line needs to be created
31446:
31450:
31451: --
31452: -- bulk performance
31453: --
31454: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
31455: p_header_num => 0); -- 4262811
31456: --
31457: -- set accounting line options
31458: --
31455: p_header_num => 0); -- 4262811
31456: --
31457: -- set accounting line options
31458: --
31459: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
31460: p_natural_side_code => 'D'
31461: , p_gain_or_loss_flag => 'N'
31462: , p_gl_transfer_mode_code => 'S'
31463: , p_acct_entry_type_code => 'A'
31469: --
31470: --
31471: -- set accounting line type info
31472: --
31473: xla_ae_lines_pkg.SetAcctLineType
31474: (p_component_type => l_component_type
31475: ,p_event_type_code => l_event_type_code
31476: ,p_line_definition_owner_code => l_line_definition_owner_code
31477: ,p_line_definition_code => l_line_definition_code
31483: ,p_event_class_code => l_event_class_code);
31484: --
31485: -- set accounting class
31486: --
31487: xla_ae_lines_pkg.SetAcctClass(
31488: p_accounting_class_code => 'RECEIVABLE'
31489: , p_ae_header_id => l_ae_header_id
31490: );
31491:
31491:
31492: --
31493: -- set rounding class
31494: --
31495: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31496: 'RECEIVABLE';
31497:
31498: --
31499: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31495: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
31496: 'RECEIVABLE';
31497:
31498: --
31499: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31500: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31501: --
31502: -- bulk performance
31503: --
31496: 'RECEIVABLE';
31497:
31498: --
31499: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
31500: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31501: --
31502: -- bulk performance
31503: --
31504: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31500: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
31501: --
31502: -- bulk performance
31503: --
31504: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31505:
31506: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31507: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31508:
31502: -- bulk performance
31503: --
31504: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
31505:
31506: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31507: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31508:
31509: -- 4955764
31510: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31506: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
31507: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
31508:
31509: -- 4955764
31510: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31511: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
31512:
31513: -- 4458381 Public Sector Enh
31514:
31540: l_rec_acct_attrs.array_num_value(10) := p_source_24;
31541: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
31542: l_rec_acct_attrs.array_char_value(11) := p_source_66;
31543:
31544: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31545: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31546:
31547: ---------------------------------------------------------------------------------------------------------------
31548: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31541: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
31542: l_rec_acct_attrs.array_char_value(11) := p_source_66;
31543:
31544: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31545: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31546:
31547: ---------------------------------------------------------------------------------------------------------------
31548: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31549: ---------------------------------------------------------------------------------------------------------------
31544: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
31545: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
31546:
31547: ---------------------------------------------------------------------------------------------------------------
31548: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31549: ---------------------------------------------------------------------------------------------------------------
31550: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31551:
31552: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31546:
31547: ---------------------------------------------------------------------------------------------------------------
31548: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31549: ---------------------------------------------------------------------------------------------------------------
31550: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31551:
31552: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31553: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31554:
31548: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
31549: ---------------------------------------------------------------------------------------------------------------
31550: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31551:
31552: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31553: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31554:
31555: IF xla_accounting_cache_pkg.GetValueChar
31556: (p_source_code => 'LEDGER_CATEGORY_CODE'
31549: ---------------------------------------------------------------------------------------------------------------
31550: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
31551:
31552: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31553: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
31554:
31555: IF xla_accounting_cache_pkg.GetValueChar
31556: (p_source_code => 'LEDGER_CATEGORY_CODE'
31557: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
31560: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
31561: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
31562: )
31563: THEN
31564: xla_ae_lines_pkg.BflowUpgEntry
31565: (p_business_method_code => l_bflow_method_code
31566: ,p_business_class_code => l_bflow_class_code
31567: ,p_balance_type => l_balance_type_code);
31568: ELSE
31566: ,p_business_class_code => l_bflow_class_code
31567: ,p_balance_type => l_balance_type_code);
31568: ELSE
31569: NULL;
31570: XLA_AE_LINES_PKG.business_flow_validation(
31571: p_business_method_code => l_bflow_method_code
31572: ,p_business_class_code => l_bflow_class_code
31573: ,p_inherit_description_flag => l_inherit_desc_flag);
31574: END IF;
31580: --
31581: -- call description
31582: --
31583:
31584: xla_ae_lines_pkg.SetLineDescription(
31585: p_ae_header_id => l_ae_header_id
31586: ,p_description => Description_1 (
31587: p_application_id => p_application_id
31588: , p_ae_header_id => l_ae_header_id
31622: xla_accounting_err_pkg.build_message
31623: (p_appli_s_name => 'XLA'
31624: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
31625: ,p_token_1 => 'LINE_NUMBER'
31626: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
31627: ,p_token_2 => 'LINE_TYPE_NAME'
31628: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
31629: l_component_type
31630: ,l_component_code
31658: --
31659: --
31660: ------------------------------------------------------------------------------------------------
31661: -- 4219869 Business Flow
31662: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
31663: -- Prior Entry. Currently, the following code is always generated.
31664: ------------------------------------------------------------------------------------------------
31665: -- No ValidateCurrentLine for business flow method of Prior Entry
31666:
31667: ------------------------------------------------------------------------------------
31668: -- 4219869 Business Flow
31669: -- Populated credit and debit amounts -- Need to generate this within IF
31670: ------------------------------------------------------------------------------------
31671: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31672:
31673: ----------------------------------------------------------------------------------
31674: -- 4219869 Business Flow
31675: -- Update journal entry status -- Need to generate this within IF
31699: -- To allow MPA report to determine if it should generate report process
31700: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31701: ------------------------------------------------------------------------------------------
31702:
31703: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31704: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31705: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31706: -- call ADRs
31707: -- Bug 4922099
31700: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
31701: ------------------------------------------------------------------------------------------
31702:
31703: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
31704: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
31705: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
31706: -- call ADRs
31707: -- Bug 4922099
31708: --
31721:
31722: --
31723: -- Update the line information that should be overwritten
31724: --
31725: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31726: p_header_num => 1);
31727: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31728:
31729: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31723: -- Update the line information that should be overwritten
31724: --
31725: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31726: p_header_num => 1);
31727: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31728:
31729: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31730:
31731: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31725: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
31726: p_header_num => 1);
31727: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
31728:
31729: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31730:
31731: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31732: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31733: END IF;
31728:
31729: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
31730:
31731: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
31732: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
31733: END IF;
31734:
31735: --
31736: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31735: --
31736: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
31737: --
31738: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
31739: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
31740: ELSE
31741: ---------------------------------------------------------------------------------------------------
31742: -- 4262811a Switch Sign
31743: ---------------------------------------------------------------------------------------------------
31740: ELSE
31741: ---------------------------------------------------------------------------------------------------
31742: -- 4262811a Switch Sign
31743: ---------------------------------------------------------------------------------------------------
31744: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31746: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31748: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31741: ---------------------------------------------------------------------------------------------------
31742: -- 4262811a Switch Sign
31743: ---------------------------------------------------------------------------------------------------
31744: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31746: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31748: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31749: -- 5132302
31742: -- 4262811a Switch Sign
31743: ---------------------------------------------------------------------------------------------------
31744: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31746: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31748: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31749: -- 5132302
31750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31743: ---------------------------------------------------------------------------------------------------
31744: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31746: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31748: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31749: -- 5132302
31750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31751: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31744: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
31745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31746: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31748: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31749: -- 5132302
31750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31751: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31752:
31746: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31748: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31749: -- 5132302
31750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31751: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31752:
31753: END IF;
31754:
31747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
31748: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31749: -- 5132302
31750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
31751: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
31752:
31753: END IF;
31754:
31755: -- 4955764
31752:
31753: END IF;
31754:
31755: -- 4955764
31756: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31757: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31758:
31759:
31760: XLA_AE_LINES_PKG.ValidateCurrentLine;
31756: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
31757: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31758:
31759:
31760: XLA_AE_LINES_PKG.ValidateCurrentLine;
31761: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31762:
31763: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31764: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31757: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
31758:
31759:
31760: XLA_AE_LINES_PKG.ValidateCurrentLine;
31761: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
31762:
31763: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
31764: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
31765: ,p_balance_type_code => l_balance_type_code);
31892: --
31893: -- bulk performance
31894: --
31895: l_balance_type_code VARCHAR2(1);
31896: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
31897: l_log_module VARCHAR2(240);
31898:
31899: --
31900: -- Upgrade strategy
31962: ') = 'N'
31963: THEN
31964:
31965: --
31966: XLA_AE_LINES_PKG.SetNewLine;
31967:
31968: p_balance_type_code := l_balance_type_code;
31969: -- set the flag so later we will know whether the gain loss line needs to be created
31970:
31974:
31975: --
31976: -- bulk performance
31977: --
31978: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
31979: p_header_num => 0); -- 4262811
31980: --
31981: -- set accounting line options
31982: --
31979: p_header_num => 0); -- 4262811
31980: --
31981: -- set accounting line options
31982: --
31983: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
31984: p_natural_side_code => 'C'
31985: , p_gain_or_loss_flag => 'N'
31986: , p_gl_transfer_mode_code => 'S'
31987: , p_acct_entry_type_code => 'A'
31993: --
31994: --
31995: -- set accounting line type info
31996: --
31997: xla_ae_lines_pkg.SetAcctLineType
31998: (p_component_type => l_component_type
31999: ,p_event_type_code => l_event_type_code
32000: ,p_line_definition_owner_code => l_line_definition_owner_code
32001: ,p_line_definition_code => l_line_definition_code
32007: ,p_event_class_code => l_event_class_code);
32008: --
32009: -- set accounting class
32010: --
32011: xla_ae_lines_pkg.SetAcctClass(
32012: p_accounting_class_code => 'BANK_CHG'
32013: , p_ae_header_id => l_ae_header_id
32014: );
32015:
32015:
32016: --
32017: -- set rounding class
32018: --
32019: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32020: 'RECEIVABLE';
32021:
32022: --
32023: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32019: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32020: 'RECEIVABLE';
32021:
32022: --
32023: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32024: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32025: --
32026: -- bulk performance
32027: --
32020: 'RECEIVABLE';
32021:
32022: --
32023: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32024: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32025: --
32026: -- bulk performance
32027: --
32028: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32024: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32025: --
32026: -- bulk performance
32027: --
32028: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32029:
32030: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32031: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32032:
32026: -- bulk performance
32027: --
32028: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32029:
32030: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32031: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32032:
32033: -- 4955764
32034: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32030: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32031: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32032:
32033: -- 4955764
32034: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32035: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
32036:
32037: -- 4458381 Public Sector Enh
32038:
32058: l_rec_acct_attrs.array_char_value(7) := p_source_23;
32059: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
32060: l_rec_acct_attrs.array_num_value(8) := p_source_24;
32061:
32062: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32063: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32064:
32065: ---------------------------------------------------------------------------------------------------------------
32066: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32059: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
32060: l_rec_acct_attrs.array_num_value(8) := p_source_24;
32061:
32062: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32063: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32064:
32065: ---------------------------------------------------------------------------------------------------------------
32066: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32067: ---------------------------------------------------------------------------------------------------------------
32062: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32063: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32064:
32065: ---------------------------------------------------------------------------------------------------------------
32066: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32067: ---------------------------------------------------------------------------------------------------------------
32068: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32069:
32070: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32064:
32065: ---------------------------------------------------------------------------------------------------------------
32066: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32067: ---------------------------------------------------------------------------------------------------------------
32068: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32069:
32070: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32071: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32072:
32066: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32067: ---------------------------------------------------------------------------------------------------------------
32068: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32069:
32070: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32071: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32072:
32073: IF xla_accounting_cache_pkg.GetValueChar
32074: (p_source_code => 'LEDGER_CATEGORY_CODE'
32067: ---------------------------------------------------------------------------------------------------------------
32068: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32069:
32070: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32071: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32072:
32073: IF xla_accounting_cache_pkg.GetValueChar
32074: (p_source_code => 'LEDGER_CATEGORY_CODE'
32075: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
32078: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
32079: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
32080: )
32081: THEN
32082: xla_ae_lines_pkg.BflowUpgEntry
32083: (p_business_method_code => l_bflow_method_code
32084: ,p_business_class_code => l_bflow_class_code
32085: ,p_balance_type => l_balance_type_code);
32086: ELSE
32118: , x_value_type_code => l_adr_value_type_code
32119: , p_side => 'NA'
32120: );
32121:
32122: xla_ae_lines_pkg.set_ccid(
32123: p_code_combination_id => l_ccid
32124: , p_value_type_code => l_adr_value_type_code
32125: , p_transaction_coa_id => l_adr_transaction_coa_id
32126: , p_accounting_coa_id => l_adr_accounting_coa_id
32154: xla_accounting_err_pkg.build_message
32155: (p_appli_s_name => 'XLA'
32156: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
32157: ,p_token_1 => 'LINE_NUMBER'
32158: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
32159: ,p_token_2 => 'LINE_TYPE_NAME'
32160: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
32161: l_component_type
32162: ,l_component_code
32190: --
32191: --
32192: ------------------------------------------------------------------------------------------------
32193: -- 4219869 Business Flow
32194: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32195: -- Prior Entry. Currently, the following code is always generated.
32196: ------------------------------------------------------------------------------------------------
32197: XLA_AE_LINES_PKG.ValidateCurrentLine;
32198:
32193: -- 4219869 Business Flow
32194: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32195: -- Prior Entry. Currently, the following code is always generated.
32196: ------------------------------------------------------------------------------------------------
32197: XLA_AE_LINES_PKG.ValidateCurrentLine;
32198:
32199: ------------------------------------------------------------------------------------
32200: -- 4219869 Business Flow
32201: -- Populated credit and debit amounts -- Need to generate this within IF
32199: ------------------------------------------------------------------------------------
32200: -- 4219869 Business Flow
32201: -- Populated credit and debit amounts -- Need to generate this within IF
32202: ------------------------------------------------------------------------------------
32203: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32204:
32205: ----------------------------------------------------------------------------------
32206: -- 4219869 Business Flow
32207: -- Update journal entry status -- Need to generate this within IF
32231: -- To allow MPA report to determine if it should generate report process
32232: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32233: ------------------------------------------------------------------------------------------
32234:
32235: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32236: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32237: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32238: -- call ADRs
32239: -- Bug 4922099
32232: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32233: ------------------------------------------------------------------------------------------
32234:
32235: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32236: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32237: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32238: -- call ADRs
32239: -- Bug 4922099
32240: --
32256: , x_value_type_code => l_adr_value_type_code
32257: , p_side => 'NA'
32258: );
32259:
32260: xla_ae_lines_pkg.set_ccid(
32261: p_code_combination_id => l_ccid
32262: , p_value_type_code => l_adr_value_type_code
32263: , p_transaction_coa_id => l_adr_transaction_coa_id
32264: , p_accounting_coa_id => l_adr_accounting_coa_id
32279:
32280: --
32281: -- Update the line information that should be overwritten
32282: --
32283: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32284: p_header_num => 1);
32285: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32286:
32287: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32281: -- Update the line information that should be overwritten
32282: --
32283: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32284: p_header_num => 1);
32285: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32286:
32287: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32288:
32289: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32283: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32284: p_header_num => 1);
32285: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32286:
32287: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32288:
32289: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32290: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32291: END IF;
32286:
32287: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32288:
32289: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32290: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32291: END IF;
32292:
32293: --
32294: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32293: --
32294: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32295: --
32296: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
32297: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
32298: ELSE
32299: ---------------------------------------------------------------------------------------------------
32300: -- 4262811a Switch Sign
32301: ---------------------------------------------------------------------------------------------------
32298: ELSE
32299: ---------------------------------------------------------------------------------------------------
32300: -- 4262811a Switch Sign
32301: ---------------------------------------------------------------------------------------------------
32302: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32304: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32299: ---------------------------------------------------------------------------------------------------
32300: -- 4262811a Switch Sign
32301: ---------------------------------------------------------------------------------------------------
32302: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32304: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32307: -- 5132302
32300: -- 4262811a Switch Sign
32301: ---------------------------------------------------------------------------------------------------
32302: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32304: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32307: -- 5132302
32308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32301: ---------------------------------------------------------------------------------------------------
32302: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32304: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32307: -- 5132302
32308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32309: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32302: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32304: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32307: -- 5132302
32308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32309: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32310:
32304: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32307: -- 5132302
32308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32309: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32310:
32311: END IF;
32312:
32305: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32306: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32307: -- 5132302
32308: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32309: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32310:
32311: END IF;
32312:
32313: -- 4955764
32310:
32311: END IF;
32312:
32313: -- 4955764
32314: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32315: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32316:
32317:
32318: XLA_AE_LINES_PKG.ValidateCurrentLine;
32314: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32315: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32316:
32317:
32318: XLA_AE_LINES_PKG.ValidateCurrentLine;
32319: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32320:
32321: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32322: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32315: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32316:
32317:
32318: XLA_AE_LINES_PKG.ValidateCurrentLine;
32319: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32320:
32321: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32322: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32323: ,p_balance_type_code => l_balance_type_code);
32450: --
32451: -- bulk performance
32452: --
32453: l_balance_type_code VARCHAR2(1);
32454: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
32455: l_log_module VARCHAR2(240);
32456:
32457: --
32458: -- Upgrade strategy
32520: ') = 'N'
32521: THEN
32522:
32523: --
32524: XLA_AE_LINES_PKG.SetNewLine;
32525:
32526: p_balance_type_code := l_balance_type_code;
32527: -- set the flag so later we will know whether the gain loss line needs to be created
32528:
32532:
32533: --
32534: -- bulk performance
32535: --
32536: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
32537: p_header_num => 0); -- 4262811
32538: --
32539: -- set accounting line options
32540: --
32537: p_header_num => 0); -- 4262811
32538: --
32539: -- set accounting line options
32540: --
32541: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
32542: p_natural_side_code => 'C'
32543: , p_gain_or_loss_flag => 'N'
32544: , p_gl_transfer_mode_code => 'S'
32545: , p_acct_entry_type_code => 'A'
32551: --
32552: --
32553: -- set accounting line type info
32554: --
32555: xla_ae_lines_pkg.SetAcctLineType
32556: (p_component_type => l_component_type
32557: ,p_event_type_code => l_event_type_code
32558: ,p_line_definition_owner_code => l_line_definition_owner_code
32559: ,p_line_definition_code => l_line_definition_code
32565: ,p_event_class_code => l_event_class_code);
32566: --
32567: -- set accounting class
32568: --
32569: xla_ae_lines_pkg.SetAcctClass(
32570: p_accounting_class_code => 'SHORT_TERM_DEBT'
32571: , p_ae_header_id => l_ae_header_id
32572: );
32573:
32573:
32574: --
32575: -- set rounding class
32576: --
32577: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32578: 'RECEIVABLE';
32579:
32580: --
32581: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32577: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
32578: 'RECEIVABLE';
32579:
32580: --
32581: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32582: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32583: --
32584: -- bulk performance
32585: --
32578: 'RECEIVABLE';
32579:
32580: --
32581: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
32582: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32583: --
32584: -- bulk performance
32585: --
32586: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32582: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
32583: --
32584: -- bulk performance
32585: --
32586: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32587:
32588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32589: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32590:
32584: -- bulk performance
32585: --
32586: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
32587:
32588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32589: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32590:
32591: -- 4955764
32592: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32588: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
32589: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
32590:
32591: -- 4955764
32592: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32593: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
32594:
32595: -- 4458381 Public Sector Enh
32596:
32616: l_rec_acct_attrs.array_char_value(7) := p_source_23;
32617: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
32618: l_rec_acct_attrs.array_num_value(8) := p_source_24;
32619:
32620: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32621: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32622:
32623: ---------------------------------------------------------------------------------------------------------------
32624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32617: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
32618: l_rec_acct_attrs.array_num_value(8) := p_source_24;
32619:
32620: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32621: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32622:
32623: ---------------------------------------------------------------------------------------------------------------
32624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32625: ---------------------------------------------------------------------------------------------------------------
32620: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
32621: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
32622:
32623: ---------------------------------------------------------------------------------------------------------------
32624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32625: ---------------------------------------------------------------------------------------------------------------
32626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32627:
32628: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32622:
32623: ---------------------------------------------------------------------------------------------------------------
32624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32625: ---------------------------------------------------------------------------------------------------------------
32626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32627:
32628: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32629: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32630:
32624: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
32625: ---------------------------------------------------------------------------------------------------------------
32626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32627:
32628: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32629: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32630:
32631: IF xla_accounting_cache_pkg.GetValueChar
32632: (p_source_code => 'LEDGER_CATEGORY_CODE'
32625: ---------------------------------------------------------------------------------------------------------------
32626: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
32627:
32628: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32629: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
32630:
32631: IF xla_accounting_cache_pkg.GetValueChar
32632: (p_source_code => 'LEDGER_CATEGORY_CODE'
32633: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
32636: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
32637: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
32638: )
32639: THEN
32640: xla_ae_lines_pkg.BflowUpgEntry
32641: (p_business_method_code => l_bflow_method_code
32642: ,p_business_class_code => l_bflow_class_code
32643: ,p_balance_type => l_balance_type_code);
32644: ELSE
32676: , x_value_type_code => l_adr_value_type_code
32677: , p_side => 'NA'
32678: );
32679:
32680: xla_ae_lines_pkg.set_ccid(
32681: p_code_combination_id => l_ccid
32682: , p_value_type_code => l_adr_value_type_code
32683: , p_transaction_coa_id => l_adr_transaction_coa_id
32684: , p_accounting_coa_id => l_adr_accounting_coa_id
32712: xla_accounting_err_pkg.build_message
32713: (p_appli_s_name => 'XLA'
32714: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
32715: ,p_token_1 => 'LINE_NUMBER'
32716: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
32717: ,p_token_2 => 'LINE_TYPE_NAME'
32718: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
32719: l_component_type
32720: ,l_component_code
32748: --
32749: --
32750: ------------------------------------------------------------------------------------------------
32751: -- 4219869 Business Flow
32752: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32753: -- Prior Entry. Currently, the following code is always generated.
32754: ------------------------------------------------------------------------------------------------
32755: XLA_AE_LINES_PKG.ValidateCurrentLine;
32756:
32751: -- 4219869 Business Flow
32752: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
32753: -- Prior Entry. Currently, the following code is always generated.
32754: ------------------------------------------------------------------------------------------------
32755: XLA_AE_LINES_PKG.ValidateCurrentLine;
32756:
32757: ------------------------------------------------------------------------------------
32758: -- 4219869 Business Flow
32759: -- Populated credit and debit amounts -- Need to generate this within IF
32757: ------------------------------------------------------------------------------------
32758: -- 4219869 Business Flow
32759: -- Populated credit and debit amounts -- Need to generate this within IF
32760: ------------------------------------------------------------------------------------
32761: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32762:
32763: ----------------------------------------------------------------------------------
32764: -- 4219869 Business Flow
32765: -- Update journal entry status -- Need to generate this within IF
32789: -- To allow MPA report to determine if it should generate report process
32790: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32791: ------------------------------------------------------------------------------------------
32792:
32793: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32794: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32795: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32796: -- call ADRs
32797: -- Bug 4922099
32790: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
32791: ------------------------------------------------------------------------------------------
32792:
32793: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
32794: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
32795: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
32796: -- call ADRs
32797: -- Bug 4922099
32798: --
32814: , x_value_type_code => l_adr_value_type_code
32815: , p_side => 'NA'
32816: );
32817:
32818: xla_ae_lines_pkg.set_ccid(
32819: p_code_combination_id => l_ccid
32820: , p_value_type_code => l_adr_value_type_code
32821: , p_transaction_coa_id => l_adr_transaction_coa_id
32822: , p_accounting_coa_id => l_adr_accounting_coa_id
32837:
32838: --
32839: -- Update the line information that should be overwritten
32840: --
32841: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32842: p_header_num => 1);
32843: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32844:
32845: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32839: -- Update the line information that should be overwritten
32840: --
32841: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32842: p_header_num => 1);
32843: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32844:
32845: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32846:
32847: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32841: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
32842: p_header_num => 1);
32843: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
32844:
32845: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32846:
32847: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32848: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32849: END IF;
32844:
32845: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
32846:
32847: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
32848: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
32849: END IF;
32850:
32851: --
32852: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32851: --
32852: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
32853: --
32854: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
32855: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
32856: ELSE
32857: ---------------------------------------------------------------------------------------------------
32858: -- 4262811a Switch Sign
32859: ---------------------------------------------------------------------------------------------------
32856: ELSE
32857: ---------------------------------------------------------------------------------------------------
32858: -- 4262811a Switch Sign
32859: ---------------------------------------------------------------------------------------------------
32860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32857: ---------------------------------------------------------------------------------------------------
32858: -- 4262811a Switch Sign
32859: ---------------------------------------------------------------------------------------------------
32860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32865: -- 5132302
32858: -- 4262811a Switch Sign
32859: ---------------------------------------------------------------------------------------------------
32860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32865: -- 5132302
32866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32859: ---------------------------------------------------------------------------------------------------
32860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32865: -- 5132302
32866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32860: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
32861: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32865: -- 5132302
32866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32868:
32862: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32865: -- 5132302
32866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32868:
32869: END IF;
32870:
32863: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
32864: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32865: -- 5132302
32866: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
32867: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
32868:
32869: END IF;
32870:
32871: -- 4955764
32868:
32869: END IF;
32870:
32871: -- 4955764
32872: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32873: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32874:
32875:
32876: XLA_AE_LINES_PKG.ValidateCurrentLine;
32872: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
32873: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32874:
32875:
32876: XLA_AE_LINES_PKG.ValidateCurrentLine;
32877: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32878:
32879: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32880: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32873: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
32874:
32875:
32876: XLA_AE_LINES_PKG.ValidateCurrentLine;
32877: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
32878:
32879: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
32880: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
32881: ,p_balance_type_code => l_balance_type_code);
33008: --
33009: -- bulk performance
33010: --
33011: l_balance_type_code VARCHAR2(1);
33012: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
33013: l_log_module VARCHAR2(240);
33014:
33015: --
33016: -- Upgrade strategy
33078: ') = 'N'
33079: THEN
33080:
33081: --
33082: XLA_AE_LINES_PKG.SetNewLine;
33083:
33084: p_balance_type_code := l_balance_type_code;
33085: -- set the flag so later we will know whether the gain loss line needs to be created
33086:
33090:
33091: --
33092: -- bulk performance
33093: --
33094: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
33095: p_header_num => 0); -- 4262811
33096: --
33097: -- set accounting line options
33098: --
33095: p_header_num => 0); -- 4262811
33096: --
33097: -- set accounting line options
33098: --
33099: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
33100: p_natural_side_code => 'C'
33101: , p_gain_or_loss_flag => 'N'
33102: , p_gl_transfer_mode_code => 'S'
33103: , p_acct_entry_type_code => 'A'
33109: --
33110: --
33111: -- set accounting line type info
33112: --
33113: xla_ae_lines_pkg.SetAcctLineType
33114: (p_component_type => l_component_type
33115: ,p_event_type_code => l_event_type_code
33116: ,p_line_definition_owner_code => l_line_definition_owner_code
33117: ,p_line_definition_code => l_line_definition_code
33123: ,p_event_class_code => l_event_class_code);
33124: --
33125: -- set accounting class
33126: --
33127: xla_ae_lines_pkg.SetAcctClass(
33128: p_accounting_class_code => 'FACTOR'
33129: , p_ae_header_id => l_ae_header_id
33130: );
33131:
33131:
33132: --
33133: -- set rounding class
33134: --
33135: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33136: 'RECEIVABLE';
33137:
33138: --
33139: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33135: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33136: 'RECEIVABLE';
33137:
33138: --
33139: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33140: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33141: --
33142: -- bulk performance
33143: --
33136: 'RECEIVABLE';
33137:
33138: --
33139: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33140: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33141: --
33142: -- bulk performance
33143: --
33144: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33140: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33141: --
33142: -- bulk performance
33143: --
33144: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33145:
33146: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33147: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33148:
33142: -- bulk performance
33143: --
33144: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33145:
33146: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33147: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33148:
33149: -- 4955764
33150: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33146: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33147: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33148:
33149: -- 4955764
33150: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33151: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
33152:
33153: -- 4458381 Public Sector Enh
33154:
33174: l_rec_acct_attrs.array_char_value(7) := p_source_23;
33175: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
33176: l_rec_acct_attrs.array_num_value(8) := p_source_24;
33177:
33178: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33179: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33180:
33181: ---------------------------------------------------------------------------------------------------------------
33182: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33175: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
33176: l_rec_acct_attrs.array_num_value(8) := p_source_24;
33177:
33178: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33179: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33180:
33181: ---------------------------------------------------------------------------------------------------------------
33182: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33183: ---------------------------------------------------------------------------------------------------------------
33178: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33179: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33180:
33181: ---------------------------------------------------------------------------------------------------------------
33182: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33183: ---------------------------------------------------------------------------------------------------------------
33184: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33185:
33186: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33180:
33181: ---------------------------------------------------------------------------------------------------------------
33182: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33183: ---------------------------------------------------------------------------------------------------------------
33184: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33185:
33186: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33187: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33188:
33182: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33183: ---------------------------------------------------------------------------------------------------------------
33184: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33185:
33186: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33187: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33188:
33189: IF xla_accounting_cache_pkg.GetValueChar
33190: (p_source_code => 'LEDGER_CATEGORY_CODE'
33183: ---------------------------------------------------------------------------------------------------------------
33184: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33185:
33186: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33187: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33188:
33189: IF xla_accounting_cache_pkg.GetValueChar
33190: (p_source_code => 'LEDGER_CATEGORY_CODE'
33191: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
33194: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
33195: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
33196: )
33197: THEN
33198: xla_ae_lines_pkg.BflowUpgEntry
33199: (p_business_method_code => l_bflow_method_code
33200: ,p_business_class_code => l_bflow_class_code
33201: ,p_balance_type => l_balance_type_code);
33202: ELSE
33234: , x_value_type_code => l_adr_value_type_code
33235: , p_side => 'NA'
33236: );
33237:
33238: xla_ae_lines_pkg.set_ccid(
33239: p_code_combination_id => l_ccid
33240: , p_value_type_code => l_adr_value_type_code
33241: , p_transaction_coa_id => l_adr_transaction_coa_id
33242: , p_accounting_coa_id => l_adr_accounting_coa_id
33270: xla_accounting_err_pkg.build_message
33271: (p_appli_s_name => 'XLA'
33272: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
33273: ,p_token_1 => 'LINE_NUMBER'
33274: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
33275: ,p_token_2 => 'LINE_TYPE_NAME'
33276: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
33277: l_component_type
33278: ,l_component_code
33306: --
33307: --
33308: ------------------------------------------------------------------------------------------------
33309: -- 4219869 Business Flow
33310: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33311: -- Prior Entry. Currently, the following code is always generated.
33312: ------------------------------------------------------------------------------------------------
33313: XLA_AE_LINES_PKG.ValidateCurrentLine;
33314:
33309: -- 4219869 Business Flow
33310: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33311: -- Prior Entry. Currently, the following code is always generated.
33312: ------------------------------------------------------------------------------------------------
33313: XLA_AE_LINES_PKG.ValidateCurrentLine;
33314:
33315: ------------------------------------------------------------------------------------
33316: -- 4219869 Business Flow
33317: -- Populated credit and debit amounts -- Need to generate this within IF
33315: ------------------------------------------------------------------------------------
33316: -- 4219869 Business Flow
33317: -- Populated credit and debit amounts -- Need to generate this within IF
33318: ------------------------------------------------------------------------------------
33319: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33320:
33321: ----------------------------------------------------------------------------------
33322: -- 4219869 Business Flow
33323: -- Update journal entry status -- Need to generate this within IF
33347: -- To allow MPA report to determine if it should generate report process
33348: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33349: ------------------------------------------------------------------------------------------
33350:
33351: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33352: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33353: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33354: -- call ADRs
33355: -- Bug 4922099
33348: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33349: ------------------------------------------------------------------------------------------
33350:
33351: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33352: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33353: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33354: -- call ADRs
33355: -- Bug 4922099
33356: --
33372: , x_value_type_code => l_adr_value_type_code
33373: , p_side => 'NA'
33374: );
33375:
33376: xla_ae_lines_pkg.set_ccid(
33377: p_code_combination_id => l_ccid
33378: , p_value_type_code => l_adr_value_type_code
33379: , p_transaction_coa_id => l_adr_transaction_coa_id
33380: , p_accounting_coa_id => l_adr_accounting_coa_id
33395:
33396: --
33397: -- Update the line information that should be overwritten
33398: --
33399: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33400: p_header_num => 1);
33401: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33402:
33403: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33397: -- Update the line information that should be overwritten
33398: --
33399: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33400: p_header_num => 1);
33401: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33402:
33403: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33404:
33405: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33399: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33400: p_header_num => 1);
33401: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33402:
33403: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33404:
33405: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33406: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33407: END IF;
33402:
33403: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33404:
33405: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33406: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33407: END IF;
33408:
33409: --
33410: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33409: --
33410: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33411: --
33412: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
33413: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
33414: ELSE
33415: ---------------------------------------------------------------------------------------------------
33416: -- 4262811a Switch Sign
33417: ---------------------------------------------------------------------------------------------------
33414: ELSE
33415: ---------------------------------------------------------------------------------------------------
33416: -- 4262811a Switch Sign
33417: ---------------------------------------------------------------------------------------------------
33418: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33420: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33415: ---------------------------------------------------------------------------------------------------
33416: -- 4262811a Switch Sign
33417: ---------------------------------------------------------------------------------------------------
33418: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33420: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33423: -- 5132302
33416: -- 4262811a Switch Sign
33417: ---------------------------------------------------------------------------------------------------
33418: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33420: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33423: -- 5132302
33424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33417: ---------------------------------------------------------------------------------------------------
33418: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33420: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33423: -- 5132302
33424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33425: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33418: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33419: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33420: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33423: -- 5132302
33424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33425: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33426:
33420: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33423: -- 5132302
33424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33425: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33426:
33427: END IF;
33428:
33421: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33422: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33423: -- 5132302
33424: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33425: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33426:
33427: END IF;
33428:
33429: -- 4955764
33426:
33427: END IF;
33428:
33429: -- 4955764
33430: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33431: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33432:
33433:
33434: XLA_AE_LINES_PKG.ValidateCurrentLine;
33430: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33431: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33432:
33433:
33434: XLA_AE_LINES_PKG.ValidateCurrentLine;
33435: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33436:
33437: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33438: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33431: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33432:
33433:
33434: XLA_AE_LINES_PKG.ValidateCurrentLine;
33435: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33436:
33437: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33438: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33439: ,p_balance_type_code => l_balance_type_code);
33566: --
33567: -- bulk performance
33568: --
33569: l_balance_type_code VARCHAR2(1);
33570: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
33571: l_log_module VARCHAR2(240);
33572:
33573: --
33574: -- Upgrade strategy
33636: ') = 'N'
33637: THEN
33638:
33639: --
33640: XLA_AE_LINES_PKG.SetNewLine;
33641:
33642: p_balance_type_code := l_balance_type_code;
33643: -- set the flag so later we will know whether the gain loss line needs to be created
33644:
33648:
33649: --
33650: -- bulk performance
33651: --
33652: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
33653: p_header_num => 0); -- 4262811
33654: --
33655: -- set accounting line options
33656: --
33653: p_header_num => 0); -- 4262811
33654: --
33655: -- set accounting line options
33656: --
33657: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
33658: p_natural_side_code => 'C'
33659: , p_gain_or_loss_flag => 'N'
33660: , p_gl_transfer_mode_code => 'S'
33661: , p_acct_entry_type_code => 'A'
33667: --
33668: --
33669: -- set accounting line type info
33670: --
33671: xla_ae_lines_pkg.SetAcctLineType
33672: (p_component_type => l_component_type
33673: ,p_event_type_code => l_event_type_code
33674: ,p_line_definition_owner_code => l_line_definition_owner_code
33675: ,p_line_definition_code => l_line_definition_code
33681: ,p_event_class_code => l_event_class_code);
33682: --
33683: -- set accounting class
33684: --
33685: xla_ae_lines_pkg.SetAcctClass(
33686: p_accounting_class_code => 'MISC_CASH'
33687: , p_ae_header_id => l_ae_header_id
33688: );
33689:
33689:
33690: --
33691: -- set rounding class
33692: --
33693: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33694: 'RECEIVABLE';
33695:
33696: --
33697: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33693: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
33694: 'RECEIVABLE';
33695:
33696: --
33697: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33698: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33699: --
33700: -- bulk performance
33701: --
33694: 'RECEIVABLE';
33695:
33696: --
33697: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
33698: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33699: --
33700: -- bulk performance
33701: --
33702: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33698: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
33699: --
33700: -- bulk performance
33701: --
33702: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33703:
33704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33705: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33706:
33700: -- bulk performance
33701: --
33702: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
33703:
33704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33705: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33706:
33707: -- 4955764
33708: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33704: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
33705: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
33706:
33707: -- 4955764
33708: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33709: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
33710:
33711: -- 4458381 Public Sector Enh
33712:
33732: l_rec_acct_attrs.array_char_value(7) := p_source_23;
33733: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
33734: l_rec_acct_attrs.array_num_value(8) := p_source_24;
33735:
33736: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33737: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33738:
33739: ---------------------------------------------------------------------------------------------------------------
33740: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33733: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
33734: l_rec_acct_attrs.array_num_value(8) := p_source_24;
33735:
33736: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33737: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33738:
33739: ---------------------------------------------------------------------------------------------------------------
33740: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33741: ---------------------------------------------------------------------------------------------------------------
33736: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
33737: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
33738:
33739: ---------------------------------------------------------------------------------------------------------------
33740: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33741: ---------------------------------------------------------------------------------------------------------------
33742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33743:
33744: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33738:
33739: ---------------------------------------------------------------------------------------------------------------
33740: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33741: ---------------------------------------------------------------------------------------------------------------
33742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33743:
33744: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33745: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33746:
33740: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
33741: ---------------------------------------------------------------------------------------------------------------
33742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33743:
33744: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33745: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33746:
33747: IF xla_accounting_cache_pkg.GetValueChar
33748: (p_source_code => 'LEDGER_CATEGORY_CODE'
33741: ---------------------------------------------------------------------------------------------------------------
33742: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
33743:
33744: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33745: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
33746:
33747: IF xla_accounting_cache_pkg.GetValueChar
33748: (p_source_code => 'LEDGER_CATEGORY_CODE'
33749: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
33752: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
33753: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
33754: )
33755: THEN
33756: xla_ae_lines_pkg.BflowUpgEntry
33757: (p_business_method_code => l_bflow_method_code
33758: ,p_business_class_code => l_bflow_class_code
33759: ,p_balance_type => l_balance_type_code);
33760: ELSE
33792: , x_value_type_code => l_adr_value_type_code
33793: , p_side => 'NA'
33794: );
33795:
33796: xla_ae_lines_pkg.set_ccid(
33797: p_code_combination_id => l_ccid
33798: , p_value_type_code => l_adr_value_type_code
33799: , p_transaction_coa_id => l_adr_transaction_coa_id
33800: , p_accounting_coa_id => l_adr_accounting_coa_id
33828: xla_accounting_err_pkg.build_message
33829: (p_appli_s_name => 'XLA'
33830: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
33831: ,p_token_1 => 'LINE_NUMBER'
33832: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
33833: ,p_token_2 => 'LINE_TYPE_NAME'
33834: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
33835: l_component_type
33836: ,l_component_code
33864: --
33865: --
33866: ------------------------------------------------------------------------------------------------
33867: -- 4219869 Business Flow
33868: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33869: -- Prior Entry. Currently, the following code is always generated.
33870: ------------------------------------------------------------------------------------------------
33871: XLA_AE_LINES_PKG.ValidateCurrentLine;
33872:
33867: -- 4219869 Business Flow
33868: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
33869: -- Prior Entry. Currently, the following code is always generated.
33870: ------------------------------------------------------------------------------------------------
33871: XLA_AE_LINES_PKG.ValidateCurrentLine;
33872:
33873: ------------------------------------------------------------------------------------
33874: -- 4219869 Business Flow
33875: -- Populated credit and debit amounts -- Need to generate this within IF
33873: ------------------------------------------------------------------------------------
33874: -- 4219869 Business Flow
33875: -- Populated credit and debit amounts -- Need to generate this within IF
33876: ------------------------------------------------------------------------------------
33877: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33878:
33879: ----------------------------------------------------------------------------------
33880: -- 4219869 Business Flow
33881: -- Update journal entry status -- Need to generate this within IF
33905: -- To allow MPA report to determine if it should generate report process
33906: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33907: ------------------------------------------------------------------------------------------
33908:
33909: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33910: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33911: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33912: -- call ADRs
33913: -- Bug 4922099
33906: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
33907: ------------------------------------------------------------------------------------------
33908:
33909: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
33910: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
33911: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
33912: -- call ADRs
33913: -- Bug 4922099
33914: --
33930: , x_value_type_code => l_adr_value_type_code
33931: , p_side => 'NA'
33932: );
33933:
33934: xla_ae_lines_pkg.set_ccid(
33935: p_code_combination_id => l_ccid
33936: , p_value_type_code => l_adr_value_type_code
33937: , p_transaction_coa_id => l_adr_transaction_coa_id
33938: , p_accounting_coa_id => l_adr_accounting_coa_id
33953:
33954: --
33955: -- Update the line information that should be overwritten
33956: --
33957: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33958: p_header_num => 1);
33959: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33960:
33961: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33955: -- Update the line information that should be overwritten
33956: --
33957: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33958: p_header_num => 1);
33959: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33960:
33961: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33962:
33963: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33957: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
33958: p_header_num => 1);
33959: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
33960:
33961: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33962:
33963: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33964: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33965: END IF;
33960:
33961: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
33962:
33963: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
33964: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
33965: END IF;
33966:
33967: --
33968: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33967: --
33968: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
33969: --
33970: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
33971: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
33972: ELSE
33973: ---------------------------------------------------------------------------------------------------
33974: -- 4262811a Switch Sign
33975: ---------------------------------------------------------------------------------------------------
33972: ELSE
33973: ---------------------------------------------------------------------------------------------------
33974: -- 4262811a Switch Sign
33975: ---------------------------------------------------------------------------------------------------
33976: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33977: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33979: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33973: ---------------------------------------------------------------------------------------------------
33974: -- 4262811a Switch Sign
33975: ---------------------------------------------------------------------------------------------------
33976: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33977: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33979: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33981: -- 5132302
33974: -- 4262811a Switch Sign
33975: ---------------------------------------------------------------------------------------------------
33976: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33977: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33979: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33981: -- 5132302
33982: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33975: ---------------------------------------------------------------------------------------------------
33976: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33977: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33979: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33981: -- 5132302
33982: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33983: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33976: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
33977: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33979: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33981: -- 5132302
33982: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33983: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33984:
33978: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33979: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33981: -- 5132302
33982: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33983: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33984:
33985: END IF;
33986:
33979: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
33980: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33981: -- 5132302
33982: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
33983: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
33984:
33985: END IF;
33986:
33987: -- 4955764
33984:
33985: END IF;
33986:
33987: -- 4955764
33988: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33989: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33990:
33991:
33992: XLA_AE_LINES_PKG.ValidateCurrentLine;
33988: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
33989: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33990:
33991:
33992: XLA_AE_LINES_PKG.ValidateCurrentLine;
33993: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33994:
33995: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33996: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33989: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
33990:
33991:
33992: XLA_AE_LINES_PKG.ValidateCurrentLine;
33993: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
33994:
33995: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
33996: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
33997: ,p_balance_type_code => l_balance_type_code);
34124: --
34125: -- bulk performance
34126: --
34127: l_balance_type_code VARCHAR2(1);
34128: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
34129: l_log_module VARCHAR2(240);
34130:
34131: --
34132: -- Upgrade strategy
34194: ') = 'N'
34195: THEN
34196:
34197: --
34198: XLA_AE_LINES_PKG.SetNewLine;
34199:
34200: p_balance_type_code := l_balance_type_code;
34201: -- set the flag so later we will know whether the gain loss line needs to be created
34202:
34206:
34207: --
34208: -- bulk performance
34209: --
34210: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
34211: p_header_num => 0); -- 4262811
34212: --
34213: -- set accounting line options
34214: --
34211: p_header_num => 0); -- 4262811
34212: --
34213: -- set accounting line options
34214: --
34215: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
34216: p_natural_side_code => 'C'
34217: , p_gain_or_loss_flag => 'N'
34218: , p_gl_transfer_mode_code => 'S'
34219: , p_acct_entry_type_code => 'A'
34225: --
34226: --
34227: -- set accounting line type info
34228: --
34229: xla_ae_lines_pkg.SetAcctLineType
34230: (p_component_type => l_component_type
34231: ,p_event_type_code => l_event_type_code
34232: ,p_line_definition_owner_code => l_line_definition_owner_code
34233: ,p_line_definition_code => l_line_definition_code
34239: ,p_event_class_code => l_event_class_code);
34240: --
34241: -- set accounting class
34242: --
34243: xla_ae_lines_pkg.SetAcctClass(
34244: p_accounting_class_code => 'TAX'
34245: , p_ae_header_id => l_ae_header_id
34246: );
34247:
34247:
34248: --
34249: -- set rounding class
34250: --
34251: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34252: 'RECEIVABLE';
34253:
34254: --
34255: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34251: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34252: 'RECEIVABLE';
34253:
34254: --
34255: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34256: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34257: --
34258: -- bulk performance
34259: --
34252: 'RECEIVABLE';
34253:
34254: --
34255: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34256: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34257: --
34258: -- bulk performance
34259: --
34260: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34256: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34257: --
34258: -- bulk performance
34259: --
34260: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34261:
34262: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34263: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34264:
34258: -- bulk performance
34259: --
34260: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34261:
34262: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34263: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34264:
34265: -- 4955764
34266: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34262: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34263: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34264:
34265: -- 4955764
34266: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34267: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
34268:
34269: -- 4458381 Public Sector Enh
34270:
34290: l_rec_acct_attrs.array_char_value(7) := p_source_23;
34291: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
34292: l_rec_acct_attrs.array_num_value(8) := p_source_24;
34293:
34294: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34295: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34296:
34297: ---------------------------------------------------------------------------------------------------------------
34298: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34291: l_rec_acct_attrs.array_acct_attr_code(8) := 'LEDGER_AMOUNT';
34292: l_rec_acct_attrs.array_num_value(8) := p_source_24;
34293:
34294: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34295: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34296:
34297: ---------------------------------------------------------------------------------------------------------------
34298: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34299: ---------------------------------------------------------------------------------------------------------------
34294: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34295: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34296:
34297: ---------------------------------------------------------------------------------------------------------------
34298: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34299: ---------------------------------------------------------------------------------------------------------------
34300: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34301:
34302: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34296:
34297: ---------------------------------------------------------------------------------------------------------------
34298: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34299: ---------------------------------------------------------------------------------------------------------------
34300: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34301:
34302: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34303: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34304:
34298: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34299: ---------------------------------------------------------------------------------------------------------------
34300: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34301:
34302: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34303: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34304:
34305: IF xla_accounting_cache_pkg.GetValueChar
34306: (p_source_code => 'LEDGER_CATEGORY_CODE'
34299: ---------------------------------------------------------------------------------------------------------------
34300: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34301:
34302: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34303: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34304:
34305: IF xla_accounting_cache_pkg.GetValueChar
34306: (p_source_code => 'LEDGER_CATEGORY_CODE'
34307: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
34310: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
34311: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
34312: )
34313: THEN
34314: xla_ae_lines_pkg.BflowUpgEntry
34315: (p_business_method_code => l_bflow_method_code
34316: ,p_business_class_code => l_bflow_class_code
34317: ,p_balance_type => l_balance_type_code);
34318: ELSE
34350: , x_value_type_code => l_adr_value_type_code
34351: , p_side => 'NA'
34352: );
34353:
34354: xla_ae_lines_pkg.set_ccid(
34355: p_code_combination_id => l_ccid
34356: , p_value_type_code => l_adr_value_type_code
34357: , p_transaction_coa_id => l_adr_transaction_coa_id
34358: , p_accounting_coa_id => l_adr_accounting_coa_id
34386: xla_accounting_err_pkg.build_message
34387: (p_appli_s_name => 'XLA'
34388: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
34389: ,p_token_1 => 'LINE_NUMBER'
34390: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
34391: ,p_token_2 => 'LINE_TYPE_NAME'
34392: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
34393: l_component_type
34394: ,l_component_code
34422: --
34423: --
34424: ------------------------------------------------------------------------------------------------
34425: -- 4219869 Business Flow
34426: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34427: -- Prior Entry. Currently, the following code is always generated.
34428: ------------------------------------------------------------------------------------------------
34429: XLA_AE_LINES_PKG.ValidateCurrentLine;
34430:
34425: -- 4219869 Business Flow
34426: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
34427: -- Prior Entry. Currently, the following code is always generated.
34428: ------------------------------------------------------------------------------------------------
34429: XLA_AE_LINES_PKG.ValidateCurrentLine;
34430:
34431: ------------------------------------------------------------------------------------
34432: -- 4219869 Business Flow
34433: -- Populated credit and debit amounts -- Need to generate this within IF
34431: ------------------------------------------------------------------------------------
34432: -- 4219869 Business Flow
34433: -- Populated credit and debit amounts -- Need to generate this within IF
34434: ------------------------------------------------------------------------------------
34435: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34436:
34437: ----------------------------------------------------------------------------------
34438: -- 4219869 Business Flow
34439: -- Update journal entry status -- Need to generate this within IF
34463: -- To allow MPA report to determine if it should generate report process
34464: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34465: ------------------------------------------------------------------------------------------
34466:
34467: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34468: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34469: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34470: -- call ADRs
34471: -- Bug 4922099
34464: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
34465: ------------------------------------------------------------------------------------------
34466:
34467: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
34468: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
34469: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
34470: -- call ADRs
34471: -- Bug 4922099
34472: --
34488: , x_value_type_code => l_adr_value_type_code
34489: , p_side => 'NA'
34490: );
34491:
34492: xla_ae_lines_pkg.set_ccid(
34493: p_code_combination_id => l_ccid
34494: , p_value_type_code => l_adr_value_type_code
34495: , p_transaction_coa_id => l_adr_transaction_coa_id
34496: , p_accounting_coa_id => l_adr_accounting_coa_id
34511:
34512: --
34513: -- Update the line information that should be overwritten
34514: --
34515: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34516: p_header_num => 1);
34517: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34518:
34519: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34513: -- Update the line information that should be overwritten
34514: --
34515: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34516: p_header_num => 1);
34517: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34518:
34519: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34520:
34521: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34515: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
34516: p_header_num => 1);
34517: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
34518:
34519: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34520:
34521: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34522: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34523: END IF;
34518:
34519: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
34520:
34521: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
34522: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
34523: END IF;
34524:
34525: --
34526: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34525: --
34526: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
34527: --
34528: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
34529: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
34530: ELSE
34531: ---------------------------------------------------------------------------------------------------
34532: -- 4262811a Switch Sign
34533: ---------------------------------------------------------------------------------------------------
34530: ELSE
34531: ---------------------------------------------------------------------------------------------------
34532: -- 4262811a Switch Sign
34533: ---------------------------------------------------------------------------------------------------
34534: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34531: ---------------------------------------------------------------------------------------------------
34532: -- 4262811a Switch Sign
34533: ---------------------------------------------------------------------------------------------------
34534: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34539: -- 5132302
34532: -- 4262811a Switch Sign
34533: ---------------------------------------------------------------------------------------------------
34534: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34539: -- 5132302
34540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34533: ---------------------------------------------------------------------------------------------------
34534: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34539: -- 5132302
34540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34534: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
34535: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34539: -- 5132302
34540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34542:
34536: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34539: -- 5132302
34540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34542:
34543: END IF;
34544:
34537: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
34538: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34539: -- 5132302
34540: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
34541: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
34542:
34543: END IF;
34544:
34545: -- 4955764
34542:
34543: END IF;
34544:
34545: -- 4955764
34546: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34547: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34548:
34549:
34550: XLA_AE_LINES_PKG.ValidateCurrentLine;
34546: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34547: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34548:
34549:
34550: XLA_AE_LINES_PKG.ValidateCurrentLine;
34551: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34552:
34553: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34554: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34547: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
34548:
34549:
34550: XLA_AE_LINES_PKG.ValidateCurrentLine;
34551: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
34552:
34553: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
34554: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
34555: ,p_balance_type_code => l_balance_type_code);
34698: --
34699: -- bulk performance
34700: --
34701: l_balance_type_code VARCHAR2(1);
34702: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
34703: l_log_module VARCHAR2(240);
34704:
34705: --
34706: -- Upgrade strategy
34768: ') = 'N'
34769: THEN
34770:
34771: --
34772: XLA_AE_LINES_PKG.SetNewLine;
34773:
34774: p_balance_type_code := l_balance_type_code;
34775: -- set the flag so later we will know whether the gain loss line needs to be created
34776:
34780:
34781: --
34782: -- bulk performance
34783: --
34784: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
34785: p_header_num => 0); -- 4262811
34786: --
34787: -- set accounting line options
34788: --
34785: p_header_num => 0); -- 4262811
34786: --
34787: -- set accounting line options
34788: --
34789: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
34790: p_natural_side_code => 'C'
34791: , p_gain_or_loss_flag => 'N'
34792: , p_gl_transfer_mode_code => 'S'
34793: , p_acct_entry_type_code => 'A'
34799: --
34800: --
34801: -- set accounting line type info
34802: --
34803: xla_ae_lines_pkg.SetAcctLineType
34804: (p_component_type => l_component_type
34805: ,p_event_type_code => l_event_type_code
34806: ,p_line_definition_owner_code => l_line_definition_owner_code
34807: ,p_line_definition_code => l_line_definition_code
34813: ,p_event_class_code => l_event_class_code);
34814: --
34815: -- set accounting class
34816: --
34817: xla_ae_lines_pkg.SetAcctClass(
34818: p_accounting_class_code => 'ACC'
34819: , p_ae_header_id => l_ae_header_id
34820: );
34821:
34821:
34822: --
34823: -- set rounding class
34824: --
34825: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34826: 'RECEIVABLE';
34827:
34828: --
34829: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34825: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
34826: 'RECEIVABLE';
34827:
34828: --
34829: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34830: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34831: --
34832: -- bulk performance
34833: --
34826: 'RECEIVABLE';
34827:
34828: --
34829: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
34830: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34831: --
34832: -- bulk performance
34833: --
34834: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34830: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
34831: --
34832: -- bulk performance
34833: --
34834: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34835:
34836: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34837: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34838:
34832: -- bulk performance
34833: --
34834: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
34835:
34836: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34837: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34838:
34839: -- 4955764
34840: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34836: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
34837: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
34838:
34839: -- 4955764
34840: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
34841: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
34842:
34843: -- 4458381 Public Sector Enh
34844:
34880: l_rec_acct_attrs.array_num_value(15) := p_source_65;
34881: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
34882: l_rec_acct_attrs.array_char_value(16) := p_source_66;
34883:
34884: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34885: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34886:
34887: ---------------------------------------------------------------------------------------------------------------
34888: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34881: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
34882: l_rec_acct_attrs.array_char_value(16) := p_source_66;
34883:
34884: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34885: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34886:
34887: ---------------------------------------------------------------------------------------------------------------
34888: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34889: ---------------------------------------------------------------------------------------------------------------
34884: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
34885: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
34886:
34887: ---------------------------------------------------------------------------------------------------------------
34888: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34889: ---------------------------------------------------------------------------------------------------------------
34890: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34891:
34892: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34886:
34887: ---------------------------------------------------------------------------------------------------------------
34888: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34889: ---------------------------------------------------------------------------------------------------------------
34890: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34891:
34892: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34893: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34894:
34888: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
34889: ---------------------------------------------------------------------------------------------------------------
34890: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34891:
34892: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34893: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34894:
34895: IF xla_accounting_cache_pkg.GetValueChar
34896: (p_source_code => 'LEDGER_CATEGORY_CODE'
34889: ---------------------------------------------------------------------------------------------------------------
34890: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
34891:
34892: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34893: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
34894:
34895: IF xla_accounting_cache_pkg.GetValueChar
34896: (p_source_code => 'LEDGER_CATEGORY_CODE'
34897: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
34900: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
34901: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
34902: )
34903: THEN
34904: xla_ae_lines_pkg.BflowUpgEntry
34905: (p_business_method_code => l_bflow_method_code
34906: ,p_business_class_code => l_bflow_class_code
34907: ,p_balance_type => l_balance_type_code);
34908: ELSE
34940: , x_value_type_code => l_adr_value_type_code
34941: , p_side => 'NA'
34942: );
34943:
34944: xla_ae_lines_pkg.set_ccid(
34945: p_code_combination_id => l_ccid
34946: , p_value_type_code => l_adr_value_type_code
34947: , p_transaction_coa_id => l_adr_transaction_coa_id
34948: , p_accounting_coa_id => l_adr_accounting_coa_id
34976: xla_accounting_err_pkg.build_message
34977: (p_appli_s_name => 'XLA'
34978: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
34979: ,p_token_1 => 'LINE_NUMBER'
34980: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
34981: ,p_token_2 => 'LINE_TYPE_NAME'
34982: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
34983: l_component_type
34984: ,l_component_code
35012: --
35013: --
35014: ------------------------------------------------------------------------------------------------
35015: -- 4219869 Business Flow
35016: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35017: -- Prior Entry. Currently, the following code is always generated.
35018: ------------------------------------------------------------------------------------------------
35019: XLA_AE_LINES_PKG.ValidateCurrentLine;
35020:
35015: -- 4219869 Business Flow
35016: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35017: -- Prior Entry. Currently, the following code is always generated.
35018: ------------------------------------------------------------------------------------------------
35019: XLA_AE_LINES_PKG.ValidateCurrentLine;
35020:
35021: ------------------------------------------------------------------------------------
35022: -- 4219869 Business Flow
35023: -- Populated credit and debit amounts -- Need to generate this within IF
35021: ------------------------------------------------------------------------------------
35022: -- 4219869 Business Flow
35023: -- Populated credit and debit amounts -- Need to generate this within IF
35024: ------------------------------------------------------------------------------------
35025: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35026:
35027: ----------------------------------------------------------------------------------
35028: -- 4219869 Business Flow
35029: -- Update journal entry status -- Need to generate this within IF
35053: -- To allow MPA report to determine if it should generate report process
35054: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35055: ------------------------------------------------------------------------------------------
35056:
35057: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35058: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35059: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35060: -- call ADRs
35061: -- Bug 4922099
35054: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35055: ------------------------------------------------------------------------------------------
35056:
35057: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35058: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35059: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35060: -- call ADRs
35061: -- Bug 4922099
35062: --
35078: , x_value_type_code => l_adr_value_type_code
35079: , p_side => 'NA'
35080: );
35081:
35082: xla_ae_lines_pkg.set_ccid(
35083: p_code_combination_id => l_ccid
35084: , p_value_type_code => l_adr_value_type_code
35085: , p_transaction_coa_id => l_adr_transaction_coa_id
35086: , p_accounting_coa_id => l_adr_accounting_coa_id
35101:
35102: --
35103: -- Update the line information that should be overwritten
35104: --
35105: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35106: p_header_num => 1);
35107: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35108:
35109: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35103: -- Update the line information that should be overwritten
35104: --
35105: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35106: p_header_num => 1);
35107: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35108:
35109: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35110:
35111: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35105: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35106: p_header_num => 1);
35107: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35108:
35109: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35110:
35111: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35112: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35113: END IF;
35108:
35109: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35110:
35111: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35112: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35113: END IF;
35114:
35115: --
35116: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35115: --
35116: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35117: --
35118: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
35119: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
35120: ELSE
35121: ---------------------------------------------------------------------------------------------------
35122: -- 4262811a Switch Sign
35123: ---------------------------------------------------------------------------------------------------
35120: ELSE
35121: ---------------------------------------------------------------------------------------------------
35122: -- 4262811a Switch Sign
35123: ---------------------------------------------------------------------------------------------------
35124: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35125: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35127: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35121: ---------------------------------------------------------------------------------------------------
35122: -- 4262811a Switch Sign
35123: ---------------------------------------------------------------------------------------------------
35124: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35125: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35127: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35129: -- 5132302
35122: -- 4262811a Switch Sign
35123: ---------------------------------------------------------------------------------------------------
35124: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35125: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35127: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35129: -- 5132302
35130: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35123: ---------------------------------------------------------------------------------------------------
35124: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35125: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35127: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35129: -- 5132302
35130: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35124: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35125: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35127: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35129: -- 5132302
35130: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35132:
35126: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35127: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35129: -- 5132302
35130: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35132:
35133: END IF;
35134:
35127: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35128: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35129: -- 5132302
35130: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35131: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35132:
35133: END IF;
35134:
35135: -- 4955764
35132:
35133: END IF;
35134:
35135: -- 4955764
35136: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35137: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35138:
35139:
35140: XLA_AE_LINES_PKG.ValidateCurrentLine;
35136: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35137: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35138:
35139:
35140: XLA_AE_LINES_PKG.ValidateCurrentLine;
35141: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35142:
35143: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35144: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35137: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35138:
35139:
35140: XLA_AE_LINES_PKG.ValidateCurrentLine;
35141: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35142:
35143: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35144: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35145: ,p_balance_type_code => l_balance_type_code);
35296: --
35297: -- bulk performance
35298: --
35299: l_balance_type_code VARCHAR2(1);
35300: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
35301: l_log_module VARCHAR2(240);
35302:
35303: --
35304: -- Upgrade strategy
35380: ') = 'N'
35381: THEN
35382:
35383: --
35384: XLA_AE_LINES_PKG.SetNewLine;
35385:
35386: p_balance_type_code := l_balance_type_code;
35387: -- set the flag so later we will know whether the gain loss line needs to be created
35388:
35392:
35393: --
35394: -- bulk performance
35395: --
35396: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
35397: p_header_num => 0); -- 4262811
35398: --
35399: -- set accounting line options
35400: --
35397: p_header_num => 0); -- 4262811
35398: --
35399: -- set accounting line options
35400: --
35401: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
35402: p_natural_side_code => 'D'
35403: , p_gain_or_loss_flag => 'N'
35404: , p_gl_transfer_mode_code => 'S'
35405: , p_acct_entry_type_code => 'A'
35411: --
35412: --
35413: -- set accounting line type info
35414: --
35415: xla_ae_lines_pkg.SetAcctLineType
35416: (p_component_type => l_component_type
35417: ,p_event_type_code => l_event_type_code
35418: ,p_line_definition_owner_code => l_line_definition_owner_code
35419: ,p_line_definition_code => l_line_definition_code
35425: ,p_event_class_code => l_event_class_code);
35426: --
35427: -- set accounting class
35428: --
35429: xla_ae_lines_pkg.SetAcctClass(
35430: p_accounting_class_code => 'CASH'
35431: , p_ae_header_id => l_ae_header_id
35432: );
35433:
35433:
35434: --
35435: -- set rounding class
35436: --
35437: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35438: 'RECEIVABLE';
35439:
35440: --
35441: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35437: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
35438: 'RECEIVABLE';
35439:
35440: --
35441: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35442: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35443: --
35444: -- bulk performance
35445: --
35438: 'RECEIVABLE';
35439:
35440: --
35441: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
35442: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35443: --
35444: -- bulk performance
35445: --
35446: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35442: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
35443: --
35444: -- bulk performance
35445: --
35446: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35447:
35448: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35449: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35450:
35444: -- bulk performance
35445: --
35446: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
35447:
35448: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35449: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35450:
35451: -- 4955764
35452: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35448: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
35449: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
35450:
35451: -- 4955764
35452: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35453: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
35454:
35455: -- 4458381 Public Sector Enh
35456:
35492: l_rec_acct_attrs.array_num_value(15) := p_source_65;
35493: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35494: l_rec_acct_attrs.array_char_value(16) := p_source_66;
35495:
35496: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35497: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35498:
35499: ---------------------------------------------------------------------------------------------------------------
35500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35493: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
35494: l_rec_acct_attrs.array_char_value(16) := p_source_66;
35495:
35496: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35497: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35498:
35499: ---------------------------------------------------------------------------------------------------------------
35500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35501: ---------------------------------------------------------------------------------------------------------------
35496: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
35497: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
35498:
35499: ---------------------------------------------------------------------------------------------------------------
35500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35501: ---------------------------------------------------------------------------------------------------------------
35502: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35503:
35504: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35498:
35499: ---------------------------------------------------------------------------------------------------------------
35500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35501: ---------------------------------------------------------------------------------------------------------------
35502: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35503:
35504: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35505: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35506:
35500: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
35501: ---------------------------------------------------------------------------------------------------------------
35502: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35503:
35504: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35505: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35506:
35507: IF xla_accounting_cache_pkg.GetValueChar
35508: (p_source_code => 'LEDGER_CATEGORY_CODE'
35501: ---------------------------------------------------------------------------------------------------------------
35502: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
35503:
35504: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35505: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
35506:
35507: IF xla_accounting_cache_pkg.GetValueChar
35508: (p_source_code => 'LEDGER_CATEGORY_CODE'
35509: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
35512: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
35513: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
35514: )
35515: THEN
35516: xla_ae_lines_pkg.BflowUpgEntry
35517: (p_business_method_code => l_bflow_method_code
35518: ,p_business_class_code => l_bflow_class_code
35519: ,p_balance_type => l_balance_type_code);
35520: ELSE
35529: --
35530: -- call description
35531: --
35532:
35533: xla_ae_lines_pkg.SetLineDescription(
35534: p_ae_header_id => l_ae_header_id
35535: ,p_description => Description_1 (
35536: p_application_id => p_application_id
35537: , p_ae_header_id => l_ae_header_id
35561: , x_value_type_code => l_adr_value_type_code
35562: , p_side => 'NA'
35563: );
35564:
35565: xla_ae_lines_pkg.set_ccid(
35566: p_code_combination_id => l_ccid
35567: , p_value_type_code => l_adr_value_type_code
35568: , p_transaction_coa_id => l_adr_transaction_coa_id
35569: , p_accounting_coa_id => l_adr_accounting_coa_id
35594: );
35595:
35596: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
35597:
35598: xla_ae_lines_pkg.set_segment(
35599: p_to_segment_code => 'GL_ACCOUNT'
35600: , p_segment_value => l_segment
35601: , p_from_segment_code => l_adr_value_segment_code
35602: , p_from_combination_id => l_adr_value_combination_id
35638: xla_accounting_err_pkg.build_message
35639: (p_appli_s_name => 'XLA'
35640: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
35641: ,p_token_1 => 'LINE_NUMBER'
35642: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
35643: ,p_token_2 => 'LINE_TYPE_NAME'
35644: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
35645: l_component_type
35646: ,l_component_code
35674: --
35675: --
35676: ------------------------------------------------------------------------------------------------
35677: -- 4219869 Business Flow
35678: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35679: -- Prior Entry. Currently, the following code is always generated.
35680: ------------------------------------------------------------------------------------------------
35681: XLA_AE_LINES_PKG.ValidateCurrentLine;
35682:
35677: -- 4219869 Business Flow
35678: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
35679: -- Prior Entry. Currently, the following code is always generated.
35680: ------------------------------------------------------------------------------------------------
35681: XLA_AE_LINES_PKG.ValidateCurrentLine;
35682:
35683: ------------------------------------------------------------------------------------
35684: -- 4219869 Business Flow
35685: -- Populated credit and debit amounts -- Need to generate this within IF
35683: ------------------------------------------------------------------------------------
35684: -- 4219869 Business Flow
35685: -- Populated credit and debit amounts -- Need to generate this within IF
35686: ------------------------------------------------------------------------------------
35687: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35688:
35689: ----------------------------------------------------------------------------------
35690: -- 4219869 Business Flow
35691: -- Update journal entry status -- Need to generate this within IF
35715: -- To allow MPA report to determine if it should generate report process
35716: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35717: ------------------------------------------------------------------------------------------
35718:
35719: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35720: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35721: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35722: -- call ADRs
35723: -- Bug 4922099
35716: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
35717: ------------------------------------------------------------------------------------------
35718:
35719: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
35720: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
35721: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
35722: -- call ADRs
35723: -- Bug 4922099
35724: --
35740: , x_value_type_code => l_adr_value_type_code
35741: , p_side => 'NA'
35742: );
35743:
35744: xla_ae_lines_pkg.set_ccid(
35745: p_code_combination_id => l_ccid
35746: , p_value_type_code => l_adr_value_type_code
35747: , p_transaction_coa_id => l_adr_transaction_coa_id
35748: , p_accounting_coa_id => l_adr_accounting_coa_id
35773: );
35774:
35775: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
35776:
35777: xla_ae_lines_pkg.set_segment(
35778: p_to_segment_code => 'GL_ACCOUNT'
35779: , p_segment_value => l_segment
35780: , p_from_segment_code => l_adr_value_segment_code
35781: , p_from_combination_id => l_adr_value_combination_id
35804:
35805: --
35806: -- Update the line information that should be overwritten
35807: --
35808: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35809: p_header_num => 1);
35810: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35811:
35812: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35806: -- Update the line information that should be overwritten
35807: --
35808: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35809: p_header_num => 1);
35810: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35811:
35812: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35813:
35814: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35808: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
35809: p_header_num => 1);
35810: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
35811:
35812: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35813:
35814: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35815: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35816: END IF;
35811:
35812: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
35813:
35814: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
35815: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
35816: END IF;
35817:
35818: --
35819: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35818: --
35819: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
35820: --
35821: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
35822: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
35823: ELSE
35824: ---------------------------------------------------------------------------------------------------
35825: -- 4262811a Switch Sign
35826: ---------------------------------------------------------------------------------------------------
35823: ELSE
35824: ---------------------------------------------------------------------------------------------------
35825: -- 4262811a Switch Sign
35826: ---------------------------------------------------------------------------------------------------
35827: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35828: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35829: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35830: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35831: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35824: ---------------------------------------------------------------------------------------------------
35825: -- 4262811a Switch Sign
35826: ---------------------------------------------------------------------------------------------------
35827: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35828: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35829: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35830: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35831: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35832: -- 5132302
35825: -- 4262811a Switch Sign
35826: ---------------------------------------------------------------------------------------------------
35827: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35828: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35829: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35830: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35831: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35832: -- 5132302
35833: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35826: ---------------------------------------------------------------------------------------------------
35827: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35828: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35829: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35830: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35831: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35832: -- 5132302
35833: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35834: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35827: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
35828: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35829: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35830: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35831: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35832: -- 5132302
35833: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35834: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35835:
35829: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35830: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35831: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35832: -- 5132302
35833: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35834: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35835:
35836: END IF;
35837:
35830: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
35831: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35832: -- 5132302
35833: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
35834: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
35835:
35836: END IF;
35837:
35838: -- 4955764
35835:
35836: END IF;
35837:
35838: -- 4955764
35839: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35840: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35841:
35842:
35843: XLA_AE_LINES_PKG.ValidateCurrentLine;
35839: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
35840: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35841:
35842:
35843: XLA_AE_LINES_PKG.ValidateCurrentLine;
35844: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35845:
35846: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35847: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35840: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
35841:
35842:
35843: XLA_AE_LINES_PKG.ValidateCurrentLine;
35844: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
35845:
35846: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
35847: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
35848: ,p_balance_type_code => l_balance_type_code);
35995: --
35996: -- bulk performance
35997: --
35998: l_balance_type_code VARCHAR2(1);
35999: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
36000: l_log_module VARCHAR2(240);
36001:
36002: --
36003: -- Upgrade strategy
36067: ') = 'Y'
36068: THEN
36069:
36070: --
36071: XLA_AE_LINES_PKG.SetNewLine;
36072:
36073: p_balance_type_code := l_balance_type_code;
36074: -- set the flag so later we will know whether the gain loss line needs to be created
36075:
36079:
36080: --
36081: -- bulk performance
36082: --
36083: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
36084: p_header_num => 0); -- 4262811
36085: --
36086: -- set accounting line options
36087: --
36084: p_header_num => 0); -- 4262811
36085: --
36086: -- set accounting line options
36087: --
36088: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
36089: p_natural_side_code => 'C'
36090: , p_gain_or_loss_flag => 'N'
36091: , p_gl_transfer_mode_code => 'S'
36092: , p_acct_entry_type_code => 'A'
36098: --
36099: --
36100: -- set accounting line type info
36101: --
36102: xla_ae_lines_pkg.SetAcctLineType
36103: (p_component_type => l_component_type
36104: ,p_event_type_code => l_event_type_code
36105: ,p_line_definition_owner_code => l_line_definition_owner_code
36106: ,p_line_definition_code => l_line_definition_code
36112: ,p_event_class_code => l_event_class_code);
36113: --
36114: -- set accounting class
36115: --
36116: xla_ae_lines_pkg.SetAcctClass(
36117: p_accounting_class_code => 'CASH'
36118: , p_ae_header_id => l_ae_header_id
36119: );
36120:
36120:
36121: --
36122: -- set rounding class
36123: --
36124: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36125: 'RECEIVABLE';
36126:
36127: --
36128: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36124: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36125: 'RECEIVABLE';
36126:
36127: --
36128: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36129: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36130: --
36131: -- bulk performance
36132: --
36125: 'RECEIVABLE';
36126:
36127: --
36128: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36129: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36130: --
36131: -- bulk performance
36132: --
36133: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36129: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36130: --
36131: -- bulk performance
36132: --
36133: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36134:
36135: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36136: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36137:
36131: -- bulk performance
36132: --
36133: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36134:
36135: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36136: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36137:
36138: -- 4955764
36139: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36135: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36136: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36137:
36138: -- 4955764
36139: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36140: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
36141:
36142: -- 4458381 Public Sector Enh
36143:
36179: l_rec_acct_attrs.array_num_value(15) := p_source_65;
36180: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
36181: l_rec_acct_attrs.array_char_value(16) := p_source_66;
36182:
36183: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36184: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36185:
36186: ---------------------------------------------------------------------------------------------------------------
36187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36180: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
36181: l_rec_acct_attrs.array_char_value(16) := p_source_66;
36182:
36183: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36184: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36185:
36186: ---------------------------------------------------------------------------------------------------------------
36187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36188: ---------------------------------------------------------------------------------------------------------------
36183: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36184: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36185:
36186: ---------------------------------------------------------------------------------------------------------------
36187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36188: ---------------------------------------------------------------------------------------------------------------
36189: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36190:
36191: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36185:
36186: ---------------------------------------------------------------------------------------------------------------
36187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36188: ---------------------------------------------------------------------------------------------------------------
36189: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36190:
36191: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36192: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36193:
36187: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36188: ---------------------------------------------------------------------------------------------------------------
36189: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36190:
36191: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36192: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36193:
36194: IF xla_accounting_cache_pkg.GetValueChar
36195: (p_source_code => 'LEDGER_CATEGORY_CODE'
36188: ---------------------------------------------------------------------------------------------------------------
36189: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36190:
36191: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36192: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36193:
36194: IF xla_accounting_cache_pkg.GetValueChar
36195: (p_source_code => 'LEDGER_CATEGORY_CODE'
36196: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
36199: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
36200: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
36201: )
36202: THEN
36203: xla_ae_lines_pkg.BflowUpgEntry
36204: (p_business_method_code => l_bflow_method_code
36205: ,p_business_class_code => l_bflow_class_code
36206: ,p_balance_type => l_balance_type_code);
36207: ELSE
36216: --
36217: -- call description
36218: --
36219:
36220: xla_ae_lines_pkg.SetLineDescription(
36221: p_ae_header_id => l_ae_header_id
36222: ,p_description => Description_1 (
36223: p_application_id => p_application_id
36224: , p_ae_header_id => l_ae_header_id
36248: , x_value_type_code => l_adr_value_type_code
36249: , p_side => 'NA'
36250: );
36251:
36252: xla_ae_lines_pkg.set_ccid(
36253: p_code_combination_id => l_ccid
36254: , p_value_type_code => l_adr_value_type_code
36255: , p_transaction_coa_id => l_adr_transaction_coa_id
36256: , p_accounting_coa_id => l_adr_accounting_coa_id
36281: );
36282:
36283: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
36284:
36285: xla_ae_lines_pkg.set_segment(
36286: p_to_segment_code => 'GL_ACCOUNT'
36287: , p_segment_value => l_segment
36288: , p_from_segment_code => l_adr_value_segment_code
36289: , p_from_combination_id => l_adr_value_combination_id
36325: xla_accounting_err_pkg.build_message
36326: (p_appli_s_name => 'XLA'
36327: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
36328: ,p_token_1 => 'LINE_NUMBER'
36329: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
36330: ,p_token_2 => 'LINE_TYPE_NAME'
36331: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
36332: l_component_type
36333: ,l_component_code
36361: --
36362: --
36363: ------------------------------------------------------------------------------------------------
36364: -- 4219869 Business Flow
36365: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36366: -- Prior Entry. Currently, the following code is always generated.
36367: ------------------------------------------------------------------------------------------------
36368: XLA_AE_LINES_PKG.ValidateCurrentLine;
36369:
36364: -- 4219869 Business Flow
36365: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
36366: -- Prior Entry. Currently, the following code is always generated.
36367: ------------------------------------------------------------------------------------------------
36368: XLA_AE_LINES_PKG.ValidateCurrentLine;
36369:
36370: ------------------------------------------------------------------------------------
36371: -- 4219869 Business Flow
36372: -- Populated credit and debit amounts -- Need to generate this within IF
36370: ------------------------------------------------------------------------------------
36371: -- 4219869 Business Flow
36372: -- Populated credit and debit amounts -- Need to generate this within IF
36373: ------------------------------------------------------------------------------------
36374: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36375:
36376: ----------------------------------------------------------------------------------
36377: -- 4219869 Business Flow
36378: -- Update journal entry status -- Need to generate this within IF
36402: -- To allow MPA report to determine if it should generate report process
36403: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36404: ------------------------------------------------------------------------------------------
36405:
36406: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36407: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36408: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36409: -- call ADRs
36410: -- Bug 4922099
36403: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
36404: ------------------------------------------------------------------------------------------
36405:
36406: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
36407: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
36408: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
36409: -- call ADRs
36410: -- Bug 4922099
36411: --
36427: , x_value_type_code => l_adr_value_type_code
36428: , p_side => 'NA'
36429: );
36430:
36431: xla_ae_lines_pkg.set_ccid(
36432: p_code_combination_id => l_ccid
36433: , p_value_type_code => l_adr_value_type_code
36434: , p_transaction_coa_id => l_adr_transaction_coa_id
36435: , p_accounting_coa_id => l_adr_accounting_coa_id
36460: );
36461:
36462: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
36463:
36464: xla_ae_lines_pkg.set_segment(
36465: p_to_segment_code => 'GL_ACCOUNT'
36466: , p_segment_value => l_segment
36467: , p_from_segment_code => l_adr_value_segment_code
36468: , p_from_combination_id => l_adr_value_combination_id
36491:
36492: --
36493: -- Update the line information that should be overwritten
36494: --
36495: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36496: p_header_num => 1);
36497: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36498:
36499: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36493: -- Update the line information that should be overwritten
36494: --
36495: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36496: p_header_num => 1);
36497: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36498:
36499: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36500:
36501: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36495: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
36496: p_header_num => 1);
36497: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
36498:
36499: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36500:
36501: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36502: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36503: END IF;
36498:
36499: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
36500:
36501: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
36502: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
36503: END IF;
36504:
36505: --
36506: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36505: --
36506: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
36507: --
36508: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
36509: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
36510: ELSE
36511: ---------------------------------------------------------------------------------------------------
36512: -- 4262811a Switch Sign
36513: ---------------------------------------------------------------------------------------------------
36510: ELSE
36511: ---------------------------------------------------------------------------------------------------
36512: -- 4262811a Switch Sign
36513: ---------------------------------------------------------------------------------------------------
36514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36511: ---------------------------------------------------------------------------------------------------
36512: -- 4262811a Switch Sign
36513: ---------------------------------------------------------------------------------------------------
36514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36519: -- 5132302
36512: -- 4262811a Switch Sign
36513: ---------------------------------------------------------------------------------------------------
36514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36519: -- 5132302
36520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36513: ---------------------------------------------------------------------------------------------------
36514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36519: -- 5132302
36520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36521: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36514: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
36515: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36519: -- 5132302
36520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36521: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36522:
36516: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36519: -- 5132302
36520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36521: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36522:
36523: END IF;
36524:
36517: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
36518: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36519: -- 5132302
36520: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
36521: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
36522:
36523: END IF;
36524:
36525: -- 4955764
36522:
36523: END IF;
36524:
36525: -- 4955764
36526: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36527: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36528:
36529:
36530: XLA_AE_LINES_PKG.ValidateCurrentLine;
36526: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36527: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36528:
36529:
36530: XLA_AE_LINES_PKG.ValidateCurrentLine;
36531: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36532:
36533: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36534: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36527: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
36528:
36529:
36530: XLA_AE_LINES_PKG.ValidateCurrentLine;
36531: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
36532:
36533: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
36534: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
36535: ,p_balance_type_code => l_balance_type_code);
36680: --
36681: -- bulk performance
36682: --
36683: l_balance_type_code VARCHAR2(1);
36684: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
36685: l_log_module VARCHAR2(240);
36686:
36687: --
36688: -- Upgrade strategy
36750: ') = 'Y'
36751: THEN
36752:
36753: --
36754: XLA_AE_LINES_PKG.SetNewLine;
36755:
36756: p_balance_type_code := l_balance_type_code;
36757: -- set the flag so later we will know whether the gain loss line needs to be created
36758:
36762:
36763: --
36764: -- bulk performance
36765: --
36766: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
36767: p_header_num => 0); -- 4262811
36768: --
36769: -- set accounting line options
36770: --
36767: p_header_num => 0); -- 4262811
36768: --
36769: -- set accounting line options
36770: --
36771: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
36772: p_natural_side_code => 'C'
36773: , p_gain_or_loss_flag => 'N'
36774: , p_gl_transfer_mode_code => 'S'
36775: , p_acct_entry_type_code => 'A'
36781: --
36782: --
36783: -- set accounting line type info
36784: --
36785: xla_ae_lines_pkg.SetAcctLineType
36786: (p_component_type => l_component_type
36787: ,p_event_type_code => l_event_type_code
36788: ,p_line_definition_owner_code => l_line_definition_owner_code
36789: ,p_line_definition_code => l_line_definition_code
36795: ,p_event_class_code => l_event_class_code);
36796: --
36797: -- set accounting class
36798: --
36799: xla_ae_lines_pkg.SetAcctClass(
36800: p_accounting_class_code => 'CONFIRMATION'
36801: , p_ae_header_id => l_ae_header_id
36802: );
36803:
36803:
36804: --
36805: -- set rounding class
36806: --
36807: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36808: 'RECEIVABLE';
36809:
36810: --
36811: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36807: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
36808: 'RECEIVABLE';
36809:
36810: --
36811: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36812: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36813: --
36814: -- bulk performance
36815: --
36808: 'RECEIVABLE';
36809:
36810: --
36811: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
36812: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36813: --
36814: -- bulk performance
36815: --
36816: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36812: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
36813: --
36814: -- bulk performance
36815: --
36816: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36817:
36818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36819: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36820:
36814: -- bulk performance
36815: --
36816: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
36817:
36818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36819: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36820:
36821: -- 4955764
36822: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36818: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
36819: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
36820:
36821: -- 4955764
36822: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
36823: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
36824:
36825: -- 4458381 Public Sector Enh
36826:
36862: l_rec_acct_attrs.array_num_value(15) := p_source_65;
36863: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
36864: l_rec_acct_attrs.array_char_value(16) := p_source_66;
36865:
36866: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36867: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36868:
36869: ---------------------------------------------------------------------------------------------------------------
36870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36863: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
36864: l_rec_acct_attrs.array_char_value(16) := p_source_66;
36865:
36866: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36867: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36868:
36869: ---------------------------------------------------------------------------------------------------------------
36870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36871: ---------------------------------------------------------------------------------------------------------------
36866: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
36867: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
36868:
36869: ---------------------------------------------------------------------------------------------------------------
36870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36871: ---------------------------------------------------------------------------------------------------------------
36872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36873:
36874: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36868:
36869: ---------------------------------------------------------------------------------------------------------------
36870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36871: ---------------------------------------------------------------------------------------------------------------
36872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36873:
36874: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36875: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36876:
36870: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
36871: ---------------------------------------------------------------------------------------------------------------
36872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36873:
36874: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36875: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36876:
36877: IF xla_accounting_cache_pkg.GetValueChar
36878: (p_source_code => 'LEDGER_CATEGORY_CODE'
36871: ---------------------------------------------------------------------------------------------------------------
36872: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
36873:
36874: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36875: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
36876:
36877: IF xla_accounting_cache_pkg.GetValueChar
36878: (p_source_code => 'LEDGER_CATEGORY_CODE'
36879: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
36882: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
36883: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
36884: )
36885: THEN
36886: xla_ae_lines_pkg.BflowUpgEntry
36887: (p_business_method_code => l_bflow_method_code
36888: ,p_business_class_code => l_bflow_class_code
36889: ,p_balance_type => l_balance_type_code);
36890: ELSE
36899: --
36900: -- call description
36901: --
36902:
36903: xla_ae_lines_pkg.SetLineDescription(
36904: p_ae_header_id => l_ae_header_id
36905: ,p_description => Description_1 (
36906: p_application_id => p_application_id
36907: , p_ae_header_id => l_ae_header_id
36931: , x_value_type_code => l_adr_value_type_code
36932: , p_side => 'NA'
36933: );
36934:
36935: xla_ae_lines_pkg.set_ccid(
36936: p_code_combination_id => l_ccid
36937: , p_value_type_code => l_adr_value_type_code
36938: , p_transaction_coa_id => l_adr_transaction_coa_id
36939: , p_accounting_coa_id => l_adr_accounting_coa_id
36964: );
36965:
36966: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
36967:
36968: xla_ae_lines_pkg.set_segment(
36969: p_to_segment_code => 'GL_ACCOUNT'
36970: , p_segment_value => l_segment
36971: , p_from_segment_code => l_adr_value_segment_code
36972: , p_from_combination_id => l_adr_value_combination_id
37008: xla_accounting_err_pkg.build_message
37009: (p_appli_s_name => 'XLA'
37010: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
37011: ,p_token_1 => 'LINE_NUMBER'
37012: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
37013: ,p_token_2 => 'LINE_TYPE_NAME'
37014: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
37015: l_component_type
37016: ,l_component_code
37044: --
37045: --
37046: ------------------------------------------------------------------------------------------------
37047: -- 4219869 Business Flow
37048: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37049: -- Prior Entry. Currently, the following code is always generated.
37050: ------------------------------------------------------------------------------------------------
37051: XLA_AE_LINES_PKG.ValidateCurrentLine;
37052:
37047: -- 4219869 Business Flow
37048: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37049: -- Prior Entry. Currently, the following code is always generated.
37050: ------------------------------------------------------------------------------------------------
37051: XLA_AE_LINES_PKG.ValidateCurrentLine;
37052:
37053: ------------------------------------------------------------------------------------
37054: -- 4219869 Business Flow
37055: -- Populated credit and debit amounts -- Need to generate this within IF
37053: ------------------------------------------------------------------------------------
37054: -- 4219869 Business Flow
37055: -- Populated credit and debit amounts -- Need to generate this within IF
37056: ------------------------------------------------------------------------------------
37057: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37058:
37059: ----------------------------------------------------------------------------------
37060: -- 4219869 Business Flow
37061: -- Update journal entry status -- Need to generate this within IF
37085: -- To allow MPA report to determine if it should generate report process
37086: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37087: ------------------------------------------------------------------------------------------
37088:
37089: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37090: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37091: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37092: -- call ADRs
37093: -- Bug 4922099
37086: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37087: ------------------------------------------------------------------------------------------
37088:
37089: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37090: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37091: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37092: -- call ADRs
37093: -- Bug 4922099
37094: --
37110: , x_value_type_code => l_adr_value_type_code
37111: , p_side => 'NA'
37112: );
37113:
37114: xla_ae_lines_pkg.set_ccid(
37115: p_code_combination_id => l_ccid
37116: , p_value_type_code => l_adr_value_type_code
37117: , p_transaction_coa_id => l_adr_transaction_coa_id
37118: , p_accounting_coa_id => l_adr_accounting_coa_id
37143: );
37144:
37145: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
37146:
37147: xla_ae_lines_pkg.set_segment(
37148: p_to_segment_code => 'GL_ACCOUNT'
37149: , p_segment_value => l_segment
37150: , p_from_segment_code => l_adr_value_segment_code
37151: , p_from_combination_id => l_adr_value_combination_id
37174:
37175: --
37176: -- Update the line information that should be overwritten
37177: --
37178: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37179: p_header_num => 1);
37180: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37181:
37182: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37176: -- Update the line information that should be overwritten
37177: --
37178: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37179: p_header_num => 1);
37180: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37181:
37182: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37183:
37184: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37178: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37179: p_header_num => 1);
37180: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37181:
37182: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37183:
37184: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37185: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37186: END IF;
37181:
37182: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37183:
37184: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37185: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37186: END IF;
37187:
37188: --
37189: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37188: --
37189: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37190: --
37191: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
37192: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
37193: ELSE
37194: ---------------------------------------------------------------------------------------------------
37195: -- 4262811a Switch Sign
37196: ---------------------------------------------------------------------------------------------------
37193: ELSE
37194: ---------------------------------------------------------------------------------------------------
37195: -- 4262811a Switch Sign
37196: ---------------------------------------------------------------------------------------------------
37197: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37198: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37199: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37200: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37201: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37194: ---------------------------------------------------------------------------------------------------
37195: -- 4262811a Switch Sign
37196: ---------------------------------------------------------------------------------------------------
37197: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37198: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37199: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37200: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37201: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37202: -- 5132302
37195: -- 4262811a Switch Sign
37196: ---------------------------------------------------------------------------------------------------
37197: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37198: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37199: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37200: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37201: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37202: -- 5132302
37203: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37196: ---------------------------------------------------------------------------------------------------
37197: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37198: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37199: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37200: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37201: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37202: -- 5132302
37203: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37204: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37197: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37198: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37199: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37200: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37201: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37202: -- 5132302
37203: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37204: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37205:
37199: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37200: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37201: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37202: -- 5132302
37203: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37204: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37205:
37206: END IF;
37207:
37200: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37201: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37202: -- 5132302
37203: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37204: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37205:
37206: END IF;
37207:
37208: -- 4955764
37205:
37206: END IF;
37207:
37208: -- 4955764
37209: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37210: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37211:
37212:
37213: XLA_AE_LINES_PKG.ValidateCurrentLine;
37209: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37210: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37211:
37212:
37213: XLA_AE_LINES_PKG.ValidateCurrentLine;
37214: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37215:
37216: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37217: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37210: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37211:
37212:
37213: XLA_AE_LINES_PKG.ValidateCurrentLine;
37214: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37215:
37216: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37217: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37218: ,p_balance_type_code => l_balance_type_code);
37351: --
37352: -- bulk performance
37353: --
37354: l_balance_type_code VARCHAR2(1);
37355: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
37356: l_log_module VARCHAR2(240);
37357:
37358: --
37359: -- Upgrade strategy
37431: ') = 'N'
37432: THEN
37433:
37434: --
37435: XLA_AE_LINES_PKG.SetNewLine;
37436:
37437: p_balance_type_code := l_balance_type_code;
37438: -- set the flag so later we will know whether the gain loss line needs to be created
37439:
37443:
37444: --
37445: -- bulk performance
37446: --
37447: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
37448: p_header_num => 0); -- 4262811
37449: --
37450: -- set accounting line options
37451: --
37448: p_header_num => 0); -- 4262811
37449: --
37450: -- set accounting line options
37451: --
37452: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
37453: p_natural_side_code => 'C'
37454: , p_gain_or_loss_flag => 'N'
37455: , p_gl_transfer_mode_code => 'S'
37456: , p_acct_entry_type_code => 'A'
37462: --
37463: --
37464: -- set accounting line type info
37465: --
37466: xla_ae_lines_pkg.SetAcctLineType
37467: (p_component_type => l_component_type
37468: ,p_event_type_code => l_event_type_code
37469: ,p_line_definition_owner_code => l_line_definition_owner_code
37470: ,p_line_definition_code => l_line_definition_code
37476: ,p_event_class_code => l_event_class_code);
37477: --
37478: -- set accounting class
37479: --
37480: xla_ae_lines_pkg.SetAcctClass(
37481: p_accounting_class_code => 'RECEIVABLE'
37482: , p_ae_header_id => l_ae_header_id
37483: );
37484:
37484:
37485: --
37486: -- set rounding class
37487: --
37488: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37489: 'RECEIVABLE';
37490:
37491: --
37492: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37488: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
37489: 'RECEIVABLE';
37490:
37491: --
37492: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37493: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37494: --
37495: -- bulk performance
37496: --
37489: 'RECEIVABLE';
37490:
37491: --
37492: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
37493: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37494: --
37495: -- bulk performance
37496: --
37497: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37493: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
37494: --
37495: -- bulk performance
37496: --
37497: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37498:
37499: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37500: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37501:
37495: -- bulk performance
37496: --
37497: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
37498:
37499: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37500: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37501:
37502: -- 4955764
37503: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37499: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
37500: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
37501:
37502: -- 4955764
37503: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37504: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
37505:
37506: -- 4458381 Public Sector Enh
37507:
37533: l_rec_acct_attrs.array_num_value(10) := p_source_24;
37534: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
37535: l_rec_acct_attrs.array_char_value(11) := p_source_66;
37536:
37537: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37538: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37539:
37540: ---------------------------------------------------------------------------------------------------------------
37541: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37534: l_rec_acct_attrs.array_acct_attr_code(11) := 'PARTY_TYPE';
37535: l_rec_acct_attrs.array_char_value(11) := p_source_66;
37536:
37537: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37538: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37539:
37540: ---------------------------------------------------------------------------------------------------------------
37541: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37542: ---------------------------------------------------------------------------------------------------------------
37537: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
37538: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
37539:
37540: ---------------------------------------------------------------------------------------------------------------
37541: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37542: ---------------------------------------------------------------------------------------------------------------
37543: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37544:
37545: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37539:
37540: ---------------------------------------------------------------------------------------------------------------
37541: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37542: ---------------------------------------------------------------------------------------------------------------
37543: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37544:
37545: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37546: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37547:
37541: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
37542: ---------------------------------------------------------------------------------------------------------------
37543: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37544:
37545: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37546: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37547:
37548: IF xla_accounting_cache_pkg.GetValueChar
37549: (p_source_code => 'LEDGER_CATEGORY_CODE'
37542: ---------------------------------------------------------------------------------------------------------------
37543: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
37544:
37545: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37546: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
37547:
37548: IF xla_accounting_cache_pkg.GetValueChar
37549: (p_source_code => 'LEDGER_CATEGORY_CODE'
37550: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
37553: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
37554: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
37555: )
37556: THEN
37557: xla_ae_lines_pkg.BflowUpgEntry
37558: (p_business_method_code => l_bflow_method_code
37559: ,p_business_class_code => l_bflow_class_code
37560: ,p_balance_type => l_balance_type_code);
37561: ELSE
37559: ,p_business_class_code => l_bflow_class_code
37560: ,p_balance_type => l_balance_type_code);
37561: ELSE
37562: NULL;
37563: XLA_AE_LINES_PKG.business_flow_validation(
37564: p_business_method_code => l_bflow_method_code
37565: ,p_business_class_code => l_bflow_class_code
37566: ,p_inherit_description_flag => l_inherit_desc_flag);
37567: END IF;
37606: xla_accounting_err_pkg.build_message
37607: (p_appli_s_name => 'XLA'
37608: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
37609: ,p_token_1 => 'LINE_NUMBER'
37610: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
37611: ,p_token_2 => 'LINE_TYPE_NAME'
37612: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
37613: l_component_type
37614: ,l_component_code
37642: --
37643: --
37644: ------------------------------------------------------------------------------------------------
37645: -- 4219869 Business Flow
37646: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
37647: -- Prior Entry. Currently, the following code is always generated.
37648: ------------------------------------------------------------------------------------------------
37649: -- No ValidateCurrentLine for business flow method of Prior Entry
37650:
37651: ------------------------------------------------------------------------------------
37652: -- 4219869 Business Flow
37653: -- Populated credit and debit amounts -- Need to generate this within IF
37654: ------------------------------------------------------------------------------------
37655: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37656:
37657: ----------------------------------------------------------------------------------
37658: -- 4219869 Business Flow
37659: -- Update journal entry status -- Need to generate this within IF
37683: -- To allow MPA report to determine if it should generate report process
37684: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37685: ------------------------------------------------------------------------------------------
37686:
37687: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37688: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37689: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37690: -- call ADRs
37691: -- Bug 4922099
37684: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
37685: ------------------------------------------------------------------------------------------
37686:
37687: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
37688: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
37689: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
37690: -- call ADRs
37691: -- Bug 4922099
37692: --
37705:
37706: --
37707: -- Update the line information that should be overwritten
37708: --
37709: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37710: p_header_num => 1);
37711: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37712:
37713: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37707: -- Update the line information that should be overwritten
37708: --
37709: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37710: p_header_num => 1);
37711: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37712:
37713: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37714:
37715: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37709: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
37710: p_header_num => 1);
37711: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
37712:
37713: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37714:
37715: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37716: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37717: END IF;
37712:
37713: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
37714:
37715: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
37716: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
37717: END IF;
37718:
37719: --
37720: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37719: --
37720: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
37721: --
37722: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
37723: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
37724: ELSE
37725: ---------------------------------------------------------------------------------------------------
37726: -- 4262811a Switch Sign
37727: ---------------------------------------------------------------------------------------------------
37724: ELSE
37725: ---------------------------------------------------------------------------------------------------
37726: -- 4262811a Switch Sign
37727: ---------------------------------------------------------------------------------------------------
37728: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37729: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37730: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37731: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37732: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37725: ---------------------------------------------------------------------------------------------------
37726: -- 4262811a Switch Sign
37727: ---------------------------------------------------------------------------------------------------
37728: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37729: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37730: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37731: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37732: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37733: -- 5132302
37726: -- 4262811a Switch Sign
37727: ---------------------------------------------------------------------------------------------------
37728: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37729: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37730: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37731: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37732: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37733: -- 5132302
37734: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37727: ---------------------------------------------------------------------------------------------------
37728: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37729: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37730: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37731: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37732: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37733: -- 5132302
37734: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37735: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37728: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
37729: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37730: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37731: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37732: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37733: -- 5132302
37734: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37735: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37736:
37730: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37731: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37732: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37733: -- 5132302
37734: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37735: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37736:
37737: END IF;
37738:
37731: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
37732: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37733: -- 5132302
37734: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
37735: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
37736:
37737: END IF;
37738:
37739: -- 4955764
37736:
37737: END IF;
37738:
37739: -- 4955764
37740: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37741: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37742:
37743:
37744: XLA_AE_LINES_PKG.ValidateCurrentLine;
37740: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
37741: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37742:
37743:
37744: XLA_AE_LINES_PKG.ValidateCurrentLine;
37745: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37746:
37747: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37748: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37741: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
37742:
37743:
37744: XLA_AE_LINES_PKG.ValidateCurrentLine;
37745: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
37746:
37747: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
37748: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
37749: ,p_balance_type_code => l_balance_type_code);
37894: --
37895: -- bulk performance
37896: --
37897: l_balance_type_code VARCHAR2(1);
37898: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
37899: l_log_module VARCHAR2(240);
37900:
37901: --
37902: -- Upgrade strategy
37964: ') = 'Y'
37965: THEN
37966:
37967: --
37968: XLA_AE_LINES_PKG.SetNewLine;
37969:
37970: p_balance_type_code := l_balance_type_code;
37971: -- set the flag so later we will know whether the gain loss line needs to be created
37972:
37976:
37977: --
37978: -- bulk performance
37979: --
37980: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
37981: p_header_num => 0); -- 4262811
37982: --
37983: -- set accounting line options
37984: --
37981: p_header_num => 0); -- 4262811
37982: --
37983: -- set accounting line options
37984: --
37985: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
37986: p_natural_side_code => 'C'
37987: , p_gain_or_loss_flag => 'N'
37988: , p_gl_transfer_mode_code => 'S'
37989: , p_acct_entry_type_code => 'A'
37995: --
37996: --
37997: -- set accounting line type info
37998: --
37999: xla_ae_lines_pkg.SetAcctLineType
38000: (p_component_type => l_component_type
38001: ,p_event_type_code => l_event_type_code
38002: ,p_line_definition_owner_code => l_line_definition_owner_code
38003: ,p_line_definition_code => l_line_definition_code
38009: ,p_event_class_code => l_event_class_code);
38010: --
38011: -- set accounting class
38012: --
38013: xla_ae_lines_pkg.SetAcctClass(
38014: p_accounting_class_code => 'REMITTANCE'
38015: , p_ae_header_id => l_ae_header_id
38016: );
38017:
38017:
38018: --
38019: -- set rounding class
38020: --
38021: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38022: 'RECEIVABLE';
38023:
38024: --
38025: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38021: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38022: 'RECEIVABLE';
38023:
38024: --
38025: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38026: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38027: --
38028: -- bulk performance
38029: --
38022: 'RECEIVABLE';
38023:
38024: --
38025: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38026: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38027: --
38028: -- bulk performance
38029: --
38030: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38026: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38027: --
38028: -- bulk performance
38029: --
38030: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38031:
38032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38033: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38034:
38028: -- bulk performance
38029: --
38030: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38031:
38032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38033: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38034:
38035: -- 4955764
38036: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38032: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38033: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38034:
38035: -- 4955764
38036: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38037: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
38038:
38039: -- 4458381 Public Sector Enh
38040:
38076: l_rec_acct_attrs.array_num_value(15) := p_source_65;
38077: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
38078: l_rec_acct_attrs.array_char_value(16) := p_source_66;
38079:
38080: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38081: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38082:
38083: ---------------------------------------------------------------------------------------------------------------
38084: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38077: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
38078: l_rec_acct_attrs.array_char_value(16) := p_source_66;
38079:
38080: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38081: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38082:
38083: ---------------------------------------------------------------------------------------------------------------
38084: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38085: ---------------------------------------------------------------------------------------------------------------
38080: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38081: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38082:
38083: ---------------------------------------------------------------------------------------------------------------
38084: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38085: ---------------------------------------------------------------------------------------------------------------
38086: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38087:
38088: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38082:
38083: ---------------------------------------------------------------------------------------------------------------
38084: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38085: ---------------------------------------------------------------------------------------------------------------
38086: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38087:
38088: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38089: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38090:
38084: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38085: ---------------------------------------------------------------------------------------------------------------
38086: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38087:
38088: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38089: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38090:
38091: IF xla_accounting_cache_pkg.GetValueChar
38092: (p_source_code => 'LEDGER_CATEGORY_CODE'
38085: ---------------------------------------------------------------------------------------------------------------
38086: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38087:
38088: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38089: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38090:
38091: IF xla_accounting_cache_pkg.GetValueChar
38092: (p_source_code => 'LEDGER_CATEGORY_CODE'
38093: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
38096: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
38097: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
38098: )
38099: THEN
38100: xla_ae_lines_pkg.BflowUpgEntry
38101: (p_business_method_code => l_bflow_method_code
38102: ,p_business_class_code => l_bflow_class_code
38103: ,p_balance_type => l_balance_type_code);
38104: ELSE
38113: --
38114: -- call description
38115: --
38116:
38117: xla_ae_lines_pkg.SetLineDescription(
38118: p_ae_header_id => l_ae_header_id
38119: ,p_description => Description_1 (
38120: p_application_id => p_application_id
38121: , p_ae_header_id => l_ae_header_id
38145: , x_value_type_code => l_adr_value_type_code
38146: , p_side => 'NA'
38147: );
38148:
38149: xla_ae_lines_pkg.set_ccid(
38150: p_code_combination_id => l_ccid
38151: , p_value_type_code => l_adr_value_type_code
38152: , p_transaction_coa_id => l_adr_transaction_coa_id
38153: , p_accounting_coa_id => l_adr_accounting_coa_id
38178: );
38179:
38180: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
38181:
38182: xla_ae_lines_pkg.set_segment(
38183: p_to_segment_code => 'GL_ACCOUNT'
38184: , p_segment_value => l_segment
38185: , p_from_segment_code => l_adr_value_segment_code
38186: , p_from_combination_id => l_adr_value_combination_id
38222: xla_accounting_err_pkg.build_message
38223: (p_appli_s_name => 'XLA'
38224: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
38225: ,p_token_1 => 'LINE_NUMBER'
38226: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
38227: ,p_token_2 => 'LINE_TYPE_NAME'
38228: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
38229: l_component_type
38230: ,l_component_code
38258: --
38259: --
38260: ------------------------------------------------------------------------------------------------
38261: -- 4219869 Business Flow
38262: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38263: -- Prior Entry. Currently, the following code is always generated.
38264: ------------------------------------------------------------------------------------------------
38265: XLA_AE_LINES_PKG.ValidateCurrentLine;
38266:
38261: -- 4219869 Business Flow
38262: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38263: -- Prior Entry. Currently, the following code is always generated.
38264: ------------------------------------------------------------------------------------------------
38265: XLA_AE_LINES_PKG.ValidateCurrentLine;
38266:
38267: ------------------------------------------------------------------------------------
38268: -- 4219869 Business Flow
38269: -- Populated credit and debit amounts -- Need to generate this within IF
38267: ------------------------------------------------------------------------------------
38268: -- 4219869 Business Flow
38269: -- Populated credit and debit amounts -- Need to generate this within IF
38270: ------------------------------------------------------------------------------------
38271: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38272:
38273: ----------------------------------------------------------------------------------
38274: -- 4219869 Business Flow
38275: -- Update journal entry status -- Need to generate this within IF
38299: -- To allow MPA report to determine if it should generate report process
38300: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38301: ------------------------------------------------------------------------------------------
38302:
38303: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38304: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38305: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38306: -- call ADRs
38307: -- Bug 4922099
38300: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38301: ------------------------------------------------------------------------------------------
38302:
38303: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38304: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38305: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38306: -- call ADRs
38307: -- Bug 4922099
38308: --
38324: , x_value_type_code => l_adr_value_type_code
38325: , p_side => 'NA'
38326: );
38327:
38328: xla_ae_lines_pkg.set_ccid(
38329: p_code_combination_id => l_ccid
38330: , p_value_type_code => l_adr_value_type_code
38331: , p_transaction_coa_id => l_adr_transaction_coa_id
38332: , p_accounting_coa_id => l_adr_accounting_coa_id
38357: );
38358:
38359: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
38360:
38361: xla_ae_lines_pkg.set_segment(
38362: p_to_segment_code => 'GL_ACCOUNT'
38363: , p_segment_value => l_segment
38364: , p_from_segment_code => l_adr_value_segment_code
38365: , p_from_combination_id => l_adr_value_combination_id
38388:
38389: --
38390: -- Update the line information that should be overwritten
38391: --
38392: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38393: p_header_num => 1);
38394: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38395:
38396: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38390: -- Update the line information that should be overwritten
38391: --
38392: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38393: p_header_num => 1);
38394: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38395:
38396: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38397:
38398: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38392: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38393: p_header_num => 1);
38394: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38395:
38396: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38397:
38398: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38399: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38400: END IF;
38395:
38396: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38397:
38398: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38399: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38400: END IF;
38401:
38402: --
38403: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38402: --
38403: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38404: --
38405: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
38406: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
38407: ELSE
38408: ---------------------------------------------------------------------------------------------------
38409: -- 4262811a Switch Sign
38410: ---------------------------------------------------------------------------------------------------
38407: ELSE
38408: ---------------------------------------------------------------------------------------------------
38409: -- 4262811a Switch Sign
38410: ---------------------------------------------------------------------------------------------------
38411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38408: ---------------------------------------------------------------------------------------------------
38409: -- 4262811a Switch Sign
38410: ---------------------------------------------------------------------------------------------------
38411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38416: -- 5132302
38409: -- 4262811a Switch Sign
38410: ---------------------------------------------------------------------------------------------------
38411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38416: -- 5132302
38417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38410: ---------------------------------------------------------------------------------------------------
38411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38416: -- 5132302
38417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38418: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38411: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
38412: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38416: -- 5132302
38417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38418: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38419:
38413: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38416: -- 5132302
38417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38418: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38419:
38420: END IF;
38421:
38414: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
38415: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38416: -- 5132302
38417: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
38418: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38419:
38420: END IF;
38421:
38422: -- 4955764
38419:
38420: END IF;
38421:
38422: -- 4955764
38423: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38424: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38425:
38426:
38427: XLA_AE_LINES_PKG.ValidateCurrentLine;
38423: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38424: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38425:
38426:
38427: XLA_AE_LINES_PKG.ValidateCurrentLine;
38428: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38429:
38430: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38431: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38424: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
38425:
38426:
38427: XLA_AE_LINES_PKG.ValidateCurrentLine;
38428: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38429:
38430: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
38431: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
38432: ,p_balance_type_code => l_balance_type_code);
38575: --
38576: -- bulk performance
38577: --
38578: l_balance_type_code VARCHAR2(1);
38579: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
38580: l_log_module VARCHAR2(240);
38581:
38582: --
38583: -- Upgrade strategy
38645: ') = 'N'
38646: THEN
38647:
38648: --
38649: XLA_AE_LINES_PKG.SetNewLine;
38650:
38651: p_balance_type_code := l_balance_type_code;
38652: -- set the flag so later we will know whether the gain loss line needs to be created
38653:
38657:
38658: --
38659: -- bulk performance
38660: --
38661: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
38662: p_header_num => 0); -- 4262811
38663: --
38664: -- set accounting line options
38665: --
38662: p_header_num => 0); -- 4262811
38663: --
38664: -- set accounting line options
38665: --
38666: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
38667: p_natural_side_code => 'C'
38668: , p_gain_or_loss_flag => 'N'
38669: , p_gl_transfer_mode_code => 'S'
38670: , p_acct_entry_type_code => 'A'
38676: --
38677: --
38678: -- set accounting line type info
38679: --
38680: xla_ae_lines_pkg.SetAcctLineType
38681: (p_component_type => l_component_type
38682: ,p_event_type_code => l_event_type_code
38683: ,p_line_definition_owner_code => l_line_definition_owner_code
38684: ,p_line_definition_code => l_line_definition_code
38690: ,p_event_class_code => l_event_class_code);
38691: --
38692: -- set accounting class
38693: --
38694: xla_ae_lines_pkg.SetAcctClass(
38695: p_accounting_class_code => 'BANK_CHG'
38696: , p_ae_header_id => l_ae_header_id
38697: );
38698:
38698:
38699: --
38700: -- set rounding class
38701: --
38702: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38703: 'RECEIVABLE';
38704:
38705: --
38706: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38702: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
38703: 'RECEIVABLE';
38704:
38705: --
38706: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38707: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38708: --
38709: -- bulk performance
38710: --
38703: 'RECEIVABLE';
38704:
38705: --
38706: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
38707: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38708: --
38709: -- bulk performance
38710: --
38711: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38707: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
38708: --
38709: -- bulk performance
38710: --
38711: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38712:
38713: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38714: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38715:
38709: -- bulk performance
38710: --
38711: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
38712:
38713: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38714: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38715:
38716: -- 4955764
38717: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38713: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
38714: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
38715:
38716: -- 4955764
38717: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
38718: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
38719:
38720: -- 4458381 Public Sector Enh
38721:
38757: l_rec_acct_attrs.array_num_value(15) := p_source_65;
38758: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
38759: l_rec_acct_attrs.array_char_value(16) := p_source_66;
38760:
38761: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38762: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38763:
38764: ---------------------------------------------------------------------------------------------------------------
38765: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38758: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
38759: l_rec_acct_attrs.array_char_value(16) := p_source_66;
38760:
38761: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38762: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38763:
38764: ---------------------------------------------------------------------------------------------------------------
38765: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38766: ---------------------------------------------------------------------------------------------------------------
38761: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
38762: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
38763:
38764: ---------------------------------------------------------------------------------------------------------------
38765: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38766: ---------------------------------------------------------------------------------------------------------------
38767: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38768:
38769: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38763:
38764: ---------------------------------------------------------------------------------------------------------------
38765: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38766: ---------------------------------------------------------------------------------------------------------------
38767: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38768:
38769: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38770: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38771:
38765: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
38766: ---------------------------------------------------------------------------------------------------------------
38767: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38768:
38769: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38770: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38771:
38772: IF xla_accounting_cache_pkg.GetValueChar
38773: (p_source_code => 'LEDGER_CATEGORY_CODE'
38766: ---------------------------------------------------------------------------------------------------------------
38767: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
38768:
38769: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38770: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
38771:
38772: IF xla_accounting_cache_pkg.GetValueChar
38773: (p_source_code => 'LEDGER_CATEGORY_CODE'
38774: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
38777: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
38778: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
38779: )
38780: THEN
38781: xla_ae_lines_pkg.BflowUpgEntry
38782: (p_business_method_code => l_bflow_method_code
38783: ,p_business_class_code => l_bflow_class_code
38784: ,p_balance_type => l_balance_type_code);
38785: ELSE
38817: , x_value_type_code => l_adr_value_type_code
38818: , p_side => 'NA'
38819: );
38820:
38821: xla_ae_lines_pkg.set_ccid(
38822: p_code_combination_id => l_ccid
38823: , p_value_type_code => l_adr_value_type_code
38824: , p_transaction_coa_id => l_adr_transaction_coa_id
38825: , p_accounting_coa_id => l_adr_accounting_coa_id
38853: xla_accounting_err_pkg.build_message
38854: (p_appli_s_name => 'XLA'
38855: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
38856: ,p_token_1 => 'LINE_NUMBER'
38857: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
38858: ,p_token_2 => 'LINE_TYPE_NAME'
38859: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
38860: l_component_type
38861: ,l_component_code
38889: --
38890: --
38891: ------------------------------------------------------------------------------------------------
38892: -- 4219869 Business Flow
38893: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38894: -- Prior Entry. Currently, the following code is always generated.
38895: ------------------------------------------------------------------------------------------------
38896: XLA_AE_LINES_PKG.ValidateCurrentLine;
38897:
38892: -- 4219869 Business Flow
38893: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
38894: -- Prior Entry. Currently, the following code is always generated.
38895: ------------------------------------------------------------------------------------------------
38896: XLA_AE_LINES_PKG.ValidateCurrentLine;
38897:
38898: ------------------------------------------------------------------------------------
38899: -- 4219869 Business Flow
38900: -- Populated credit and debit amounts -- Need to generate this within IF
38898: ------------------------------------------------------------------------------------
38899: -- 4219869 Business Flow
38900: -- Populated credit and debit amounts -- Need to generate this within IF
38901: ------------------------------------------------------------------------------------
38902: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
38903:
38904: ----------------------------------------------------------------------------------
38905: -- 4219869 Business Flow
38906: -- Update journal entry status -- Need to generate this within IF
38930: -- To allow MPA report to determine if it should generate report process
38931: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38932: ------------------------------------------------------------------------------------------
38933:
38934: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38935: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38936: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38937: -- call ADRs
38938: -- Bug 4922099
38931: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
38932: ------------------------------------------------------------------------------------------
38933:
38934: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
38935: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
38936: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
38937: -- call ADRs
38938: -- Bug 4922099
38939: --
38955: , x_value_type_code => l_adr_value_type_code
38956: , p_side => 'NA'
38957: );
38958:
38959: xla_ae_lines_pkg.set_ccid(
38960: p_code_combination_id => l_ccid
38961: , p_value_type_code => l_adr_value_type_code
38962: , p_transaction_coa_id => l_adr_transaction_coa_id
38963: , p_accounting_coa_id => l_adr_accounting_coa_id
38978:
38979: --
38980: -- Update the line information that should be overwritten
38981: --
38982: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38983: p_header_num => 1);
38984: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38985:
38986: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38980: -- Update the line information that should be overwritten
38981: --
38982: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38983: p_header_num => 1);
38984: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38985:
38986: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38987:
38988: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38982: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
38983: p_header_num => 1);
38984: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
38985:
38986: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38987:
38988: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38989: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38990: END IF;
38985:
38986: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
38987:
38988: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
38989: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
38990: END IF;
38991:
38992: --
38993: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38992: --
38993: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
38994: --
38995: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
38996: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
38997: ELSE
38998: ---------------------------------------------------------------------------------------------------
38999: -- 4262811a Switch Sign
39000: ---------------------------------------------------------------------------------------------------
38997: ELSE
38998: ---------------------------------------------------------------------------------------------------
38999: -- 4262811a Switch Sign
39000: ---------------------------------------------------------------------------------------------------
39001: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39002: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39004: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
38998: ---------------------------------------------------------------------------------------------------
38999: -- 4262811a Switch Sign
39000: ---------------------------------------------------------------------------------------------------
39001: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39002: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39004: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39006: -- 5132302
38999: -- 4262811a Switch Sign
39000: ---------------------------------------------------------------------------------------------------
39001: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39002: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39004: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39006: -- 5132302
39007: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39000: ---------------------------------------------------------------------------------------------------
39001: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39002: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39004: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39006: -- 5132302
39007: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39001: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39002: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39004: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39006: -- 5132302
39007: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39009:
39003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39004: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39006: -- 5132302
39007: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39009:
39010: END IF;
39011:
39004: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39006: -- 5132302
39007: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39009:
39010: END IF;
39011:
39012: -- 4955764
39009:
39010: END IF;
39011:
39012: -- 4955764
39013: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39014: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39015:
39016:
39017: XLA_AE_LINES_PKG.ValidateCurrentLine;
39013: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39014: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39015:
39016:
39017: XLA_AE_LINES_PKG.ValidateCurrentLine;
39018: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39019:
39020: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39021: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39014: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39015:
39016:
39017: XLA_AE_LINES_PKG.ValidateCurrentLine;
39018: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39019:
39020: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39021: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39022: ,p_balance_type_code => l_balance_type_code);
39165: --
39166: -- bulk performance
39167: --
39168: l_balance_type_code VARCHAR2(1);
39169: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
39170: l_log_module VARCHAR2(240);
39171:
39172: --
39173: -- Upgrade strategy
39235: ') = 'N'
39236: THEN
39237:
39238: --
39239: XLA_AE_LINES_PKG.SetNewLine;
39240:
39241: p_balance_type_code := l_balance_type_code;
39242: -- set the flag so later we will know whether the gain loss line needs to be created
39243:
39247:
39248: --
39249: -- bulk performance
39250: --
39251: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
39252: p_header_num => 0); -- 4262811
39253: --
39254: -- set accounting line options
39255: --
39252: p_header_num => 0); -- 4262811
39253: --
39254: -- set accounting line options
39255: --
39256: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
39257: p_natural_side_code => 'C'
39258: , p_gain_or_loss_flag => 'N'
39259: , p_gl_transfer_mode_code => 'S'
39260: , p_acct_entry_type_code => 'A'
39266: --
39267: --
39268: -- set accounting line type info
39269: --
39270: xla_ae_lines_pkg.SetAcctLineType
39271: (p_component_type => l_component_type
39272: ,p_event_type_code => l_event_type_code
39273: ,p_line_definition_owner_code => l_line_definition_owner_code
39274: ,p_line_definition_code => l_line_definition_code
39280: ,p_event_class_code => l_event_class_code);
39281: --
39282: -- set accounting class
39283: --
39284: xla_ae_lines_pkg.SetAcctClass(
39285: p_accounting_class_code => 'CASH'
39286: , p_ae_header_id => l_ae_header_id
39287: );
39288:
39288:
39289: --
39290: -- set rounding class
39291: --
39292: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39293: 'RECEIVABLE';
39294:
39295: --
39296: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39292: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39293: 'RECEIVABLE';
39294:
39295: --
39296: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39297: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39298: --
39299: -- bulk performance
39300: --
39293: 'RECEIVABLE';
39294:
39295: --
39296: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39297: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39298: --
39299: -- bulk performance
39300: --
39301: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39297: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39298: --
39299: -- bulk performance
39300: --
39301: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39302:
39303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39304: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39305:
39299: -- bulk performance
39300: --
39301: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39302:
39303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39304: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39305:
39306: -- 4955764
39307: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39303: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39304: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39305:
39306: -- 4955764
39307: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39308: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
39309:
39310: -- 4458381 Public Sector Enh
39311:
39347: l_rec_acct_attrs.array_num_value(15) := p_source_65;
39348: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
39349: l_rec_acct_attrs.array_char_value(16) := p_source_66;
39350:
39351: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39352: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39353:
39354: ---------------------------------------------------------------------------------------------------------------
39355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39348: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
39349: l_rec_acct_attrs.array_char_value(16) := p_source_66;
39350:
39351: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39352: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39353:
39354: ---------------------------------------------------------------------------------------------------------------
39355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39356: ---------------------------------------------------------------------------------------------------------------
39351: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39352: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39353:
39354: ---------------------------------------------------------------------------------------------------------------
39355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39356: ---------------------------------------------------------------------------------------------------------------
39357: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39358:
39359: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39353:
39354: ---------------------------------------------------------------------------------------------------------------
39355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39356: ---------------------------------------------------------------------------------------------------------------
39357: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39358:
39359: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39360: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39361:
39355: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39356: ---------------------------------------------------------------------------------------------------------------
39357: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39358:
39359: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39360: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39361:
39362: IF xla_accounting_cache_pkg.GetValueChar
39363: (p_source_code => 'LEDGER_CATEGORY_CODE'
39356: ---------------------------------------------------------------------------------------------------------------
39357: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39358:
39359: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39360: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39361:
39362: IF xla_accounting_cache_pkg.GetValueChar
39363: (p_source_code => 'LEDGER_CATEGORY_CODE'
39364: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
39367: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
39368: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
39369: )
39370: THEN
39371: xla_ae_lines_pkg.BflowUpgEntry
39372: (p_business_method_code => l_bflow_method_code
39373: ,p_business_class_code => l_bflow_class_code
39374: ,p_balance_type => l_balance_type_code);
39375: ELSE
39407: , x_value_type_code => l_adr_value_type_code
39408: , p_side => 'NA'
39409: );
39410:
39411: xla_ae_lines_pkg.set_ccid(
39412: p_code_combination_id => l_ccid
39413: , p_value_type_code => l_adr_value_type_code
39414: , p_transaction_coa_id => l_adr_transaction_coa_id
39415: , p_accounting_coa_id => l_adr_accounting_coa_id
39443: xla_accounting_err_pkg.build_message
39444: (p_appli_s_name => 'XLA'
39445: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
39446: ,p_token_1 => 'LINE_NUMBER'
39447: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
39448: ,p_token_2 => 'LINE_TYPE_NAME'
39449: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
39450: l_component_type
39451: ,l_component_code
39479: --
39480: --
39481: ------------------------------------------------------------------------------------------------
39482: -- 4219869 Business Flow
39483: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39484: -- Prior Entry. Currently, the following code is always generated.
39485: ------------------------------------------------------------------------------------------------
39486: XLA_AE_LINES_PKG.ValidateCurrentLine;
39487:
39482: -- 4219869 Business Flow
39483: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
39484: -- Prior Entry. Currently, the following code is always generated.
39485: ------------------------------------------------------------------------------------------------
39486: XLA_AE_LINES_PKG.ValidateCurrentLine;
39487:
39488: ------------------------------------------------------------------------------------
39489: -- 4219869 Business Flow
39490: -- Populated credit and debit amounts -- Need to generate this within IF
39488: ------------------------------------------------------------------------------------
39489: -- 4219869 Business Flow
39490: -- Populated credit and debit amounts -- Need to generate this within IF
39491: ------------------------------------------------------------------------------------
39492: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39493:
39494: ----------------------------------------------------------------------------------
39495: -- 4219869 Business Flow
39496: -- Update journal entry status -- Need to generate this within IF
39520: -- To allow MPA report to determine if it should generate report process
39521: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39522: ------------------------------------------------------------------------------------------
39523:
39524: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39525: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39526: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39527: -- call ADRs
39528: -- Bug 4922099
39521: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
39522: ------------------------------------------------------------------------------------------
39523:
39524: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
39525: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
39526: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
39527: -- call ADRs
39528: -- Bug 4922099
39529: --
39545: , x_value_type_code => l_adr_value_type_code
39546: , p_side => 'NA'
39547: );
39548:
39549: xla_ae_lines_pkg.set_ccid(
39550: p_code_combination_id => l_ccid
39551: , p_value_type_code => l_adr_value_type_code
39552: , p_transaction_coa_id => l_adr_transaction_coa_id
39553: , p_accounting_coa_id => l_adr_accounting_coa_id
39568:
39569: --
39570: -- Update the line information that should be overwritten
39571: --
39572: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39573: p_header_num => 1);
39574: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39575:
39576: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39570: -- Update the line information that should be overwritten
39571: --
39572: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39573: p_header_num => 1);
39574: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39575:
39576: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39577:
39578: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39572: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
39573: p_header_num => 1);
39574: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
39575:
39576: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39577:
39578: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39579: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39580: END IF;
39575:
39576: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
39577:
39578: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
39579: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
39580: END IF;
39581:
39582: --
39583: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39582: --
39583: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
39584: --
39585: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
39586: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
39587: ELSE
39588: ---------------------------------------------------------------------------------------------------
39589: -- 4262811a Switch Sign
39590: ---------------------------------------------------------------------------------------------------
39587: ELSE
39588: ---------------------------------------------------------------------------------------------------
39589: -- 4262811a Switch Sign
39590: ---------------------------------------------------------------------------------------------------
39591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39588: ---------------------------------------------------------------------------------------------------
39589: -- 4262811a Switch Sign
39590: ---------------------------------------------------------------------------------------------------
39591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39596: -- 5132302
39589: -- 4262811a Switch Sign
39590: ---------------------------------------------------------------------------------------------------
39591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39596: -- 5132302
39597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39590: ---------------------------------------------------------------------------------------------------
39591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39596: -- 5132302
39597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39598: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39591: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
39592: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39596: -- 5132302
39597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39598: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39599:
39593: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39596: -- 5132302
39597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39598: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39599:
39600: END IF;
39601:
39594: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
39595: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39596: -- 5132302
39597: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
39598: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
39599:
39600: END IF;
39601:
39602: -- 4955764
39599:
39600: END IF;
39601:
39602: -- 4955764
39603: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39604: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39605:
39606:
39607: XLA_AE_LINES_PKG.ValidateCurrentLine;
39603: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39604: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39605:
39606:
39607: XLA_AE_LINES_PKG.ValidateCurrentLine;
39608: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39609:
39610: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39611: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39604: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
39605:
39606:
39607: XLA_AE_LINES_PKG.ValidateCurrentLine;
39608: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
39609:
39610: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
39611: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
39612: ,p_balance_type_code => l_balance_type_code);
39757: --
39758: -- bulk performance
39759: --
39760: l_balance_type_code VARCHAR2(1);
39761: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
39762: l_log_module VARCHAR2(240);
39763:
39764: --
39765: -- Upgrade strategy
39829: ') = 'N'
39830: THEN
39831:
39832: --
39833: XLA_AE_LINES_PKG.SetNewLine;
39834:
39835: p_balance_type_code := l_balance_type_code;
39836: -- set the flag so later we will know whether the gain loss line needs to be created
39837:
39841:
39842: --
39843: -- bulk performance
39844: --
39845: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
39846: p_header_num => 0); -- 4262811
39847: --
39848: -- set accounting line options
39849: --
39846: p_header_num => 0); -- 4262811
39847: --
39848: -- set accounting line options
39849: --
39850: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
39851: p_natural_side_code => 'C'
39852: , p_gain_or_loss_flag => 'N'
39853: , p_gl_transfer_mode_code => 'S'
39854: , p_acct_entry_type_code => 'A'
39860: --
39861: --
39862: -- set accounting line type info
39863: --
39864: xla_ae_lines_pkg.SetAcctLineType
39865: (p_component_type => l_component_type
39866: ,p_event_type_code => l_event_type_code
39867: ,p_line_definition_owner_code => l_line_definition_owner_code
39868: ,p_line_definition_code => l_line_definition_code
39874: ,p_event_class_code => l_event_class_code);
39875: --
39876: -- set accounting class
39877: --
39878: xla_ae_lines_pkg.SetAcctClass(
39879: p_accounting_class_code => 'CLAIM'
39880: , p_ae_header_id => l_ae_header_id
39881: );
39882:
39882:
39883: --
39884: -- set rounding class
39885: --
39886: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39887: 'RECEIVABLE';
39888:
39889: --
39890: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39886: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
39887: 'RECEIVABLE';
39888:
39889: --
39890: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39891: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39892: --
39893: -- bulk performance
39894: --
39887: 'RECEIVABLE';
39888:
39889: --
39890: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
39891: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39892: --
39893: -- bulk performance
39894: --
39895: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39891: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
39892: --
39893: -- bulk performance
39894: --
39895: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39896:
39897: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39898: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39899:
39893: -- bulk performance
39894: --
39895: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
39896:
39897: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39898: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39899:
39900: -- 4955764
39901: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39897: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
39898: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
39899:
39900: -- 4955764
39901: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
39902: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
39903:
39904: -- 4458381 Public Sector Enh
39905:
39941: l_rec_acct_attrs.array_num_value(15) := p_source_65;
39942: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
39943: l_rec_acct_attrs.array_char_value(16) := p_source_66;
39944:
39945: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39946: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39947:
39948: ---------------------------------------------------------------------------------------------------------------
39949: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39942: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
39943: l_rec_acct_attrs.array_char_value(16) := p_source_66;
39944:
39945: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39946: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39947:
39948: ---------------------------------------------------------------------------------------------------------------
39949: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39950: ---------------------------------------------------------------------------------------------------------------
39945: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
39946: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
39947:
39948: ---------------------------------------------------------------------------------------------------------------
39949: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39950: ---------------------------------------------------------------------------------------------------------------
39951: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39952:
39953: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39947:
39948: ---------------------------------------------------------------------------------------------------------------
39949: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39950: ---------------------------------------------------------------------------------------------------------------
39951: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39952:
39953: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39954: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39955:
39949: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
39950: ---------------------------------------------------------------------------------------------------------------
39951: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39952:
39953: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39954: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39955:
39956: IF xla_accounting_cache_pkg.GetValueChar
39957: (p_source_code => 'LEDGER_CATEGORY_CODE'
39950: ---------------------------------------------------------------------------------------------------------------
39951: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
39952:
39953: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39954: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
39955:
39956: IF xla_accounting_cache_pkg.GetValueChar
39957: (p_source_code => 'LEDGER_CATEGORY_CODE'
39958: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
39961: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
39962: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
39963: )
39964: THEN
39965: xla_ae_lines_pkg.BflowUpgEntry
39966: (p_business_method_code => l_bflow_method_code
39967: ,p_business_class_code => l_bflow_class_code
39968: ,p_balance_type => l_balance_type_code);
39969: ELSE
40001: , x_value_type_code => l_adr_value_type_code
40002: , p_side => 'NA'
40003: );
40004:
40005: xla_ae_lines_pkg.set_ccid(
40006: p_code_combination_id => l_ccid
40007: , p_value_type_code => l_adr_value_type_code
40008: , p_transaction_coa_id => l_adr_transaction_coa_id
40009: , p_accounting_coa_id => l_adr_accounting_coa_id
40037: xla_accounting_err_pkg.build_message
40038: (p_appli_s_name => 'XLA'
40039: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
40040: ,p_token_1 => 'LINE_NUMBER'
40041: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
40042: ,p_token_2 => 'LINE_TYPE_NAME'
40043: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
40044: l_component_type
40045: ,l_component_code
40073: --
40074: --
40075: ------------------------------------------------------------------------------------------------
40076: -- 4219869 Business Flow
40077: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40078: -- Prior Entry. Currently, the following code is always generated.
40079: ------------------------------------------------------------------------------------------------
40080: XLA_AE_LINES_PKG.ValidateCurrentLine;
40081:
40076: -- 4219869 Business Flow
40077: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40078: -- Prior Entry. Currently, the following code is always generated.
40079: ------------------------------------------------------------------------------------------------
40080: XLA_AE_LINES_PKG.ValidateCurrentLine;
40081:
40082: ------------------------------------------------------------------------------------
40083: -- 4219869 Business Flow
40084: -- Populated credit and debit amounts -- Need to generate this within IF
40082: ------------------------------------------------------------------------------------
40083: -- 4219869 Business Flow
40084: -- Populated credit and debit amounts -- Need to generate this within IF
40085: ------------------------------------------------------------------------------------
40086: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40087:
40088: ----------------------------------------------------------------------------------
40089: -- 4219869 Business Flow
40090: -- Update journal entry status -- Need to generate this within IF
40114: -- To allow MPA report to determine if it should generate report process
40115: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40116: ------------------------------------------------------------------------------------------
40117:
40118: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40119: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40120: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40121: -- call ADRs
40122: -- Bug 4922099
40115: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40116: ------------------------------------------------------------------------------------------
40117:
40118: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40119: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40120: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40121: -- call ADRs
40122: -- Bug 4922099
40123: --
40139: , x_value_type_code => l_adr_value_type_code
40140: , p_side => 'NA'
40141: );
40142:
40143: xla_ae_lines_pkg.set_ccid(
40144: p_code_combination_id => l_ccid
40145: , p_value_type_code => l_adr_value_type_code
40146: , p_transaction_coa_id => l_adr_transaction_coa_id
40147: , p_accounting_coa_id => l_adr_accounting_coa_id
40162:
40163: --
40164: -- Update the line information that should be overwritten
40165: --
40166: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40167: p_header_num => 1);
40168: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40169:
40170: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40164: -- Update the line information that should be overwritten
40165: --
40166: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40167: p_header_num => 1);
40168: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40169:
40170: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40171:
40172: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40166: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40167: p_header_num => 1);
40168: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40169:
40170: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40171:
40172: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40173: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40174: END IF;
40169:
40170: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40171:
40172: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40173: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40174: END IF;
40175:
40176: --
40177: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40176: --
40177: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40178: --
40179: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
40180: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
40181: ELSE
40182: ---------------------------------------------------------------------------------------------------
40183: -- 4262811a Switch Sign
40184: ---------------------------------------------------------------------------------------------------
40181: ELSE
40182: ---------------------------------------------------------------------------------------------------
40183: -- 4262811a Switch Sign
40184: ---------------------------------------------------------------------------------------------------
40185: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40189: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40182: ---------------------------------------------------------------------------------------------------
40183: -- 4262811a Switch Sign
40184: ---------------------------------------------------------------------------------------------------
40185: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40189: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40190: -- 5132302
40183: -- 4262811a Switch Sign
40184: ---------------------------------------------------------------------------------------------------
40185: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40189: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40190: -- 5132302
40191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40184: ---------------------------------------------------------------------------------------------------
40185: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40189: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40190: -- 5132302
40191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40192: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40185: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40186: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40189: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40190: -- 5132302
40191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40192: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40193:
40187: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40189: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40190: -- 5132302
40191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40192: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40193:
40194: END IF;
40195:
40188: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40189: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40190: -- 5132302
40191: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40192: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40193:
40194: END IF;
40195:
40196: -- 4955764
40193:
40194: END IF;
40195:
40196: -- 4955764
40197: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40198: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40199:
40200:
40201: XLA_AE_LINES_PKG.ValidateCurrentLine;
40197: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40198: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40199:
40200:
40201: XLA_AE_LINES_PKG.ValidateCurrentLine;
40202: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40203:
40204: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40205: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40198: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40199:
40200:
40201: XLA_AE_LINES_PKG.ValidateCurrentLine;
40202: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40203:
40204: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40205: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40206: ,p_balance_type_code => l_balance_type_code);
40349: --
40350: -- bulk performance
40351: --
40352: l_balance_type_code VARCHAR2(1);
40353: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
40354: l_log_module VARCHAR2(240);
40355:
40356: --
40357: -- Upgrade strategy
40419: ') = 'N'
40420: THEN
40421:
40422: --
40423: XLA_AE_LINES_PKG.SetNewLine;
40424:
40425: p_balance_type_code := l_balance_type_code;
40426: -- set the flag so later we will know whether the gain loss line needs to be created
40427:
40431:
40432: --
40433: -- bulk performance
40434: --
40435: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
40436: p_header_num => 0); -- 4262811
40437: --
40438: -- set accounting line options
40439: --
40436: p_header_num => 0); -- 4262811
40437: --
40438: -- set accounting line options
40439: --
40440: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
40441: p_natural_side_code => 'C'
40442: , p_gain_or_loss_flag => 'N'
40443: , p_gl_transfer_mode_code => 'S'
40444: , p_acct_entry_type_code => 'A'
40450: --
40451: --
40452: -- set accounting line type info
40453: --
40454: xla_ae_lines_pkg.SetAcctLineType
40455: (p_component_type => l_component_type
40456: ,p_event_type_code => l_event_type_code
40457: ,p_line_definition_owner_code => l_line_definition_owner_code
40458: ,p_line_definition_code => l_line_definition_code
40464: ,p_event_class_code => l_event_class_code);
40465: --
40466: -- set accounting class
40467: --
40468: xla_ae_lines_pkg.SetAcctClass(
40469: p_accounting_class_code => 'CONFIRMATION'
40470: , p_ae_header_id => l_ae_header_id
40471: );
40472:
40472:
40473: --
40474: -- set rounding class
40475: --
40476: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40477: 'RECEIVABLE';
40478:
40479: --
40480: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40476: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
40477: 'RECEIVABLE';
40478:
40479: --
40480: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40481: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40482: --
40483: -- bulk performance
40484: --
40477: 'RECEIVABLE';
40478:
40479: --
40480: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
40481: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40482: --
40483: -- bulk performance
40484: --
40485: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40481: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
40482: --
40483: -- bulk performance
40484: --
40485: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40486:
40487: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40488: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40489:
40483: -- bulk performance
40484: --
40485: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
40486:
40487: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40488: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40489:
40490: -- 4955764
40491: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40487: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
40488: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
40489:
40490: -- 4955764
40491: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40492: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
40493:
40494: -- 4458381 Public Sector Enh
40495:
40531: l_rec_acct_attrs.array_num_value(15) := p_source_65;
40532: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
40533: l_rec_acct_attrs.array_char_value(16) := p_source_66;
40534:
40535: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40536: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40537:
40538: ---------------------------------------------------------------------------------------------------------------
40539: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40532: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
40533: l_rec_acct_attrs.array_char_value(16) := p_source_66;
40534:
40535: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40536: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40537:
40538: ---------------------------------------------------------------------------------------------------------------
40539: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40540: ---------------------------------------------------------------------------------------------------------------
40535: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
40536: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
40537:
40538: ---------------------------------------------------------------------------------------------------------------
40539: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40540: ---------------------------------------------------------------------------------------------------------------
40541: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40542:
40543: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40537:
40538: ---------------------------------------------------------------------------------------------------------------
40539: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40540: ---------------------------------------------------------------------------------------------------------------
40541: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40542:
40543: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40544: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40545:
40539: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
40540: ---------------------------------------------------------------------------------------------------------------
40541: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40542:
40543: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40544: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40545:
40546: IF xla_accounting_cache_pkg.GetValueChar
40547: (p_source_code => 'LEDGER_CATEGORY_CODE'
40540: ---------------------------------------------------------------------------------------------------------------
40541: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
40542:
40543: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40544: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
40545:
40546: IF xla_accounting_cache_pkg.GetValueChar
40547: (p_source_code => 'LEDGER_CATEGORY_CODE'
40548: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
40551: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
40552: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
40553: )
40554: THEN
40555: xla_ae_lines_pkg.BflowUpgEntry
40556: (p_business_method_code => l_bflow_method_code
40557: ,p_business_class_code => l_bflow_class_code
40558: ,p_balance_type => l_balance_type_code);
40559: ELSE
40591: , x_value_type_code => l_adr_value_type_code
40592: , p_side => 'NA'
40593: );
40594:
40595: xla_ae_lines_pkg.set_ccid(
40596: p_code_combination_id => l_ccid
40597: , p_value_type_code => l_adr_value_type_code
40598: , p_transaction_coa_id => l_adr_transaction_coa_id
40599: , p_accounting_coa_id => l_adr_accounting_coa_id
40627: xla_accounting_err_pkg.build_message
40628: (p_appli_s_name => 'XLA'
40629: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
40630: ,p_token_1 => 'LINE_NUMBER'
40631: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
40632: ,p_token_2 => 'LINE_TYPE_NAME'
40633: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
40634: l_component_type
40635: ,l_component_code
40663: --
40664: --
40665: ------------------------------------------------------------------------------------------------
40666: -- 4219869 Business Flow
40667: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40668: -- Prior Entry. Currently, the following code is always generated.
40669: ------------------------------------------------------------------------------------------------
40670: XLA_AE_LINES_PKG.ValidateCurrentLine;
40671:
40666: -- 4219869 Business Flow
40667: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
40668: -- Prior Entry. Currently, the following code is always generated.
40669: ------------------------------------------------------------------------------------------------
40670: XLA_AE_LINES_PKG.ValidateCurrentLine;
40671:
40672: ------------------------------------------------------------------------------------
40673: -- 4219869 Business Flow
40674: -- Populated credit and debit amounts -- Need to generate this within IF
40672: ------------------------------------------------------------------------------------
40673: -- 4219869 Business Flow
40674: -- Populated credit and debit amounts -- Need to generate this within IF
40675: ------------------------------------------------------------------------------------
40676: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40677:
40678: ----------------------------------------------------------------------------------
40679: -- 4219869 Business Flow
40680: -- Update journal entry status -- Need to generate this within IF
40704: -- To allow MPA report to determine if it should generate report process
40705: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40706: ------------------------------------------------------------------------------------------
40707:
40708: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40709: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40710: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40711: -- call ADRs
40712: -- Bug 4922099
40705: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
40706: ------------------------------------------------------------------------------------------
40707:
40708: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
40709: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
40710: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
40711: -- call ADRs
40712: -- Bug 4922099
40713: --
40729: , x_value_type_code => l_adr_value_type_code
40730: , p_side => 'NA'
40731: );
40732:
40733: xla_ae_lines_pkg.set_ccid(
40734: p_code_combination_id => l_ccid
40735: , p_value_type_code => l_adr_value_type_code
40736: , p_transaction_coa_id => l_adr_transaction_coa_id
40737: , p_accounting_coa_id => l_adr_accounting_coa_id
40752:
40753: --
40754: -- Update the line information that should be overwritten
40755: --
40756: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40757: p_header_num => 1);
40758: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40759:
40760: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40754: -- Update the line information that should be overwritten
40755: --
40756: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40757: p_header_num => 1);
40758: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40759:
40760: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40761:
40762: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40756: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
40757: p_header_num => 1);
40758: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
40759:
40760: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40761:
40762: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40763: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40764: END IF;
40759:
40760: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
40761:
40762: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
40763: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
40764: END IF;
40765:
40766: --
40767: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40766: --
40767: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
40768: --
40769: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
40770: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
40771: ELSE
40772: ---------------------------------------------------------------------------------------------------
40773: -- 4262811a Switch Sign
40774: ---------------------------------------------------------------------------------------------------
40771: ELSE
40772: ---------------------------------------------------------------------------------------------------
40773: -- 4262811a Switch Sign
40774: ---------------------------------------------------------------------------------------------------
40775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40772: ---------------------------------------------------------------------------------------------------
40773: -- 4262811a Switch Sign
40774: ---------------------------------------------------------------------------------------------------
40775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40780: -- 5132302
40773: -- 4262811a Switch Sign
40774: ---------------------------------------------------------------------------------------------------
40775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40780: -- 5132302
40781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40774: ---------------------------------------------------------------------------------------------------
40775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40780: -- 5132302
40781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40775: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
40776: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40780: -- 5132302
40781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40783:
40777: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40780: -- 5132302
40781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40783:
40784: END IF;
40785:
40778: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
40779: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40780: -- 5132302
40781: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
40782: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
40783:
40784: END IF;
40785:
40786: -- 4955764
40783:
40784: END IF;
40785:
40786: -- 4955764
40787: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40788: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40789:
40790:
40791: XLA_AE_LINES_PKG.ValidateCurrentLine;
40787: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
40788: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40789:
40790:
40791: XLA_AE_LINES_PKG.ValidateCurrentLine;
40792: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40793:
40794: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40795: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40788: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
40789:
40790:
40791: XLA_AE_LINES_PKG.ValidateCurrentLine;
40792: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
40793:
40794: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
40795: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
40796: ,p_balance_type_code => l_balance_type_code);
40939: --
40940: -- bulk performance
40941: --
40942: l_balance_type_code VARCHAR2(1);
40943: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
40944: l_log_module VARCHAR2(240);
40945:
40946: --
40947: -- Upgrade strategy
41009: ') = 'N'
41010: THEN
41011:
41012: --
41013: XLA_AE_LINES_PKG.SetNewLine;
41014:
41015: p_balance_type_code := l_balance_type_code;
41016: -- set the flag so later we will know whether the gain loss line needs to be created
41017:
41021:
41022: --
41023: -- bulk performance
41024: --
41025: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
41026: p_header_num => 0); -- 4262811
41027: --
41028: -- set accounting line options
41029: --
41026: p_header_num => 0); -- 4262811
41027: --
41028: -- set accounting line options
41029: --
41030: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
41031: p_natural_side_code => 'C'
41032: , p_gain_or_loss_flag => 'N'
41033: , p_gl_transfer_mode_code => 'S'
41034: , p_acct_entry_type_code => 'A'
41040: --
41041: --
41042: -- set accounting line type info
41043: --
41044: xla_ae_lines_pkg.SetAcctLineType
41045: (p_component_type => l_component_type
41046: ,p_event_type_code => l_event_type_code
41047: ,p_line_definition_owner_code => l_line_definition_owner_code
41048: ,p_line_definition_code => l_line_definition_code
41054: ,p_event_class_code => l_event_class_code);
41055: --
41056: -- set accounting class
41057: --
41058: xla_ae_lines_pkg.SetAcctClass(
41059: p_accounting_class_code => 'ROUNDING'
41060: , p_ae_header_id => l_ae_header_id
41061: );
41062:
41062:
41063: --
41064: -- set rounding class
41065: --
41066: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41067: 'RECEIVABLE';
41068:
41069: --
41070: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41066: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41067: 'RECEIVABLE';
41068:
41069: --
41070: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41071: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41072: --
41073: -- bulk performance
41074: --
41067: 'RECEIVABLE';
41068:
41069: --
41070: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41071: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41072: --
41073: -- bulk performance
41074: --
41075: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41071: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41072: --
41073: -- bulk performance
41074: --
41075: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41076:
41077: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41078: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41079:
41073: -- bulk performance
41074: --
41075: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41076:
41077: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41078: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41079:
41080: -- 4955764
41081: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41077: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41078: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41079:
41080: -- 4955764
41081: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41082: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
41083:
41084: -- 4458381 Public Sector Enh
41085:
41121: l_rec_acct_attrs.array_num_value(15) := p_source_65;
41122: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
41123: l_rec_acct_attrs.array_char_value(16) := p_source_66;
41124:
41125: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41126: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41127:
41128: ---------------------------------------------------------------------------------------------------------------
41129: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41122: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
41123: l_rec_acct_attrs.array_char_value(16) := p_source_66;
41124:
41125: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41126: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41127:
41128: ---------------------------------------------------------------------------------------------------------------
41129: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41130: ---------------------------------------------------------------------------------------------------------------
41125: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41126: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41127:
41128: ---------------------------------------------------------------------------------------------------------------
41129: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41130: ---------------------------------------------------------------------------------------------------------------
41131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41132:
41133: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41127:
41128: ---------------------------------------------------------------------------------------------------------------
41129: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41130: ---------------------------------------------------------------------------------------------------------------
41131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41132:
41133: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41134: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41135:
41129: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41130: ---------------------------------------------------------------------------------------------------------------
41131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41132:
41133: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41134: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41135:
41136: IF xla_accounting_cache_pkg.GetValueChar
41137: (p_source_code => 'LEDGER_CATEGORY_CODE'
41130: ---------------------------------------------------------------------------------------------------------------
41131: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41132:
41133: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41134: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41135:
41136: IF xla_accounting_cache_pkg.GetValueChar
41137: (p_source_code => 'LEDGER_CATEGORY_CODE'
41138: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
41141: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
41142: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
41143: )
41144: THEN
41145: xla_ae_lines_pkg.BflowUpgEntry
41146: (p_business_method_code => l_bflow_method_code
41147: ,p_business_class_code => l_bflow_class_code
41148: ,p_balance_type => l_balance_type_code);
41149: ELSE
41181: , x_value_type_code => l_adr_value_type_code
41182: , p_side => 'NA'
41183: );
41184:
41185: xla_ae_lines_pkg.set_ccid(
41186: p_code_combination_id => l_ccid
41187: , p_value_type_code => l_adr_value_type_code
41188: , p_transaction_coa_id => l_adr_transaction_coa_id
41189: , p_accounting_coa_id => l_adr_accounting_coa_id
41217: xla_accounting_err_pkg.build_message
41218: (p_appli_s_name => 'XLA'
41219: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
41220: ,p_token_1 => 'LINE_NUMBER'
41221: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
41222: ,p_token_2 => 'LINE_TYPE_NAME'
41223: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
41224: l_component_type
41225: ,l_component_code
41253: --
41254: --
41255: ------------------------------------------------------------------------------------------------
41256: -- 4219869 Business Flow
41257: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41258: -- Prior Entry. Currently, the following code is always generated.
41259: ------------------------------------------------------------------------------------------------
41260: XLA_AE_LINES_PKG.ValidateCurrentLine;
41261:
41256: -- 4219869 Business Flow
41257: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41258: -- Prior Entry. Currently, the following code is always generated.
41259: ------------------------------------------------------------------------------------------------
41260: XLA_AE_LINES_PKG.ValidateCurrentLine;
41261:
41262: ------------------------------------------------------------------------------------
41263: -- 4219869 Business Flow
41264: -- Populated credit and debit amounts -- Need to generate this within IF
41262: ------------------------------------------------------------------------------------
41263: -- 4219869 Business Flow
41264: -- Populated credit and debit amounts -- Need to generate this within IF
41265: ------------------------------------------------------------------------------------
41266: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41267:
41268: ----------------------------------------------------------------------------------
41269: -- 4219869 Business Flow
41270: -- Update journal entry status -- Need to generate this within IF
41294: -- To allow MPA report to determine if it should generate report process
41295: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41296: ------------------------------------------------------------------------------------------
41297:
41298: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41299: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41300: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41301: -- call ADRs
41302: -- Bug 4922099
41295: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41296: ------------------------------------------------------------------------------------------
41297:
41298: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41299: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41300: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41301: -- call ADRs
41302: -- Bug 4922099
41303: --
41319: , x_value_type_code => l_adr_value_type_code
41320: , p_side => 'NA'
41321: );
41322:
41323: xla_ae_lines_pkg.set_ccid(
41324: p_code_combination_id => l_ccid
41325: , p_value_type_code => l_adr_value_type_code
41326: , p_transaction_coa_id => l_adr_transaction_coa_id
41327: , p_accounting_coa_id => l_adr_accounting_coa_id
41342:
41343: --
41344: -- Update the line information that should be overwritten
41345: --
41346: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41347: p_header_num => 1);
41348: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41349:
41350: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41344: -- Update the line information that should be overwritten
41345: --
41346: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41347: p_header_num => 1);
41348: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41349:
41350: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41351:
41352: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41346: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41347: p_header_num => 1);
41348: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41349:
41350: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41351:
41352: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41353: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41354: END IF;
41349:
41350: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41351:
41352: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41353: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41354: END IF;
41355:
41356: --
41357: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41356: --
41357: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41358: --
41359: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
41360: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
41361: ELSE
41362: ---------------------------------------------------------------------------------------------------
41363: -- 4262811a Switch Sign
41364: ---------------------------------------------------------------------------------------------------
41361: ELSE
41362: ---------------------------------------------------------------------------------------------------
41363: -- 4262811a Switch Sign
41364: ---------------------------------------------------------------------------------------------------
41365: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41367: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41369: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41362: ---------------------------------------------------------------------------------------------------
41363: -- 4262811a Switch Sign
41364: ---------------------------------------------------------------------------------------------------
41365: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41367: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41369: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41370: -- 5132302
41363: -- 4262811a Switch Sign
41364: ---------------------------------------------------------------------------------------------------
41365: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41367: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41369: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41370: -- 5132302
41371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41364: ---------------------------------------------------------------------------------------------------
41365: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41367: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41369: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41370: -- 5132302
41371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41372: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41365: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41366: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41367: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41369: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41370: -- 5132302
41371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41372: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41373:
41367: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41369: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41370: -- 5132302
41371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41372: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41373:
41374: END IF;
41375:
41368: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41369: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41370: -- 5132302
41371: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41372: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41373:
41374: END IF;
41375:
41376: -- 4955764
41373:
41374: END IF;
41375:
41376: -- 4955764
41377: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41378: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41379:
41380:
41381: XLA_AE_LINES_PKG.ValidateCurrentLine;
41377: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41378: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41379:
41380:
41381: XLA_AE_LINES_PKG.ValidateCurrentLine;
41382: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41383:
41384: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41385: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41378: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41379:
41380:
41381: XLA_AE_LINES_PKG.ValidateCurrentLine;
41382: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41383:
41384: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41385: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41386: ,p_balance_type_code => l_balance_type_code);
41529: --
41530: -- bulk performance
41531: --
41532: l_balance_type_code VARCHAR2(1);
41533: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
41534: l_log_module VARCHAR2(240);
41535:
41536: --
41537: -- Upgrade strategy
41599: ') = 'N'
41600: THEN
41601:
41602: --
41603: XLA_AE_LINES_PKG.SetNewLine;
41604:
41605: p_balance_type_code := l_balance_type_code;
41606: -- set the flag so later we will know whether the gain loss line needs to be created
41607:
41611:
41612: --
41613: -- bulk performance
41614: --
41615: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
41616: p_header_num => 0); -- 4262811
41617: --
41618: -- set accounting line options
41619: --
41616: p_header_num => 0); -- 4262811
41617: --
41618: -- set accounting line options
41619: --
41620: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
41621: p_natural_side_code => 'C'
41622: , p_gain_or_loss_flag => 'N'
41623: , p_gl_transfer_mode_code => 'S'
41624: , p_acct_entry_type_code => 'A'
41630: --
41631: --
41632: -- set accounting line type info
41633: --
41634: xla_ae_lines_pkg.SetAcctLineType
41635: (p_component_type => l_component_type
41636: ,p_event_type_code => l_event_type_code
41637: ,p_line_definition_owner_code => l_line_definition_owner_code
41638: ,p_line_definition_code => l_line_definition_code
41644: ,p_event_class_code => l_event_class_code);
41645: --
41646: -- set accounting class
41647: --
41648: xla_ae_lines_pkg.SetAcctClass(
41649: p_accounting_class_code => 'SHORT_TERM_DEBT'
41650: , p_ae_header_id => l_ae_header_id
41651: );
41652:
41652:
41653: --
41654: -- set rounding class
41655: --
41656: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41657: 'RECEIVABLE';
41658:
41659: --
41660: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41656: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
41657: 'RECEIVABLE';
41658:
41659: --
41660: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41661: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41662: --
41663: -- bulk performance
41664: --
41657: 'RECEIVABLE';
41658:
41659: --
41660: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
41661: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41662: --
41663: -- bulk performance
41664: --
41665: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41661: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
41662: --
41663: -- bulk performance
41664: --
41665: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41666:
41667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41668: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41669:
41663: -- bulk performance
41664: --
41665: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
41666:
41667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41668: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41669:
41670: -- 4955764
41671: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41667: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
41668: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
41669:
41670: -- 4955764
41671: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41672: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
41673:
41674: -- 4458381 Public Sector Enh
41675:
41711: l_rec_acct_attrs.array_num_value(15) := p_source_65;
41712: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
41713: l_rec_acct_attrs.array_char_value(16) := p_source_66;
41714:
41715: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41716: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41717:
41718: ---------------------------------------------------------------------------------------------------------------
41719: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41712: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
41713: l_rec_acct_attrs.array_char_value(16) := p_source_66;
41714:
41715: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41716: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41717:
41718: ---------------------------------------------------------------------------------------------------------------
41719: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41720: ---------------------------------------------------------------------------------------------------------------
41715: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
41716: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
41717:
41718: ---------------------------------------------------------------------------------------------------------------
41719: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41720: ---------------------------------------------------------------------------------------------------------------
41721: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41722:
41723: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41717:
41718: ---------------------------------------------------------------------------------------------------------------
41719: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41720: ---------------------------------------------------------------------------------------------------------------
41721: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41722:
41723: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41724: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41725:
41719: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
41720: ---------------------------------------------------------------------------------------------------------------
41721: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41722:
41723: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41724: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41725:
41726: IF xla_accounting_cache_pkg.GetValueChar
41727: (p_source_code => 'LEDGER_CATEGORY_CODE'
41720: ---------------------------------------------------------------------------------------------------------------
41721: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
41722:
41723: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41724: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
41725:
41726: IF xla_accounting_cache_pkg.GetValueChar
41727: (p_source_code => 'LEDGER_CATEGORY_CODE'
41728: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
41731: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
41732: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
41733: )
41734: THEN
41735: xla_ae_lines_pkg.BflowUpgEntry
41736: (p_business_method_code => l_bflow_method_code
41737: ,p_business_class_code => l_bflow_class_code
41738: ,p_balance_type => l_balance_type_code);
41739: ELSE
41771: , x_value_type_code => l_adr_value_type_code
41772: , p_side => 'NA'
41773: );
41774:
41775: xla_ae_lines_pkg.set_ccid(
41776: p_code_combination_id => l_ccid
41777: , p_value_type_code => l_adr_value_type_code
41778: , p_transaction_coa_id => l_adr_transaction_coa_id
41779: , p_accounting_coa_id => l_adr_accounting_coa_id
41807: xla_accounting_err_pkg.build_message
41808: (p_appli_s_name => 'XLA'
41809: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
41810: ,p_token_1 => 'LINE_NUMBER'
41811: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
41812: ,p_token_2 => 'LINE_TYPE_NAME'
41813: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
41814: l_component_type
41815: ,l_component_code
41843: --
41844: --
41845: ------------------------------------------------------------------------------------------------
41846: -- 4219869 Business Flow
41847: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41848: -- Prior Entry. Currently, the following code is always generated.
41849: ------------------------------------------------------------------------------------------------
41850: XLA_AE_LINES_PKG.ValidateCurrentLine;
41851:
41846: -- 4219869 Business Flow
41847: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
41848: -- Prior Entry. Currently, the following code is always generated.
41849: ------------------------------------------------------------------------------------------------
41850: XLA_AE_LINES_PKG.ValidateCurrentLine;
41851:
41852: ------------------------------------------------------------------------------------
41853: -- 4219869 Business Flow
41854: -- Populated credit and debit amounts -- Need to generate this within IF
41852: ------------------------------------------------------------------------------------
41853: -- 4219869 Business Flow
41854: -- Populated credit and debit amounts -- Need to generate this within IF
41855: ------------------------------------------------------------------------------------
41856: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41857:
41858: ----------------------------------------------------------------------------------
41859: -- 4219869 Business Flow
41860: -- Update journal entry status -- Need to generate this within IF
41884: -- To allow MPA report to determine if it should generate report process
41885: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41886: ------------------------------------------------------------------------------------------
41887:
41888: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41889: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41890: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41891: -- call ADRs
41892: -- Bug 4922099
41885: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
41886: ------------------------------------------------------------------------------------------
41887:
41888: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
41889: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
41890: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
41891: -- call ADRs
41892: -- Bug 4922099
41893: --
41909: , x_value_type_code => l_adr_value_type_code
41910: , p_side => 'NA'
41911: );
41912:
41913: xla_ae_lines_pkg.set_ccid(
41914: p_code_combination_id => l_ccid
41915: , p_value_type_code => l_adr_value_type_code
41916: , p_transaction_coa_id => l_adr_transaction_coa_id
41917: , p_accounting_coa_id => l_adr_accounting_coa_id
41932:
41933: --
41934: -- Update the line information that should be overwritten
41935: --
41936: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41937: p_header_num => 1);
41938: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41939:
41940: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41934: -- Update the line information that should be overwritten
41935: --
41936: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41937: p_header_num => 1);
41938: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41939:
41940: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41941:
41942: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41936: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
41937: p_header_num => 1);
41938: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
41939:
41940: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41941:
41942: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41943: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41944: END IF;
41939:
41940: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
41941:
41942: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
41943: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
41944: END IF;
41945:
41946: --
41947: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41946: --
41947: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
41948: --
41949: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
41950: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
41951: ELSE
41952: ---------------------------------------------------------------------------------------------------
41953: -- 4262811a Switch Sign
41954: ---------------------------------------------------------------------------------------------------
41951: ELSE
41952: ---------------------------------------------------------------------------------------------------
41953: -- 4262811a Switch Sign
41954: ---------------------------------------------------------------------------------------------------
41955: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41956: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41957: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41958: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41959: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41952: ---------------------------------------------------------------------------------------------------
41953: -- 4262811a Switch Sign
41954: ---------------------------------------------------------------------------------------------------
41955: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41956: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41957: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41958: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41959: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41960: -- 5132302
41953: -- 4262811a Switch Sign
41954: ---------------------------------------------------------------------------------------------------
41955: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41956: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41957: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41958: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41959: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41960: -- 5132302
41961: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41954: ---------------------------------------------------------------------------------------------------
41955: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41956: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41957: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41958: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41959: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41960: -- 5132302
41961: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41962: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41955: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
41956: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41957: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41958: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41959: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41960: -- 5132302
41961: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41962: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41963:
41957: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41958: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41959: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41960: -- 5132302
41961: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41962: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41963:
41964: END IF;
41965:
41958: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
41959: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41960: -- 5132302
41961: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
41962: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
41963:
41964: END IF;
41965:
41966: -- 4955764
41963:
41964: END IF;
41965:
41966: -- 4955764
41967: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41968: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41969:
41970:
41971: XLA_AE_LINES_PKG.ValidateCurrentLine;
41967: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
41968: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41969:
41970:
41971: XLA_AE_LINES_PKG.ValidateCurrentLine;
41972: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41973:
41974: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41975: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41968: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
41969:
41970:
41971: XLA_AE_LINES_PKG.ValidateCurrentLine;
41972: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
41973:
41974: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
41975: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
41976: ,p_balance_type_code => l_balance_type_code);
42119: --
42120: -- bulk performance
42121: --
42122: l_balance_type_code VARCHAR2(1);
42123: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
42124: l_log_module VARCHAR2(240);
42125:
42126: --
42127: -- Upgrade strategy
42189: ') = 'N'
42190: THEN
42191:
42192: --
42193: XLA_AE_LINES_PKG.SetNewLine;
42194:
42195: p_balance_type_code := l_balance_type_code;
42196: -- set the flag so later we will know whether the gain loss line needs to be created
42197:
42201:
42202: --
42203: -- bulk performance
42204: --
42205: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
42206: p_header_num => 0); -- 4262811
42207: --
42208: -- set accounting line options
42209: --
42206: p_header_num => 0); -- 4262811
42207: --
42208: -- set accounting line options
42209: --
42210: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
42211: p_natural_side_code => 'C'
42212: , p_gain_or_loss_flag => 'N'
42213: , p_gl_transfer_mode_code => 'S'
42214: , p_acct_entry_type_code => 'A'
42220: --
42221: --
42222: -- set accounting line type info
42223: --
42224: xla_ae_lines_pkg.SetAcctLineType
42225: (p_component_type => l_component_type
42226: ,p_event_type_code => l_event_type_code
42227: ,p_line_definition_owner_code => l_line_definition_owner_code
42228: ,p_line_definition_code => l_line_definition_code
42234: ,p_event_class_code => l_event_class_code);
42235: --
42236: -- set accounting class
42237: --
42238: xla_ae_lines_pkg.SetAcctClass(
42239: p_accounting_class_code => 'DEFERRED_TAX'
42240: , p_ae_header_id => l_ae_header_id
42241: );
42242:
42242:
42243: --
42244: -- set rounding class
42245: --
42246: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42247: 'RECEIVABLE';
42248:
42249: --
42250: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42246: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42247: 'RECEIVABLE';
42248:
42249: --
42250: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42251: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42252: --
42253: -- bulk performance
42254: --
42247: 'RECEIVABLE';
42248:
42249: --
42250: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42251: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42252: --
42253: -- bulk performance
42254: --
42255: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42251: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42252: --
42253: -- bulk performance
42254: --
42255: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42256:
42257: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42258: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42259:
42253: -- bulk performance
42254: --
42255: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42256:
42257: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42258: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42259:
42260: -- 4955764
42261: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42257: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42258: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42259:
42260: -- 4955764
42261: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42262: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
42263:
42264: -- 4458381 Public Sector Enh
42265:
42301: l_rec_acct_attrs.array_num_value(15) := p_source_65;
42302: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
42303: l_rec_acct_attrs.array_char_value(16) := p_source_66;
42304:
42305: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42306: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42307:
42308: ---------------------------------------------------------------------------------------------------------------
42309: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42302: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
42303: l_rec_acct_attrs.array_char_value(16) := p_source_66;
42304:
42305: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42306: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42307:
42308: ---------------------------------------------------------------------------------------------------------------
42309: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42310: ---------------------------------------------------------------------------------------------------------------
42305: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42306: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42307:
42308: ---------------------------------------------------------------------------------------------------------------
42309: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42310: ---------------------------------------------------------------------------------------------------------------
42311: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42312:
42313: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42307:
42308: ---------------------------------------------------------------------------------------------------------------
42309: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42310: ---------------------------------------------------------------------------------------------------------------
42311: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42312:
42313: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42314: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42315:
42309: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42310: ---------------------------------------------------------------------------------------------------------------
42311: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42312:
42313: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42314: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42315:
42316: IF xla_accounting_cache_pkg.GetValueChar
42317: (p_source_code => 'LEDGER_CATEGORY_CODE'
42310: ---------------------------------------------------------------------------------------------------------------
42311: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42312:
42313: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42314: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42315:
42316: IF xla_accounting_cache_pkg.GetValueChar
42317: (p_source_code => 'LEDGER_CATEGORY_CODE'
42318: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
42321: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
42322: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
42323: )
42324: THEN
42325: xla_ae_lines_pkg.BflowUpgEntry
42326: (p_business_method_code => l_bflow_method_code
42327: ,p_business_class_code => l_bflow_class_code
42328: ,p_balance_type => l_balance_type_code);
42329: ELSE
42361: , x_value_type_code => l_adr_value_type_code
42362: , p_side => 'NA'
42363: );
42364:
42365: xla_ae_lines_pkg.set_ccid(
42366: p_code_combination_id => l_ccid
42367: , p_value_type_code => l_adr_value_type_code
42368: , p_transaction_coa_id => l_adr_transaction_coa_id
42369: , p_accounting_coa_id => l_adr_accounting_coa_id
42397: xla_accounting_err_pkg.build_message
42398: (p_appli_s_name => 'XLA'
42399: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
42400: ,p_token_1 => 'LINE_NUMBER'
42401: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
42402: ,p_token_2 => 'LINE_TYPE_NAME'
42403: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
42404: l_component_type
42405: ,l_component_code
42433: --
42434: --
42435: ------------------------------------------------------------------------------------------------
42436: -- 4219869 Business Flow
42437: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42438: -- Prior Entry. Currently, the following code is always generated.
42439: ------------------------------------------------------------------------------------------------
42440: XLA_AE_LINES_PKG.ValidateCurrentLine;
42441:
42436: -- 4219869 Business Flow
42437: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
42438: -- Prior Entry. Currently, the following code is always generated.
42439: ------------------------------------------------------------------------------------------------
42440: XLA_AE_LINES_PKG.ValidateCurrentLine;
42441:
42442: ------------------------------------------------------------------------------------
42443: -- 4219869 Business Flow
42444: -- Populated credit and debit amounts -- Need to generate this within IF
42442: ------------------------------------------------------------------------------------
42443: -- 4219869 Business Flow
42444: -- Populated credit and debit amounts -- Need to generate this within IF
42445: ------------------------------------------------------------------------------------
42446: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42447:
42448: ----------------------------------------------------------------------------------
42449: -- 4219869 Business Flow
42450: -- Update journal entry status -- Need to generate this within IF
42474: -- To allow MPA report to determine if it should generate report process
42475: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42476: ------------------------------------------------------------------------------------------
42477:
42478: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42479: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42480: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42481: -- call ADRs
42482: -- Bug 4922099
42475: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
42476: ------------------------------------------------------------------------------------------
42477:
42478: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
42479: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
42480: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
42481: -- call ADRs
42482: -- Bug 4922099
42483: --
42499: , x_value_type_code => l_adr_value_type_code
42500: , p_side => 'NA'
42501: );
42502:
42503: xla_ae_lines_pkg.set_ccid(
42504: p_code_combination_id => l_ccid
42505: , p_value_type_code => l_adr_value_type_code
42506: , p_transaction_coa_id => l_adr_transaction_coa_id
42507: , p_accounting_coa_id => l_adr_accounting_coa_id
42522:
42523: --
42524: -- Update the line information that should be overwritten
42525: --
42526: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42527: p_header_num => 1);
42528: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42529:
42530: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42524: -- Update the line information that should be overwritten
42525: --
42526: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42527: p_header_num => 1);
42528: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42529:
42530: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42531:
42532: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42526: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
42527: p_header_num => 1);
42528: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
42529:
42530: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42531:
42532: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42533: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42534: END IF;
42529:
42530: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
42531:
42532: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
42533: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
42534: END IF;
42535:
42536: --
42537: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42536: --
42537: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
42538: --
42539: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
42540: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
42541: ELSE
42542: ---------------------------------------------------------------------------------------------------
42543: -- 4262811a Switch Sign
42544: ---------------------------------------------------------------------------------------------------
42541: ELSE
42542: ---------------------------------------------------------------------------------------------------
42543: -- 4262811a Switch Sign
42544: ---------------------------------------------------------------------------------------------------
42545: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42546: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42547: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42548: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42542: ---------------------------------------------------------------------------------------------------
42543: -- 4262811a Switch Sign
42544: ---------------------------------------------------------------------------------------------------
42545: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42546: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42547: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42548: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: -- 5132302
42543: -- 4262811a Switch Sign
42544: ---------------------------------------------------------------------------------------------------
42545: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42546: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42547: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42548: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: -- 5132302
42551: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42544: ---------------------------------------------------------------------------------------------------
42545: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42546: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42547: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42548: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: -- 5132302
42551: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42552: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42545: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
42546: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42547: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42548: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: -- 5132302
42551: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42552: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42553:
42547: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42548: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: -- 5132302
42551: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42552: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42553:
42554: END IF;
42555:
42548: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
42549: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42550: -- 5132302
42551: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
42552: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
42553:
42554: END IF;
42555:
42556: -- 4955764
42553:
42554: END IF;
42555:
42556: -- 4955764
42557: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42558: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42559:
42560:
42561: XLA_AE_LINES_PKG.ValidateCurrentLine;
42557: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42558: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42559:
42560:
42561: XLA_AE_LINES_PKG.ValidateCurrentLine;
42562: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42563:
42564: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42565: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42558: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
42559:
42560:
42561: XLA_AE_LINES_PKG.ValidateCurrentLine;
42562: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
42563:
42564: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
42565: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
42566: ,p_balance_type_code => l_balance_type_code);
42711: --
42712: -- bulk performance
42713: --
42714: l_balance_type_code VARCHAR2(1);
42715: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
42716: l_log_module VARCHAR2(240);
42717:
42718: --
42719: -- Upgrade strategy
42781: ') = 'N'
42782: THEN
42783:
42784: --
42785: XLA_AE_LINES_PKG.SetNewLine;
42786:
42787: p_balance_type_code := l_balance_type_code;
42788: -- set the flag so later we will know whether the gain loss line needs to be created
42789:
42793:
42794: --
42795: -- bulk performance
42796: --
42797: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
42798: p_header_num => 0); -- 4262811
42799: --
42800: -- set accounting line options
42801: --
42798: p_header_num => 0); -- 4262811
42799: --
42800: -- set accounting line options
42801: --
42802: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
42803: p_natural_side_code => 'C'
42804: , p_gain_or_loss_flag => 'N'
42805: , p_gl_transfer_mode_code => 'S'
42806: , p_acct_entry_type_code => 'A'
42812: --
42813: --
42814: -- set accounting line type info
42815: --
42816: xla_ae_lines_pkg.SetAcctLineType
42817: (p_component_type => l_component_type
42818: ,p_event_type_code => l_event_type_code
42819: ,p_line_definition_owner_code => l_line_definition_owner_code
42820: ,p_line_definition_code => l_line_definition_code
42826: ,p_event_class_code => l_event_class_code);
42827: --
42828: -- set accounting class
42829: --
42830: xla_ae_lines_pkg.SetAcctClass(
42831: p_accounting_class_code => 'EDISC'
42832: , p_ae_header_id => l_ae_header_id
42833: );
42834:
42834:
42835: --
42836: -- set rounding class
42837: --
42838: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42839: 'RECEIVABLE';
42840:
42841: --
42842: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42838: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
42839: 'RECEIVABLE';
42840:
42841: --
42842: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42843: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42844: --
42845: -- bulk performance
42846: --
42839: 'RECEIVABLE';
42840:
42841: --
42842: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
42843: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42844: --
42845: -- bulk performance
42846: --
42847: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42843: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
42844: --
42845: -- bulk performance
42846: --
42847: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42848:
42849: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42850: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42851:
42845: -- bulk performance
42846: --
42847: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
42848:
42849: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42850: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42851:
42852: -- 4955764
42853: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42849: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
42850: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
42851:
42852: -- 4955764
42853: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
42854: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
42855:
42856: -- 4458381 Public Sector Enh
42857:
42893: l_rec_acct_attrs.array_num_value(15) := p_source_65;
42894: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
42895: l_rec_acct_attrs.array_char_value(16) := p_source_66;
42896:
42897: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42898: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42899:
42900: ---------------------------------------------------------------------------------------------------------------
42901: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42894: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
42895: l_rec_acct_attrs.array_char_value(16) := p_source_66;
42896:
42897: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42898: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42899:
42900: ---------------------------------------------------------------------------------------------------------------
42901: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42902: ---------------------------------------------------------------------------------------------------------------
42897: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
42898: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
42899:
42900: ---------------------------------------------------------------------------------------------------------------
42901: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42902: ---------------------------------------------------------------------------------------------------------------
42903: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42904:
42905: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42899:
42900: ---------------------------------------------------------------------------------------------------------------
42901: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42902: ---------------------------------------------------------------------------------------------------------------
42903: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42904:
42905: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42906: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42907:
42901: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
42902: ---------------------------------------------------------------------------------------------------------------
42903: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42904:
42905: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42906: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42907:
42908: IF xla_accounting_cache_pkg.GetValueChar
42909: (p_source_code => 'LEDGER_CATEGORY_CODE'
42902: ---------------------------------------------------------------------------------------------------------------
42903: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
42904:
42905: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42906: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
42907:
42908: IF xla_accounting_cache_pkg.GetValueChar
42909: (p_source_code => 'LEDGER_CATEGORY_CODE'
42910: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
42913: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
42914: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
42915: )
42916: THEN
42917: xla_ae_lines_pkg.BflowUpgEntry
42918: (p_business_method_code => l_bflow_method_code
42919: ,p_business_class_code => l_bflow_class_code
42920: ,p_balance_type => l_balance_type_code);
42921: ELSE
42930: --
42931: -- call description
42932: --
42933:
42934: xla_ae_lines_pkg.SetLineDescription(
42935: p_ae_header_id => l_ae_header_id
42936: ,p_description => Description_1 (
42937: p_application_id => p_application_id
42938: , p_ae_header_id => l_ae_header_id
42962: , x_value_type_code => l_adr_value_type_code
42963: , p_side => 'NA'
42964: );
42965:
42966: xla_ae_lines_pkg.set_ccid(
42967: p_code_combination_id => l_ccid
42968: , p_value_type_code => l_adr_value_type_code
42969: , p_transaction_coa_id => l_adr_transaction_coa_id
42970: , p_accounting_coa_id => l_adr_accounting_coa_id
42995: );
42996:
42997: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
42998:
42999: xla_ae_lines_pkg.set_segment(
43000: p_to_segment_code => 'GL_ACCOUNT'
43001: , p_segment_value => l_segment
43002: , p_from_segment_code => l_adr_value_segment_code
43003: , p_from_combination_id => l_adr_value_combination_id
43039: xla_accounting_err_pkg.build_message
43040: (p_appli_s_name => 'XLA'
43041: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
43042: ,p_token_1 => 'LINE_NUMBER'
43043: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
43044: ,p_token_2 => 'LINE_TYPE_NAME'
43045: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
43046: l_component_type
43047: ,l_component_code
43075: --
43076: --
43077: ------------------------------------------------------------------------------------------------
43078: -- 4219869 Business Flow
43079: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43080: -- Prior Entry. Currently, the following code is always generated.
43081: ------------------------------------------------------------------------------------------------
43082: XLA_AE_LINES_PKG.ValidateCurrentLine;
43083:
43078: -- 4219869 Business Flow
43079: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43080: -- Prior Entry. Currently, the following code is always generated.
43081: ------------------------------------------------------------------------------------------------
43082: XLA_AE_LINES_PKG.ValidateCurrentLine;
43083:
43084: ------------------------------------------------------------------------------------
43085: -- 4219869 Business Flow
43086: -- Populated credit and debit amounts -- Need to generate this within IF
43084: ------------------------------------------------------------------------------------
43085: -- 4219869 Business Flow
43086: -- Populated credit and debit amounts -- Need to generate this within IF
43087: ------------------------------------------------------------------------------------
43088: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43089:
43090: ----------------------------------------------------------------------------------
43091: -- 4219869 Business Flow
43092: -- Update journal entry status -- Need to generate this within IF
43116: -- To allow MPA report to determine if it should generate report process
43117: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43118: ------------------------------------------------------------------------------------------
43119:
43120: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43121: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43122: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43123: -- call ADRs
43124: -- Bug 4922099
43117: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43118: ------------------------------------------------------------------------------------------
43119:
43120: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43121: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43122: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43123: -- call ADRs
43124: -- Bug 4922099
43125: --
43141: , x_value_type_code => l_adr_value_type_code
43142: , p_side => 'NA'
43143: );
43144:
43145: xla_ae_lines_pkg.set_ccid(
43146: p_code_combination_id => l_ccid
43147: , p_value_type_code => l_adr_value_type_code
43148: , p_transaction_coa_id => l_adr_transaction_coa_id
43149: , p_accounting_coa_id => l_adr_accounting_coa_id
43174: );
43175:
43176: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
43177:
43178: xla_ae_lines_pkg.set_segment(
43179: p_to_segment_code => 'GL_ACCOUNT'
43180: , p_segment_value => l_segment
43181: , p_from_segment_code => l_adr_value_segment_code
43182: , p_from_combination_id => l_adr_value_combination_id
43205:
43206: --
43207: -- Update the line information that should be overwritten
43208: --
43209: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43210: p_header_num => 1);
43211: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43212:
43213: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43207: -- Update the line information that should be overwritten
43208: --
43209: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43210: p_header_num => 1);
43211: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43212:
43213: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43214:
43215: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43209: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43210: p_header_num => 1);
43211: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43212:
43213: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43214:
43215: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43216: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43217: END IF;
43212:
43213: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43214:
43215: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43216: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43217: END IF;
43218:
43219: --
43220: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43219: --
43220: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43221: --
43222: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
43223: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
43224: ELSE
43225: ---------------------------------------------------------------------------------------------------
43226: -- 4262811a Switch Sign
43227: ---------------------------------------------------------------------------------------------------
43224: ELSE
43225: ---------------------------------------------------------------------------------------------------
43226: -- 4262811a Switch Sign
43227: ---------------------------------------------------------------------------------------------------
43228: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43229: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43230: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43231: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43232: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43225: ---------------------------------------------------------------------------------------------------
43226: -- 4262811a Switch Sign
43227: ---------------------------------------------------------------------------------------------------
43228: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43229: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43230: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43231: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43232: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43233: -- 5132302
43226: -- 4262811a Switch Sign
43227: ---------------------------------------------------------------------------------------------------
43228: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43229: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43230: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43231: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43232: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43233: -- 5132302
43234: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43227: ---------------------------------------------------------------------------------------------------
43228: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43229: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43230: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43231: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43232: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43233: -- 5132302
43234: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43235: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43228: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43229: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43230: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43231: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43232: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43233: -- 5132302
43234: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43235: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43236:
43230: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43231: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43232: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43233: -- 5132302
43234: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43235: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43236:
43237: END IF;
43238:
43231: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43232: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43233: -- 5132302
43234: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43235: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43236:
43237: END IF;
43238:
43239: -- 4955764
43236:
43237: END IF;
43238:
43239: -- 4955764
43240: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43241: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43242:
43243:
43244: XLA_AE_LINES_PKG.ValidateCurrentLine;
43240: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43241: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43242:
43243:
43244: XLA_AE_LINES_PKG.ValidateCurrentLine;
43245: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43246:
43247: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43248: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43241: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43242:
43243:
43244: XLA_AE_LINES_PKG.ValidateCurrentLine;
43245: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43246:
43247: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43248: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43249: ,p_balance_type_code => l_balance_type_code);
43390: --
43391: -- bulk performance
43392: --
43393: l_balance_type_code VARCHAR2(1);
43394: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
43395: l_log_module VARCHAR2(240);
43396:
43397: --
43398: -- Upgrade strategy
43462: ') = 'EXCH_GAIN'
43463: THEN
43464:
43465: --
43466: XLA_AE_LINES_PKG.SetNewLine;
43467:
43468: p_balance_type_code := l_balance_type_code;
43469: -- set the flag so later we will know whether the gain loss line needs to be created
43470:
43474:
43475: --
43476: -- bulk performance
43477: --
43478: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
43479: p_header_num => 0); -- 4262811
43480: --
43481: -- set accounting line options
43482: --
43479: p_header_num => 0); -- 4262811
43480: --
43481: -- set accounting line options
43482: --
43483: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
43484: p_natural_side_code => 'C'
43485: , p_gain_or_loss_flag => 'Y'
43486: , p_gl_transfer_mode_code => 'S'
43487: , p_acct_entry_type_code => 'A'
43493: --
43494: --
43495: -- set accounting line type info
43496: --
43497: xla_ae_lines_pkg.SetAcctLineType
43498: (p_component_type => l_component_type
43499: ,p_event_type_code => l_event_type_code
43500: ,p_line_definition_owner_code => l_line_definition_owner_code
43501: ,p_line_definition_code => l_line_definition_code
43507: ,p_event_class_code => l_event_class_code);
43508: --
43509: -- set accounting class
43510: --
43511: xla_ae_lines_pkg.SetAcctClass(
43512: p_accounting_class_code => 'GAIN'
43513: , p_ae_header_id => l_ae_header_id
43514: );
43515:
43515:
43516: --
43517: -- set rounding class
43518: --
43519: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43520: 'RECEIVABLE';
43521:
43522: --
43523: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43519: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
43520: 'RECEIVABLE';
43521:
43522: --
43523: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43524: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43525: --
43526: -- bulk performance
43527: --
43520: 'RECEIVABLE';
43521:
43522: --
43523: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
43524: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43525: --
43526: -- bulk performance
43527: --
43528: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43524: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
43525: --
43526: -- bulk performance
43527: --
43528: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43529:
43530: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43531: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43532:
43526: -- bulk performance
43527: --
43528: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
43529:
43530: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43531: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43532:
43533: -- 4955764
43534: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43530: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
43531: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
43532:
43533: -- 4955764
43534: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43535: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
43536:
43537: -- 4458381 Public Sector Enh
43538:
43574: l_rec_acct_attrs.array_num_value(15) := p_source_65;
43575: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
43576: l_rec_acct_attrs.array_char_value(16) := p_source_66;
43577:
43578: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43579: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43580:
43581: ---------------------------------------------------------------------------------------------------------------
43582: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43575: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
43576: l_rec_acct_attrs.array_char_value(16) := p_source_66;
43577:
43578: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43579: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43580:
43581: ---------------------------------------------------------------------------------------------------------------
43582: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43583: ---------------------------------------------------------------------------------------------------------------
43578: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
43579: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
43580:
43581: ---------------------------------------------------------------------------------------------------------------
43582: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43583: ---------------------------------------------------------------------------------------------------------------
43584: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43585:
43586: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43580:
43581: ---------------------------------------------------------------------------------------------------------------
43582: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43583: ---------------------------------------------------------------------------------------------------------------
43584: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43585:
43586: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43587: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43588:
43582: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
43583: ---------------------------------------------------------------------------------------------------------------
43584: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43585:
43586: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43587: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43588:
43589: IF xla_accounting_cache_pkg.GetValueChar
43590: (p_source_code => 'LEDGER_CATEGORY_CODE'
43583: ---------------------------------------------------------------------------------------------------------------
43584: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
43585:
43586: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43587: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
43588:
43589: IF xla_accounting_cache_pkg.GetValueChar
43590: (p_source_code => 'LEDGER_CATEGORY_CODE'
43591: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
43594: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
43595: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
43596: )
43597: THEN
43598: xla_ae_lines_pkg.BflowUpgEntry
43599: (p_business_method_code => l_bflow_method_code
43600: ,p_business_class_code => l_bflow_class_code
43601: ,p_balance_type => l_balance_type_code);
43602: ELSE
43634: , x_value_type_code => l_adr_value_type_code
43635: , p_side => 'NA'
43636: );
43637:
43638: xla_ae_lines_pkg.set_ccid(
43639: p_code_combination_id => l_ccid
43640: , p_value_type_code => l_adr_value_type_code
43641: , p_transaction_coa_id => l_adr_transaction_coa_id
43642: , p_accounting_coa_id => l_adr_accounting_coa_id
43670: xla_accounting_err_pkg.build_message
43671: (p_appli_s_name => 'XLA'
43672: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
43673: ,p_token_1 => 'LINE_NUMBER'
43674: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
43675: ,p_token_2 => 'LINE_TYPE_NAME'
43676: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
43677: l_component_type
43678: ,l_component_code
43706: --
43707: --
43708: ------------------------------------------------------------------------------------------------
43709: -- 4219869 Business Flow
43710: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43711: -- Prior Entry. Currently, the following code is always generated.
43712: ------------------------------------------------------------------------------------------------
43713: XLA_AE_LINES_PKG.ValidateCurrentLine;
43714:
43709: -- 4219869 Business Flow
43710: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
43711: -- Prior Entry. Currently, the following code is always generated.
43712: ------------------------------------------------------------------------------------------------
43713: XLA_AE_LINES_PKG.ValidateCurrentLine;
43714:
43715: ------------------------------------------------------------------------------------
43716: -- 4219869 Business Flow
43717: -- Populated credit and debit amounts -- Need to generate this within IF
43715: ------------------------------------------------------------------------------------
43716: -- 4219869 Business Flow
43717: -- Populated credit and debit amounts -- Need to generate this within IF
43718: ------------------------------------------------------------------------------------
43719: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43720:
43721: ----------------------------------------------------------------------------------
43722: -- 4219869 Business Flow
43723: -- Update journal entry status -- Need to generate this within IF
43747: -- To allow MPA report to determine if it should generate report process
43748: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43749: ------------------------------------------------------------------------------------------
43750:
43751: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43752: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43753: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43754: -- call ADRs
43755: -- Bug 4922099
43748: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
43749: ------------------------------------------------------------------------------------------
43750:
43751: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
43752: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
43753: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
43754: -- call ADRs
43755: -- Bug 4922099
43756: --
43772: , x_value_type_code => l_adr_value_type_code
43773: , p_side => 'NA'
43774: );
43775:
43776: xla_ae_lines_pkg.set_ccid(
43777: p_code_combination_id => l_ccid
43778: , p_value_type_code => l_adr_value_type_code
43779: , p_transaction_coa_id => l_adr_transaction_coa_id
43780: , p_accounting_coa_id => l_adr_accounting_coa_id
43795:
43796: --
43797: -- Update the line information that should be overwritten
43798: --
43799: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43800: p_header_num => 1);
43801: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43802:
43803: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43797: -- Update the line information that should be overwritten
43798: --
43799: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43800: p_header_num => 1);
43801: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43802:
43803: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43804:
43805: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43799: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
43800: p_header_num => 1);
43801: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
43802:
43803: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43804:
43805: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43806: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43807: END IF;
43802:
43803: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
43804:
43805: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
43806: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
43807: END IF;
43808:
43809: --
43810: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43809: --
43810: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
43811: --
43812: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
43813: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
43814: ELSE
43815: ---------------------------------------------------------------------------------------------------
43816: -- 4262811a Switch Sign
43817: ---------------------------------------------------------------------------------------------------
43814: ELSE
43815: ---------------------------------------------------------------------------------------------------
43816: -- 4262811a Switch Sign
43817: ---------------------------------------------------------------------------------------------------
43818: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43820: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43822: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43815: ---------------------------------------------------------------------------------------------------
43816: -- 4262811a Switch Sign
43817: ---------------------------------------------------------------------------------------------------
43818: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43820: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43822: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43823: -- 5132302
43816: -- 4262811a Switch Sign
43817: ---------------------------------------------------------------------------------------------------
43818: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43820: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43822: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43823: -- 5132302
43824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43817: ---------------------------------------------------------------------------------------------------
43818: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43820: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43822: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43823: -- 5132302
43824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43825: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43818: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
43819: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43820: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43822: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43823: -- 5132302
43824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43825: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43826:
43820: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43822: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43823: -- 5132302
43824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43825: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43826:
43827: END IF;
43828:
43821: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
43822: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43823: -- 5132302
43824: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
43825: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
43826:
43827: END IF;
43828:
43829: -- 4955764
43826:
43827: END IF;
43828:
43829: -- 4955764
43830: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43831: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43832:
43833:
43834: XLA_AE_LINES_PKG.ValidateCurrentLine;
43830: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
43831: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43832:
43833:
43834: XLA_AE_LINES_PKG.ValidateCurrentLine;
43835: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43836:
43837: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43838: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43831: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
43832:
43833:
43834: XLA_AE_LINES_PKG.ValidateCurrentLine;
43835: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
43836:
43837: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
43838: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
43839: ,p_balance_type_code => l_balance_type_code);
43980: --
43981: -- bulk performance
43982: --
43983: l_balance_type_code VARCHAR2(1);
43984: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
43985: l_log_module VARCHAR2(240);
43986:
43987: --
43988: -- Upgrade strategy
44052: ') = 'EXCH_LOSS'
44053: THEN
44054:
44055: --
44056: XLA_AE_LINES_PKG.SetNewLine;
44057:
44058: p_balance_type_code := l_balance_type_code;
44059: -- set the flag so later we will know whether the gain loss line needs to be created
44060:
44064:
44065: --
44066: -- bulk performance
44067: --
44068: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
44069: p_header_num => 0); -- 4262811
44070: --
44071: -- set accounting line options
44072: --
44069: p_header_num => 0); -- 4262811
44070: --
44071: -- set accounting line options
44072: --
44073: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
44074: p_natural_side_code => 'C'
44075: , p_gain_or_loss_flag => 'Y'
44076: , p_gl_transfer_mode_code => 'S'
44077: , p_acct_entry_type_code => 'A'
44083: --
44084: --
44085: -- set accounting line type info
44086: --
44087: xla_ae_lines_pkg.SetAcctLineType
44088: (p_component_type => l_component_type
44089: ,p_event_type_code => l_event_type_code
44090: ,p_line_definition_owner_code => l_line_definition_owner_code
44091: ,p_line_definition_code => l_line_definition_code
44097: ,p_event_class_code => l_event_class_code);
44098: --
44099: -- set accounting class
44100: --
44101: xla_ae_lines_pkg.SetAcctClass(
44102: p_accounting_class_code => 'LOSS'
44103: , p_ae_header_id => l_ae_header_id
44104: );
44105:
44105:
44106: --
44107: -- set rounding class
44108: --
44109: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44110: 'RECEIVABLE';
44111:
44112: --
44113: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44109: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44110: 'RECEIVABLE';
44111:
44112: --
44113: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44114: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44115: --
44116: -- bulk performance
44117: --
44110: 'RECEIVABLE';
44111:
44112: --
44113: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44114: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44115: --
44116: -- bulk performance
44117: --
44118: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44114: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44115: --
44116: -- bulk performance
44117: --
44118: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44119:
44120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44121: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44122:
44116: -- bulk performance
44117: --
44118: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44119:
44120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44121: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44122:
44123: -- 4955764
44124: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44120: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44121: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44122:
44123: -- 4955764
44124: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44125: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
44126:
44127: -- 4458381 Public Sector Enh
44128:
44164: l_rec_acct_attrs.array_num_value(15) := p_source_65;
44165: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
44166: l_rec_acct_attrs.array_char_value(16) := p_source_66;
44167:
44168: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44169: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44170:
44171: ---------------------------------------------------------------------------------------------------------------
44172: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44165: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
44166: l_rec_acct_attrs.array_char_value(16) := p_source_66;
44167:
44168: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44169: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44170:
44171: ---------------------------------------------------------------------------------------------------------------
44172: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44173: ---------------------------------------------------------------------------------------------------------------
44168: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44169: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44170:
44171: ---------------------------------------------------------------------------------------------------------------
44172: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44173: ---------------------------------------------------------------------------------------------------------------
44174: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44175:
44176: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44170:
44171: ---------------------------------------------------------------------------------------------------------------
44172: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44173: ---------------------------------------------------------------------------------------------------------------
44174: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44175:
44176: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44177: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44178:
44172: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44173: ---------------------------------------------------------------------------------------------------------------
44174: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44175:
44176: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44177: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44178:
44179: IF xla_accounting_cache_pkg.GetValueChar
44180: (p_source_code => 'LEDGER_CATEGORY_CODE'
44173: ---------------------------------------------------------------------------------------------------------------
44174: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44175:
44176: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44177: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44178:
44179: IF xla_accounting_cache_pkg.GetValueChar
44180: (p_source_code => 'LEDGER_CATEGORY_CODE'
44181: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
44184: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
44185: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
44186: )
44187: THEN
44188: xla_ae_lines_pkg.BflowUpgEntry
44189: (p_business_method_code => l_bflow_method_code
44190: ,p_business_class_code => l_bflow_class_code
44191: ,p_balance_type => l_balance_type_code);
44192: ELSE
44224: , x_value_type_code => l_adr_value_type_code
44225: , p_side => 'NA'
44226: );
44227:
44228: xla_ae_lines_pkg.set_ccid(
44229: p_code_combination_id => l_ccid
44230: , p_value_type_code => l_adr_value_type_code
44231: , p_transaction_coa_id => l_adr_transaction_coa_id
44232: , p_accounting_coa_id => l_adr_accounting_coa_id
44260: xla_accounting_err_pkg.build_message
44261: (p_appli_s_name => 'XLA'
44262: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
44263: ,p_token_1 => 'LINE_NUMBER'
44264: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
44265: ,p_token_2 => 'LINE_TYPE_NAME'
44266: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
44267: l_component_type
44268: ,l_component_code
44296: --
44297: --
44298: ------------------------------------------------------------------------------------------------
44299: -- 4219869 Business Flow
44300: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44301: -- Prior Entry. Currently, the following code is always generated.
44302: ------------------------------------------------------------------------------------------------
44303: XLA_AE_LINES_PKG.ValidateCurrentLine;
44304:
44299: -- 4219869 Business Flow
44300: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44301: -- Prior Entry. Currently, the following code is always generated.
44302: ------------------------------------------------------------------------------------------------
44303: XLA_AE_LINES_PKG.ValidateCurrentLine;
44304:
44305: ------------------------------------------------------------------------------------
44306: -- 4219869 Business Flow
44307: -- Populated credit and debit amounts -- Need to generate this within IF
44305: ------------------------------------------------------------------------------------
44306: -- 4219869 Business Flow
44307: -- Populated credit and debit amounts -- Need to generate this within IF
44308: ------------------------------------------------------------------------------------
44309: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44310:
44311: ----------------------------------------------------------------------------------
44312: -- 4219869 Business Flow
44313: -- Update journal entry status -- Need to generate this within IF
44337: -- To allow MPA report to determine if it should generate report process
44338: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44339: ------------------------------------------------------------------------------------------
44340:
44341: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44342: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44343: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44344: -- call ADRs
44345: -- Bug 4922099
44338: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44339: ------------------------------------------------------------------------------------------
44340:
44341: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44342: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44343: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44344: -- call ADRs
44345: -- Bug 4922099
44346: --
44362: , x_value_type_code => l_adr_value_type_code
44363: , p_side => 'NA'
44364: );
44365:
44366: xla_ae_lines_pkg.set_ccid(
44367: p_code_combination_id => l_ccid
44368: , p_value_type_code => l_adr_value_type_code
44369: , p_transaction_coa_id => l_adr_transaction_coa_id
44370: , p_accounting_coa_id => l_adr_accounting_coa_id
44385:
44386: --
44387: -- Update the line information that should be overwritten
44388: --
44389: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44390: p_header_num => 1);
44391: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44392:
44393: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44387: -- Update the line information that should be overwritten
44388: --
44389: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44390: p_header_num => 1);
44391: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44392:
44393: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44394:
44395: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44389: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44390: p_header_num => 1);
44391: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44392:
44393: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44394:
44395: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44396: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44397: END IF;
44392:
44393: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44394:
44395: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44396: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44397: END IF;
44398:
44399: --
44400: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44399: --
44400: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44401: --
44402: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
44403: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
44404: ELSE
44405: ---------------------------------------------------------------------------------------------------
44406: -- 4262811a Switch Sign
44407: ---------------------------------------------------------------------------------------------------
44404: ELSE
44405: ---------------------------------------------------------------------------------------------------
44406: -- 4262811a Switch Sign
44407: ---------------------------------------------------------------------------------------------------
44408: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44409: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44411: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44405: ---------------------------------------------------------------------------------------------------
44406: -- 4262811a Switch Sign
44407: ---------------------------------------------------------------------------------------------------
44408: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44409: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44411: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44413: -- 5132302
44406: -- 4262811a Switch Sign
44407: ---------------------------------------------------------------------------------------------------
44408: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44409: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44411: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44413: -- 5132302
44414: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44407: ---------------------------------------------------------------------------------------------------
44408: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44409: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44411: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44413: -- 5132302
44414: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44408: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
44409: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44411: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44413: -- 5132302
44414: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44416:
44410: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44411: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44413: -- 5132302
44414: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44416:
44417: END IF;
44418:
44411: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
44412: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44413: -- 5132302
44414: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
44415: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44416:
44417: END IF;
44418:
44419: -- 4955764
44416:
44417: END IF;
44418:
44419: -- 4955764
44420: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44421: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44422:
44423:
44424: XLA_AE_LINES_PKG.ValidateCurrentLine;
44420: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44421: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44422:
44423:
44424: XLA_AE_LINES_PKG.ValidateCurrentLine;
44425: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44426:
44427: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44428: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44421: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
44422:
44423:
44424: XLA_AE_LINES_PKG.ValidateCurrentLine;
44425: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44426:
44427: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
44428: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
44429: ,p_balance_type_code => l_balance_type_code);
44574: --
44575: -- bulk performance
44576: --
44577: l_balance_type_code VARCHAR2(1);
44578: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
44579: l_log_module VARCHAR2(240);
44580:
44581: --
44582: -- Upgrade strategy
44646: ') = 'N'
44647: THEN
44648:
44649: --
44650: XLA_AE_LINES_PKG.SetNewLine;
44651:
44652: p_balance_type_code := l_balance_type_code;
44653: -- set the flag so later we will know whether the gain loss line needs to be created
44654:
44658:
44659: --
44660: -- bulk performance
44661: --
44662: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
44663: p_header_num => 0); -- 4262811
44664: --
44665: -- set accounting line options
44666: --
44663: p_header_num => 0); -- 4262811
44664: --
44665: -- set accounting line options
44666: --
44667: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
44668: p_natural_side_code => 'C'
44669: , p_gain_or_loss_flag => 'N'
44670: , p_gl_transfer_mode_code => 'S'
44671: , p_acct_entry_type_code => 'A'
44677: --
44678: --
44679: -- set accounting line type info
44680: --
44681: xla_ae_lines_pkg.SetAcctLineType
44682: (p_component_type => l_component_type
44683: ,p_event_type_code => l_event_type_code
44684: ,p_line_definition_owner_code => l_line_definition_owner_code
44685: ,p_line_definition_code => l_line_definition_code
44691: ,p_event_class_code => l_event_class_code);
44692: --
44693: -- set accounting class
44694: --
44695: xla_ae_lines_pkg.SetAcctClass(
44696: p_accounting_class_code => 'FACTOR'
44697: , p_ae_header_id => l_ae_header_id
44698: );
44699:
44699:
44700: --
44701: -- set rounding class
44702: --
44703: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44704: 'RECEIVABLE';
44705:
44706: --
44707: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44703: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
44704: 'RECEIVABLE';
44705:
44706: --
44707: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44708: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44709: --
44710: -- bulk performance
44711: --
44704: 'RECEIVABLE';
44705:
44706: --
44707: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
44708: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44709: --
44710: -- bulk performance
44711: --
44712: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44708: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
44709: --
44710: -- bulk performance
44711: --
44712: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44713:
44714: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44715: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44716:
44710: -- bulk performance
44711: --
44712: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
44713:
44714: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44715: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44716:
44717: -- 4955764
44718: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44714: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
44715: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
44716:
44717: -- 4955764
44718: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
44719: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
44720:
44721: -- 4458381 Public Sector Enh
44722:
44758: l_rec_acct_attrs.array_num_value(15) := p_source_65;
44759: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
44760: l_rec_acct_attrs.array_char_value(16) := p_source_66;
44761:
44762: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44763: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44764:
44765: ---------------------------------------------------------------------------------------------------------------
44766: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44759: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
44760: l_rec_acct_attrs.array_char_value(16) := p_source_66;
44761:
44762: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44763: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44764:
44765: ---------------------------------------------------------------------------------------------------------------
44766: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44767: ---------------------------------------------------------------------------------------------------------------
44762: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
44763: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
44764:
44765: ---------------------------------------------------------------------------------------------------------------
44766: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44767: ---------------------------------------------------------------------------------------------------------------
44768: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44769:
44770: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44764:
44765: ---------------------------------------------------------------------------------------------------------------
44766: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44767: ---------------------------------------------------------------------------------------------------------------
44768: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44769:
44770: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44771: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44772:
44766: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
44767: ---------------------------------------------------------------------------------------------------------------
44768: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44769:
44770: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44771: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44772:
44773: IF xla_accounting_cache_pkg.GetValueChar
44774: (p_source_code => 'LEDGER_CATEGORY_CODE'
44767: ---------------------------------------------------------------------------------------------------------------
44768: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
44769:
44770: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44771: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
44772:
44773: IF xla_accounting_cache_pkg.GetValueChar
44774: (p_source_code => 'LEDGER_CATEGORY_CODE'
44775: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
44778: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
44779: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
44780: )
44781: THEN
44782: xla_ae_lines_pkg.BflowUpgEntry
44783: (p_business_method_code => l_bflow_method_code
44784: ,p_business_class_code => l_bflow_class_code
44785: ,p_balance_type => l_balance_type_code);
44786: ELSE
44818: , x_value_type_code => l_adr_value_type_code
44819: , p_side => 'NA'
44820: );
44821:
44822: xla_ae_lines_pkg.set_ccid(
44823: p_code_combination_id => l_ccid
44824: , p_value_type_code => l_adr_value_type_code
44825: , p_transaction_coa_id => l_adr_transaction_coa_id
44826: , p_accounting_coa_id => l_adr_accounting_coa_id
44854: xla_accounting_err_pkg.build_message
44855: (p_appli_s_name => 'XLA'
44856: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
44857: ,p_token_1 => 'LINE_NUMBER'
44858: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
44859: ,p_token_2 => 'LINE_TYPE_NAME'
44860: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
44861: l_component_type
44862: ,l_component_code
44890: --
44891: --
44892: ------------------------------------------------------------------------------------------------
44893: -- 4219869 Business Flow
44894: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44895: -- Prior Entry. Currently, the following code is always generated.
44896: ------------------------------------------------------------------------------------------------
44897: XLA_AE_LINES_PKG.ValidateCurrentLine;
44898:
44893: -- 4219869 Business Flow
44894: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
44895: -- Prior Entry. Currently, the following code is always generated.
44896: ------------------------------------------------------------------------------------------------
44897: XLA_AE_LINES_PKG.ValidateCurrentLine;
44898:
44899: ------------------------------------------------------------------------------------
44900: -- 4219869 Business Flow
44901: -- Populated credit and debit amounts -- Need to generate this within IF
44899: ------------------------------------------------------------------------------------
44900: -- 4219869 Business Flow
44901: -- Populated credit and debit amounts -- Need to generate this within IF
44902: ------------------------------------------------------------------------------------
44903: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
44904:
44905: ----------------------------------------------------------------------------------
44906: -- 4219869 Business Flow
44907: -- Update journal entry status -- Need to generate this within IF
44931: -- To allow MPA report to determine if it should generate report process
44932: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44933: ------------------------------------------------------------------------------------------
44934:
44935: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44936: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44937: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44938: -- call ADRs
44939: -- Bug 4922099
44932: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
44933: ------------------------------------------------------------------------------------------
44934:
44935: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
44936: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
44937: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
44938: -- call ADRs
44939: -- Bug 4922099
44940: --
44956: , x_value_type_code => l_adr_value_type_code
44957: , p_side => 'NA'
44958: );
44959:
44960: xla_ae_lines_pkg.set_ccid(
44961: p_code_combination_id => l_ccid
44962: , p_value_type_code => l_adr_value_type_code
44963: , p_transaction_coa_id => l_adr_transaction_coa_id
44964: , p_accounting_coa_id => l_adr_accounting_coa_id
44979:
44980: --
44981: -- Update the line information that should be overwritten
44982: --
44983: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44984: p_header_num => 1);
44985: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44986:
44987: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44981: -- Update the line information that should be overwritten
44982: --
44983: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44984: p_header_num => 1);
44985: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44986:
44987: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44988:
44989: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44983: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
44984: p_header_num => 1);
44985: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
44986:
44987: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44988:
44989: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44990: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44991: END IF;
44986:
44987: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
44988:
44989: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
44990: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
44991: END IF;
44992:
44993: --
44994: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44993: --
44994: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
44995: --
44996: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
44997: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
44998: ELSE
44999: ---------------------------------------------------------------------------------------------------
45000: -- 4262811a Switch Sign
45001: ---------------------------------------------------------------------------------------------------
44998: ELSE
44999: ---------------------------------------------------------------------------------------------------
45000: -- 4262811a Switch Sign
45001: ---------------------------------------------------------------------------------------------------
45002: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45004: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45006: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
44999: ---------------------------------------------------------------------------------------------------
45000: -- 4262811a Switch Sign
45001: ---------------------------------------------------------------------------------------------------
45002: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45004: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45006: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45007: -- 5132302
45000: -- 4262811a Switch Sign
45001: ---------------------------------------------------------------------------------------------------
45002: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45004: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45006: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45007: -- 5132302
45008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45001: ---------------------------------------------------------------------------------------------------
45002: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45004: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45006: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45007: -- 5132302
45008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45009: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45002: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45003: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45004: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45006: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45007: -- 5132302
45008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45009: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45010:
45004: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45006: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45007: -- 5132302
45008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45009: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45010:
45011: END IF;
45012:
45005: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45006: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45007: -- 5132302
45008: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45009: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45010:
45011: END IF;
45012:
45013: -- 4955764
45010:
45011: END IF;
45012:
45013: -- 4955764
45014: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45015: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45016:
45017:
45018: XLA_AE_LINES_PKG.ValidateCurrentLine;
45014: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45015: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45016:
45017:
45018: XLA_AE_LINES_PKG.ValidateCurrentLine;
45019: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45020:
45021: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45022: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45015: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45016:
45017:
45018: XLA_AE_LINES_PKG.ValidateCurrentLine;
45019: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45020:
45021: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45022: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45023: ,p_balance_type_code => l_balance_type_code);
45168: --
45169: -- bulk performance
45170: --
45171: l_balance_type_code VARCHAR2(1);
45172: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
45173: l_log_module VARCHAR2(240);
45174:
45175: --
45176: -- Upgrade strategy
45240: ') = 'N'
45241: THEN
45242:
45243: --
45244: XLA_AE_LINES_PKG.SetNewLine;
45245:
45246: p_balance_type_code := l_balance_type_code;
45247: -- set the flag so later we will know whether the gain loss line needs to be created
45248:
45252:
45253: --
45254: -- bulk performance
45255: --
45256: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
45257: p_header_num => 0); -- 4262811
45258: --
45259: -- set accounting line options
45260: --
45257: p_header_num => 0); -- 4262811
45258: --
45259: -- set accounting line options
45260: --
45261: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
45262: p_natural_side_code => 'C'
45263: , p_gain_or_loss_flag => 'N'
45264: , p_gl_transfer_mode_code => 'S'
45265: , p_acct_entry_type_code => 'A'
45271: --
45272: --
45273: -- set accounting line type info
45274: --
45275: xla_ae_lines_pkg.SetAcctLineType
45276: (p_component_type => l_component_type
45277: ,p_event_type_code => l_event_type_code
45278: ,p_line_definition_owner_code => l_line_definition_owner_code
45279: ,p_line_definition_code => l_line_definition_code
45285: ,p_event_class_code => l_event_class_code);
45286: --
45287: -- set accounting class
45288: --
45289: xla_ae_lines_pkg.SetAcctClass(
45290: p_accounting_class_code => 'FAC_BR'
45291: , p_ae_header_id => l_ae_header_id
45292: );
45293:
45293:
45294: --
45295: -- set rounding class
45296: --
45297: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45298: 'RECEIVABLE';
45299:
45300: --
45301: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45297: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45298: 'RECEIVABLE';
45299:
45300: --
45301: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45302: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45303: --
45304: -- bulk performance
45305: --
45298: 'RECEIVABLE';
45299:
45300: --
45301: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45302: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45303: --
45304: -- bulk performance
45305: --
45306: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45302: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45303: --
45304: -- bulk performance
45305: --
45306: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45307:
45308: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45309: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45310:
45304: -- bulk performance
45305: --
45306: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45307:
45308: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45309: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45310:
45311: -- 4955764
45312: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45308: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45309: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45310:
45311: -- 4955764
45312: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45313: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
45314:
45315: -- 4458381 Public Sector Enh
45316:
45352: l_rec_acct_attrs.array_num_value(15) := p_source_65;
45353: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45354: l_rec_acct_attrs.array_char_value(16) := p_source_66;
45355:
45356: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45357: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45358:
45359: ---------------------------------------------------------------------------------------------------------------
45360: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45353: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45354: l_rec_acct_attrs.array_char_value(16) := p_source_66;
45355:
45356: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45357: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45358:
45359: ---------------------------------------------------------------------------------------------------------------
45360: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45361: ---------------------------------------------------------------------------------------------------------------
45356: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45357: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45358:
45359: ---------------------------------------------------------------------------------------------------------------
45360: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45361: ---------------------------------------------------------------------------------------------------------------
45362: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45363:
45364: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45358:
45359: ---------------------------------------------------------------------------------------------------------------
45360: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45361: ---------------------------------------------------------------------------------------------------------------
45362: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45363:
45364: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45365: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45366:
45360: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45361: ---------------------------------------------------------------------------------------------------------------
45362: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45363:
45364: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45365: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45366:
45367: IF xla_accounting_cache_pkg.GetValueChar
45368: (p_source_code => 'LEDGER_CATEGORY_CODE'
45361: ---------------------------------------------------------------------------------------------------------------
45362: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45363:
45364: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45365: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45366:
45367: IF xla_accounting_cache_pkg.GetValueChar
45368: (p_source_code => 'LEDGER_CATEGORY_CODE'
45369: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
45372: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
45373: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
45374: )
45375: THEN
45376: xla_ae_lines_pkg.BflowUpgEntry
45377: (p_business_method_code => l_bflow_method_code
45378: ,p_business_class_code => l_bflow_class_code
45379: ,p_balance_type => l_balance_type_code);
45380: ELSE
45412: , x_value_type_code => l_adr_value_type_code
45413: , p_side => 'NA'
45414: );
45415:
45416: xla_ae_lines_pkg.set_ccid(
45417: p_code_combination_id => l_ccid
45418: , p_value_type_code => l_adr_value_type_code
45419: , p_transaction_coa_id => l_adr_transaction_coa_id
45420: , p_accounting_coa_id => l_adr_accounting_coa_id
45448: xla_accounting_err_pkg.build_message
45449: (p_appli_s_name => 'XLA'
45450: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
45451: ,p_token_1 => 'LINE_NUMBER'
45452: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
45453: ,p_token_2 => 'LINE_TYPE_NAME'
45454: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
45455: l_component_type
45456: ,l_component_code
45484: --
45485: --
45486: ------------------------------------------------------------------------------------------------
45487: -- 4219869 Business Flow
45488: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45489: -- Prior Entry. Currently, the following code is always generated.
45490: ------------------------------------------------------------------------------------------------
45491: XLA_AE_LINES_PKG.ValidateCurrentLine;
45492:
45487: -- 4219869 Business Flow
45488: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
45489: -- Prior Entry. Currently, the following code is always generated.
45490: ------------------------------------------------------------------------------------------------
45491: XLA_AE_LINES_PKG.ValidateCurrentLine;
45492:
45493: ------------------------------------------------------------------------------------
45494: -- 4219869 Business Flow
45495: -- Populated credit and debit amounts -- Need to generate this within IF
45493: ------------------------------------------------------------------------------------
45494: -- 4219869 Business Flow
45495: -- Populated credit and debit amounts -- Need to generate this within IF
45496: ------------------------------------------------------------------------------------
45497: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45498:
45499: ----------------------------------------------------------------------------------
45500: -- 4219869 Business Flow
45501: -- Update journal entry status -- Need to generate this within IF
45525: -- To allow MPA report to determine if it should generate report process
45526: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45527: ------------------------------------------------------------------------------------------
45528:
45529: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45530: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45531: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45532: -- call ADRs
45533: -- Bug 4922099
45526: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
45527: ------------------------------------------------------------------------------------------
45528:
45529: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
45530: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
45531: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
45532: -- call ADRs
45533: -- Bug 4922099
45534: --
45550: , x_value_type_code => l_adr_value_type_code
45551: , p_side => 'NA'
45552: );
45553:
45554: xla_ae_lines_pkg.set_ccid(
45555: p_code_combination_id => l_ccid
45556: , p_value_type_code => l_adr_value_type_code
45557: , p_transaction_coa_id => l_adr_transaction_coa_id
45558: , p_accounting_coa_id => l_adr_accounting_coa_id
45573:
45574: --
45575: -- Update the line information that should be overwritten
45576: --
45577: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45578: p_header_num => 1);
45579: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45580:
45581: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45575: -- Update the line information that should be overwritten
45576: --
45577: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45578: p_header_num => 1);
45579: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45580:
45581: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45582:
45583: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45577: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
45578: p_header_num => 1);
45579: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
45580:
45581: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45582:
45583: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45584: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45585: END IF;
45580:
45581: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
45582:
45583: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
45584: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
45585: END IF;
45586:
45587: --
45588: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45587: --
45588: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
45589: --
45590: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
45591: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
45592: ELSE
45593: ---------------------------------------------------------------------------------------------------
45594: -- 4262811a Switch Sign
45595: ---------------------------------------------------------------------------------------------------
45592: ELSE
45593: ---------------------------------------------------------------------------------------------------
45594: -- 4262811a Switch Sign
45595: ---------------------------------------------------------------------------------------------------
45596: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45597: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45598: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45599: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45600: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45593: ---------------------------------------------------------------------------------------------------
45594: -- 4262811a Switch Sign
45595: ---------------------------------------------------------------------------------------------------
45596: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45597: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45598: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45599: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45600: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45601: -- 5132302
45594: -- 4262811a Switch Sign
45595: ---------------------------------------------------------------------------------------------------
45596: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45597: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45598: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45599: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45600: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45601: -- 5132302
45602: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45595: ---------------------------------------------------------------------------------------------------
45596: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45597: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45598: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45599: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45600: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45601: -- 5132302
45602: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45603: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45596: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
45597: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45598: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45599: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45600: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45601: -- 5132302
45602: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45603: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45604:
45598: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45599: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45600: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45601: -- 5132302
45602: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45603: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45604:
45605: END IF;
45606:
45599: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
45600: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45601: -- 5132302
45602: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
45603: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
45604:
45605: END IF;
45606:
45607: -- 4955764
45604:
45605: END IF;
45606:
45607: -- 4955764
45608: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45609: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45610:
45611:
45612: XLA_AE_LINES_PKG.ValidateCurrentLine;
45608: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45609: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45610:
45611:
45612: XLA_AE_LINES_PKG.ValidateCurrentLine;
45613: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45614:
45615: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45616: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45609: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
45610:
45611:
45612: XLA_AE_LINES_PKG.ValidateCurrentLine;
45613: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
45614:
45615: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
45616: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
45617: ,p_balance_type_code => l_balance_type_code);
45762: --
45763: -- bulk performance
45764: --
45765: l_balance_type_code VARCHAR2(1);
45766: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
45767: l_log_module VARCHAR2(240);
45768:
45769: --
45770: -- Upgrade strategy
45836: ') = 'N'
45837: THEN
45838:
45839: --
45840: XLA_AE_LINES_PKG.SetNewLine;
45841:
45842: p_balance_type_code := l_balance_type_code;
45843: -- set the flag so later we will know whether the gain loss line needs to be created
45844:
45848:
45849: --
45850: -- bulk performance
45851: --
45852: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
45853: p_header_num => 0); -- 4262811
45854: --
45855: -- set accounting line options
45856: --
45853: p_header_num => 0); -- 4262811
45854: --
45855: -- set accounting line options
45856: --
45857: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
45858: p_natural_side_code => 'C'
45859: , p_gain_or_loss_flag => 'N'
45860: , p_gl_transfer_mode_code => 'S'
45861: , p_acct_entry_type_code => 'A'
45867: --
45868: --
45869: -- set accounting line type info
45870: --
45871: xla_ae_lines_pkg.SetAcctLineType
45872: (p_component_type => l_component_type
45873: ,p_event_type_code => l_event_type_code
45874: ,p_line_definition_owner_code => l_line_definition_owner_code
45875: ,p_line_definition_code => l_line_definition_code
45881: ,p_event_class_code => l_event_class_code);
45882: --
45883: -- set accounting class
45884: --
45885: xla_ae_lines_pkg.SetAcctClass(
45886: p_accounting_class_code => 'PMT_NET'
45887: , p_ae_header_id => l_ae_header_id
45888: );
45889:
45889:
45890: --
45891: -- set rounding class
45892: --
45893: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45894: 'RECEIVABLE';
45895:
45896: --
45897: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45893: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
45894: 'RECEIVABLE';
45895:
45896: --
45897: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45898: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45899: --
45900: -- bulk performance
45901: --
45894: 'RECEIVABLE';
45895:
45896: --
45897: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
45898: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45899: --
45900: -- bulk performance
45901: --
45902: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45898: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
45899: --
45900: -- bulk performance
45901: --
45902: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45903:
45904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45905: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45906:
45900: -- bulk performance
45901: --
45902: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
45903:
45904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45905: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45906:
45907: -- 4955764
45908: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45904: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
45905: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
45906:
45907: -- 4955764
45908: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
45909: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
45910:
45911: -- 4458381 Public Sector Enh
45912:
45948: l_rec_acct_attrs.array_num_value(15) := p_source_65;
45949: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45950: l_rec_acct_attrs.array_char_value(16) := p_source_66;
45951:
45952: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45953: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45954:
45955: ---------------------------------------------------------------------------------------------------------------
45956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45949: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
45950: l_rec_acct_attrs.array_char_value(16) := p_source_66;
45951:
45952: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45953: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45954:
45955: ---------------------------------------------------------------------------------------------------------------
45956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45957: ---------------------------------------------------------------------------------------------------------------
45952: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
45953: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
45954:
45955: ---------------------------------------------------------------------------------------------------------------
45956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45957: ---------------------------------------------------------------------------------------------------------------
45958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45959:
45960: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45954:
45955: ---------------------------------------------------------------------------------------------------------------
45956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45957: ---------------------------------------------------------------------------------------------------------------
45958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45959:
45960: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45961: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45962:
45956: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
45957: ---------------------------------------------------------------------------------------------------------------
45958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45959:
45960: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45961: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45962:
45963: IF xla_accounting_cache_pkg.GetValueChar
45964: (p_source_code => 'LEDGER_CATEGORY_CODE'
45957: ---------------------------------------------------------------------------------------------------------------
45958: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
45959:
45960: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45961: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
45962:
45963: IF xla_accounting_cache_pkg.GetValueChar
45964: (p_source_code => 'LEDGER_CATEGORY_CODE'
45965: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
45968: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
45969: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
45970: )
45971: THEN
45972: xla_ae_lines_pkg.BflowUpgEntry
45973: (p_business_method_code => l_bflow_method_code
45974: ,p_business_class_code => l_bflow_class_code
45975: ,p_balance_type => l_balance_type_code);
45976: ELSE
46008: , x_value_type_code => l_adr_value_type_code
46009: , p_side => 'NA'
46010: );
46011:
46012: xla_ae_lines_pkg.set_ccid(
46013: p_code_combination_id => l_ccid
46014: , p_value_type_code => l_adr_value_type_code
46015: , p_transaction_coa_id => l_adr_transaction_coa_id
46016: , p_accounting_coa_id => l_adr_accounting_coa_id
46044: xla_accounting_err_pkg.build_message
46045: (p_appli_s_name => 'XLA'
46046: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
46047: ,p_token_1 => 'LINE_NUMBER'
46048: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
46049: ,p_token_2 => 'LINE_TYPE_NAME'
46050: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
46051: l_component_type
46052: ,l_component_code
46080: --
46081: --
46082: ------------------------------------------------------------------------------------------------
46083: -- 4219869 Business Flow
46084: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46085: -- Prior Entry. Currently, the following code is always generated.
46086: ------------------------------------------------------------------------------------------------
46087: XLA_AE_LINES_PKG.ValidateCurrentLine;
46088:
46083: -- 4219869 Business Flow
46084: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46085: -- Prior Entry. Currently, the following code is always generated.
46086: ------------------------------------------------------------------------------------------------
46087: XLA_AE_LINES_PKG.ValidateCurrentLine;
46088:
46089: ------------------------------------------------------------------------------------
46090: -- 4219869 Business Flow
46091: -- Populated credit and debit amounts -- Need to generate this within IF
46089: ------------------------------------------------------------------------------------
46090: -- 4219869 Business Flow
46091: -- Populated credit and debit amounts -- Need to generate this within IF
46092: ------------------------------------------------------------------------------------
46093: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46094:
46095: ----------------------------------------------------------------------------------
46096: -- 4219869 Business Flow
46097: -- Update journal entry status -- Need to generate this within IF
46121: -- To allow MPA report to determine if it should generate report process
46122: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46123: ------------------------------------------------------------------------------------------
46124:
46125: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46126: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46127: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46128: -- call ADRs
46129: -- Bug 4922099
46122: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46123: ------------------------------------------------------------------------------------------
46124:
46125: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46126: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46127: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46128: -- call ADRs
46129: -- Bug 4922099
46130: --
46146: , x_value_type_code => l_adr_value_type_code
46147: , p_side => 'NA'
46148: );
46149:
46150: xla_ae_lines_pkg.set_ccid(
46151: p_code_combination_id => l_ccid
46152: , p_value_type_code => l_adr_value_type_code
46153: , p_transaction_coa_id => l_adr_transaction_coa_id
46154: , p_accounting_coa_id => l_adr_accounting_coa_id
46169:
46170: --
46171: -- Update the line information that should be overwritten
46172: --
46173: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46174: p_header_num => 1);
46175: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46176:
46177: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46171: -- Update the line information that should be overwritten
46172: --
46173: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46174: p_header_num => 1);
46175: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46176:
46177: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46178:
46179: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46173: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46174: p_header_num => 1);
46175: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46176:
46177: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46178:
46179: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46180: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46181: END IF;
46176:
46177: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46178:
46179: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46180: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46181: END IF;
46182:
46183: --
46184: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46183: --
46184: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46185: --
46186: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
46187: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
46188: ELSE
46189: ---------------------------------------------------------------------------------------------------
46190: -- 4262811a Switch Sign
46191: ---------------------------------------------------------------------------------------------------
46188: ELSE
46189: ---------------------------------------------------------------------------------------------------
46190: -- 4262811a Switch Sign
46191: ---------------------------------------------------------------------------------------------------
46192: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46196: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46189: ---------------------------------------------------------------------------------------------------
46190: -- 4262811a Switch Sign
46191: ---------------------------------------------------------------------------------------------------
46192: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46196: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46197: -- 5132302
46190: -- 4262811a Switch Sign
46191: ---------------------------------------------------------------------------------------------------
46192: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46196: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46197: -- 5132302
46198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46191: ---------------------------------------------------------------------------------------------------
46192: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46196: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46197: -- 5132302
46198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46199: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46192: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46193: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46196: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46197: -- 5132302
46198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46199: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46200:
46194: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46196: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46197: -- 5132302
46198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46199: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46200:
46201: END IF;
46202:
46195: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46196: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46197: -- 5132302
46198: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46199: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46200:
46201: END IF;
46202:
46203: -- 4955764
46200:
46201: END IF;
46202:
46203: -- 4955764
46204: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46205: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46206:
46207:
46208: XLA_AE_LINES_PKG.ValidateCurrentLine;
46204: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46205: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46206:
46207:
46208: XLA_AE_LINES_PKG.ValidateCurrentLine;
46209: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46210:
46211: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46212: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46205: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46206:
46207:
46208: XLA_AE_LINES_PKG.ValidateCurrentLine;
46209: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46210:
46211: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46212: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46213: ,p_balance_type_code => l_balance_type_code);
46358: --
46359: -- bulk performance
46360: --
46361: l_balance_type_code VARCHAR2(1);
46362: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
46363: l_log_module VARCHAR2(240);
46364:
46365: --
46366: -- Upgrade strategy
46430: ') = 'N'
46431: THEN
46432:
46433: --
46434: XLA_AE_LINES_PKG.SetNewLine;
46435:
46436: p_balance_type_code := l_balance_type_code;
46437: -- set the flag so later we will know whether the gain loss line needs to be created
46438:
46442:
46443: --
46444: -- bulk performance
46445: --
46446: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
46447: p_header_num => 0); -- 4262811
46448: --
46449: -- set accounting line options
46450: --
46447: p_header_num => 0); -- 4262811
46448: --
46449: -- set accounting line options
46450: --
46451: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
46452: p_natural_side_code => 'C'
46453: , p_gain_or_loss_flag => 'N'
46454: , p_gl_transfer_mode_code => 'S'
46455: , p_acct_entry_type_code => 'A'
46461: --
46462: --
46463: -- set accounting line type info
46464: --
46465: xla_ae_lines_pkg.SetAcctLineType
46466: (p_component_type => l_component_type
46467: ,p_event_type_code => l_event_type_code
46468: ,p_line_definition_owner_code => l_line_definition_owner_code
46469: ,p_line_definition_code => l_line_definition_code
46475: ,p_event_class_code => l_event_class_code);
46476: --
46477: -- set accounting class
46478: --
46479: xla_ae_lines_pkg.SetAcctClass(
46480: p_accounting_class_code => 'PREPAY'
46481: , p_ae_header_id => l_ae_header_id
46482: );
46483:
46483:
46484: --
46485: -- set rounding class
46486: --
46487: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46488: 'RECEIVABLE';
46489:
46490: --
46491: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46487: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
46488: 'RECEIVABLE';
46489:
46490: --
46491: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46492: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46493: --
46494: -- bulk performance
46495: --
46488: 'RECEIVABLE';
46489:
46490: --
46491: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
46492: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46493: --
46494: -- bulk performance
46495: --
46496: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46492: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
46493: --
46494: -- bulk performance
46495: --
46496: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46497:
46498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46499: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46500:
46494: -- bulk performance
46495: --
46496: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
46497:
46498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46499: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46500:
46501: -- 4955764
46502: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46498: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
46499: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
46500:
46501: -- 4955764
46502: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46503: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
46504:
46505: -- 4458381 Public Sector Enh
46506:
46542: l_rec_acct_attrs.array_num_value(15) := p_source_65;
46543: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
46544: l_rec_acct_attrs.array_char_value(16) := p_source_66;
46545:
46546: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46547: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46548:
46549: ---------------------------------------------------------------------------------------------------------------
46550: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46543: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
46544: l_rec_acct_attrs.array_char_value(16) := p_source_66;
46545:
46546: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46547: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46548:
46549: ---------------------------------------------------------------------------------------------------------------
46550: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46551: ---------------------------------------------------------------------------------------------------------------
46546: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
46547: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
46548:
46549: ---------------------------------------------------------------------------------------------------------------
46550: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46551: ---------------------------------------------------------------------------------------------------------------
46552: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46553:
46554: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46548:
46549: ---------------------------------------------------------------------------------------------------------------
46550: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46551: ---------------------------------------------------------------------------------------------------------------
46552: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46553:
46554: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46555: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46556:
46550: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
46551: ---------------------------------------------------------------------------------------------------------------
46552: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46553:
46554: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46555: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46556:
46557: IF xla_accounting_cache_pkg.GetValueChar
46558: (p_source_code => 'LEDGER_CATEGORY_CODE'
46551: ---------------------------------------------------------------------------------------------------------------
46552: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
46553:
46554: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46555: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
46556:
46557: IF xla_accounting_cache_pkg.GetValueChar
46558: (p_source_code => 'LEDGER_CATEGORY_CODE'
46559: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
46562: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
46563: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
46564: )
46565: THEN
46566: xla_ae_lines_pkg.BflowUpgEntry
46567: (p_business_method_code => l_bflow_method_code
46568: ,p_business_class_code => l_bflow_class_code
46569: ,p_balance_type => l_balance_type_code);
46570: ELSE
46602: , x_value_type_code => l_adr_value_type_code
46603: , p_side => 'NA'
46604: );
46605:
46606: xla_ae_lines_pkg.set_ccid(
46607: p_code_combination_id => l_ccid
46608: , p_value_type_code => l_adr_value_type_code
46609: , p_transaction_coa_id => l_adr_transaction_coa_id
46610: , p_accounting_coa_id => l_adr_accounting_coa_id
46638: xla_accounting_err_pkg.build_message
46639: (p_appli_s_name => 'XLA'
46640: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
46641: ,p_token_1 => 'LINE_NUMBER'
46642: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
46643: ,p_token_2 => 'LINE_TYPE_NAME'
46644: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
46645: l_component_type
46646: ,l_component_code
46674: --
46675: --
46676: ------------------------------------------------------------------------------------------------
46677: -- 4219869 Business Flow
46678: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46679: -- Prior Entry. Currently, the following code is always generated.
46680: ------------------------------------------------------------------------------------------------
46681: XLA_AE_LINES_PKG.ValidateCurrentLine;
46682:
46677: -- 4219869 Business Flow
46678: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
46679: -- Prior Entry. Currently, the following code is always generated.
46680: ------------------------------------------------------------------------------------------------
46681: XLA_AE_LINES_PKG.ValidateCurrentLine;
46682:
46683: ------------------------------------------------------------------------------------
46684: -- 4219869 Business Flow
46685: -- Populated credit and debit amounts -- Need to generate this within IF
46683: ------------------------------------------------------------------------------------
46684: -- 4219869 Business Flow
46685: -- Populated credit and debit amounts -- Need to generate this within IF
46686: ------------------------------------------------------------------------------------
46687: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46688:
46689: ----------------------------------------------------------------------------------
46690: -- 4219869 Business Flow
46691: -- Update journal entry status -- Need to generate this within IF
46715: -- To allow MPA report to determine if it should generate report process
46716: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46717: ------------------------------------------------------------------------------------------
46718:
46719: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46720: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46721: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46722: -- call ADRs
46723: -- Bug 4922099
46716: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
46717: ------------------------------------------------------------------------------------------
46718:
46719: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
46720: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
46721: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
46722: -- call ADRs
46723: -- Bug 4922099
46724: --
46740: , x_value_type_code => l_adr_value_type_code
46741: , p_side => 'NA'
46742: );
46743:
46744: xla_ae_lines_pkg.set_ccid(
46745: p_code_combination_id => l_ccid
46746: , p_value_type_code => l_adr_value_type_code
46747: , p_transaction_coa_id => l_adr_transaction_coa_id
46748: , p_accounting_coa_id => l_adr_accounting_coa_id
46763:
46764: --
46765: -- Update the line information that should be overwritten
46766: --
46767: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46768: p_header_num => 1);
46769: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46770:
46771: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46765: -- Update the line information that should be overwritten
46766: --
46767: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46768: p_header_num => 1);
46769: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46770:
46771: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46772:
46773: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46767: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
46768: p_header_num => 1);
46769: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
46770:
46771: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46772:
46773: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46774: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46775: END IF;
46770:
46771: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
46772:
46773: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
46774: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
46775: END IF;
46776:
46777: --
46778: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46777: --
46778: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
46779: --
46780: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
46781: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
46782: ELSE
46783: ---------------------------------------------------------------------------------------------------
46784: -- 4262811a Switch Sign
46785: ---------------------------------------------------------------------------------------------------
46782: ELSE
46783: ---------------------------------------------------------------------------------------------------
46784: -- 4262811a Switch Sign
46785: ---------------------------------------------------------------------------------------------------
46786: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46787: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46788: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46789: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46790: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46783: ---------------------------------------------------------------------------------------------------
46784: -- 4262811a Switch Sign
46785: ---------------------------------------------------------------------------------------------------
46786: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46787: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46788: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46789: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46790: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46791: -- 5132302
46784: -- 4262811a Switch Sign
46785: ---------------------------------------------------------------------------------------------------
46786: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46787: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46788: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46789: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46790: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46791: -- 5132302
46792: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46785: ---------------------------------------------------------------------------------------------------
46786: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46787: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46788: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46789: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46790: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46791: -- 5132302
46792: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46793: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46786: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
46787: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46788: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46789: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46790: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46791: -- 5132302
46792: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46793: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46794:
46788: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46789: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46790: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46791: -- 5132302
46792: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46793: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46794:
46795: END IF;
46796:
46789: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
46790: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46791: -- 5132302
46792: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
46793: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
46794:
46795: END IF;
46796:
46797: -- 4955764
46794:
46795: END IF;
46796:
46797: -- 4955764
46798: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46799: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46800:
46801:
46802: XLA_AE_LINES_PKG.ValidateCurrentLine;
46798: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
46799: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46800:
46801:
46802: XLA_AE_LINES_PKG.ValidateCurrentLine;
46803: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46804:
46805: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46806: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46799: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
46800:
46801:
46802: XLA_AE_LINES_PKG.ValidateCurrentLine;
46803: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
46804:
46805: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
46806: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
46807: ,p_balance_type_code => l_balance_type_code);
46952: --
46953: -- bulk performance
46954: --
46955: l_balance_type_code VARCHAR2(1);
46956: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
46957: l_log_module VARCHAR2(240);
46958:
46959: --
46960: -- Upgrade strategy
47030: ') = 'N')
47031: THEN
47032:
47033: --
47034: XLA_AE_LINES_PKG.SetNewLine;
47035:
47036: p_balance_type_code := l_balance_type_code;
47037: -- set the flag so later we will know whether the gain loss line needs to be created
47038:
47042:
47043: --
47044: -- bulk performance
47045: --
47046: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
47047: p_header_num => 0); -- 4262811
47048: --
47049: -- set accounting line options
47050: --
47047: p_header_num => 0); -- 4262811
47048: --
47049: -- set accounting line options
47050: --
47051: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
47052: p_natural_side_code => 'C'
47053: , p_gain_or_loss_flag => 'N'
47054: , p_gl_transfer_mode_code => 'S'
47055: , p_acct_entry_type_code => 'A'
47061: --
47062: --
47063: -- set accounting line type info
47064: --
47065: xla_ae_lines_pkg.SetAcctLineType
47066: (p_component_type => l_component_type
47067: ,p_event_type_code => l_event_type_code
47068: ,p_line_definition_owner_code => l_line_definition_owner_code
47069: ,p_line_definition_code => l_line_definition_code
47075: ,p_event_class_code => l_event_class_code);
47076: --
47077: -- set accounting class
47078: --
47079: xla_ae_lines_pkg.SetAcctClass(
47080: p_accounting_class_code => 'REFUND'
47081: , p_ae_header_id => l_ae_header_id
47082: );
47083:
47083:
47084: --
47085: -- set rounding class
47086: --
47087: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47088: 'RECEIVABLE';
47089:
47090: --
47091: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47087: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47088: 'RECEIVABLE';
47089:
47090: --
47091: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47092: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47093: --
47094: -- bulk performance
47095: --
47088: 'RECEIVABLE';
47089:
47090: --
47091: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47092: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47093: --
47094: -- bulk performance
47095: --
47096: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47092: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47093: --
47094: -- bulk performance
47095: --
47096: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47097:
47098: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47099: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47100:
47094: -- bulk performance
47095: --
47096: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47097:
47098: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47099: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47100:
47101: -- 4955764
47102: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47098: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47099: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47100:
47101: -- 4955764
47102: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47103: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
47104:
47105: -- 4458381 Public Sector Enh
47106:
47142: l_rec_acct_attrs.array_num_value(15) := p_source_65;
47143: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47144: l_rec_acct_attrs.array_char_value(16) := p_source_66;
47145:
47146: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47147: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47148:
47149: ---------------------------------------------------------------------------------------------------------------
47150: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47143: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47144: l_rec_acct_attrs.array_char_value(16) := p_source_66;
47145:
47146: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47147: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47148:
47149: ---------------------------------------------------------------------------------------------------------------
47150: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47151: ---------------------------------------------------------------------------------------------------------------
47146: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47147: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47148:
47149: ---------------------------------------------------------------------------------------------------------------
47150: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47151: ---------------------------------------------------------------------------------------------------------------
47152: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47153:
47154: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47148:
47149: ---------------------------------------------------------------------------------------------------------------
47150: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47151: ---------------------------------------------------------------------------------------------------------------
47152: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47153:
47154: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47155: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47156:
47150: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47151: ---------------------------------------------------------------------------------------------------------------
47152: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47153:
47154: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47155: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47156:
47157: IF xla_accounting_cache_pkg.GetValueChar
47158: (p_source_code => 'LEDGER_CATEGORY_CODE'
47151: ---------------------------------------------------------------------------------------------------------------
47152: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47153:
47154: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47155: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47156:
47157: IF xla_accounting_cache_pkg.GetValueChar
47158: (p_source_code => 'LEDGER_CATEGORY_CODE'
47159: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
47162: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
47163: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
47164: )
47165: THEN
47166: xla_ae_lines_pkg.BflowUpgEntry
47167: (p_business_method_code => l_bflow_method_code
47168: ,p_business_class_code => l_bflow_class_code
47169: ,p_balance_type => l_balance_type_code);
47170: ELSE
47202: , x_value_type_code => l_adr_value_type_code
47203: , p_side => 'NA'
47204: );
47205:
47206: xla_ae_lines_pkg.set_ccid(
47207: p_code_combination_id => l_ccid
47208: , p_value_type_code => l_adr_value_type_code
47209: , p_transaction_coa_id => l_adr_transaction_coa_id
47210: , p_accounting_coa_id => l_adr_accounting_coa_id
47238: xla_accounting_err_pkg.build_message
47239: (p_appli_s_name => 'XLA'
47240: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
47241: ,p_token_1 => 'LINE_NUMBER'
47242: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
47243: ,p_token_2 => 'LINE_TYPE_NAME'
47244: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
47245: l_component_type
47246: ,l_component_code
47274: --
47275: --
47276: ------------------------------------------------------------------------------------------------
47277: -- 4219869 Business Flow
47278: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47279: -- Prior Entry. Currently, the following code is always generated.
47280: ------------------------------------------------------------------------------------------------
47281: XLA_AE_LINES_PKG.ValidateCurrentLine;
47282:
47277: -- 4219869 Business Flow
47278: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47279: -- Prior Entry. Currently, the following code is always generated.
47280: ------------------------------------------------------------------------------------------------
47281: XLA_AE_LINES_PKG.ValidateCurrentLine;
47282:
47283: ------------------------------------------------------------------------------------
47284: -- 4219869 Business Flow
47285: -- Populated credit and debit amounts -- Need to generate this within IF
47283: ------------------------------------------------------------------------------------
47284: -- 4219869 Business Flow
47285: -- Populated credit and debit amounts -- Need to generate this within IF
47286: ------------------------------------------------------------------------------------
47287: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47288:
47289: ----------------------------------------------------------------------------------
47290: -- 4219869 Business Flow
47291: -- Update journal entry status -- Need to generate this within IF
47315: -- To allow MPA report to determine if it should generate report process
47316: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47317: ------------------------------------------------------------------------------------------
47318:
47319: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47320: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47321: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47322: -- call ADRs
47323: -- Bug 4922099
47316: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47317: ------------------------------------------------------------------------------------------
47318:
47319: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47320: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47321: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47322: -- call ADRs
47323: -- Bug 4922099
47324: --
47340: , x_value_type_code => l_adr_value_type_code
47341: , p_side => 'NA'
47342: );
47343:
47344: xla_ae_lines_pkg.set_ccid(
47345: p_code_combination_id => l_ccid
47346: , p_value_type_code => l_adr_value_type_code
47347: , p_transaction_coa_id => l_adr_transaction_coa_id
47348: , p_accounting_coa_id => l_adr_accounting_coa_id
47363:
47364: --
47365: -- Update the line information that should be overwritten
47366: --
47367: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47368: p_header_num => 1);
47369: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47370:
47371: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47365: -- Update the line information that should be overwritten
47366: --
47367: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47368: p_header_num => 1);
47369: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47370:
47371: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47372:
47373: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47367: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47368: p_header_num => 1);
47369: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47370:
47371: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47372:
47373: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47374: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47375: END IF;
47370:
47371: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47372:
47373: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47374: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47375: END IF;
47376:
47377: --
47378: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47377: --
47378: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47379: --
47380: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
47381: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
47382: ELSE
47383: ---------------------------------------------------------------------------------------------------
47384: -- 4262811a Switch Sign
47385: ---------------------------------------------------------------------------------------------------
47382: ELSE
47383: ---------------------------------------------------------------------------------------------------
47384: -- 4262811a Switch Sign
47385: ---------------------------------------------------------------------------------------------------
47386: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47388: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47390: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47383: ---------------------------------------------------------------------------------------------------
47384: -- 4262811a Switch Sign
47385: ---------------------------------------------------------------------------------------------------
47386: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47388: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47390: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47391: -- 5132302
47384: -- 4262811a Switch Sign
47385: ---------------------------------------------------------------------------------------------------
47386: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47388: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47390: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47391: -- 5132302
47392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47385: ---------------------------------------------------------------------------------------------------
47386: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47388: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47390: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47391: -- 5132302
47392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47393: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47386: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47387: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47388: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47390: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47391: -- 5132302
47392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47393: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47394:
47388: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47390: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47391: -- 5132302
47392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47393: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47394:
47395: END IF;
47396:
47389: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47390: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47391: -- 5132302
47392: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47393: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47394:
47395: END IF;
47396:
47397: -- 4955764
47394:
47395: END IF;
47396:
47397: -- 4955764
47398: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47399: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47400:
47401:
47402: XLA_AE_LINES_PKG.ValidateCurrentLine;
47398: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47399: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47400:
47401:
47402: XLA_AE_LINES_PKG.ValidateCurrentLine;
47403: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47404:
47405: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47406: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47399: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47400:
47401:
47402: XLA_AE_LINES_PKG.ValidateCurrentLine;
47403: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47404:
47405: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
47406: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47407: ,p_balance_type_code => l_balance_type_code);
47552: --
47553: -- bulk performance
47554: --
47555: l_balance_type_code VARCHAR2(1);
47556: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
47557: l_log_module VARCHAR2(240);
47558:
47559: --
47560: -- Upgrade strategy
47624: ') = 'N'
47625: THEN
47626:
47627: --
47628: XLA_AE_LINES_PKG.SetNewLine;
47629:
47630: p_balance_type_code := l_balance_type_code;
47631: -- set the flag so later we will know whether the gain loss line needs to be created
47632:
47636:
47637: --
47638: -- bulk performance
47639: --
47640: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
47641: p_header_num => 0); -- 4262811
47642: --
47643: -- set accounting line options
47644: --
47641: p_header_num => 0); -- 4262811
47642: --
47643: -- set accounting line options
47644: --
47645: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
47646: p_natural_side_code => 'C'
47647: , p_gain_or_loss_flag => 'N'
47648: , p_gl_transfer_mode_code => 'S'
47649: , p_acct_entry_type_code => 'A'
47655: --
47656: --
47657: -- set accounting line type info
47658: --
47659: xla_ae_lines_pkg.SetAcctLineType
47660: (p_component_type => l_component_type
47661: ,p_event_type_code => l_event_type_code
47662: ,p_line_definition_owner_code => l_line_definition_owner_code
47663: ,p_line_definition_code => l_line_definition_code
47669: ,p_event_class_code => l_event_class_code);
47670: --
47671: -- set accounting class
47672: --
47673: xla_ae_lines_pkg.SetAcctClass(
47674: p_accounting_class_code => 'REMITTANCE'
47675: , p_ae_header_id => l_ae_header_id
47676: );
47677:
47677:
47678: --
47679: -- set rounding class
47680: --
47681: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47682: 'RECEIVABLE';
47683:
47684: --
47685: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47681: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
47682: 'RECEIVABLE';
47683:
47684: --
47685: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47686: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47687: --
47688: -- bulk performance
47689: --
47682: 'RECEIVABLE';
47683:
47684: --
47685: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
47686: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47687: --
47688: -- bulk performance
47689: --
47690: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47686: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
47687: --
47688: -- bulk performance
47689: --
47690: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47691:
47692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47693: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47694:
47688: -- bulk performance
47689: --
47690: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
47691:
47692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47693: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47694:
47695: -- 4955764
47696: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47692: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
47693: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
47694:
47695: -- 4955764
47696: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47697: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
47698:
47699: -- 4458381 Public Sector Enh
47700:
47736: l_rec_acct_attrs.array_num_value(15) := p_source_65;
47737: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47738: l_rec_acct_attrs.array_char_value(16) := p_source_66;
47739:
47740: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47741: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47742:
47743: ---------------------------------------------------------------------------------------------------------------
47744: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47737: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
47738: l_rec_acct_attrs.array_char_value(16) := p_source_66;
47739:
47740: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47741: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47742:
47743: ---------------------------------------------------------------------------------------------------------------
47744: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47745: ---------------------------------------------------------------------------------------------------------------
47740: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
47741: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
47742:
47743: ---------------------------------------------------------------------------------------------------------------
47744: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47745: ---------------------------------------------------------------------------------------------------------------
47746: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47747:
47748: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47742:
47743: ---------------------------------------------------------------------------------------------------------------
47744: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47745: ---------------------------------------------------------------------------------------------------------------
47746: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47747:
47748: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47749: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47750:
47744: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
47745: ---------------------------------------------------------------------------------------------------------------
47746: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47747:
47748: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47749: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47750:
47751: IF xla_accounting_cache_pkg.GetValueChar
47752: (p_source_code => 'LEDGER_CATEGORY_CODE'
47745: ---------------------------------------------------------------------------------------------------------------
47746: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
47747:
47748: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47749: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
47750:
47751: IF xla_accounting_cache_pkg.GetValueChar
47752: (p_source_code => 'LEDGER_CATEGORY_CODE'
47753: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
47756: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
47757: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
47758: )
47759: THEN
47760: xla_ae_lines_pkg.BflowUpgEntry
47761: (p_business_method_code => l_bflow_method_code
47762: ,p_business_class_code => l_bflow_class_code
47763: ,p_balance_type => l_balance_type_code);
47764: ELSE
47796: , x_value_type_code => l_adr_value_type_code
47797: , p_side => 'NA'
47798: );
47799:
47800: xla_ae_lines_pkg.set_ccid(
47801: p_code_combination_id => l_ccid
47802: , p_value_type_code => l_adr_value_type_code
47803: , p_transaction_coa_id => l_adr_transaction_coa_id
47804: , p_accounting_coa_id => l_adr_accounting_coa_id
47832: xla_accounting_err_pkg.build_message
47833: (p_appli_s_name => 'XLA'
47834: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
47835: ,p_token_1 => 'LINE_NUMBER'
47836: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
47837: ,p_token_2 => 'LINE_TYPE_NAME'
47838: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
47839: l_component_type
47840: ,l_component_code
47868: --
47869: --
47870: ------------------------------------------------------------------------------------------------
47871: -- 4219869 Business Flow
47872: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47873: -- Prior Entry. Currently, the following code is always generated.
47874: ------------------------------------------------------------------------------------------------
47875: XLA_AE_LINES_PKG.ValidateCurrentLine;
47876:
47871: -- 4219869 Business Flow
47872: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
47873: -- Prior Entry. Currently, the following code is always generated.
47874: ------------------------------------------------------------------------------------------------
47875: XLA_AE_LINES_PKG.ValidateCurrentLine;
47876:
47877: ------------------------------------------------------------------------------------
47878: -- 4219869 Business Flow
47879: -- Populated credit and debit amounts -- Need to generate this within IF
47877: ------------------------------------------------------------------------------------
47878: -- 4219869 Business Flow
47879: -- Populated credit and debit amounts -- Need to generate this within IF
47880: ------------------------------------------------------------------------------------
47881: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47882:
47883: ----------------------------------------------------------------------------------
47884: -- 4219869 Business Flow
47885: -- Update journal entry status -- Need to generate this within IF
47909: -- To allow MPA report to determine if it should generate report process
47910: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47911: ------------------------------------------------------------------------------------------
47912:
47913: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47914: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47915: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47916: -- call ADRs
47917: -- Bug 4922099
47910: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
47911: ------------------------------------------------------------------------------------------
47912:
47913: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
47914: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
47915: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
47916: -- call ADRs
47917: -- Bug 4922099
47918: --
47934: , x_value_type_code => l_adr_value_type_code
47935: , p_side => 'NA'
47936: );
47937:
47938: xla_ae_lines_pkg.set_ccid(
47939: p_code_combination_id => l_ccid
47940: , p_value_type_code => l_adr_value_type_code
47941: , p_transaction_coa_id => l_adr_transaction_coa_id
47942: , p_accounting_coa_id => l_adr_accounting_coa_id
47957:
47958: --
47959: -- Update the line information that should be overwritten
47960: --
47961: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47962: p_header_num => 1);
47963: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47964:
47965: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47959: -- Update the line information that should be overwritten
47960: --
47961: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47962: p_header_num => 1);
47963: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47964:
47965: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47966:
47967: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47961: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
47962: p_header_num => 1);
47963: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
47964:
47965: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47966:
47967: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47968: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47969: END IF;
47964:
47965: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
47966:
47967: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
47968: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
47969: END IF;
47970:
47971: --
47972: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47971: --
47972: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
47973: --
47974: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
47975: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
47976: ELSE
47977: ---------------------------------------------------------------------------------------------------
47978: -- 4262811a Switch Sign
47979: ---------------------------------------------------------------------------------------------------
47976: ELSE
47977: ---------------------------------------------------------------------------------------------------
47978: -- 4262811a Switch Sign
47979: ---------------------------------------------------------------------------------------------------
47980: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47982: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47984: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47977: ---------------------------------------------------------------------------------------------------
47978: -- 4262811a Switch Sign
47979: ---------------------------------------------------------------------------------------------------
47980: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47982: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47984: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47985: -- 5132302
47978: -- 4262811a Switch Sign
47979: ---------------------------------------------------------------------------------------------------
47980: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47982: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47984: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47985: -- 5132302
47986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47979: ---------------------------------------------------------------------------------------------------
47980: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47982: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47984: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47985: -- 5132302
47986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47987: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47980: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
47981: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47982: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47984: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47985: -- 5132302
47986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47987: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47988:
47982: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47984: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47985: -- 5132302
47986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47987: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47988:
47989: END IF;
47990:
47983: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
47984: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47985: -- 5132302
47986: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
47987: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
47988:
47989: END IF;
47990:
47991: -- 4955764
47988:
47989: END IF;
47990:
47991: -- 4955764
47992: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47993: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47994:
47995:
47996: XLA_AE_LINES_PKG.ValidateCurrentLine;
47992: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
47993: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47994:
47995:
47996: XLA_AE_LINES_PKG.ValidateCurrentLine;
47997: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47998:
47999: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48000: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
47993: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
47994:
47995:
47996: XLA_AE_LINES_PKG.ValidateCurrentLine;
47997: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
47998:
47999: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48000: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48001: ,p_balance_type_code => l_balance_type_code);
48146: --
48147: -- bulk performance
48148: --
48149: l_balance_type_code VARCHAR2(1);
48150: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
48151: l_log_module VARCHAR2(240);
48152:
48153: --
48154: -- Upgrade strategy
48218: ') = 'N'
48219: THEN
48220:
48221: --
48222: XLA_AE_LINES_PKG.SetNewLine;
48223:
48224: p_balance_type_code := l_balance_type_code;
48225: -- set the flag so later we will know whether the gain loss line needs to be created
48226:
48230:
48231: --
48232: -- bulk performance
48233: --
48234: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
48235: p_header_num => 0); -- 4262811
48236: --
48237: -- set accounting line options
48238: --
48235: p_header_num => 0); -- 4262811
48236: --
48237: -- set accounting line options
48238: --
48239: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
48240: p_natural_side_code => 'C'
48241: , p_gain_or_loss_flag => 'N'
48242: , p_gl_transfer_mode_code => 'S'
48243: , p_acct_entry_type_code => 'A'
48249: --
48250: --
48251: -- set accounting line type info
48252: --
48253: xla_ae_lines_pkg.SetAcctLineType
48254: (p_component_type => l_component_type
48255: ,p_event_type_code => l_event_type_code
48256: ,p_line_definition_owner_code => l_line_definition_owner_code
48257: ,p_line_definition_code => l_line_definition_code
48263: ,p_event_class_code => l_event_class_code);
48264: --
48265: -- set accounting class
48266: --
48267: xla_ae_lines_pkg.SetAcctClass(
48268: p_accounting_class_code => 'REM_BR'
48269: , p_ae_header_id => l_ae_header_id
48270: );
48271:
48271:
48272: --
48273: -- set rounding class
48274: --
48275: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48276: 'RECEIVABLE';
48277:
48278: --
48279: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48275: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48276: 'RECEIVABLE';
48277:
48278: --
48279: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48280: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48281: --
48282: -- bulk performance
48283: --
48276: 'RECEIVABLE';
48277:
48278: --
48279: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48280: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48281: --
48282: -- bulk performance
48283: --
48284: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48280: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48281: --
48282: -- bulk performance
48283: --
48284: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48285:
48286: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48287: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48288:
48282: -- bulk performance
48283: --
48284: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48285:
48286: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48287: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48288:
48289: -- 4955764
48290: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48286: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48287: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48288:
48289: -- 4955764
48290: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48291: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
48292:
48293: -- 4458381 Public Sector Enh
48294:
48330: l_rec_acct_attrs.array_num_value(15) := p_source_65;
48331: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48332: l_rec_acct_attrs.array_char_value(16) := p_source_66;
48333:
48334: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48335: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48336:
48337: ---------------------------------------------------------------------------------------------------------------
48338: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48331: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48332: l_rec_acct_attrs.array_char_value(16) := p_source_66;
48333:
48334: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48335: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48336:
48337: ---------------------------------------------------------------------------------------------------------------
48338: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48339: ---------------------------------------------------------------------------------------------------------------
48334: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48335: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48336:
48337: ---------------------------------------------------------------------------------------------------------------
48338: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48339: ---------------------------------------------------------------------------------------------------------------
48340: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48341:
48342: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48336:
48337: ---------------------------------------------------------------------------------------------------------------
48338: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48339: ---------------------------------------------------------------------------------------------------------------
48340: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48341:
48342: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48343: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48344:
48338: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48339: ---------------------------------------------------------------------------------------------------------------
48340: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48341:
48342: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48343: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48344:
48345: IF xla_accounting_cache_pkg.GetValueChar
48346: (p_source_code => 'LEDGER_CATEGORY_CODE'
48339: ---------------------------------------------------------------------------------------------------------------
48340: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48341:
48342: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48343: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48344:
48345: IF xla_accounting_cache_pkg.GetValueChar
48346: (p_source_code => 'LEDGER_CATEGORY_CODE'
48347: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
48350: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
48351: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
48352: )
48353: THEN
48354: xla_ae_lines_pkg.BflowUpgEntry
48355: (p_business_method_code => l_bflow_method_code
48356: ,p_business_class_code => l_bflow_class_code
48357: ,p_balance_type => l_balance_type_code);
48358: ELSE
48390: , x_value_type_code => l_adr_value_type_code
48391: , p_side => 'NA'
48392: );
48393:
48394: xla_ae_lines_pkg.set_ccid(
48395: p_code_combination_id => l_ccid
48396: , p_value_type_code => l_adr_value_type_code
48397: , p_transaction_coa_id => l_adr_transaction_coa_id
48398: , p_accounting_coa_id => l_adr_accounting_coa_id
48426: xla_accounting_err_pkg.build_message
48427: (p_appli_s_name => 'XLA'
48428: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
48429: ,p_token_1 => 'LINE_NUMBER'
48430: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
48431: ,p_token_2 => 'LINE_TYPE_NAME'
48432: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
48433: l_component_type
48434: ,l_component_code
48462: --
48463: --
48464: ------------------------------------------------------------------------------------------------
48465: -- 4219869 Business Flow
48466: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48467: -- Prior Entry. Currently, the following code is always generated.
48468: ------------------------------------------------------------------------------------------------
48469: XLA_AE_LINES_PKG.ValidateCurrentLine;
48470:
48465: -- 4219869 Business Flow
48466: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
48467: -- Prior Entry. Currently, the following code is always generated.
48468: ------------------------------------------------------------------------------------------------
48469: XLA_AE_LINES_PKG.ValidateCurrentLine;
48470:
48471: ------------------------------------------------------------------------------------
48472: -- 4219869 Business Flow
48473: -- Populated credit and debit amounts -- Need to generate this within IF
48471: ------------------------------------------------------------------------------------
48472: -- 4219869 Business Flow
48473: -- Populated credit and debit amounts -- Need to generate this within IF
48474: ------------------------------------------------------------------------------------
48475: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48476:
48477: ----------------------------------------------------------------------------------
48478: -- 4219869 Business Flow
48479: -- Update journal entry status -- Need to generate this within IF
48503: -- To allow MPA report to determine if it should generate report process
48504: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48505: ------------------------------------------------------------------------------------------
48506:
48507: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48508: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48509: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48510: -- call ADRs
48511: -- Bug 4922099
48504: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
48505: ------------------------------------------------------------------------------------------
48506:
48507: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
48508: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
48509: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
48510: -- call ADRs
48511: -- Bug 4922099
48512: --
48528: , x_value_type_code => l_adr_value_type_code
48529: , p_side => 'NA'
48530: );
48531:
48532: xla_ae_lines_pkg.set_ccid(
48533: p_code_combination_id => l_ccid
48534: , p_value_type_code => l_adr_value_type_code
48535: , p_transaction_coa_id => l_adr_transaction_coa_id
48536: , p_accounting_coa_id => l_adr_accounting_coa_id
48551:
48552: --
48553: -- Update the line information that should be overwritten
48554: --
48555: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48556: p_header_num => 1);
48557: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48558:
48559: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48553: -- Update the line information that should be overwritten
48554: --
48555: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48556: p_header_num => 1);
48557: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48558:
48559: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48560:
48561: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48555: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
48556: p_header_num => 1);
48557: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
48558:
48559: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48560:
48561: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48562: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48563: END IF;
48558:
48559: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
48560:
48561: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
48562: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
48563: END IF;
48564:
48565: --
48566: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48565: --
48566: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
48567: --
48568: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
48569: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
48570: ELSE
48571: ---------------------------------------------------------------------------------------------------
48572: -- 4262811a Switch Sign
48573: ---------------------------------------------------------------------------------------------------
48570: ELSE
48571: ---------------------------------------------------------------------------------------------------
48572: -- 4262811a Switch Sign
48573: ---------------------------------------------------------------------------------------------------
48574: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48575: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48576: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48577: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48578: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48571: ---------------------------------------------------------------------------------------------------
48572: -- 4262811a Switch Sign
48573: ---------------------------------------------------------------------------------------------------
48574: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48575: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48576: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48577: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48578: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48579: -- 5132302
48572: -- 4262811a Switch Sign
48573: ---------------------------------------------------------------------------------------------------
48574: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48575: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48576: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48577: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48578: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48579: -- 5132302
48580: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48573: ---------------------------------------------------------------------------------------------------
48574: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48575: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48576: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48577: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48578: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48579: -- 5132302
48580: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48581: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48574: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
48575: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48576: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48577: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48578: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48579: -- 5132302
48580: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48581: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48582:
48576: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48577: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48578: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48579: -- 5132302
48580: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48581: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48582:
48583: END IF;
48584:
48577: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
48578: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48579: -- 5132302
48580: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
48581: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
48582:
48583: END IF;
48584:
48585: -- 4955764
48582:
48583: END IF;
48584:
48585: -- 4955764
48586: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48587: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48588:
48589:
48590: XLA_AE_LINES_PKG.ValidateCurrentLine;
48586: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48587: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48588:
48589:
48590: XLA_AE_LINES_PKG.ValidateCurrentLine;
48591: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48592:
48593: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48594: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48587: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
48588:
48589:
48590: XLA_AE_LINES_PKG.ValidateCurrentLine;
48591: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
48592:
48593: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
48594: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
48595: ,p_balance_type_code => l_balance_type_code);
48738: --
48739: -- bulk performance
48740: --
48741: l_balance_type_code VARCHAR2(1);
48742: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
48743: l_log_module VARCHAR2(240);
48744:
48745: --
48746: -- Upgrade strategy
48808: ') = 'N'
48809: THEN
48810:
48811: --
48812: XLA_AE_LINES_PKG.SetNewLine;
48813:
48814: p_balance_type_code := l_balance_type_code;
48815: -- set the flag so later we will know whether the gain loss line needs to be created
48816:
48820:
48821: --
48822: -- bulk performance
48823: --
48824: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
48825: p_header_num => 0); -- 4262811
48826: --
48827: -- set accounting line options
48828: --
48825: p_header_num => 0); -- 4262811
48826: --
48827: -- set accounting line options
48828: --
48829: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
48830: p_natural_side_code => 'C'
48831: , p_gain_or_loss_flag => 'N'
48832: , p_gl_transfer_mode_code => 'S'
48833: , p_acct_entry_type_code => 'A'
48839: --
48840: --
48841: -- set accounting line type info
48842: --
48843: xla_ae_lines_pkg.SetAcctLineType
48844: (p_component_type => l_component_type
48845: ,p_event_type_code => l_event_type_code
48846: ,p_line_definition_owner_code => l_line_definition_owner_code
48847: ,p_line_definition_code => l_line_definition_code
48853: ,p_event_class_code => l_event_class_code);
48854: --
48855: -- set accounting class
48856: --
48857: xla_ae_lines_pkg.SetAcctClass(
48858: p_accounting_class_code => 'TAX'
48859: , p_ae_header_id => l_ae_header_id
48860: );
48861:
48861:
48862: --
48863: -- set rounding class
48864: --
48865: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48866: 'RECEIVABLE';
48867:
48868: --
48869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48865: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
48866: 'RECEIVABLE';
48867:
48868: --
48869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48871: --
48872: -- bulk performance
48873: --
48866: 'RECEIVABLE';
48867:
48868: --
48869: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
48870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48871: --
48872: -- bulk performance
48873: --
48874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48870: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
48871: --
48872: -- bulk performance
48873: --
48874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48875:
48876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48878:
48872: -- bulk performance
48873: --
48874: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
48875:
48876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48878:
48879: -- 4955764
48880: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48876: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
48877: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
48878:
48879: -- 4955764
48880: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
48881: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
48882:
48883: -- 4458381 Public Sector Enh
48884:
48920: l_rec_acct_attrs.array_num_value(15) := p_source_65;
48921: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48922: l_rec_acct_attrs.array_char_value(16) := p_source_66;
48923:
48924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48926:
48927: ---------------------------------------------------------------------------------------------------------------
48928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48921: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
48922: l_rec_acct_attrs.array_char_value(16) := p_source_66;
48923:
48924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48926:
48927: ---------------------------------------------------------------------------------------------------------------
48928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48929: ---------------------------------------------------------------------------------------------------------------
48924: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
48925: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
48926:
48927: ---------------------------------------------------------------------------------------------------------------
48928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48929: ---------------------------------------------------------------------------------------------------------------
48930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48931:
48932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48926:
48927: ---------------------------------------------------------------------------------------------------------------
48928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48929: ---------------------------------------------------------------------------------------------------------------
48930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48931:
48932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48934:
48928: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
48929: ---------------------------------------------------------------------------------------------------------------
48930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48931:
48932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48934:
48935: IF xla_accounting_cache_pkg.GetValueChar
48936: (p_source_code => 'LEDGER_CATEGORY_CODE'
48929: ---------------------------------------------------------------------------------------------------------------
48930: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
48931:
48932: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48933: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
48934:
48935: IF xla_accounting_cache_pkg.GetValueChar
48936: (p_source_code => 'LEDGER_CATEGORY_CODE'
48937: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
48940: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
48941: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
48942: )
48943: THEN
48944: xla_ae_lines_pkg.BflowUpgEntry
48945: (p_business_method_code => l_bflow_method_code
48946: ,p_business_class_code => l_bflow_class_code
48947: ,p_balance_type => l_balance_type_code);
48948: ELSE
48980: , x_value_type_code => l_adr_value_type_code
48981: , p_side => 'NA'
48982: );
48983:
48984: xla_ae_lines_pkg.set_ccid(
48985: p_code_combination_id => l_ccid
48986: , p_value_type_code => l_adr_value_type_code
48987: , p_transaction_coa_id => l_adr_transaction_coa_id
48988: , p_accounting_coa_id => l_adr_accounting_coa_id
49016: xla_accounting_err_pkg.build_message
49017: (p_appli_s_name => 'XLA'
49018: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
49019: ,p_token_1 => 'LINE_NUMBER'
49020: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
49021: ,p_token_2 => 'LINE_TYPE_NAME'
49022: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
49023: l_component_type
49024: ,l_component_code
49052: --
49053: --
49054: ------------------------------------------------------------------------------------------------
49055: -- 4219869 Business Flow
49056: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49057: -- Prior Entry. Currently, the following code is always generated.
49058: ------------------------------------------------------------------------------------------------
49059: XLA_AE_LINES_PKG.ValidateCurrentLine;
49060:
49055: -- 4219869 Business Flow
49056: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49057: -- Prior Entry. Currently, the following code is always generated.
49058: ------------------------------------------------------------------------------------------------
49059: XLA_AE_LINES_PKG.ValidateCurrentLine;
49060:
49061: ------------------------------------------------------------------------------------
49062: -- 4219869 Business Flow
49063: -- Populated credit and debit amounts -- Need to generate this within IF
49061: ------------------------------------------------------------------------------------
49062: -- 4219869 Business Flow
49063: -- Populated credit and debit amounts -- Need to generate this within IF
49064: ------------------------------------------------------------------------------------
49065: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49066:
49067: ----------------------------------------------------------------------------------
49068: -- 4219869 Business Flow
49069: -- Update journal entry status -- Need to generate this within IF
49093: -- To allow MPA report to determine if it should generate report process
49094: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49095: ------------------------------------------------------------------------------------------
49096:
49097: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49098: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49099: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49100: -- call ADRs
49101: -- Bug 4922099
49094: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49095: ------------------------------------------------------------------------------------------
49096:
49097: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49098: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49099: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49100: -- call ADRs
49101: -- Bug 4922099
49102: --
49118: , x_value_type_code => l_adr_value_type_code
49119: , p_side => 'NA'
49120: );
49121:
49122: xla_ae_lines_pkg.set_ccid(
49123: p_code_combination_id => l_ccid
49124: , p_value_type_code => l_adr_value_type_code
49125: , p_transaction_coa_id => l_adr_transaction_coa_id
49126: , p_accounting_coa_id => l_adr_accounting_coa_id
49141:
49142: --
49143: -- Update the line information that should be overwritten
49144: --
49145: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49146: p_header_num => 1);
49147: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49148:
49149: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49143: -- Update the line information that should be overwritten
49144: --
49145: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49146: p_header_num => 1);
49147: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49148:
49149: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49150:
49151: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49145: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49146: p_header_num => 1);
49147: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49148:
49149: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49150:
49151: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49152: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49153: END IF;
49148:
49149: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49150:
49151: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49152: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49153: END IF;
49154:
49155: --
49156: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49155: --
49156: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49157: --
49158: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
49159: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
49160: ELSE
49161: ---------------------------------------------------------------------------------------------------
49162: -- 4262811a Switch Sign
49163: ---------------------------------------------------------------------------------------------------
49160: ELSE
49161: ---------------------------------------------------------------------------------------------------
49162: -- 4262811a Switch Sign
49163: ---------------------------------------------------------------------------------------------------
49164: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49165: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49167: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49161: ---------------------------------------------------------------------------------------------------
49162: -- 4262811a Switch Sign
49163: ---------------------------------------------------------------------------------------------------
49164: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49165: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49167: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49169: -- 5132302
49162: -- 4262811a Switch Sign
49163: ---------------------------------------------------------------------------------------------------
49164: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49165: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49167: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49169: -- 5132302
49170: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49163: ---------------------------------------------------------------------------------------------------
49164: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49165: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49167: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49169: -- 5132302
49170: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49164: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49165: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49167: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49169: -- 5132302
49170: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49172:
49166: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49167: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49169: -- 5132302
49170: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49172:
49173: END IF;
49174:
49167: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49168: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49169: -- 5132302
49170: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49171: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49172:
49173: END IF;
49174:
49175: -- 4955764
49172:
49173: END IF;
49174:
49175: -- 4955764
49176: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49177: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49178:
49179:
49180: XLA_AE_LINES_PKG.ValidateCurrentLine;
49176: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49177: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49178:
49179:
49180: XLA_AE_LINES_PKG.ValidateCurrentLine;
49181: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49182:
49183: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49184: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49177: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49178:
49179:
49180: XLA_AE_LINES_PKG.ValidateCurrentLine;
49181: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49182:
49183: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49184: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49185: ,p_balance_type_code => l_balance_type_code);
49332: --
49333: -- bulk performance
49334: --
49335: l_balance_type_code VARCHAR2(1);
49336: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
49337: l_log_module VARCHAR2(240);
49338:
49339: --
49340: -- Upgrade strategy
49464: ') = 'NETTING')
49465: THEN
49466:
49467: --
49468: XLA_AE_LINES_PKG.SetNewLine;
49469:
49470: p_balance_type_code := l_balance_type_code;
49471: -- set the flag so later we will know whether the gain loss line needs to be created
49472:
49476:
49477: --
49478: -- bulk performance
49479: --
49480: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
49481: p_header_num => 0); -- 4262811
49482: --
49483: -- set accounting line options
49484: --
49481: p_header_num => 0); -- 4262811
49482: --
49483: -- set accounting line options
49484: --
49485: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
49486: p_natural_side_code => 'D'
49487: , p_gain_or_loss_flag => 'N'
49488: , p_gl_transfer_mode_code => 'S'
49489: , p_acct_entry_type_code => 'A'
49495: --
49496: --
49497: -- set accounting line type info
49498: --
49499: xla_ae_lines_pkg.SetAcctLineType
49500: (p_component_type => l_component_type
49501: ,p_event_type_code => l_event_type_code
49502: ,p_line_definition_owner_code => l_line_definition_owner_code
49503: ,p_line_definition_code => l_line_definition_code
49509: ,p_event_class_code => l_event_class_code);
49510: --
49511: -- set accounting class
49512: --
49513: xla_ae_lines_pkg.SetAcctClass(
49514: p_accounting_class_code => 'UNAPP'
49515: , p_ae_header_id => l_ae_header_id
49516: );
49517:
49517:
49518: --
49519: -- set rounding class
49520: --
49521: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49522: 'RECEIVABLE';
49523:
49524: --
49525: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49521: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
49522: 'RECEIVABLE';
49523:
49524: --
49525: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49526: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49527: --
49528: -- bulk performance
49529: --
49522: 'RECEIVABLE';
49523:
49524: --
49525: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
49526: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49527: --
49528: -- bulk performance
49529: --
49530: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49526: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
49527: --
49528: -- bulk performance
49529: --
49530: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49531:
49532: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49533: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49534:
49528: -- bulk performance
49529: --
49530: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
49531:
49532: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49533: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49534:
49535: -- 4955764
49536: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49532: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
49533: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
49534:
49535: -- 4955764
49536: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49537: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
49538:
49539: -- 4458381 Public Sector Enh
49540:
49576: l_rec_acct_attrs.array_num_value(15) := p_source_71;
49577: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49578: l_rec_acct_attrs.array_char_value(16) := p_source_66;
49579:
49580: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49581: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49582:
49583: ---------------------------------------------------------------------------------------------------------------
49584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49577: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
49578: l_rec_acct_attrs.array_char_value(16) := p_source_66;
49579:
49580: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49581: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49582:
49583: ---------------------------------------------------------------------------------------------------------------
49584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49585: ---------------------------------------------------------------------------------------------------------------
49580: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
49581: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
49582:
49583: ---------------------------------------------------------------------------------------------------------------
49584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49585: ---------------------------------------------------------------------------------------------------------------
49586: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49587:
49588: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49582:
49583: ---------------------------------------------------------------------------------------------------------------
49584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49585: ---------------------------------------------------------------------------------------------------------------
49586: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49587:
49588: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49589: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49590:
49584: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
49585: ---------------------------------------------------------------------------------------------------------------
49586: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49587:
49588: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49589: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49590:
49591: IF xla_accounting_cache_pkg.GetValueChar
49592: (p_source_code => 'LEDGER_CATEGORY_CODE'
49585: ---------------------------------------------------------------------------------------------------------------
49586: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
49587:
49588: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49589: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
49590:
49591: IF xla_accounting_cache_pkg.GetValueChar
49592: (p_source_code => 'LEDGER_CATEGORY_CODE'
49593: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
49596: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
49597: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
49598: )
49599: THEN
49600: xla_ae_lines_pkg.BflowUpgEntry
49601: (p_business_method_code => l_bflow_method_code
49602: ,p_business_class_code => l_bflow_class_code
49603: ,p_balance_type => l_balance_type_code);
49604: ELSE
49636: , x_value_type_code => l_adr_value_type_code
49637: , p_side => 'NA'
49638: );
49639:
49640: xla_ae_lines_pkg.set_ccid(
49641: p_code_combination_id => l_ccid
49642: , p_value_type_code => l_adr_value_type_code
49643: , p_transaction_coa_id => l_adr_transaction_coa_id
49644: , p_accounting_coa_id => l_adr_accounting_coa_id
49672: xla_accounting_err_pkg.build_message
49673: (p_appli_s_name => 'XLA'
49674: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
49675: ,p_token_1 => 'LINE_NUMBER'
49676: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
49677: ,p_token_2 => 'LINE_TYPE_NAME'
49678: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
49679: l_component_type
49680: ,l_component_code
49708: --
49709: --
49710: ------------------------------------------------------------------------------------------------
49711: -- 4219869 Business Flow
49712: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49713: -- Prior Entry. Currently, the following code is always generated.
49714: ------------------------------------------------------------------------------------------------
49715: XLA_AE_LINES_PKG.ValidateCurrentLine;
49716:
49711: -- 4219869 Business Flow
49712: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
49713: -- Prior Entry. Currently, the following code is always generated.
49714: ------------------------------------------------------------------------------------------------
49715: XLA_AE_LINES_PKG.ValidateCurrentLine;
49716:
49717: ------------------------------------------------------------------------------------
49718: -- 4219869 Business Flow
49719: -- Populated credit and debit amounts -- Need to generate this within IF
49717: ------------------------------------------------------------------------------------
49718: -- 4219869 Business Flow
49719: -- Populated credit and debit amounts -- Need to generate this within IF
49720: ------------------------------------------------------------------------------------
49721: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49722:
49723: ----------------------------------------------------------------------------------
49724: -- 4219869 Business Flow
49725: -- Update journal entry status -- Need to generate this within IF
49749: -- To allow MPA report to determine if it should generate report process
49750: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49751: ------------------------------------------------------------------------------------------
49752:
49753: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49754: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49755: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49756: -- call ADRs
49757: -- Bug 4922099
49750: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
49751: ------------------------------------------------------------------------------------------
49752:
49753: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
49754: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
49755: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
49756: -- call ADRs
49757: -- Bug 4922099
49758: --
49774: , x_value_type_code => l_adr_value_type_code
49775: , p_side => 'NA'
49776: );
49777:
49778: xla_ae_lines_pkg.set_ccid(
49779: p_code_combination_id => l_ccid
49780: , p_value_type_code => l_adr_value_type_code
49781: , p_transaction_coa_id => l_adr_transaction_coa_id
49782: , p_accounting_coa_id => l_adr_accounting_coa_id
49797:
49798: --
49799: -- Update the line information that should be overwritten
49800: --
49801: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49802: p_header_num => 1);
49803: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49804:
49805: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49799: -- Update the line information that should be overwritten
49800: --
49801: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49802: p_header_num => 1);
49803: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49804:
49805: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49806:
49807: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49801: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
49802: p_header_num => 1);
49803: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
49804:
49805: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49806:
49807: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49808: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49809: END IF;
49804:
49805: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
49806:
49807: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
49808: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
49809: END IF;
49810:
49811: --
49812: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49811: --
49812: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
49813: --
49814: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
49815: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
49816: ELSE
49817: ---------------------------------------------------------------------------------------------------
49818: -- 4262811a Switch Sign
49819: ---------------------------------------------------------------------------------------------------
49816: ELSE
49817: ---------------------------------------------------------------------------------------------------
49818: -- 4262811a Switch Sign
49819: ---------------------------------------------------------------------------------------------------
49820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49817: ---------------------------------------------------------------------------------------------------
49818: -- 4262811a Switch Sign
49819: ---------------------------------------------------------------------------------------------------
49820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49825: -- 5132302
49818: -- 4262811a Switch Sign
49819: ---------------------------------------------------------------------------------------------------
49820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49825: -- 5132302
49826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49819: ---------------------------------------------------------------------------------------------------
49820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49825: -- 5132302
49826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49827: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49820: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
49821: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49825: -- 5132302
49826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49827: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49828:
49822: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49825: -- 5132302
49826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49827: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49828:
49829: END IF;
49830:
49823: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
49824: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49825: -- 5132302
49826: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
49827: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
49828:
49829: END IF;
49830:
49831: -- 4955764
49828:
49829: END IF;
49830:
49831: -- 4955764
49832: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49833: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49834:
49835:
49836: XLA_AE_LINES_PKG.ValidateCurrentLine;
49832: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
49833: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49834:
49835:
49836: XLA_AE_LINES_PKG.ValidateCurrentLine;
49837: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49838:
49839: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49840: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49833: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
49834:
49835:
49836: XLA_AE_LINES_PKG.ValidateCurrentLine;
49837: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
49838:
49839: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
49840: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
49841: ,p_balance_type_code => l_balance_type_code);
49988: --
49989: -- bulk performance
49990: --
49991: l_balance_type_code VARCHAR2(1);
49992: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
49993: l_log_module VARCHAR2(240);
49994:
49995: --
49996: -- Upgrade strategy
50116: ') <> 'UNID'
50117: THEN
50118:
50119: --
50120: XLA_AE_LINES_PKG.SetNewLine;
50121:
50122: p_balance_type_code := l_balance_type_code;
50123: -- set the flag so later we will know whether the gain loss line needs to be created
50124:
50128:
50129: --
50130: -- bulk performance
50131: --
50132: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
50133: p_header_num => 0); -- 4262811
50134: --
50135: -- set accounting line options
50136: --
50133: p_header_num => 0); -- 4262811
50134: --
50135: -- set accounting line options
50136: --
50137: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
50138: p_natural_side_code => 'D'
50139: , p_gain_or_loss_flag => 'N'
50140: , p_gl_transfer_mode_code => 'S'
50141: , p_acct_entry_type_code => 'A'
50147: --
50148: --
50149: -- set accounting line type info
50150: --
50151: xla_ae_lines_pkg.SetAcctLineType
50152: (p_component_type => l_component_type
50153: ,p_event_type_code => l_event_type_code
50154: ,p_line_definition_owner_code => l_line_definition_owner_code
50155: ,p_line_definition_code => l_line_definition_code
50161: ,p_event_class_code => l_event_class_code);
50162: --
50163: -- set accounting class
50164: --
50165: xla_ae_lines_pkg.SetAcctClass(
50166: p_accounting_class_code => 'UNAPP'
50167: , p_ae_header_id => l_ae_header_id
50168: );
50169:
50169:
50170: --
50171: -- set rounding class
50172: --
50173: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50174: 'RECEIVABLE';
50175:
50176: --
50177: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50173: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50174: 'RECEIVABLE';
50175:
50176: --
50177: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50178: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50179: --
50180: -- bulk performance
50181: --
50174: 'RECEIVABLE';
50175:
50176: --
50177: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50178: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50179: --
50180: -- bulk performance
50181: --
50182: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50178: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50179: --
50180: -- bulk performance
50181: --
50182: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50183:
50184: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50185: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50186:
50180: -- bulk performance
50181: --
50182: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50183:
50184: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50185: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50186:
50187: -- 4955764
50188: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50184: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50185: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50186:
50187: -- 4955764
50188: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50189: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
50190:
50191: -- 4458381 Public Sector Enh
50192:
50228: l_rec_acct_attrs.array_num_value(15) := p_source_71;
50229: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50230: l_rec_acct_attrs.array_char_value(16) := p_source_66;
50231:
50232: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50233: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50234:
50235: ---------------------------------------------------------------------------------------------------------------
50236: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50229: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50230: l_rec_acct_attrs.array_char_value(16) := p_source_66;
50231:
50232: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50233: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50234:
50235: ---------------------------------------------------------------------------------------------------------------
50236: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50237: ---------------------------------------------------------------------------------------------------------------
50232: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50233: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50234:
50235: ---------------------------------------------------------------------------------------------------------------
50236: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50237: ---------------------------------------------------------------------------------------------------------------
50238: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50239:
50240: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50234:
50235: ---------------------------------------------------------------------------------------------------------------
50236: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50237: ---------------------------------------------------------------------------------------------------------------
50238: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50239:
50240: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50241: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50242:
50236: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50237: ---------------------------------------------------------------------------------------------------------------
50238: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50239:
50240: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50241: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50242:
50243: IF xla_accounting_cache_pkg.GetValueChar
50244: (p_source_code => 'LEDGER_CATEGORY_CODE'
50237: ---------------------------------------------------------------------------------------------------------------
50238: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50239:
50240: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50241: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50242:
50243: IF xla_accounting_cache_pkg.GetValueChar
50244: (p_source_code => 'LEDGER_CATEGORY_CODE'
50245: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
50248: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
50249: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
50250: )
50251: THEN
50252: xla_ae_lines_pkg.BflowUpgEntry
50253: (p_business_method_code => l_bflow_method_code
50254: ,p_business_class_code => l_bflow_class_code
50255: ,p_balance_type => l_balance_type_code);
50256: ELSE
50288: , x_value_type_code => l_adr_value_type_code
50289: , p_side => 'NA'
50290: );
50291:
50292: xla_ae_lines_pkg.set_ccid(
50293: p_code_combination_id => l_ccid
50294: , p_value_type_code => l_adr_value_type_code
50295: , p_transaction_coa_id => l_adr_transaction_coa_id
50296: , p_accounting_coa_id => l_adr_accounting_coa_id
50324: xla_accounting_err_pkg.build_message
50325: (p_appli_s_name => 'XLA'
50326: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
50327: ,p_token_1 => 'LINE_NUMBER'
50328: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
50329: ,p_token_2 => 'LINE_TYPE_NAME'
50330: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
50331: l_component_type
50332: ,l_component_code
50360: --
50361: --
50362: ------------------------------------------------------------------------------------------------
50363: -- 4219869 Business Flow
50364: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50365: -- Prior Entry. Currently, the following code is always generated.
50366: ------------------------------------------------------------------------------------------------
50367: XLA_AE_LINES_PKG.ValidateCurrentLine;
50368:
50363: -- 4219869 Business Flow
50364: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50365: -- Prior Entry. Currently, the following code is always generated.
50366: ------------------------------------------------------------------------------------------------
50367: XLA_AE_LINES_PKG.ValidateCurrentLine;
50368:
50369: ------------------------------------------------------------------------------------
50370: -- 4219869 Business Flow
50371: -- Populated credit and debit amounts -- Need to generate this within IF
50369: ------------------------------------------------------------------------------------
50370: -- 4219869 Business Flow
50371: -- Populated credit and debit amounts -- Need to generate this within IF
50372: ------------------------------------------------------------------------------------
50373: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50374:
50375: ----------------------------------------------------------------------------------
50376: -- 4219869 Business Flow
50377: -- Update journal entry status -- Need to generate this within IF
50401: -- To allow MPA report to determine if it should generate report process
50402: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50403: ------------------------------------------------------------------------------------------
50404:
50405: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50406: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50407: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50408: -- call ADRs
50409: -- Bug 4922099
50402: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50403: ------------------------------------------------------------------------------------------
50404:
50405: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50406: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50407: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50408: -- call ADRs
50409: -- Bug 4922099
50410: --
50426: , x_value_type_code => l_adr_value_type_code
50427: , p_side => 'NA'
50428: );
50429:
50430: xla_ae_lines_pkg.set_ccid(
50431: p_code_combination_id => l_ccid
50432: , p_value_type_code => l_adr_value_type_code
50433: , p_transaction_coa_id => l_adr_transaction_coa_id
50434: , p_accounting_coa_id => l_adr_accounting_coa_id
50449:
50450: --
50451: -- Update the line information that should be overwritten
50452: --
50453: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50454: p_header_num => 1);
50455: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50456:
50457: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50451: -- Update the line information that should be overwritten
50452: --
50453: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50454: p_header_num => 1);
50455: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50456:
50457: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50458:
50459: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50453: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
50454: p_header_num => 1);
50455: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
50456:
50457: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50458:
50459: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50460: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50461: END IF;
50456:
50457: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
50458:
50459: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
50460: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
50461: END IF;
50462:
50463: --
50464: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50463: --
50464: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
50465: --
50466: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
50467: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
50468: ELSE
50469: ---------------------------------------------------------------------------------------------------
50470: -- 4262811a Switch Sign
50471: ---------------------------------------------------------------------------------------------------
50468: ELSE
50469: ---------------------------------------------------------------------------------------------------
50470: -- 4262811a Switch Sign
50471: ---------------------------------------------------------------------------------------------------
50472: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50474: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50476: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50469: ---------------------------------------------------------------------------------------------------
50470: -- 4262811a Switch Sign
50471: ---------------------------------------------------------------------------------------------------
50472: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50474: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50476: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50477: -- 5132302
50470: -- 4262811a Switch Sign
50471: ---------------------------------------------------------------------------------------------------
50472: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50474: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50476: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50477: -- 5132302
50478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50471: ---------------------------------------------------------------------------------------------------
50472: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50474: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50476: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50477: -- 5132302
50478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50479: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50472: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
50473: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50474: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50476: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50477: -- 5132302
50478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50479: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50480:
50474: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50476: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50477: -- 5132302
50478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50479: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50480:
50481: END IF;
50482:
50475: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
50476: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50477: -- 5132302
50478: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
50479: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
50480:
50481: END IF;
50482:
50483: -- 4955764
50480:
50481: END IF;
50482:
50483: -- 4955764
50484: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50485: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50486:
50487:
50488: XLA_AE_LINES_PKG.ValidateCurrentLine;
50484: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50485: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50486:
50487:
50488: XLA_AE_LINES_PKG.ValidateCurrentLine;
50489: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50490:
50491: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50492: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50485: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
50486:
50487:
50488: XLA_AE_LINES_PKG.ValidateCurrentLine;
50489: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50490:
50491: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
50492: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
50493: ,p_balance_type_code => l_balance_type_code);
50634: --
50635: -- bulk performance
50636: --
50637: l_balance_type_code VARCHAR2(1);
50638: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
50639: l_log_module VARCHAR2(240);
50640:
50641: --
50642: -- Upgrade strategy
50704: ') = 'EXCH_GAIN')
50705: THEN
50706:
50707: --
50708: XLA_AE_LINES_PKG.SetNewLine;
50709:
50710: p_balance_type_code := l_balance_type_code;
50711: -- set the flag so later we will know whether the gain loss line needs to be created
50712:
50716:
50717: --
50718: -- bulk performance
50719: --
50720: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
50721: p_header_num => 0); -- 4262811
50722: --
50723: -- set accounting line options
50724: --
50721: p_header_num => 0); -- 4262811
50722: --
50723: -- set accounting line options
50724: --
50725: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
50726: p_natural_side_code => 'D'
50727: , p_gain_or_loss_flag => 'N'
50728: , p_gl_transfer_mode_code => 'S'
50729: , p_acct_entry_type_code => 'A'
50735: --
50736: --
50737: -- set accounting line type info
50738: --
50739: xla_ae_lines_pkg.SetAcctLineType
50740: (p_component_type => l_component_type
50741: ,p_event_type_code => l_event_type_code
50742: ,p_line_definition_owner_code => l_line_definition_owner_code
50743: ,p_line_definition_code => l_line_definition_code
50749: ,p_event_class_code => l_event_class_code);
50750: --
50751: -- set accounting class
50752: --
50753: xla_ae_lines_pkg.SetAcctClass(
50754: p_accounting_class_code => 'UNAPP'
50755: , p_ae_header_id => l_ae_header_id
50756: );
50757:
50757:
50758: --
50759: -- set rounding class
50760: --
50761: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: 'RECEIVABLE';
50763:
50764: --
50765: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50761: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
50762: 'RECEIVABLE';
50763:
50764: --
50765: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50766: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50767: --
50768: -- bulk performance
50769: --
50762: 'RECEIVABLE';
50763:
50764: --
50765: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
50766: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50767: --
50768: -- bulk performance
50769: --
50770: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50766: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
50767: --
50768: -- bulk performance
50769: --
50770: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50771:
50772: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50773: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50774:
50768: -- bulk performance
50769: --
50770: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
50771:
50772: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50773: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50774:
50775: -- 4955764
50776: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50772: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
50773: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
50774:
50775: -- 4955764
50776: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
50777: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
50778:
50779: -- 4458381 Public Sector Enh
50780:
50816: l_rec_acct_attrs.array_num_value(15) := p_source_65;
50817: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50818: l_rec_acct_attrs.array_char_value(16) := p_source_66;
50819:
50820: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50821: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50822:
50823: ---------------------------------------------------------------------------------------------------------------
50824: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50817: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
50818: l_rec_acct_attrs.array_char_value(16) := p_source_66;
50819:
50820: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50821: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50822:
50823: ---------------------------------------------------------------------------------------------------------------
50824: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50825: ---------------------------------------------------------------------------------------------------------------
50820: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
50821: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
50822:
50823: ---------------------------------------------------------------------------------------------------------------
50824: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50825: ---------------------------------------------------------------------------------------------------------------
50826: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50827:
50828: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50822:
50823: ---------------------------------------------------------------------------------------------------------------
50824: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50825: ---------------------------------------------------------------------------------------------------------------
50826: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50827:
50828: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50829: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50830:
50824: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
50825: ---------------------------------------------------------------------------------------------------------------
50826: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50827:
50828: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50829: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50830:
50831: IF xla_accounting_cache_pkg.GetValueChar
50832: (p_source_code => 'LEDGER_CATEGORY_CODE'
50825: ---------------------------------------------------------------------------------------------------------------
50826: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
50827:
50828: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50829: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
50830:
50831: IF xla_accounting_cache_pkg.GetValueChar
50832: (p_source_code => 'LEDGER_CATEGORY_CODE'
50833: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
50836: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
50837: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
50838: )
50839: THEN
50840: xla_ae_lines_pkg.BflowUpgEntry
50841: (p_business_method_code => l_bflow_method_code
50842: ,p_business_class_code => l_bflow_class_code
50843: ,p_balance_type => l_balance_type_code);
50844: ELSE
50876: , x_value_type_code => l_adr_value_type_code
50877: , p_side => 'NA'
50878: );
50879:
50880: xla_ae_lines_pkg.set_ccid(
50881: p_code_combination_id => l_ccid
50882: , p_value_type_code => l_adr_value_type_code
50883: , p_transaction_coa_id => l_adr_transaction_coa_id
50884: , p_accounting_coa_id => l_adr_accounting_coa_id
50912: xla_accounting_err_pkg.build_message
50913: (p_appli_s_name => 'XLA'
50914: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
50915: ,p_token_1 => 'LINE_NUMBER'
50916: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
50917: ,p_token_2 => 'LINE_TYPE_NAME'
50918: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
50919: l_component_type
50920: ,l_component_code
50948: --
50949: --
50950: ------------------------------------------------------------------------------------------------
50951: -- 4219869 Business Flow
50952: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50953: -- Prior Entry. Currently, the following code is always generated.
50954: ------------------------------------------------------------------------------------------------
50955: XLA_AE_LINES_PKG.ValidateCurrentLine;
50956:
50951: -- 4219869 Business Flow
50952: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
50953: -- Prior Entry. Currently, the following code is always generated.
50954: ------------------------------------------------------------------------------------------------
50955: XLA_AE_LINES_PKG.ValidateCurrentLine;
50956:
50957: ------------------------------------------------------------------------------------
50958: -- 4219869 Business Flow
50959: -- Populated credit and debit amounts -- Need to generate this within IF
50957: ------------------------------------------------------------------------------------
50958: -- 4219869 Business Flow
50959: -- Populated credit and debit amounts -- Need to generate this within IF
50960: ------------------------------------------------------------------------------------
50961: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
50962:
50963: ----------------------------------------------------------------------------------
50964: -- 4219869 Business Flow
50965: -- Update journal entry status -- Need to generate this within IF
50989: -- To allow MPA report to determine if it should generate report process
50990: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50991: ------------------------------------------------------------------------------------------
50992:
50993: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50994: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50995: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50996: -- call ADRs
50997: -- Bug 4922099
50990: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
50991: ------------------------------------------------------------------------------------------
50992:
50993: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
50994: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
50995: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
50996: -- call ADRs
50997: -- Bug 4922099
50998: --
51014: , x_value_type_code => l_adr_value_type_code
51015: , p_side => 'NA'
51016: );
51017:
51018: xla_ae_lines_pkg.set_ccid(
51019: p_code_combination_id => l_ccid
51020: , p_value_type_code => l_adr_value_type_code
51021: , p_transaction_coa_id => l_adr_transaction_coa_id
51022: , p_accounting_coa_id => l_adr_accounting_coa_id
51037:
51038: --
51039: -- Update the line information that should be overwritten
51040: --
51041: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51042: p_header_num => 1);
51043: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51044:
51045: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51039: -- Update the line information that should be overwritten
51040: --
51041: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51042: p_header_num => 1);
51043: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51044:
51045: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51046:
51047: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51041: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51042: p_header_num => 1);
51043: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51044:
51045: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51046:
51047: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51048: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51049: END IF;
51044:
51045: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51046:
51047: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51048: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51049: END IF;
51050:
51051: --
51052: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51051: --
51052: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51053: --
51054: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
51055: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
51056: ELSE
51057: ---------------------------------------------------------------------------------------------------
51058: -- 4262811a Switch Sign
51059: ---------------------------------------------------------------------------------------------------
51056: ELSE
51057: ---------------------------------------------------------------------------------------------------
51058: -- 4262811a Switch Sign
51059: ---------------------------------------------------------------------------------------------------
51060: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51061: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51063: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51057: ---------------------------------------------------------------------------------------------------
51058: -- 4262811a Switch Sign
51059: ---------------------------------------------------------------------------------------------------
51060: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51061: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51063: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51065: -- 5132302
51058: -- 4262811a Switch Sign
51059: ---------------------------------------------------------------------------------------------------
51060: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51061: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51063: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51065: -- 5132302
51066: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51059: ---------------------------------------------------------------------------------------------------
51060: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51061: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51063: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51065: -- 5132302
51066: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51060: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51061: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51063: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51065: -- 5132302
51066: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51068:
51062: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51063: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51065: -- 5132302
51066: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51068:
51069: END IF;
51070:
51063: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51064: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51065: -- 5132302
51066: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51067: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51068:
51069: END IF;
51070:
51071: -- 4955764
51068:
51069: END IF;
51070:
51071: -- 4955764
51072: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51073: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51074:
51075:
51076: XLA_AE_LINES_PKG.ValidateCurrentLine;
51072: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51073: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51074:
51075:
51076: XLA_AE_LINES_PKG.ValidateCurrentLine;
51077: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51078:
51079: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51080: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51073: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51074:
51075:
51076: XLA_AE_LINES_PKG.ValidateCurrentLine;
51077: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51078:
51079: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51080: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51081: ,p_balance_type_code => l_balance_type_code);
51226: --
51227: -- bulk performance
51228: --
51229: l_balance_type_code VARCHAR2(1);
51230: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
51231: l_log_module VARCHAR2(240);
51232:
51233: --
51234: -- Upgrade strategy
51296: ') = 'N'
51297: THEN
51298:
51299: --
51300: XLA_AE_LINES_PKG.SetNewLine;
51301:
51302: p_balance_type_code := l_balance_type_code;
51303: -- set the flag so later we will know whether the gain loss line needs to be created
51304:
51308:
51309: --
51310: -- bulk performance
51311: --
51312: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
51313: p_header_num => 0); -- 4262811
51314: --
51315: -- set accounting line options
51316: --
51313: p_header_num => 0); -- 4262811
51314: --
51315: -- set accounting line options
51316: --
51317: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
51318: p_natural_side_code => 'C'
51319: , p_gain_or_loss_flag => 'N'
51320: , p_gl_transfer_mode_code => 'S'
51321: , p_acct_entry_type_code => 'A'
51327: --
51328: --
51329: -- set accounting line type info
51330: --
51331: xla_ae_lines_pkg.SetAcctLineType
51332: (p_component_type => l_component_type
51333: ,p_event_type_code => l_event_type_code
51334: ,p_line_definition_owner_code => l_line_definition_owner_code
51335: ,p_line_definition_code => l_line_definition_code
51341: ,p_event_class_code => l_event_class_code);
51342: --
51343: -- set accounting class
51344: --
51345: xla_ae_lines_pkg.SetAcctClass(
51346: p_accounting_class_code => 'UNEDISC'
51347: , p_ae_header_id => l_ae_header_id
51348: );
51349:
51349:
51350: --
51351: -- set rounding class
51352: --
51353: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51354: 'RECEIVABLE';
51355:
51356: --
51357: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51353: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
51354: 'RECEIVABLE';
51355:
51356: --
51357: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51358: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51359: --
51360: -- bulk performance
51361: --
51354: 'RECEIVABLE';
51355:
51356: --
51357: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
51358: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51359: --
51360: -- bulk performance
51361: --
51362: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51358: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
51359: --
51360: -- bulk performance
51361: --
51362: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51363:
51364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51365: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51366:
51360: -- bulk performance
51361: --
51362: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
51363:
51364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51365: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51366:
51367: -- 4955764
51368: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51364: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
51365: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
51366:
51367: -- 4955764
51368: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51369: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
51370:
51371: -- 4458381 Public Sector Enh
51372:
51408: l_rec_acct_attrs.array_num_value(15) := p_source_65;
51409: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51410: l_rec_acct_attrs.array_char_value(16) := p_source_66;
51411:
51412: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51413: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51414:
51415: ---------------------------------------------------------------------------------------------------------------
51416: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51409: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
51410: l_rec_acct_attrs.array_char_value(16) := p_source_66;
51411:
51412: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51413: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51414:
51415: ---------------------------------------------------------------------------------------------------------------
51416: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51417: ---------------------------------------------------------------------------------------------------------------
51412: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
51413: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
51414:
51415: ---------------------------------------------------------------------------------------------------------------
51416: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51417: ---------------------------------------------------------------------------------------------------------------
51418: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51419:
51420: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51414:
51415: ---------------------------------------------------------------------------------------------------------------
51416: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51417: ---------------------------------------------------------------------------------------------------------------
51418: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51419:
51420: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51421: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51422:
51416: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
51417: ---------------------------------------------------------------------------------------------------------------
51418: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51419:
51420: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51421: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51422:
51423: IF xla_accounting_cache_pkg.GetValueChar
51424: (p_source_code => 'LEDGER_CATEGORY_CODE'
51417: ---------------------------------------------------------------------------------------------------------------
51418: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
51419:
51420: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51421: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
51422:
51423: IF xla_accounting_cache_pkg.GetValueChar
51424: (p_source_code => 'LEDGER_CATEGORY_CODE'
51425: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
51428: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
51429: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
51430: )
51431: THEN
51432: xla_ae_lines_pkg.BflowUpgEntry
51433: (p_business_method_code => l_bflow_method_code
51434: ,p_business_class_code => l_bflow_class_code
51435: ,p_balance_type => l_balance_type_code);
51436: ELSE
51445: --
51446: -- call description
51447: --
51448:
51449: xla_ae_lines_pkg.SetLineDescription(
51450: p_ae_header_id => l_ae_header_id
51451: ,p_description => Description_1 (
51452: p_application_id => p_application_id
51453: , p_ae_header_id => l_ae_header_id
51477: , x_value_type_code => l_adr_value_type_code
51478: , p_side => 'NA'
51479: );
51480:
51481: xla_ae_lines_pkg.set_ccid(
51482: p_code_combination_id => l_ccid
51483: , p_value_type_code => l_adr_value_type_code
51484: , p_transaction_coa_id => l_adr_transaction_coa_id
51485: , p_accounting_coa_id => l_adr_accounting_coa_id
51510: );
51511:
51512: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
51513:
51514: xla_ae_lines_pkg.set_segment(
51515: p_to_segment_code => 'GL_ACCOUNT'
51516: , p_segment_value => l_segment
51517: , p_from_segment_code => l_adr_value_segment_code
51518: , p_from_combination_id => l_adr_value_combination_id
51554: xla_accounting_err_pkg.build_message
51555: (p_appli_s_name => 'XLA'
51556: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
51557: ,p_token_1 => 'LINE_NUMBER'
51558: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
51559: ,p_token_2 => 'LINE_TYPE_NAME'
51560: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
51561: l_component_type
51562: ,l_component_code
51590: --
51591: --
51592: ------------------------------------------------------------------------------------------------
51593: -- 4219869 Business Flow
51594: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51595: -- Prior Entry. Currently, the following code is always generated.
51596: ------------------------------------------------------------------------------------------------
51597: XLA_AE_LINES_PKG.ValidateCurrentLine;
51598:
51593: -- 4219869 Business Flow
51594: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
51595: -- Prior Entry. Currently, the following code is always generated.
51596: ------------------------------------------------------------------------------------------------
51597: XLA_AE_LINES_PKG.ValidateCurrentLine;
51598:
51599: ------------------------------------------------------------------------------------
51600: -- 4219869 Business Flow
51601: -- Populated credit and debit amounts -- Need to generate this within IF
51599: ------------------------------------------------------------------------------------
51600: -- 4219869 Business Flow
51601: -- Populated credit and debit amounts -- Need to generate this within IF
51602: ------------------------------------------------------------------------------------
51603: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51604:
51605: ----------------------------------------------------------------------------------
51606: -- 4219869 Business Flow
51607: -- Update journal entry status -- Need to generate this within IF
51631: -- To allow MPA report to determine if it should generate report process
51632: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51633: ------------------------------------------------------------------------------------------
51634:
51635: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51636: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51637: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51638: -- call ADRs
51639: -- Bug 4922099
51632: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
51633: ------------------------------------------------------------------------------------------
51634:
51635: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
51636: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
51637: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
51638: -- call ADRs
51639: -- Bug 4922099
51640: --
51656: , x_value_type_code => l_adr_value_type_code
51657: , p_side => 'NA'
51658: );
51659:
51660: xla_ae_lines_pkg.set_ccid(
51661: p_code_combination_id => l_ccid
51662: , p_value_type_code => l_adr_value_type_code
51663: , p_transaction_coa_id => l_adr_transaction_coa_id
51664: , p_accounting_coa_id => l_adr_accounting_coa_id
51689: );
51690:
51691: IF NVL(l_segment,'NULL') <> '#$NO_OVERRIDE#$' THEN -- 4465612
51692:
51693: xla_ae_lines_pkg.set_segment(
51694: p_to_segment_code => 'GL_ACCOUNT'
51695: , p_segment_value => l_segment
51696: , p_from_segment_code => l_adr_value_segment_code
51697: , p_from_combination_id => l_adr_value_combination_id
51720:
51721: --
51722: -- Update the line information that should be overwritten
51723: --
51724: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51725: p_header_num => 1);
51726: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51727:
51728: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51722: -- Update the line information that should be overwritten
51723: --
51724: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51725: p_header_num => 1);
51726: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51727:
51728: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51729:
51730: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51724: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
51725: p_header_num => 1);
51726: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
51727:
51728: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51729:
51730: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51731: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51732: END IF;
51727:
51728: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
51729:
51730: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
51731: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
51732: END IF;
51733:
51734: --
51735: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51734: --
51735: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
51736: --
51737: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
51738: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
51739: ELSE
51740: ---------------------------------------------------------------------------------------------------
51741: -- 4262811a Switch Sign
51742: ---------------------------------------------------------------------------------------------------
51739: ELSE
51740: ---------------------------------------------------------------------------------------------------
51741: -- 4262811a Switch Sign
51742: ---------------------------------------------------------------------------------------------------
51743: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51744: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51746: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51740: ---------------------------------------------------------------------------------------------------
51741: -- 4262811a Switch Sign
51742: ---------------------------------------------------------------------------------------------------
51743: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51744: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51746: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51748: -- 5132302
51741: -- 4262811a Switch Sign
51742: ---------------------------------------------------------------------------------------------------
51743: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51744: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51746: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51748: -- 5132302
51749: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51742: ---------------------------------------------------------------------------------------------------
51743: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51744: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51746: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51748: -- 5132302
51749: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51743: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
51744: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51746: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51748: -- 5132302
51749: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51751:
51745: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51746: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51748: -- 5132302
51749: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51751:
51752: END IF;
51753:
51746: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
51747: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51748: -- 5132302
51749: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
51750: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
51751:
51752: END IF;
51753:
51754: -- 4955764
51751:
51752: END IF;
51753:
51754: -- 4955764
51755: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51756: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51757:
51758:
51759: XLA_AE_LINES_PKG.ValidateCurrentLine;
51755: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
51756: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51757:
51758:
51759: XLA_AE_LINES_PKG.ValidateCurrentLine;
51760: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51761:
51762: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51763: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51756: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
51757:
51758:
51759: XLA_AE_LINES_PKG.ValidateCurrentLine;
51760: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
51761:
51762: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
51763: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
51764: ,p_balance_type_code => l_balance_type_code);
51907: --
51908: -- bulk performance
51909: --
51910: l_balance_type_code VARCHAR2(1);
51911: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
51912: l_log_module VARCHAR2(240);
51913:
51914: --
51915: -- Upgrade strategy
51977: ') = 'N'
51978: THEN
51979:
51980: --
51981: XLA_AE_LINES_PKG.SetNewLine;
51982:
51983: p_balance_type_code := l_balance_type_code;
51984: -- set the flag so later we will know whether the gain loss line needs to be created
51985:
51989:
51990: --
51991: -- bulk performance
51992: --
51993: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
51994: p_header_num => 0); -- 4262811
51995: --
51996: -- set accounting line options
51997: --
51994: p_header_num => 0); -- 4262811
51995: --
51996: -- set accounting line options
51997: --
51998: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
51999: p_natural_side_code => 'C'
52000: , p_gain_or_loss_flag => 'N'
52001: , p_gl_transfer_mode_code => 'S'
52002: , p_acct_entry_type_code => 'A'
52008: --
52009: --
52010: -- set accounting line type info
52011: --
52012: xla_ae_lines_pkg.SetAcctLineType
52013: (p_component_type => l_component_type
52014: ,p_event_type_code => l_event_type_code
52015: ,p_line_definition_owner_code => l_line_definition_owner_code
52016: ,p_line_definition_code => l_line_definition_code
52022: ,p_event_class_code => l_event_class_code);
52023: --
52024: -- set accounting class
52025: --
52026: xla_ae_lines_pkg.SetAcctClass(
52027: p_accounting_class_code => 'UNID'
52028: , p_ae_header_id => l_ae_header_id
52029: );
52030:
52030:
52031: --
52032: -- set rounding class
52033: --
52034: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: 'RECEIVABLE';
52036:
52037: --
52038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52034: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52035: 'RECEIVABLE';
52036:
52037: --
52038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52040: --
52041: -- bulk performance
52042: --
52035: 'RECEIVABLE';
52036:
52037: --
52038: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52040: --
52041: -- bulk performance
52042: --
52043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52039: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52040: --
52041: -- bulk performance
52042: --
52043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52044:
52045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52047:
52041: -- bulk performance
52042: --
52043: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52044:
52045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52047:
52048: -- 4955764
52049: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52045: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52046: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52047:
52048: -- 4955764
52049: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52050: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
52051:
52052: -- 4458381 Public Sector Enh
52053:
52089: l_rec_acct_attrs.array_num_value(15) := p_source_65;
52090: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52091: l_rec_acct_attrs.array_char_value(16) := p_source_66;
52092:
52093: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52094: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52095:
52096: ---------------------------------------------------------------------------------------------------------------
52097: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52090: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52091: l_rec_acct_attrs.array_char_value(16) := p_source_66;
52092:
52093: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52094: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52095:
52096: ---------------------------------------------------------------------------------------------------------------
52097: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52098: ---------------------------------------------------------------------------------------------------------------
52093: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52094: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52095:
52096: ---------------------------------------------------------------------------------------------------------------
52097: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52098: ---------------------------------------------------------------------------------------------------------------
52099: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52100:
52101: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52095:
52096: ---------------------------------------------------------------------------------------------------------------
52097: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52098: ---------------------------------------------------------------------------------------------------------------
52099: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52100:
52101: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52102: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52103:
52097: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52098: ---------------------------------------------------------------------------------------------------------------
52099: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52100:
52101: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52102: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52103:
52104: IF xla_accounting_cache_pkg.GetValueChar
52105: (p_source_code => 'LEDGER_CATEGORY_CODE'
52098: ---------------------------------------------------------------------------------------------------------------
52099: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52100:
52101: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52102: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52103:
52104: IF xla_accounting_cache_pkg.GetValueChar
52105: (p_source_code => 'LEDGER_CATEGORY_CODE'
52106: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
52109: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
52110: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
52111: )
52112: THEN
52113: xla_ae_lines_pkg.BflowUpgEntry
52114: (p_business_method_code => l_bflow_method_code
52115: ,p_business_class_code => l_bflow_class_code
52116: ,p_balance_type => l_balance_type_code);
52117: ELSE
52149: , x_value_type_code => l_adr_value_type_code
52150: , p_side => 'NA'
52151: );
52152:
52153: xla_ae_lines_pkg.set_ccid(
52154: p_code_combination_id => l_ccid
52155: , p_value_type_code => l_adr_value_type_code
52156: , p_transaction_coa_id => l_adr_transaction_coa_id
52157: , p_accounting_coa_id => l_adr_accounting_coa_id
52185: xla_accounting_err_pkg.build_message
52186: (p_appli_s_name => 'XLA'
52187: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
52188: ,p_token_1 => 'LINE_NUMBER'
52189: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
52190: ,p_token_2 => 'LINE_TYPE_NAME'
52191: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
52192: l_component_type
52193: ,l_component_code
52221: --
52222: --
52223: ------------------------------------------------------------------------------------------------
52224: -- 4219869 Business Flow
52225: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52226: -- Prior Entry. Currently, the following code is always generated.
52227: ------------------------------------------------------------------------------------------------
52228: XLA_AE_LINES_PKG.ValidateCurrentLine;
52229:
52224: -- 4219869 Business Flow
52225: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52226: -- Prior Entry. Currently, the following code is always generated.
52227: ------------------------------------------------------------------------------------------------
52228: XLA_AE_LINES_PKG.ValidateCurrentLine;
52229:
52230: ------------------------------------------------------------------------------------
52231: -- 4219869 Business Flow
52232: -- Populated credit and debit amounts -- Need to generate this within IF
52230: ------------------------------------------------------------------------------------
52231: -- 4219869 Business Flow
52232: -- Populated credit and debit amounts -- Need to generate this within IF
52233: ------------------------------------------------------------------------------------
52234: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52235:
52236: ----------------------------------------------------------------------------------
52237: -- 4219869 Business Flow
52238: -- Update journal entry status -- Need to generate this within IF
52262: -- To allow MPA report to determine if it should generate report process
52263: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52264: ------------------------------------------------------------------------------------------
52265:
52266: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52267: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52268: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52269: -- call ADRs
52270: -- Bug 4922099
52263: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52264: ------------------------------------------------------------------------------------------
52265:
52266: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52267: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52268: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52269: -- call ADRs
52270: -- Bug 4922099
52271: --
52287: , x_value_type_code => l_adr_value_type_code
52288: , p_side => 'NA'
52289: );
52290:
52291: xla_ae_lines_pkg.set_ccid(
52292: p_code_combination_id => l_ccid
52293: , p_value_type_code => l_adr_value_type_code
52294: , p_transaction_coa_id => l_adr_transaction_coa_id
52295: , p_accounting_coa_id => l_adr_accounting_coa_id
52310:
52311: --
52312: -- Update the line information that should be overwritten
52313: --
52314: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52315: p_header_num => 1);
52316: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52317:
52318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52312: -- Update the line information that should be overwritten
52313: --
52314: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52315: p_header_num => 1);
52316: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52317:
52318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52319:
52320: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52314: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52315: p_header_num => 1);
52316: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52317:
52318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52319:
52320: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52321: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52322: END IF;
52317:
52318: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52319:
52320: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52321: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52322: END IF;
52323:
52324: --
52325: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52324: --
52325: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52326: --
52327: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
52328: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
52329: ELSE
52330: ---------------------------------------------------------------------------------------------------
52331: -- 4262811a Switch Sign
52332: ---------------------------------------------------------------------------------------------------
52329: ELSE
52330: ---------------------------------------------------------------------------------------------------
52331: -- 4262811a Switch Sign
52332: ---------------------------------------------------------------------------------------------------
52333: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52334: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52335: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52336: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52337: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52330: ---------------------------------------------------------------------------------------------------
52331: -- 4262811a Switch Sign
52332: ---------------------------------------------------------------------------------------------------
52333: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52334: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52335: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52336: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52337: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52338: -- 5132302
52331: -- 4262811a Switch Sign
52332: ---------------------------------------------------------------------------------------------------
52333: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52334: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52335: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52336: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52337: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52338: -- 5132302
52339: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52332: ---------------------------------------------------------------------------------------------------
52333: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52334: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52335: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52336: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52337: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52338: -- 5132302
52339: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52340: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52333: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52334: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52335: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52336: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52337: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52338: -- 5132302
52339: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52340: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52341:
52335: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52336: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52337: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52338: -- 5132302
52339: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52340: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52341:
52342: END IF;
52343:
52336: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52337: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52338: -- 5132302
52339: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52340: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52341:
52342: END IF;
52343:
52344: -- 4955764
52341:
52342: END IF;
52343:
52344: -- 4955764
52345: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52346: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52347:
52348:
52349: XLA_AE_LINES_PKG.ValidateCurrentLine;
52345: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52346: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52347:
52348:
52349: XLA_AE_LINES_PKG.ValidateCurrentLine;
52350: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52351:
52352: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52353: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52346: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52347:
52348:
52349: XLA_AE_LINES_PKG.ValidateCurrentLine;
52350: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52351:
52352: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52353: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52354: ,p_balance_type_code => l_balance_type_code);
52499: --
52500: -- bulk performance
52501: --
52502: l_balance_type_code VARCHAR2(1);
52503: l_rec_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
52504: l_log_module VARCHAR2(240);
52505:
52506: --
52507: -- Upgrade strategy
52571: ') = 'N'
52572: THEN
52573:
52574: --
52575: XLA_AE_LINES_PKG.SetNewLine;
52576:
52577: p_balance_type_code := l_balance_type_code;
52578: -- set the flag so later we will know whether the gain loss line needs to be created
52579:
52583:
52584: --
52585: -- bulk performance
52586: --
52587: XLA_AE_LINES_PKG.set_ae_header_id (p_ae_header_id => p_event_id ,
52588: p_header_num => 0); -- 4262811
52589: --
52590: -- set accounting line options
52591: --
52588: p_header_num => 0); -- 4262811
52589: --
52590: -- set accounting line options
52591: --
52592: l_ae_header_id:= xla_ae_lines_pkg.SetAcctLineOption(
52593: p_natural_side_code => 'C'
52594: , p_gain_or_loss_flag => 'N'
52595: , p_gl_transfer_mode_code => 'S'
52596: , p_acct_entry_type_code => 'A'
52602: --
52603: --
52604: -- set accounting line type info
52605: --
52606: xla_ae_lines_pkg.SetAcctLineType
52607: (p_component_type => l_component_type
52608: ,p_event_type_code => l_event_type_code
52609: ,p_line_definition_owner_code => l_line_definition_owner_code
52610: ,p_line_definition_code => l_line_definition_code
52616: ,p_event_class_code => l_event_class_code);
52617: --
52618: -- set accounting class
52619: --
52620: xla_ae_lines_pkg.SetAcctClass(
52621: p_accounting_class_code => 'WRITE_OFF'
52622: , p_ae_header_id => l_ae_header_id
52623: );
52624:
52624:
52625: --
52626: -- set rounding class
52627: --
52628: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: 'RECEIVABLE';
52630:
52631: --
52632: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52628: XLA_AE_LINES_PKG.g_rec_lines.array_rounding_class(XLA_AE_LINES_PKG.g_LineNumber) :=
52629: 'RECEIVABLE';
52630:
52631: --
52632: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52633: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52634: --
52635: -- bulk performance
52636: --
52629: 'RECEIVABLE';
52630:
52631: --
52632: xla_ae_lines_pkg.g_rec_lines.array_calculate_acctd_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_acctd_flag;
52633: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52634: --
52635: -- bulk performance
52636: --
52637: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52633: xla_ae_lines_pkg.g_rec_lines.array_calculate_g_l_flag(xla_ae_lines_pkg.g_LineNumber) := p_calculate_g_l_flag;
52634: --
52635: -- bulk performance
52636: --
52637: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52638:
52639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52640: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52641:
52635: -- bulk performance
52636: --
52637: XLA_AE_LINES_PKG.g_rec_lines.array_balance_type_code(XLA_AE_LINES_PKG.g_LineNumber) := l_balance_type_code;
52638:
52639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52640: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52641:
52642: -- 4955764
52643: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52639: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_id(XLA_AE_LINES_PKG.g_LineNumber) :=
52640: XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id;
52641:
52642: -- 4955764
52643: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52644: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('header_index'));
52645:
52646: -- 4458381 Public Sector Enh
52647:
52683: l_rec_acct_attrs.array_num_value(15) := p_source_65;
52684: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52685: l_rec_acct_attrs.array_char_value(16) := p_source_66;
52686:
52687: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52688: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52689:
52690: ---------------------------------------------------------------------------------------------------------------
52691: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52684: l_rec_acct_attrs.array_acct_attr_code(16) := 'PARTY_TYPE';
52685: l_rec_acct_attrs.array_char_value(16) := p_source_66;
52686:
52687: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52688: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52689:
52690: ---------------------------------------------------------------------------------------------------------------
52691: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52692: ---------------------------------------------------------------------------------------------------------------
52687: XLA_AE_LINES_PKG.SetLineAcctAttrs(l_rec_acct_attrs);
52688: p_gain_or_loss_ref := XLA_AE_LINES_PKG.g_rec_lines.array_gain_or_loss_ref(XLA_AE_LINES_PKG.g_LineNumber);
52689:
52690: ---------------------------------------------------------------------------------------------------------------
52691: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52692: ---------------------------------------------------------------------------------------------------------------
52693: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52694:
52695: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52689:
52690: ---------------------------------------------------------------------------------------------------------------
52691: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52692: ---------------------------------------------------------------------------------------------------------------
52693: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52694:
52695: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52696: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52697:
52691: -- 4336173 -- assign Business Flow Class (replace code in xla_ae_lines_pkg.Business_Flow_Validation)
52692: ---------------------------------------------------------------------------------------------------------------
52693: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52694:
52695: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52696: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52697:
52698: IF xla_accounting_cache_pkg.GetValueChar
52699: (p_source_code => 'LEDGER_CATEGORY_CODE'
52692: ---------------------------------------------------------------------------------------------------------------
52693: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := l_bflow_class_code;
52694:
52695: l_actual_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_actual_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52696: l_enc_upg_option := XLA_AE_LINES_PKG.g_rec_lines.array_enc_upg_option(XLA_AE_LINES_PKG.g_LineNumber);
52697:
52698: IF xla_accounting_cache_pkg.GetValueChar
52699: (p_source_code => 'LEDGER_CATEGORY_CODE'
52700: ,p_target_ledger_id => XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id) IN ('PRIMARY','ALC')
52703: AND ( (NVL(l_actual_upg_option, 'N') IN ('Y', 'O')) OR
52704: (NVL(l_enc_upg_option, 'N') IN ('Y', 'O'))
52705: )
52706: THEN
52707: xla_ae_lines_pkg.BflowUpgEntry
52708: (p_business_method_code => l_bflow_method_code
52709: ,p_business_class_code => l_bflow_class_code
52710: ,p_balance_type => l_balance_type_code);
52711: ELSE
52743: , x_value_type_code => l_adr_value_type_code
52744: , p_side => 'NA'
52745: );
52746:
52747: xla_ae_lines_pkg.set_ccid(
52748: p_code_combination_id => l_ccid
52749: , p_value_type_code => l_adr_value_type_code
52750: , p_transaction_coa_id => l_adr_transaction_coa_id
52751: , p_accounting_coa_id => l_adr_accounting_coa_id
52779: xla_accounting_err_pkg.build_message
52780: (p_appli_s_name => 'XLA'
52781: ,p_msg_name => 'XLA_UPG_OVERRIDE_ADR_UNDEFINED'
52782: ,p_token_1 => 'LINE_NUMBER'
52783: ,p_value_1 => XLA_AE_LINES_PKG.g_LineNumber
52784: ,p_token_2 => 'LINE_TYPE_NAME'
52785: ,p_value_2 => XLA_AE_SOURCES_PKG.GetComponentName (
52786: l_component_type
52787: ,l_component_code
52815: --
52816: --
52817: ------------------------------------------------------------------------------------------------
52818: -- 4219869 Business Flow
52819: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52820: -- Prior Entry. Currently, the following code is always generated.
52821: ------------------------------------------------------------------------------------------------
52822: XLA_AE_LINES_PKG.ValidateCurrentLine;
52823:
52818: -- 4219869 Business Flow
52819: -- NOTE: XLA_AE_LINES_PKG.ValidateCurrentLine should NOT be generated if business flow method is
52820: -- Prior Entry. Currently, the following code is always generated.
52821: ------------------------------------------------------------------------------------------------
52822: XLA_AE_LINES_PKG.ValidateCurrentLine;
52823:
52824: ------------------------------------------------------------------------------------
52825: -- 4219869 Business Flow
52826: -- Populated credit and debit amounts -- Need to generate this within IF
52824: ------------------------------------------------------------------------------------
52825: -- 4219869 Business Flow
52826: -- Populated credit and debit amounts -- Need to generate this within IF
52827: ------------------------------------------------------------------------------------
52828: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52829:
52830: ----------------------------------------------------------------------------------
52831: -- 4219869 Business Flow
52832: -- Update journal entry status -- Need to generate this within IF
52856: -- To allow MPA report to determine if it should generate report process
52857: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52858: ------------------------------------------------------------------------------------------
52859:
52860: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52861: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52862: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52863: -- call ADRs
52864: -- Bug 4922099
52857: XLA_ACCOUNTING_PKG.g_mpa_accrual_exists := 'Y';
52858: ------------------------------------------------------------------------------------------
52859:
52860: l_accrual_line_num := XLA_AE_LINES_PKG.g_LineNumber;
52861: XLA_AE_LINES_PKG.CopyLineInfo(l_accrual_line_num);
52862: -- added call to set_ccid to execute mapping for secondary accrual reversal entries bug 7444204
52863: -- call ADRs
52864: -- Bug 4922099
52865: --
52881: , x_value_type_code => l_adr_value_type_code
52882: , p_side => 'NA'
52883: );
52884:
52885: xla_ae_lines_pkg.set_ccid(
52886: p_code_combination_id => l_ccid
52887: , p_value_type_code => l_adr_value_type_code
52888: , p_transaction_coa_id => l_adr_transaction_coa_id
52889: , p_accounting_coa_id => l_adr_accounting_coa_id
52904:
52905: --
52906: -- Update the line information that should be overwritten
52907: --
52908: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52909: p_header_num => 1);
52910: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52911:
52912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52906: -- Update the line information that should be overwritten
52907: --
52908: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52909: p_header_num => 1);
52910: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52911:
52912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52913:
52914: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52908: XLA_AE_LINES_PKG.set_ae_header_id(p_ae_header_id => p_event_id ,
52909: p_header_num => 1);
52910: XLA_AE_LINES_PKG.g_rec_lines.array_header_num(XLA_AE_LINES_PKG.g_LineNumber) :=1;
52911:
52912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52913:
52914: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52915: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52916: END IF;
52911:
52912: XLA_AE_LINES_PKG.g_rec_lines.array_business_class_code(XLA_AE_LINES_PKG.g_LineNumber) := NULL; -- 4669271
52913:
52914: IF l_bflow_method_code <> 'NONE' THEN -- 4655713b
52915: XLA_AE_LINES_PKG.g_rec_lines.array_reversal_code(XLA_AE_LINES_PKG.g_LineNumber) := CONCAT('MPA_',l_bflow_method_code);
52916: END IF;
52917:
52918: --
52919: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52918: --
52919: -- Depending on the Reversal Method setup, do a switch side or changes sign for the amounts
52920: --
52921: IF (XLA_AE_JOURNAL_ENTRY_PKG.g_cache_ledgers_info.ledger_reversal_option = 'SIDE') THEN
52922: XLA_AE_LINES_PKG.g_rec_lines.array_natural_side_code(XLA_AE_LINES_PKG.g_LineNumber) := l_acc_rev_natural_side_code;
52923: ELSE
52924: ---------------------------------------------------------------------------------------------------
52925: -- 4262811a Switch Sign
52926: ---------------------------------------------------------------------------------------------------
52923: ELSE
52924: ---------------------------------------------------------------------------------------------------
52925: -- 4262811a Switch Sign
52926: ---------------------------------------------------------------------------------------------------
52927: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52928: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52930: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52924: ---------------------------------------------------------------------------------------------------
52925: -- 4262811a Switch Sign
52926: ---------------------------------------------------------------------------------------------------
52927: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52928: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52930: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52932: -- 5132302
52925: -- 4262811a Switch Sign
52926: ---------------------------------------------------------------------------------------------------
52927: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52928: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52930: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52932: -- 5132302
52933: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52926: ---------------------------------------------------------------------------------------------------
52927: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52928: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52930: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52932: -- 5132302
52933: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52927: XLA_AE_LINES_PKG.g_rec_lines.array_switch_side_flag(XLA_AE_LINES_PKG.g_LineNumber) := 'N'; -- 5052518
52928: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52930: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52932: -- 5132302
52933: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52935:
52929: XLA_AE_LINES_PKG.g_rec_lines.array_ledger_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52930: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52932: -- 5132302
52933: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52935:
52936: END IF;
52937:
52930: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) :=
52931: XLA_AE_LINES_PKG.g_rec_lines.array_entered_amount(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52932: -- 5132302
52933: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) :=
52934: XLA_AE_LINES_PKG.g_rec_lines.array_bflow_applied_to_amt(XLA_AE_LINES_PKG.g_LineNumber) * -1;
52935:
52936: END IF;
52937:
52938: -- 4955764
52935:
52936: END IF;
52937:
52938: -- 4955764
52939: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52940: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52941:
52942:
52943: XLA_AE_LINES_PKG.ValidateCurrentLine;
52939: XLA_AE_LINES_PKG.g_rec_lines.array_gl_date(XLA_AE_LINES_PKG.g_LineNumber) :=
52940: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52941:
52942:
52943: XLA_AE_LINES_PKG.ValidateCurrentLine;
52944: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52945:
52946: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52947: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52940: XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(g_array_event(p_event_id).array_value_num('acc_rev_header_index'));
52941:
52942:
52943: XLA_AE_LINES_PKG.ValidateCurrentLine;
52944: XLA_AE_LINES_PKG.SetDebitCreditAmounts;
52945:
52946: XLA_AE_JOURNAL_ENTRY_PKG.UpdateJournalEntryStatus
52947: (p_hdr_idx => g_array_event(p_event_id).array_value_num('acc_rev_header_index')
52948: ,p_balance_type_code => l_balance_type_code);
53399: l_first_event_id NUMBER;
53400: l_last_event_id NUMBER;
53401:
53402: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
53403: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
53404: --
53405: --
53406: l_result BOOLEAN := TRUE;
53407: l_rows NUMBER := 1000;
53672: EXIT WHEN l_array_entity_id.COUNT = 0;
53673:
53674: -- initialize arrays
53675: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
53676: XLA_AE_LINES_PKG.g_rec_lines := NULL;
53677:
53678: --
53679: -- Bug 4458708
53680: --
53677:
53678: --
53679: -- Bug 4458708
53680: --
53681: XLA_AE_LINES_PKG.g_LineNumber := 0;
53682:
53683:
53684: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
53685: g_last_hdr_idx := l_array_event_id.LAST;
53821: --
53822: -- following sets the accounting attributes needed to reverse
53823: -- accounting for a distributeion
53824: --
53825: xla_ae_lines_pkg.SetTrxReversalAttrs
53826: (p_event_id => l_event_id
53827: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
53828: ,p_trx_reversal_source => l_trx_reversal_source);
53829:
53853: --
53854: -- insert dummy rows into lines gt table that were created due to
53855: -- transaction reversals
53856: --
53857: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
53858: l_result := XLA_AE_LINES_PKG.InsertLines;
53859: END IF;
53860:
53861: --
53854: -- insert dummy rows into lines gt table that were created due to
53855: -- transaction reversals
53856: --
53857: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
53858: l_result := XLA_AE_LINES_PKG.InsertLines;
53859: END IF;
53860:
53861: --
53862: -- reset the temp_line_num for each set of events fetched from header
53862: -- reset the temp_line_num for each set of events fetched from header
53863: -- cursor rather than doing it for each new event in line cursor
53864: -- Bug 3939231
53865: --
53866: xla_ae_lines_pkg.g_temp_line_num := 0;
53867:
53868:
53869:
53870: --
53930: END IF;
53931: --
53932: EXIT WHEN l_array_entity_id.count = 0;
53933:
53934: XLA_AE_LINES_PKG.g_rec_lines := null;
53935:
53936: --
53937: -- Bug 4458708
53938: --
53935:
53936: --
53937: -- Bug 4458708
53938: --
53939: XLA_AE_LINES_PKG.g_LineNumber := 0;
53940: --
53941: --
53942:
53943: FOR Idx IN 1..l_array_event_id.count LOOP
54007:
54008:
54009:
54010: --
54011: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
54012:
54013: l_acct_reversal_source := SUBSTR(NULL, 1,30);
54014:
54015: IF l_continue_with_lines THEN
54043: --
54044:
54045: -- No reversal code generated
54046:
54047: xla_ae_lines_pkg.SetAcctReversalAttrs
54048: (p_event_id => l_event_id
54049: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
54050: ,p_calculate_acctd_flag => l_calculate_acctd_flag
54051: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
54220:
54221: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
54222: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
54223: AND (l_actual_flag = 'A')) THEN
54224: XLA_AE_LINES_PKG.CreateGainOrLossLines(
54225: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
54226: ,p_application_id => p_application_id
54227: ,p_amb_context_code => 'DEFAULT'
54228: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
54253: END IF;
54254: END IF;
54255:
54256: END LOOP;
54257: l_result := XLA_AE_LINES_PKG.InsertLines ;
54258: end loop;
54259: close line_cur;
54260:
54261:
54755: l_first_event_id NUMBER;
54756: l_last_event_id NUMBER;
54757:
54758: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
54759: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
54760: --
54761: --
54762: l_result BOOLEAN := TRUE;
54763: l_rows NUMBER := 1000;
55017: EXIT WHEN l_array_entity_id.COUNT = 0;
55018:
55019: -- initialize arrays
55020: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
55021: XLA_AE_LINES_PKG.g_rec_lines := NULL;
55022:
55023: --
55024: -- Bug 4458708
55025: --
55022:
55023: --
55024: -- Bug 4458708
55025: --
55026: XLA_AE_LINES_PKG.g_LineNumber := 0;
55027:
55028:
55029: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
55030: g_last_hdr_idx := l_array_event_id.LAST;
55165: --
55166: -- following sets the accounting attributes needed to reverse
55167: -- accounting for a distributeion
55168: --
55169: xla_ae_lines_pkg.SetTrxReversalAttrs
55170: (p_event_id => l_event_id
55171: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
55172: ,p_trx_reversal_source => l_trx_reversal_source);
55173:
55197: --
55198: -- insert dummy rows into lines gt table that were created due to
55199: -- transaction reversals
55200: --
55201: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
55202: l_result := XLA_AE_LINES_PKG.InsertLines;
55203: END IF;
55204:
55205: --
55198: -- insert dummy rows into lines gt table that were created due to
55199: -- transaction reversals
55200: --
55201: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
55202: l_result := XLA_AE_LINES_PKG.InsertLines;
55203: END IF;
55204:
55205: --
55206: -- reset the temp_line_num for each set of events fetched from header
55206: -- reset the temp_line_num for each set of events fetched from header
55207: -- cursor rather than doing it for each new event in line cursor
55208: -- Bug 3939231
55209: --
55210: xla_ae_lines_pkg.g_temp_line_num := 0;
55211:
55212:
55213:
55214: --
55273: END IF;
55274: --
55275: EXIT WHEN l_array_entity_id.count = 0;
55276:
55277: XLA_AE_LINES_PKG.g_rec_lines := null;
55278:
55279: --
55280: -- Bug 4458708
55281: --
55278:
55279: --
55280: -- Bug 4458708
55281: --
55282: XLA_AE_LINES_PKG.g_LineNumber := 0;
55283: --
55284: --
55285:
55286: FOR Idx IN 1..l_array_event_id.count LOOP
55350:
55351:
55352:
55353: --
55354: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
55355:
55356: l_acct_reversal_source := SUBSTR(NULL, 1,30);
55357:
55358: IF l_continue_with_lines THEN
55386: --
55387:
55388: -- No reversal code generated
55389:
55390: xla_ae_lines_pkg.SetAcctReversalAttrs
55391: (p_event_id => l_event_id
55392: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
55393: ,p_calculate_acctd_flag => l_calculate_acctd_flag
55394: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
55466:
55467: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
55468: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
55469: AND (l_actual_flag = 'A')) THEN
55470: XLA_AE_LINES_PKG.CreateGainOrLossLines(
55471: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
55472: ,p_application_id => p_application_id
55473: ,p_amb_context_code => 'DEFAULT'
55474: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
55499: END IF;
55500: END IF;
55501:
55502: END LOOP;
55503: l_result := XLA_AE_LINES_PKG.InsertLines ;
55504: end loop;
55505: close line_cur;
55506:
55507:
56044: l_first_event_id NUMBER;
56045: l_last_event_id NUMBER;
56046:
56047: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
56048: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
56049: --
56050: --
56051: l_result BOOLEAN := TRUE;
56052: l_rows NUMBER := 1000;
56336: EXIT WHEN l_array_entity_id.COUNT = 0;
56337:
56338: -- initialize arrays
56339: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
56340: XLA_AE_LINES_PKG.g_rec_lines := NULL;
56341:
56342: --
56343: -- Bug 4458708
56344: --
56341:
56342: --
56343: -- Bug 4458708
56344: --
56345: XLA_AE_LINES_PKG.g_LineNumber := 0;
56346:
56347:
56348: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
56349: g_last_hdr_idx := l_array_event_id.LAST;
56479: --
56480: -- following sets the accounting attributes needed to reverse
56481: -- accounting for a distributeion
56482: --
56483: xla_ae_lines_pkg.SetTrxReversalAttrs
56484: (p_event_id => l_event_id
56485: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
56486: ,p_trx_reversal_source => l_trx_reversal_source);
56487:
56511: --
56512: -- insert dummy rows into lines gt table that were created due to
56513: -- transaction reversals
56514: --
56515: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
56516: l_result := XLA_AE_LINES_PKG.InsertLines;
56517: END IF;
56518:
56519: --
56512: -- insert dummy rows into lines gt table that were created due to
56513: -- transaction reversals
56514: --
56515: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
56516: l_result := XLA_AE_LINES_PKG.InsertLines;
56517: END IF;
56518:
56519: --
56520: -- reset the temp_line_num for each set of events fetched from header
56520: -- reset the temp_line_num for each set of events fetched from header
56521: -- cursor rather than doing it for each new event in line cursor
56522: -- Bug 3939231
56523: --
56524: xla_ae_lines_pkg.g_temp_line_num := 0;
56525:
56526:
56527:
56528: --
56593: END IF;
56594: --
56595: EXIT WHEN l_array_entity_id.count = 0;
56596:
56597: XLA_AE_LINES_PKG.g_rec_lines := null;
56598:
56599: --
56600: -- Bug 4458708
56601: --
56598:
56599: --
56600: -- Bug 4458708
56601: --
56602: XLA_AE_LINES_PKG.g_LineNumber := 0;
56603: --
56604: --
56605:
56606: FOR Idx IN 1..l_array_event_id.count LOOP
56670:
56671:
56672:
56673: --
56674: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
56675:
56676: l_acct_reversal_source := SUBSTR(NULL, 1,30);
56677:
56678: IF l_continue_with_lines THEN
56706: --
56707:
56708: -- No reversal code generated
56709:
56710: xla_ae_lines_pkg.SetAcctReversalAttrs
56711: (p_event_id => l_event_id
56712: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
56713: ,p_calculate_acctd_flag => l_calculate_acctd_flag
56714: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
57085:
57086: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
57087: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
57088: AND (l_actual_flag = 'A')) THEN
57089: XLA_AE_LINES_PKG.CreateGainOrLossLines(
57090: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
57091: ,p_application_id => p_application_id
57092: ,p_amb_context_code => 'DEFAULT'
57093: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
57118: END IF;
57119: END IF;
57120:
57121: END LOOP;
57122: l_result := XLA_AE_LINES_PKG.InsertLines ;
57123: end loop;
57124: close line_cur;
57125:
57126:
57635: l_first_event_id NUMBER;
57636: l_last_event_id NUMBER;
57637:
57638: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
57639: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
57640: --
57641: --
57642: l_result BOOLEAN := TRUE;
57643: l_rows NUMBER := 1000;
57908: EXIT WHEN l_array_entity_id.COUNT = 0;
57909:
57910: -- initialize arrays
57911: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
57912: XLA_AE_LINES_PKG.g_rec_lines := NULL;
57913:
57914: --
57915: -- Bug 4458708
57916: --
57913:
57914: --
57915: -- Bug 4458708
57916: --
57917: XLA_AE_LINES_PKG.g_LineNumber := 0;
57918:
57919:
57920: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
57921: g_last_hdr_idx := l_array_event_id.LAST;
58058: --
58059: -- following sets the accounting attributes needed to reverse
58060: -- accounting for a distributeion
58061: --
58062: xla_ae_lines_pkg.SetTrxReversalAttrs
58063: (p_event_id => l_event_id
58064: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
58065: ,p_trx_reversal_source => l_trx_reversal_source);
58066:
58090: --
58091: -- insert dummy rows into lines gt table that were created due to
58092: -- transaction reversals
58093: --
58094: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
58095: l_result := XLA_AE_LINES_PKG.InsertLines;
58096: END IF;
58097:
58098: --
58091: -- insert dummy rows into lines gt table that were created due to
58092: -- transaction reversals
58093: --
58094: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
58095: l_result := XLA_AE_LINES_PKG.InsertLines;
58096: END IF;
58097:
58098: --
58099: -- reset the temp_line_num for each set of events fetched from header
58099: -- reset the temp_line_num for each set of events fetched from header
58100: -- cursor rather than doing it for each new event in line cursor
58101: -- Bug 3939231
58102: --
58103: xla_ae_lines_pkg.g_temp_line_num := 0;
58104:
58105:
58106:
58107: --
58167: END IF;
58168: --
58169: EXIT WHEN l_array_entity_id.count = 0;
58170:
58171: XLA_AE_LINES_PKG.g_rec_lines := null;
58172:
58173: --
58174: -- Bug 4458708
58175: --
58172:
58173: --
58174: -- Bug 4458708
58175: --
58176: XLA_AE_LINES_PKG.g_LineNumber := 0;
58177: --
58178: --
58179:
58180: FOR Idx IN 1..l_array_event_id.count LOOP
58244:
58245:
58246:
58247: --
58248: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
58249:
58250: l_acct_reversal_source := SUBSTR(NULL, 1,30);
58251:
58252: IF l_continue_with_lines THEN
58280: --
58281:
58282: -- No reversal code generated
58283:
58284: xla_ae_lines_pkg.SetAcctReversalAttrs
58285: (p_event_id => l_event_id
58286: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
58287: ,p_calculate_acctd_flag => l_calculate_acctd_flag
58288: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
58556:
58557: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
58558: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
58559: AND (l_actual_flag = 'A')) THEN
58560: XLA_AE_LINES_PKG.CreateGainOrLossLines(
58561: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
58562: ,p_application_id => p_application_id
58563: ,p_amb_context_code => 'DEFAULT'
58564: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
58589: END IF;
58590: END IF;
58591:
58592: END LOOP;
58593: l_result := XLA_AE_LINES_PKG.InsertLines ;
58594: end loop;
58595: close line_cur;
58596:
58597:
59091: l_first_event_id NUMBER;
59092: l_last_event_id NUMBER;
59093:
59094: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
59095: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
59096: --
59097: --
59098: l_result BOOLEAN := TRUE;
59099: l_rows NUMBER := 1000;
59353: EXIT WHEN l_array_entity_id.COUNT = 0;
59354:
59355: -- initialize arrays
59356: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
59357: XLA_AE_LINES_PKG.g_rec_lines := NULL;
59358:
59359: --
59360: -- Bug 4458708
59361: --
59358:
59359: --
59360: -- Bug 4458708
59361: --
59362: XLA_AE_LINES_PKG.g_LineNumber := 0;
59363:
59364:
59365: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
59366: g_last_hdr_idx := l_array_event_id.LAST;
59501: --
59502: -- following sets the accounting attributes needed to reverse
59503: -- accounting for a distributeion
59504: --
59505: xla_ae_lines_pkg.SetTrxReversalAttrs
59506: (p_event_id => l_event_id
59507: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
59508: ,p_trx_reversal_source => l_trx_reversal_source);
59509:
59533: --
59534: -- insert dummy rows into lines gt table that were created due to
59535: -- transaction reversals
59536: --
59537: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
59538: l_result := XLA_AE_LINES_PKG.InsertLines;
59539: END IF;
59540:
59541: --
59534: -- insert dummy rows into lines gt table that were created due to
59535: -- transaction reversals
59536: --
59537: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
59538: l_result := XLA_AE_LINES_PKG.InsertLines;
59539: END IF;
59540:
59541: --
59542: -- reset the temp_line_num for each set of events fetched from header
59542: -- reset the temp_line_num for each set of events fetched from header
59543: -- cursor rather than doing it for each new event in line cursor
59544: -- Bug 3939231
59545: --
59546: xla_ae_lines_pkg.g_temp_line_num := 0;
59547:
59548:
59549:
59550: --
59609: END IF;
59610: --
59611: EXIT WHEN l_array_entity_id.count = 0;
59612:
59613: XLA_AE_LINES_PKG.g_rec_lines := null;
59614:
59615: --
59616: -- Bug 4458708
59617: --
59614:
59615: --
59616: -- Bug 4458708
59617: --
59618: XLA_AE_LINES_PKG.g_LineNumber := 0;
59619: --
59620: --
59621:
59622: FOR Idx IN 1..l_array_event_id.count LOOP
59686:
59687:
59688:
59689: --
59690: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
59691:
59692: l_acct_reversal_source := SUBSTR(NULL, 1,30);
59693:
59694: IF l_continue_with_lines THEN
59722: --
59723:
59724: -- No reversal code generated
59725:
59726: xla_ae_lines_pkg.SetAcctReversalAttrs
59727: (p_event_id => l_event_id
59728: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
59729: ,p_calculate_acctd_flag => l_calculate_acctd_flag
59730: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
59802:
59803: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
59804: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
59805: AND (l_actual_flag = 'A')) THEN
59806: XLA_AE_LINES_PKG.CreateGainOrLossLines(
59807: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
59808: ,p_application_id => p_application_id
59809: ,p_amb_context_code => 'DEFAULT'
59810: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
59835: END IF;
59836: END IF;
59837:
59838: END LOOP;
59839: l_result := XLA_AE_LINES_PKG.InsertLines ;
59840: end loop;
59841: close line_cur;
59842:
59843:
60337: l_first_event_id NUMBER;
60338: l_last_event_id NUMBER;
60339:
60340: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
60341: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
60342: --
60343: --
60344: l_result BOOLEAN := TRUE;
60345: l_rows NUMBER := 1000;
60599: EXIT WHEN l_array_entity_id.COUNT = 0;
60600:
60601: -- initialize arrays
60602: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
60603: XLA_AE_LINES_PKG.g_rec_lines := NULL;
60604:
60605: --
60606: -- Bug 4458708
60607: --
60604:
60605: --
60606: -- Bug 4458708
60607: --
60608: XLA_AE_LINES_PKG.g_LineNumber := 0;
60609:
60610:
60611: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
60612: g_last_hdr_idx := l_array_event_id.LAST;
60747: --
60748: -- following sets the accounting attributes needed to reverse
60749: -- accounting for a distributeion
60750: --
60751: xla_ae_lines_pkg.SetTrxReversalAttrs
60752: (p_event_id => l_event_id
60753: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
60754: ,p_trx_reversal_source => l_trx_reversal_source);
60755:
60779: --
60780: -- insert dummy rows into lines gt table that were created due to
60781: -- transaction reversals
60782: --
60783: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
60784: l_result := XLA_AE_LINES_PKG.InsertLines;
60785: END IF;
60786:
60787: --
60780: -- insert dummy rows into lines gt table that were created due to
60781: -- transaction reversals
60782: --
60783: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
60784: l_result := XLA_AE_LINES_PKG.InsertLines;
60785: END IF;
60786:
60787: --
60788: -- reset the temp_line_num for each set of events fetched from header
60788: -- reset the temp_line_num for each set of events fetched from header
60789: -- cursor rather than doing it for each new event in line cursor
60790: -- Bug 3939231
60791: --
60792: xla_ae_lines_pkg.g_temp_line_num := 0;
60793:
60794:
60795:
60796: --
60855: END IF;
60856: --
60857: EXIT WHEN l_array_entity_id.count = 0;
60858:
60859: XLA_AE_LINES_PKG.g_rec_lines := null;
60860:
60861: --
60862: -- Bug 4458708
60863: --
60860:
60861: --
60862: -- Bug 4458708
60863: --
60864: XLA_AE_LINES_PKG.g_LineNumber := 0;
60865: --
60866: --
60867:
60868: FOR Idx IN 1..l_array_event_id.count LOOP
60932:
60933:
60934:
60935: --
60936: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
60937:
60938: l_acct_reversal_source := SUBSTR(NULL, 1,30);
60939:
60940: IF l_continue_with_lines THEN
60968: --
60969:
60970: -- No reversal code generated
60971:
60972: xla_ae_lines_pkg.SetAcctReversalAttrs
60973: (p_event_id => l_event_id
60974: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
60975: ,p_calculate_acctd_flag => l_calculate_acctd_flag
60976: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
61048:
61049: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
61050: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
61051: AND (l_actual_flag = 'A')) THEN
61052: XLA_AE_LINES_PKG.CreateGainOrLossLines(
61053: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
61054: ,p_application_id => p_application_id
61055: ,p_amb_context_code => 'DEFAULT'
61056: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
61081: END IF;
61082: END IF;
61083:
61084: END LOOP;
61085: l_result := XLA_AE_LINES_PKG.InsertLines ;
61086: end loop;
61087: close line_cur;
61088:
61089:
61603: l_first_event_id NUMBER;
61604: l_last_event_id NUMBER;
61605:
61606: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
61607: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
61608: --
61609: --
61610: l_result BOOLEAN := TRUE;
61611: l_rows NUMBER := 1000;
61879: EXIT WHEN l_array_entity_id.COUNT = 0;
61880:
61881: -- initialize arrays
61882: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
61883: XLA_AE_LINES_PKG.g_rec_lines := NULL;
61884:
61885: --
61886: -- Bug 4458708
61887: --
61884:
61885: --
61886: -- Bug 4458708
61887: --
61888: XLA_AE_LINES_PKG.g_LineNumber := 0;
61889:
61890:
61891: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
61892: g_last_hdr_idx := l_array_event_id.LAST;
62029: --
62030: -- following sets the accounting attributes needed to reverse
62031: -- accounting for a distributeion
62032: --
62033: xla_ae_lines_pkg.SetTrxReversalAttrs
62034: (p_event_id => l_event_id
62035: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
62036: ,p_trx_reversal_source => l_trx_reversal_source);
62037:
62061: --
62062: -- insert dummy rows into lines gt table that were created due to
62063: -- transaction reversals
62064: --
62065: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
62066: l_result := XLA_AE_LINES_PKG.InsertLines;
62067: END IF;
62068:
62069: --
62062: -- insert dummy rows into lines gt table that were created due to
62063: -- transaction reversals
62064: --
62065: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
62066: l_result := XLA_AE_LINES_PKG.InsertLines;
62067: END IF;
62068:
62069: --
62070: -- reset the temp_line_num for each set of events fetched from header
62070: -- reset the temp_line_num for each set of events fetched from header
62071: -- cursor rather than doing it for each new event in line cursor
62072: -- Bug 3939231
62073: --
62074: xla_ae_lines_pkg.g_temp_line_num := 0;
62075:
62076:
62077:
62078: --
62139: END IF;
62140: --
62141: EXIT WHEN l_array_entity_id.count = 0;
62142:
62143: XLA_AE_LINES_PKG.g_rec_lines := null;
62144:
62145: --
62146: -- Bug 4458708
62147: --
62144:
62145: --
62146: -- Bug 4458708
62147: --
62148: XLA_AE_LINES_PKG.g_LineNumber := 0;
62149: --
62150: --
62151:
62152: FOR Idx IN 1..l_array_event_id.count LOOP
62216:
62217:
62218:
62219: --
62220: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
62221:
62222: l_acct_reversal_source := SUBSTR(NULL, 1,30);
62223:
62224: IF l_continue_with_lines THEN
62252: --
62253:
62254: -- No reversal code generated
62255:
62256: xla_ae_lines_pkg.SetAcctReversalAttrs
62257: (p_event_id => l_event_id
62258: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
62259: ,p_calculate_acctd_flag => l_calculate_acctd_flag
62260: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
62531:
62532: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
62533: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
62534: AND (l_actual_flag = 'A')) THEN
62535: XLA_AE_LINES_PKG.CreateGainOrLossLines(
62536: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
62537: ,p_application_id => p_application_id
62538: ,p_amb_context_code => 'DEFAULT'
62539: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
62564: END IF;
62565: END IF;
62566:
62567: END LOOP;
62568: l_result := XLA_AE_LINES_PKG.InsertLines ;
62569: end loop;
62570: close line_cur;
62571:
62572:
63088: l_first_event_id NUMBER;
63089: l_last_event_id NUMBER;
63090:
63091: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
63092: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
63093: --
63094: --
63095: l_result BOOLEAN := TRUE;
63096: l_rows NUMBER := 1000;
63368: EXIT WHEN l_array_entity_id.COUNT = 0;
63369:
63370: -- initialize arrays
63371: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
63372: XLA_AE_LINES_PKG.g_rec_lines := NULL;
63373:
63374: --
63375: -- Bug 4458708
63376: --
63373:
63374: --
63375: -- Bug 4458708
63376: --
63377: XLA_AE_LINES_PKG.g_LineNumber := 0;
63378:
63379:
63380: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
63381: g_last_hdr_idx := l_array_event_id.LAST;
63521: --
63522: -- following sets the accounting attributes needed to reverse
63523: -- accounting for a distributeion
63524: --
63525: xla_ae_lines_pkg.SetTrxReversalAttrs
63526: (p_event_id => l_event_id
63527: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
63528: ,p_trx_reversal_source => l_trx_reversal_source);
63529:
63553: --
63554: -- insert dummy rows into lines gt table that were created due to
63555: -- transaction reversals
63556: --
63557: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
63558: l_result := XLA_AE_LINES_PKG.InsertLines;
63559: END IF;
63560:
63561: --
63554: -- insert dummy rows into lines gt table that were created due to
63555: -- transaction reversals
63556: --
63557: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
63558: l_result := XLA_AE_LINES_PKG.InsertLines;
63559: END IF;
63560:
63561: --
63562: -- reset the temp_line_num for each set of events fetched from header
63562: -- reset the temp_line_num for each set of events fetched from header
63563: -- cursor rather than doing it for each new event in line cursor
63564: -- Bug 3939231
63565: --
63566: xla_ae_lines_pkg.g_temp_line_num := 0;
63567:
63568:
63569:
63570: --
63631: END IF;
63632: --
63633: EXIT WHEN l_array_entity_id.count = 0;
63634:
63635: XLA_AE_LINES_PKG.g_rec_lines := null;
63636:
63637: --
63638: -- Bug 4458708
63639: --
63636:
63637: --
63638: -- Bug 4458708
63639: --
63640: XLA_AE_LINES_PKG.g_LineNumber := 0;
63641: --
63642: --
63643:
63644: FOR Idx IN 1..l_array_event_id.count LOOP
63708:
63709:
63710:
63711: --
63712: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
63713:
63714: l_acct_reversal_source := SUBSTR(NULL, 1,30);
63715:
63716: IF l_continue_with_lines THEN
63744: --
63745:
63746: -- No reversal code generated
63747:
63748: xla_ae_lines_pkg.SetAcctReversalAttrs
63749: (p_event_id => l_event_id
63750: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
63751: ,p_calculate_acctd_flag => l_calculate_acctd_flag
63752: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
64060:
64061: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
64062: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
64063: AND (l_actual_flag = 'A')) THEN
64064: XLA_AE_LINES_PKG.CreateGainOrLossLines(
64065: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
64066: ,p_application_id => p_application_id
64067: ,p_amb_context_code => 'DEFAULT'
64068: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
64093: END IF;
64094: END IF;
64095:
64096: END LOOP;
64097: l_result := XLA_AE_LINES_PKG.InsertLines ;
64098: end loop;
64099: close line_cur;
64100:
64101:
64763: l_first_event_id NUMBER;
64764: l_last_event_id NUMBER;
64765:
64766: l_rec_acct_attrs XLA_AE_HEADER_PKG.t_rec_acct_attrs;
64767: l_rec_rev_acct_attrs XLA_AE_LINES_PKG.t_rec_acct_attrs;
64768: --
64769: --
64770: l_result BOOLEAN := TRUE;
64771: l_rows NUMBER := 1000;
65143: EXIT WHEN l_array_entity_id.COUNT = 0;
65144:
65145: -- initialize arrays
65146: XLA_AE_HEADER_PKG.g_rec_header_new := NULL;
65147: XLA_AE_LINES_PKG.g_rec_lines := NULL;
65148:
65149: --
65150: -- Bug 4458708
65151: --
65148:
65149: --
65150: -- Bug 4458708
65151: --
65152: XLA_AE_LINES_PKG.g_LineNumber := 0;
65153:
65154:
65155: -- 4262811 - when creating Accrual Reversal or MPA, use g_last_hdr_idx to increment for next header id
65156: g_last_hdr_idx := l_array_event_id.LAST;
65305: --
65306: -- following sets the accounting attributes needed to reverse
65307: -- accounting for a distributeion
65308: --
65309: xla_ae_lines_pkg.SetTrxReversalAttrs
65310: (p_event_id => l_event_id
65311: ,p_gl_date => XLA_AE_HEADER_PKG.g_rec_header_new.array_gl_date(hdr_idx)
65312: ,p_trx_reversal_source => l_trx_reversal_source);
65313:
65337: --
65338: -- insert dummy rows into lines gt table that were created due to
65339: -- transaction reversals
65340: --
65341: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
65342: l_result := XLA_AE_LINES_PKG.InsertLines;
65343: END IF;
65344:
65345: --
65338: -- insert dummy rows into lines gt table that were created due to
65339: -- transaction reversals
65340: --
65341: IF XLA_AE_LINES_PKG.g_rec_lines.array_ae_header_id.COUNT > 0 THEN
65342: l_result := XLA_AE_LINES_PKG.InsertLines;
65343: END IF;
65344:
65345: --
65346: -- reset the temp_line_num for each set of events fetched from header
65346: -- reset the temp_line_num for each set of events fetched from header
65347: -- cursor rather than doing it for each new event in line cursor
65348: -- Bug 3939231
65349: --
65350: xla_ae_lines_pkg.g_temp_line_num := 0;
65351:
65352:
65353:
65354: --
65432: END IF;
65433: --
65434: EXIT WHEN l_array_entity_id.count = 0;
65435:
65436: XLA_AE_LINES_PKG.g_rec_lines := null;
65437:
65438: --
65439: -- Bug 4458708
65440: --
65437:
65438: --
65439: -- Bug 4458708
65440: --
65441: XLA_AE_LINES_PKG.g_LineNumber := 0;
65442: --
65443: --
65444:
65445: FOR Idx IN 1..l_array_event_id.count LOOP
65509:
65510:
65511:
65512: --
65513: xla_ae_lines_pkg.SetExtractLine(p_extract_line => l_array_extract_line_num(Idx));
65514:
65515: l_acct_reversal_source := SUBSTR(NULL, 1,30);
65516:
65517: IF l_continue_with_lines THEN
65545: --
65546:
65547: -- No reversal code generated
65548:
65549: xla_ae_lines_pkg.SetAcctReversalAttrs
65550: (p_event_id => l_event_id
65551: ,p_rec_acct_attrs => l_rec_rev_acct_attrs
65552: ,p_calculate_acctd_flag => l_calculate_acctd_flag
65553: ,p_calculate_g_l_flag => l_calculate_g_l_flag);
66940:
66941: -- IF((l_calculate_g_l_flag='Y' or XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.target_ledger_id <>
66942: -- XLA_AE_JOURNAL_ENTRY_PKG.g_cache_event.ledger_id)
66943: AND (l_actual_flag = 'A')) THEN
66944: XLA_AE_LINES_PKG.CreateGainOrLossLines(
66945: p_event_id => xla_ae_journal_entry_pkg.g_cache_event.event_id
66946: ,p_application_id => p_application_id
66947: ,p_amb_context_code => 'DEFAULT'
66948: ,p_entity_code => xla_ae_journal_entry_pkg.g_cache_event.entity_code
66973: END IF;
66974: END IF;
66975:
66976: END LOOP;
66977: l_result := XLA_AE_LINES_PKG.InsertLines ;
66978: end loop;
66979: close line_cur;
66980:
66981:
67108:
67109: --
67110: -- initialize array of lines with NULL
67111: --
67112: xla_ae_lines_pkg.SetNullLine;
67113:
67114: --
67115: -- initialize header extract count -- Bug 4865292
67116: --